

[data-header] { padding-bottom: 0; }
[lang="en"] { hyphens: none; }


html body .site-header.inv-header { gap: clamp(12px, 1.5vw, 24px); flex-wrap: nowrap; }
html body .site-header.inv-header .inv-nav { gap: clamp(18px, 2.4vw, 38px); }
@media (max-width: 900px) {
  html body .site-header.inv-header .inv-menu { order: 4; width: 44px; min-width: 44px; flex: none; }
  html body .site-header.inv-header.open .inv-brand { width: 100%; margin-right: 0; }
}
@media (max-width: 620px) {
  html body .site-header.inv-header { gap: 8px; }
  html body .site-header.inv-header.open { padding-inline: 20px; }
}
@media (max-width: 360px) {
  html body .site-header.inv-header.open { padding-inline: 16px; }
  html body .site-header.inv-header.open .inv-brand .wordmark-with-signal { width: 154px; }
}

.inv-nav .nav-external { gap: 3px; }
.inv-nav .nav-external .arrow-icon { width: 13px; height: 13px; }

.inv-nav .lang-switch { display: flex; align-items: center; gap: 2px; padding-left: clamp(12px, 1.4vw, 20px); border-left: 1px solid var(--tone-rule); }
.inv-nav .lang-switch a { justify-content: center; min-width: 32px; min-height: 44px; padding: 0 4px; font: 500 .7rem/1 var(--sans); letter-spacing: .08em; color: var(--tone-muted); }
.inv-nav .lang-switch a:hover { color: var(--tone-button); }
.inv-nav .lang-switch a[aria-current="true"] { color: var(--tone-text); }
.inv-nav .lang-switch a[aria-current="true"]:after { transform: scaleX(1); }
@media (max-width: 1100px) and (min-width: 901px) { html body .site-header.inv-header .inv-nav { gap: clamp(12px, 1.5vw, 22px); } }

@media (max-width: 900px) {
  html body .site-header.inv-header .inv-nav .lang-switch { width: 100%; gap: 18px; margin-top: 10px; padding: 14px 0 0; border-left: 0; border-top: 1px solid var(--tone-rule); }
  html body .site-header.inv-header.open .inv-nav .lang-switch a { width: auto; min-width: 44px; min-height: 44px; padding: 0; border-top: 0; font: 500 .95rem/1 var(--sans); letter-spacing: .08em; }
}

html body[data-page=home] .site-header.inv-header { position: relative; }


.inv-hero .inv-lede { max-width: 62ch; }
.inv-hero .inv-lede a { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .22em; text-decoration-color: var(--tone-accent); }
.inv-hero .inv-lede a:hover { color: var(--tone-button); }
.facts-strip .launch-strip-inner { margin: 0 auto; }
.facts-strip span { padding: 0 6px; color: var(--tone-rule-strong); }
.inv-hero--text .inv-hero-inner { grid-template-columns: minmax(0, 1fr); padding-top: clamp(48px, 6vw, 88px); padding-bottom: clamp(44px, 5vw, 72px); }
.inv-hero--text .inv-copy h1 { max-width: 16ch; }
.inv-hero--text .inv-actions { margin-top: 30px; }
.cv-hero .inv-copy h1 { margin-bottom: 18px; }

.inv-portrait--full { max-width: 380px; }
.inv-portrait--full img { aspect-ratio: 2 / 3; object-position: 50% 50%; }
.not-found-hero { min-height: 52vh; display: grid; align-items: center; }
@media (max-width: 620px) {
  .inv-hero--text .inv-hero-inner { padding-top: 34px; padding-bottom: 38px; }
  .inv-hero--text .inv-copy { display: block; }
  .inv-hero--text .inv-actions { display: flex; flex-wrap: wrap; }
  .inv-hero .inv-lede { grid-row: 3; }
}


.scholar-section { padding: clamp(3.5rem, 6vw, 6rem) 0; color: var(--tone-text); }
.scholar-section--tight { padding-top: clamp(2.5rem, 4vw, 4rem); padding-bottom: clamp(2.5rem, 4vw, 4rem); }
.paper.plate + .paper.plate.scholar-section--tight { border-top: 1px solid var(--tone-rule); }
.scholar-section h2,
.scholar-section-head h2,
.scholar-split h2,
.scholar-beyond-head h2,
.scholar-lectures h2 {
  margin: 0;
  font: 400 clamp(2.4rem, 3.4vw, 3.5rem)/1.08 var(--serif);
  letter-spacing: -.02em;
  text-wrap: balance;
}
:is(.scholar-section, .scholar-split, .scholar-section-head) h2 em { color: var(--tone-accent); font-style: italic; font-weight: 400; }
.scholar-section-head { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 0 60px; align-items: end; margin-bottom: clamp(28px, 3vw, 40px); }
.scholar-section-head > .eyebrow-num { grid-column: 1 / -1; }
.scholar-section-head > p:not(.eyebrow-num) { max-width: 38ch; justify-self: end; margin: 0 0 4px; font: 400 clamp(1.15rem, 1.5vw, 1.4rem)/1.45 var(--serif); color: var(--tone-text); text-wrap: pretty; }
.scholar-split { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(28px, 6vw, 96px); align-items: start; }
.scholar-prose { max-width: 62ch; }
.scholar-prose > p, .scholar-intro { margin: 0 0 1.2rem; font: 400 1.02rem/1.75 var(--sans); color: var(--tone-text); }
.scholar-prose a:not(.text-link), .bibliography a, .key-works a, .film-credits a, .invite-copy a:not(.text-link), .organizers a:not(.text-link) {
  text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .2em; text-decoration-color: var(--tone-accent); overflow-wrap: anywhere;
}
.scholar-prose a:not(.text-link):hover, .bibliography a:hover { color: var(--tone-button); }
.scholar-intro { margin-top: 1.25rem; max-width: 34ch; font: 400 clamp(1.1rem, 1.4vw, 1.3rem)/1.5 var(--serif); }
.section-more { margin: clamp(28px, 3vw, 40px) auto 0; }
.text-link + .text-link { margin-left: 2rem; }
@media (max-width: 900px) {
  .scholar-section-head { grid-template-columns: minmax(0, 1fr); }
  .scholar-section-head > p:not(.eyebrow-num) { justify-self: start; margin-top: 16px; }
  .scholar-split { grid-template-columns: minmax(0, 1fr); gap: 22px; }
}
@media (max-width: 620px) {
  .scholar-section h2, .scholar-section-head h2, .scholar-split h2, .scholar-beyond-head h2, .scholar-lectures h2 { font-size: clamp(2rem, 8.5vw, 2.6rem); }
  .text-link + .text-link { margin-left: 0; }
}


.scholar-card-grid { display: grid; gap: 20px; }
.scholar-card-grid--two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.scholar-card-grid--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.scholar-card { position: relative; display: flex; flex-direction: column; align-items: flex-start; min-width: 0; padding: clamp(22px, 2.4vw, 32px); background: var(--tone-raised); border: 1px solid var(--tone-rule); }
.scholar-card:before { content: ""; position: absolute; top: -1px; left: 0; right: 0; height: 2px; background: var(--tone-accent); transform: scaleX(0); transform-origin: left; transition: transform .3s ease; }
@media (hover: hover) { .scholar-card:hover:before { transform: scaleX(1); } }
.scholar-card h3 { margin: 0 0 .5rem; font: 400 clamp(1.55rem, 2vw, 1.95rem)/1.15 var(--serif); text-wrap: balance; }
.scholar-card-label, .book-card-label { margin: 0 0 .85rem; font: 500 .64rem/1.5 var(--sans); letter-spacing: .08em; text-transform: uppercase; color: var(--tone-accent); }
.scholar-card-subtitle { margin: 0 0 1.1rem; font: italic 400 1.08rem/1.45 var(--serif); color: var(--tone-muted-strong); }
.scholar-card > p:not([class]) { margin: 0 0 1.5rem; font-size: .92rem; line-height: 1.75; color: var(--tone-text); }
.scholar-card .text-link { margin-top: auto; }
.scholar-card--ink { background: #ffffff0a; border-color: #ffffff26; color: var(--tone-light); }
.scholar-card--ink:before { background: var(--tone-accent-light); }
.scholar-card--ink > p:not([class]) { color: #d6d9d0; }
@media (max-width: 1000px) { .scholar-card-grid--three { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 760px) { .scholar-card-grid--two { grid-template-columns: minmax(0, 1fr); } }
@media (prefers-reduced-motion: reduce) { .scholar-card:before { transition: none; } }


.scholar-books { padding: clamp(3.5rem, 6vw, 6rem) 0; }
.scholar-books .home-selected-head { margin-bottom: clamp(28px, 3vw, 40px); }
.book-shelf { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.book-card { display: grid; grid-template-columns: minmax(96px, 132px) minmax(0, 1fr); gap: 22px; align-items: start; padding: 24px; background: var(--tone-raised); border: 1px solid var(--tone-rule); min-width: 0; }
.book-card-cover { margin: 0; }
.book-card-cover img { display: block; width: 100%; height: auto; box-shadow: 0 10px 24px #252b2d26; }
.book-card-copy { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; height: 100%; }
.book-card-meta { margin: 0 0 .8rem; font: 500 .64rem/1.5 var(--sans); letter-spacing: .08em; text-transform: uppercase; color: var(--tone-muted); }
.book-card h3 { margin: 0 0 .8rem; font: 400 1.3rem/1.2 var(--serif); text-wrap: balance; }
.book-card-copy > p:not([class]) { margin: 0 0 1.2rem; font-size: .88rem; line-height: 1.7; color: var(--tone-text); }
.book-card .text-link { margin-top: auto; }
@media (max-width: 1150px) { .book-shelf { grid-template-columns: minmax(0, 1fr); } .book-card { grid-template-columns: 120px minmax(0, 1fr); } .book-card-copy > p:not([class]) { max-width: 62ch; } }
@media (max-width: 480px) { .book-card { grid-template-columns: 84px minmax(0, 1fr); gap: 16px; padding: 18px; } .book-card h3 { font-size: 1.15rem; } }


.scholar-lectures .home-film-head { display: block; margin-bottom: clamp(26px, 3vw, 40px); }
.scholar-lectures .eyebrow-num { margin-bottom: 1.25rem; }
.scholar-lectures h2 em { color: var(--tone-accent-light); font-style: italic; }
.lecture-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(20px, 3vw, 40px); align-items: start; }
.lecture-card { min-width: 0; }
.lecture-card h3 { margin: 18px 0 8px; font: 400 clamp(1.3rem, 1.7vw, 1.6rem)/1.2 var(--serif); text-wrap: balance; }
.lecture-card-media { margin: 0; aspect-ratio: 16 / 9; overflow: hidden; border: 1px solid #ffffff26; }
.lecture-card-media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.lecture-card-caption, .talk-film-caption { margin: 0 0 1rem; max-width: 60ch; font: 400 .9rem/1.65 var(--sans); }
.scholar-lectures .lecture-card-caption { color: #bec5c1; }
.lecture-links { display: flex; flex-wrap: wrap; gap: 0 2rem; margin: clamp(26px, 3vw, 40px) 0 0; }
.scholar-lectures .text-link { color: var(--tone-light); }
.scholar-lectures .film-figure { margin: 0; }
@media (max-width: 900px) { .lecture-pair { grid-template-columns: minmax(0, 1fr); gap: 44px; } }


.scholar-beyond .scholar-beyond-head { max-width: 860px; margin-bottom: clamp(28px, 3vw, 40px); }
.scholar-beyond h2 em { color: var(--tone-accent-light); font-style: italic; }
.scholar-beyond .inv-ideas-deck { margin-top: 22px; max-width: 52ch; }
.scholar-beyond .text-link { color: var(--tone-light); }

.film-card { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 18px clamp(24px, 3vw, 40px); align-items: start; margin: 0 0 20px; padding: clamp(22px, 2.4vw, 32px); background: #ffffff0a; border: 1px solid #ffffff26; color: var(--tone-light); }
.film-card-label { margin: 0 0 10px; font: 500 .62rem/1.5 var(--sans); letter-spacing: .1em; text-transform: uppercase; color: var(--tone-accent-light); }
.film-card header h3 { margin: 0 0 .5rem; font: 400 clamp(1.55rem, 2vw, 1.95rem)/1.15 var(--serif); text-wrap: balance; }
.film-card header > p:last-child { margin: 0; font: 400 .92rem/1.75 var(--sans); color: #d6d9d0; }
.film-card .film-figure { --film-ink: var(--tone-light, #f7f5f0); --film-muted: #c3c6ca; --film-accent: var(--tone-accent-light, #d3ad98); min-width: 0; }
.film-card .film-figure :focus-visible { outline-color: var(--tone-accent-light, #d3ad98); }
.film-card .film-player { --film-chip-top: 74%; container-type: inline-size; }

@container (max-width: 440px) {
  .film-card .film-chip { top: auto; bottom: 8px; right: 8px; transform: none; gap: 10px; padding: 5px 14px 5px 5px; }
  .film-card .film-start-icon { width: 44px; height: 44px; }
  .film-card .film-start-icon svg { width: 16px; height: 16px; }
  .film-card .film-start-label { font-size: .82rem; }
  .film-card .film-start-time { font-size: .74rem; }
}
.film-download small { color: var(--film-muted); font-size: inherit; }
@media (max-width: 900px) { .film-card { grid-template-columns: minmax(0, 1fr); } }
.independence-line { margin: 26px 0 0; font: 400 .86rem/1.6 var(--sans); color: #bec5c1; }
.paper .independence-line, .speaking-inquiry .independence-line { color: inherit; }


.profile-links { display: flex; flex-wrap: wrap; gap: 0 2rem; margin: 1.5rem 0 0; }
.profile-links--after { align-items: center; margin-top: clamp(32px, 4vw, 48px); padding-top: 1.2rem; border-top: 1px solid var(--tone-rule); }
.profile-links-label { font: 500 .66rem/1.5 var(--sans); letter-spacing: .1em; text-transform: uppercase; color: var(--tone-muted); }


.project { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); gap: clamp(28px, 5vw, 80px); align-items: start; padding: clamp(32px, 4vw, 52px) 0; border-top: 1px solid var(--tone-rule); scroll-margin-top: 24px; }
.project:last-child { padding-bottom: 0; }
.project h3 { margin: 0 0 1.2rem; font: 400 clamp(1.6rem, 2.3vw, 2.25rem)/1.15 var(--serif); text-wrap: balance; }
.project-copy > p:not([class]) { margin: 0 0 1.1rem; max-width: 62ch; font: 400 1rem/1.75 var(--sans); }
.project-media { min-width: 0; }
.project-media--portrait { max-width: 380px; justify-self: center; width: 100%; }
.film-kicker { margin: 0 0 12px; font: 500 .64rem/1.5 var(--sans); letter-spacing: .1em; text-transform: uppercase; color: var(--tone-muted); }
.film-kicker span[id] { color: var(--tone-text); }
.project-media .film-figure { margin: 0; }
.project-media .lecture-card-caption { margin-top: 12px; color: var(--tone-muted); }
.film-credits { margin: 10px 0 0; font: 400 .74rem/1.6 var(--sans); color: var(--tone-muted); }
.film-portrait-plate { position: relative; }
.film-portrait-plate .film-player--portrait { width: 100%; }
.foundation-list { display: grid; gap: 0; }
.foundation { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 8px clamp(28px, 5vw, 80px); padding: clamp(26px, 3vw, 38px) 0; border-top: 1px solid var(--tone-rule-strong); }
.foundation h3 { grid-row: span 2; margin: 0; font: 400 clamp(1.4rem, 2vw, 1.85rem)/1.2 var(--serif); text-wrap: balance; }
.foundation > p:not([class]) { margin: 0; max-width: 62ch; font: 400 .98rem/1.75 var(--sans); }
.key-works { margin: 14px 0 0; max-width: 70ch; font: 400 .86rem/1.7 var(--sans); color: var(--tone-muted-strong); }
.key-works-label { display: block; margin-bottom: 4px; font: 500 .62rem/1.5 var(--sans); letter-spacing: .1em; text-transform: uppercase; color: var(--tone-accent); }
.key-works span[aria-hidden] { padding: 0 4px; color: var(--tone-rule-strong); }
.record-list { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--tone-rule); }
.record-list li { padding: 14px 0; border-bottom: 1px solid var(--tone-rule); font: 400 .96rem/1.6 var(--sans); }
.record-list--courses { margin: 6px 0 24px; }
.record-list--lectures li { font-size: .92rem; }
.lecture-title { font: italic 400 1.05rem/1.5 var(--serif); }
@media (max-width: 900px) {
  .project { grid-template-columns: minmax(0, 1fr); }
  .project-media--portrait { justify-self: start; max-width: 320px; }
  .foundation { grid-template-columns: minmax(0, 1fr); }
  .foundation h3 { grid-row: auto; margin-bottom: 8px; }
}


.bibliography { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--tone-rule); }
.bibliography li { padding: 16px 0; border-bottom: 1px solid var(--tone-rule); max-width: 92ch; font: 400 .98rem/1.7 var(--sans); }
.bibliography cite { font-family: var(--serif); font-size: 1.04em; font-style: italic; }
.bib-book { display: grid; grid-template-columns: 84px minmax(0, 1fr); gap: 22px; align-items: start; }
.bib-book p { margin: 0; }
.bib-book .book-card-label { margin: 0 0 .35rem; }
.bib-cover { display: block; width: 84px; height: auto; box-shadow: 0 8px 18px #252b2d26; }

.book-endorsement { margin: 0; }
.book-endorsement blockquote { margin: 0; font: 400 .95rem/1.5 var(--serif); color: var(--tone-text); text-wrap: pretty; }
.book-endorsement blockquote p { margin: 0; }
.book-endorsement blockquote cite, .book-endorsement figcaption cite { font: inherit; font-style: italic; }
.book-endorsement figcaption { margin-top: 7px; font: 400 .7rem/1.55 var(--sans); color: var(--tone-muted); text-wrap: balance; }
.book-card .book-endorsement { grid-column: 1 / -1; padding-top: 16px; border-top: 1px solid var(--tone-rule); }
.bib-book .book-endorsement { max-width: 62ch; margin-top: 14px; padding-left: 16px; border-left: 1px solid var(--tone-rule-strong); }
.bibliography--books li { padding: 22px 0; }


.teaching-record { margin: 0; border-top: 1px solid var(--tone-rule-strong); }
.teaching-record > div { padding: 16px 0; border-bottom: 1px solid var(--tone-rule-strong); }
.teaching-record dt { margin: 0 0 4px; font: 500 .7rem/1.5 var(--sans); letter-spacing: .08em; text-transform: uppercase; color: var(--tone-muted-strong); }
.teaching-record dd { margin: 0; font: 400 1.05rem/1.55 var(--serif); }


@media (min-width: 761px) { html body[data-page=speaking] main .speaking-index .shell { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
@media (min-width: 761px) and (max-width: 1100px) { html body[data-page=speaking] main .speaking-index.page-index a { gap: .45rem; padding-inline: .6rem; font-size: .72rem; } }
@media (max-width: 760px) and (min-width: 561px) { html body[data-page=speaking] main .speaking-index.page-index a:nth-child(-n+4) { border-bottom: 1px solid var(--tone-rule); } }


html body[data-page=speaking] .speaking-section-head.scholar-section-head { display: grid; }
.talk-films { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: clamp(24px, 3vw, 44px) clamp(20px, 3vw, 40px); align-items: start; }
.talk-film { min-width: 0; }
.talk-film h3 { margin: 16px 0 8px; font: 400 clamp(1.3rem, 1.7vw, 1.6rem)/1.2 var(--serif); text-wrap: balance; }
.talk-film .film-figure { margin: 0; }
.talk-film--portrait { grid-row: span 2; max-width: 360px; justify-self: end; width: 100%; }
.talk-film-caption { color: var(--tone-muted-strong); }
.lecture-card--light .lecture-card-media { border-color: var(--tone-rule); }
.talks-recorded .talk-films > .talk-film:nth-child(3), .talks-recorded .talk-films > .talk-film:nth-child(4) { grid-column: 1; }
@media (min-width: 1001px) {
  .talk-films { grid-template-columns: repeat(2, minmax(0, 1fr)) minmax(0, .9fr); }
  .talk-film--wide { grid-column: 1 / span 2; }
  .talk-film--portrait { grid-column: 3; grid-row: 1 / span 2; }
  .talks-recorded .talk-films > .talk-film:nth-child(3) { grid-column: 1; grid-row: 2; }
  .talks-recorded .talk-films > .talk-film:nth-child(4) { grid-column: 2; grid-row: 2; }
}
@media (max-width: 1000px) {
  .talk-films { grid-template-columns: minmax(0, 1fr); }
  .talk-film--portrait { grid-row: auto; justify-self: start; max-width: 340px; }
  .talks-recorded .talk-films > .talk-film:nth-child(3), .talks-recorded .talk-films > .talk-film:nth-child(4) { grid-column: auto; }
}


.flagship-card { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: clamp(28px, 4vw, 64px); align-items: start; margin: 0 0 clamp(40px, 5vw, 64px); padding: clamp(24px, 3vw, 40px); background: var(--tone-raised); border: 1px solid var(--tone-rule); border-top: 2px solid var(--tone-accent); scroll-margin-top: 24px; }
.flagship-card h3 { margin: 0 0 1rem; font: 400 clamp(2rem, 3vw, 2.8rem)/1.08 var(--serif); }
.flagship-card-copy > p:not([class]) { margin: 0 0 1.1rem; font: 400 1rem/1.75 var(--sans); }
.flagship-card .speaking-best-for { margin: 0 0 .4rem; }
.flagship-given { margin: 0 0 1.4rem; font: 400 .82rem/1.6 var(--sans); color: var(--tone-muted-strong); }
.flagship-modes { margin: 0; }
.flagship-modes figcaption { margin: 0 0 18px; font: 400 clamp(1.15rem, 1.5vw, 1.35rem)/1.4 var(--serif); }
.flagship-modes figcaption em { color: var(--tone-accent); font-style: italic; }
.flagship-modes .inv-mode-pair { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; border: 1px solid var(--tone-rule); background: var(--tone-paper); }
.flagship-modes .inv-mode { padding: 20px 22px 14px; }
.flagship-modes .inv-mode + .inv-mode { border-top: 1px solid var(--tone-rule); }
.flagship-modes .inv-mode-label { margin: 0 0 6px; font: 500 .62rem/1.5 var(--sans); letter-spacing: .1em; text-transform: uppercase; color: var(--tone-muted); }
.inv-mode-name { margin: 0 0 8px; font: 400 clamp(1.7rem, 2.4vw, 2.2rem)/1.1 var(--serif); }
.inv-mode-name img { display: block; width: min(220px, 70%); height: auto; }
.flagship-modes .inv-mode-copy { margin: 0 0 6px; font: 400 .84rem/1.6 var(--sans); }
.flagship-modes .inv-mode-copy strong { display: block; margin-bottom: 2px; font-weight: 600; }
.flagship-modes .inv-mode-path { display: block; width: 100%; height: 44px; color: var(--tone-accent); }
.flagship-modes .inv-mode--predictable .inv-mode-path { color: var(--tone-muted); }
@media (max-width: 1000px) { .flagship-card { grid-template-columns: minmax(0, 1fr); } }


html body[data-page=speaking] .speaking-section.scholar-section { padding: clamp(3.5rem, 6vw, 6rem) 0; }
.speaking-audience-response--sourced figcaption { margin-top: 14px; font: 400 .78rem/1.6 var(--sans); color: var(--tone-muted-strong); }
.speaking-audience-response--sourced figcaption a { text-decoration: underline; text-underline-offset: .2em; }
.invite-grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(28px, 6vw, 96px); align-items: start; }
.invite-grid h2 { margin: 0; font: 400 clamp(2.4rem, 3.6vw, 3.8rem)/1.05 var(--serif); }
.invite-grid h2 em { color: var(--tone-accent-light); font-style: italic; }
.invite-copy .speaking-deck { margin: 0 0 1.6rem; }
.invite-routes { margin: 0 0 1.4rem; border-top: 1px solid #ffffff26; }
.invite-routes > div { padding: 14px 0; border-bottom: 1px solid #ffffff26; }
.invite-routes dt { margin: 0 0 4px; font: 500 .66rem/1.5 var(--sans); letter-spacing: .08em; text-transform: uppercase; color: #bec5c1; }
.invite-routes dd { margin: 0; font: 400 1.1rem/1.5 var(--serif); }
.invite-routes a, .invite-media a { color: var(--tone-light); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .22em; text-decoration-color: var(--tone-accent-light); overflow-wrap: anywhere; }
.invite-media { margin: 1rem 0 0; font: 400 .9rem/1.6 var(--sans); color: #d6d9d0; }
.organizers { margin-top: clamp(48px, 6vw, 80px); padding-top: clamp(32px, 4vw, 48px); border-top: 1px solid #ffffff26; scroll-margin-top: 24px; }
.organizers > h3 { margin: 0 0 clamp(22px, 3vw, 32px); font: 400 clamp(1.8rem, 2.6vw, 2.4rem)/1.1 var(--serif); }
.organizers-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.organizers .bio-card, .organizers .stage-introduction { padding: clamp(20px, 2.4vw, 30px); background: #ffffff0a; border: 1px solid #ffffff26; }
.organizers h4 { margin: 0 0 12px; font: 400 1.35rem/1.2 var(--serif); }
.bio-card-roles { margin: 0 0 10px; font: 500 .62rem/1.5 var(--sans); letter-spacing: .1em; text-transform: uppercase; color: var(--tone-accent-light); }
.organizers .bio-card > p:not([class]), .organizers .stage-introduction > p { margin: 0; font: 400 1.02rem/1.7 var(--serif); color: #e7e8e2; }
.stage-introduction header { margin-bottom: 12px; }
.stage-introduction header h4 { margin-bottom: 2px; }
.stage-introduction header p { margin: 0; font: 400 .78rem/1.5 var(--sans); color: #bec5c1; }
.downloads-title { margin: clamp(32px, 4vw, 48px) 0 16px; font: 400 1.35rem/1.2 var(--serif); }
.organizers .download-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.organizers .download-card { display: flex; flex-direction: column; min-width: 0; background: #ffffff0a; border: 1px solid #ffffff26; }
.organizers .download-card figure { margin: 0; aspect-ratio: 4 / 3; overflow: hidden; border-bottom: 1px solid #ffffff26; }
.organizers .download-card img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 22%; }
.download-card-copy { display: flex; flex-direction: column; gap: 4px; padding: 16px 18px 18px; }
.download-card-copy p { margin: 0; font: 400 1.15rem/1.3 var(--serif); }
.download-card-copy span { font: 400 .72rem/1.5 var(--sans); color: #bec5c1; }
.download-card-copy a { display: inline-flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 44px; margin-top: 8px; border-top: 1px solid #ffffff26; padding-top: 10px; font: 500 .8rem/1.4 var(--sans); color: var(--tone-light); }
.download-card-copy a b { display: inline-flex; color: var(--tone-accent-light); font-weight: 400; }
.download-card-copy a:hover { color: #fff; }
@media (max-width: 900px) {
  .invite-grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .organizers-grid, .organizers .download-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (min-width: 621px) and (max-width: 900px) { .organizers .download-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }


.cv-section { padding: clamp(2.5rem, 5vw, 5rem) 0 clamp(3.5rem, 6vw, 6rem); }
.cv-document { max-width: 60rem; margin: 0 auto; padding: clamp(24px, 4vw, 56px); background: var(--tone-raised); border: 1px solid var(--tone-rule); color: var(--tone-text); }
.cv-header { padding-bottom: 22px; border-bottom: 1px solid var(--tone-rule-strong); }
.cv-document .cv-kicker { margin: 0 0 6px; font: 500 .66rem/1.5 var(--sans); letter-spacing: .12em; text-transform: uppercase; color: var(--tone-accent); }
.cv-document .cv-name { margin: 0 0 8px; font: 400 clamp(2rem, 3.4vw, 2.8rem)/1.1 var(--serif); letter-spacing: -.02em; }
.cv-document .cv-role { margin: 0 0 10px; font: 400 1.05rem/1.5 var(--serif); }
.cv-document .cv-contact { margin: 0; font: 400 .9rem/1.6 var(--sans); }
.cv-document a { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .2em; text-decoration-color: var(--tone-accent); overflow-wrap: anywhere; }
.cv-nav { display: flex; flex-wrap: wrap; gap: 4px 18px; margin: 18px 0 8px; padding-bottom: 14px; border-bottom: 1px solid var(--tone-rule); font: 500 .74rem/1.5 var(--sans); }
.cv-nav a { display: inline-flex; align-items: center; min-height: 32px; text-decoration: none; color: var(--tone-muted-strong); }
.cv-nav a:hover { color: var(--tone-button); }
.cv-document section { padding-top: clamp(22px, 3vw, 32px); scroll-margin-top: 24px; }
.cv-document h2 { margin: 0 0 14px; font: 400 clamp(1.45rem, 2.2vw, 1.85rem)/1.2 var(--serif); }
.cv-document h3 { margin: 22px 0 10px; font: 500 .74rem/1.5 var(--sans); letter-spacing: .1em; text-transform: uppercase; color: var(--tone-muted-strong); }
.cv-document p, .cv-document li, .cv-document dd { font: 400 .95rem/1.7 var(--sans); }
.cv-section-body > p { margin: 0 0 12px; }
.cv-strands p { margin: 0 0 12px; padding-left: 14px; border-left: 2px solid var(--tone-rule-strong); }
.cv-rows { margin: 0; }
.cv-rows .row { display: grid; grid-template-columns: 8.5rem minmax(0, 1fr); gap: 4px 20px; padding: 10px 0; border-top: 1px solid var(--tone-rule); }
.cv-rows.wide .row { grid-template-columns: 11rem minmax(0, 1fr); }
.cv-rows dt { font: 500 .8rem/1.7 var(--sans); color: var(--tone-muted-strong); font-variant-numeric: tabular-nums; }
.cv-rows dd { margin: 0; }
.cv-document .cv-note { display: block; margin-top: 4px; font-size: .86rem; color: var(--tone-muted-strong); }
.cv-lede { color: var(--tone-muted-strong); }
.cv-document ul { margin: 0 0 8px; padding-left: 1.1rem; }
.cv-document ul li { margin: 0 0 4px; }
.cv-footer { margin-top: 32px; padding-top: 16px; border-top: 1px solid var(--tone-rule-strong); }
.cv-document .cv-footer p { margin: 0 0 6px; font-size: .86rem; color: var(--tone-muted-strong); }
.cv-disclaimer { font-style: italic; }
@media (max-width: 620px) {
  .cv-document { padding: 22px 18px; }
  .cv-rows .row, .cv-rows.wide .row { grid-template-columns: minmax(0, 1fr); gap: 0; }
}


.privacy-notice { padding: clamp(2.5rem, 5vw, 5rem) 0 clamp(3.5rem, 6vw, 6rem); }
.privacy-layout { display: grid; grid-template-columns: minmax(0, .45fr) minmax(0, 1.55fr); gap: clamp(28px, 5vw, 80px); align-items: start; }
.privacy-contents { position: sticky; top: 24px; }
.privacy-contents-label { margin: 0 0 10px; font: 500 .66rem/1.5 var(--sans); letter-spacing: .1em; text-transform: uppercase; color: var(--tone-muted); }
.privacy-contents ol { margin: 0; padding-left: 1.1rem; font: 400 .88rem/1.9 var(--sans); }
.privacy-contents a:hover { color: var(--tone-button); }
.privacy-prose h2 { margin: 2rem 0 .8rem; font: 400 clamp(1.4rem, 2vw, 1.75rem)/1.2 var(--serif); scroll-margin-top: 24px; }
.privacy-prose h2:first-child { margin-top: 0; }
@media (max-width: 900px) { .privacy-layout { grid-template-columns: minmax(0, 1fr); } .privacy-contents { position: static; } }


.languages-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(200px, 300px); gap: clamp(32px, 7vw, 120px); align-items: end; margin-bottom: clamp(40px, 5vw, 64px); }
.languages-lede { margin: 1.4rem 0 0; max-width: 46ch; font: 400 clamp(1.12rem, 1.45vw, 1.3rem)/1.6 var(--serif); color: var(--tone-text); text-wrap: pretty; }
.languages-note { margin: 1rem 0 0; max-width: 52ch; font-size: .92rem; line-height: 1.7; color: var(--tone-muted); }
.languages-portrait { justify-self: end; width: calc(100% - 10px); max-width: 300px; margin: 0 10px 10px 0; }
.languages-portrait img { display: block; width: 100%; height: auto; }
.language-wall-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px 32px; flex-wrap: wrap; margin: 0 0 16px; }
.language-wall-legend { margin: 0; max-width: 70ch; font-size: .92rem; line-height: 1.6; color: var(--tone-muted); }
.language-wall-all { min-height: 44px; padding: 0 2px; background: none; border: 0; border-bottom: 1px solid var(--tone-accent); color: var(--tone-text); font: 500 .74rem/1 var(--sans); letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
.language-wall-all:hover { color: var(--tone-button); }
.language-wall-all[hidden] { display: none; }

.language-wall { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); grid-auto-flow: row dense; gap: 8px; margin: 0; padding: 0; list-style: none; }
.language-tile--wide { grid-column: span 2; }
.language-tile button { position: relative; display: block; width: 100%; height: 112px; margin: 0; padding: 0; overflow: hidden; background: var(--tone-paper); border: 1px solid var(--tone-rule); color: var(--tone-text); font: inherit; text-align: center; cursor: pointer; -webkit-tap-highlight-color: transparent; }
.language-tile button:focus-visible { outline: 2px solid var(--tone-accent); outline-offset: 2px; }
.tile-face, .tile-detail { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 8px 10px; transition: opacity .28s ease, transform .4s cubic-bezier(.2, .7, .2, 1); }
.tile-native { font: 400 clamp(1.3rem, 1.7vw, 1.6rem)/1.3 var(--serif); overflow-wrap: anywhere; }
.tile-native:is([lang=bo], [lang=xct]) { font-size: clamp(1.45rem, 2vw, 1.85rem); }
.tile-native:is([lang=hi], [lang=ne], [lang=sa]) { font-size: clamp(1.35rem, 1.8vw, 1.7rem); }
.tile-detail { gap: 3px; background: var(--tone-ink); color: var(--tone-light); opacity: 0; transform: translateY(12px); }
.tile-name { font: 400 1.05rem/1.2 var(--serif); }
.tile-level, .tile-kind { font: 500 .62rem/1.45 var(--sans); letter-spacing: .09em; text-transform: uppercase; }
.tile-level { margin-top: 4px; color: var(--tone-accent-light); }
.tile-kind { color: #bec5c1; }
.tile-note { margin-top: 2px; font: italic 400 .78rem/1.3 var(--serif); color: #e3e6e2; }
@media (hover: hover) {
  .language-tile button:hover .tile-face { opacity: 0; transform: translateY(-12px); }
  .language-tile button:hover .tile-detail { opacity: 1; transform: none; }
}
.language-tile button:is(:focus-visible, [aria-pressed=true]) .tile-face { opacity: 0; transform: translateY(-12px); }
.language-tile button:is(:focus-visible, [aria-pressed=true]) .tile-detail { opacity: 1; transform: none; }
.language-wall-foot { margin: 16px 0 0; max-width: 70ch; font-size: .9rem; line-height: 1.65; color: var(--tone-muted); }
@media (prefers-reduced-motion: reduce) { .tile-face, .tile-detail { transition: none; transform: none !important; } }

html:not(.js) .language-tile button { height: auto; min-height: 112px; cursor: default; }
html:not(.js) :is(.tile-face, .tile-detail) { position: static; opacity: 1; transform: none; padding: 10px; }
html:not(.js) .tile-detail { background: none; color: var(--tone-muted); padding-top: 0; }
@media print {
  .language-tile button { height: auto; }
  :is(.tile-face, .tile-detail) { position: static; opacity: 1 !important; transform: none !important; background: none !important; color: inherit !important; }
}
@media (max-width: 1200px) { .language-wall { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
@media (max-width: 900px) { .language-wall { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 700px) {
  .languages-head { grid-template-columns: minmax(0, 1fr); }
  .languages-portrait { justify-self: start; max-width: 260px; }
}
@media (max-width: 620px) {
  .language-wall { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
  .language-tile button { height: 96px; }
  .tile-face, .tile-detail { padding: 6px; }
  .tile-native { font-size: 1.22rem; }
  .tile-native:is([lang=bo], [lang=xct]) { font-size: 1.4rem; }
  .tile-native:is([lang=hi], [lang=ne], [lang=sa]) { font-size: 1.3rem; }
  .tile-name { font-size: .95rem; }
  .tile-level, .tile-kind { font-size: .56rem; letter-spacing: .07em; }
  .tile-note { font-size: .7rem; }
}
@media (max-width: 359px) { .language-wall { grid-template-columns: repeat(2, minmax(0, 1fr)); } }


.speaking-keynote-label a { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .22em; text-decoration-color: var(--tone-accent); }
.speaking-keynote-label a:hover { color: var(--tone-button); }
.speaking-band { margin: 0; background: linear-gradient(90deg, #0a0807, #050505); } 

.speaking-band img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; margin-inline: auto; object-fit: cover; }
@media (min-aspect-ratio: 27 / 20) {
  .speaking-band img { max-width: calc(90vh * 1.5); max-width: calc(90svh * 1.5);
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); }
}


.living-cv { padding: clamp(3.5rem, 6vw, 6rem) 0; background: var(--tone-paper); color: var(--tone-text); --red: var(--tone-accent); --accent: var(--tone-accent); }
.living-cv .timeline-head { margin-bottom: 1.75rem; gap: clamp(2rem, 4vw, 4.5rem); }
.living-cv .timeline-head > div:first-child { min-width: 0; }
.living-cv .timeline-head h2 { margin: 0; font: 400 clamp(2.65rem, 4.3vw, 4.3rem)/1.07 var(--serif); letter-spacing: -.02em; text-wrap: balance; }
.living-cv .timeline-head .fig-itinerary { flex: 0 0 auto; width: min(46%, 560px); }
.living-cv > .shell > .lede { max-width: 65ch; margin: 0; font-size: clamp(1.15rem, 1.5vw, 1.35rem); line-height: 1.65; color: var(--tone-muted); text-wrap: pretty; }
.living-cv .about-timeline-navigation { display: flex; align-items: end; gap: 1.5rem; margin: 2rem 0 1rem; padding-top: 1.25rem; border-top: 1px solid var(--tone-rule); }
.living-cv .about-timeline-navigation[hidden] { display: none; }
.living-cv .about-timeline-position { flex: 1; margin: 0 0 .8rem; font: italic 400 .9rem/1.5 var(--serif); color: var(--tone-muted); font-variant-numeric: tabular-nums; }
.living-cv .cv-index { display: flex; gap: clamp(.5rem, 1.6vw, 1.6rem); margin-left: -.45rem; font: 500 .74rem/1 var(--sans); letter-spacing: .04em; color: var(--tone-muted); }
.living-cv .cv-index button { min-width: 44px; min-height: 44px; padding: .6rem .45rem; background: none; border: 0; border-bottom: 1px solid transparent; color: inherit; font: inherit; letter-spacing: inherit; cursor: pointer; transition: color .25s, border-color .25s; }
.living-cv .cv-index button:hover { color: var(--tone-text); }
.living-cv .cv-index button.is-current { color: var(--tone-accent); border-color: var(--tone-accent); }
.living-cv .timeline-controls button { appearance: none; display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; cursor: pointer; transition: background .25s, color .25s; }
.living-cv .timeline-controls button:hover { background: var(--tone-ink); color: var(--tone-light); }
.living-cv .timeline { gap: 8px; align-items: stretch; margin: 0 calc(var(--side) * -1) 0 0; padding: .5rem var(--side) 1.25rem 0; list-style: none; overscroll-behavior-inline: contain; scrollbar-color: var(--tone-accent) var(--tone-stone); }
.living-cv .timeline:focus-visible { outline: 2px solid var(--tone-accent); outline-offset: 4px; }
.living-cv .timeline-card { display: flex; flex-direction: column; flex-basis: min(560px, max(256px, 64vw), calc(100% - 56px)); background: transparent; color: var(--tone-text); border: 0; scroll-snap-stop: always; }
.living-cv .timeline-photo { width: 100%; aspect-ratio: 3 / 2; flex-shrink: 0; overflow: hidden; background: var(--tone-stone); }
.living-cv .timeline-card img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; filter: saturate(.62) contrast(1.03) sepia(.08); transition: filter .4s; }
.living-cv .timeline-photo--top img { object-position: center top; }
.living-cv .timeline-photo--30 img { object-position: center 30%; }
.living-cv .timeline-photo--35 img { object-position: center 35%; }
.living-cv .timeline-photo--40 img { object-position: center 40%; }
.living-cv .timeline-photo--45 img { object-position: center 45%; }
.living-cv .timeline-photo--65 img { object-position: center 65%; }
.living-cv .timeline-photo--pan img { transform: scale(1.05); }
.living-cv .timeline-body { flex: 1; padding: 1rem 1rem 0 0; border: 0; }
.living-cv .timeline-meta { gap: .75rem; margin: 0 0 .75rem; font-size: .7rem; color: var(--tone-muted); }
.living-cv .timeline-card h3 { margin: 0 0 .5rem; font: 400 clamp(1.55rem, 2vw, 1.8rem)/1.15 var(--serif); }
.living-cv .timeline-place { margin: 0 0 .75rem; line-height: 1.6; color: var(--tone-accent); }
.living-cv .timeline-body > p:last-child { margin: 0; max-width: 60ch; font-size: .94rem; line-height: 1.7; color: var(--tone-muted); text-wrap: pretty; }
.living-cv .timeline-body a { color: var(--tone-text); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .2em; text-decoration-color: var(--tone-accent); }
.living-cv .timeline-body a:hover { color: var(--tone-button); }

.living-cv .station-seg { display: block; width: 100%; height: 48px; margin-bottom: .75rem; overflow: visible; }
.living-cv .seg-forecast { stroke: var(--tone-rule); stroke-width: 1; stroke-dasharray: 2 5; }
.living-cv .seg-actual { fill: none; stroke: var(--tone-accent); stroke-width: 1.75; stroke-dasharray: 1; stroke-dashoffset: 0; transition: stroke-dashoffset .9s cubic-bezier(.2, .72, .18, 1), stroke-width .25s; }
.living-cv .seg-dot { fill: var(--tone-accent); stroke: var(--tone-accent); stroke-width: 1.5; transition: fill .25s; }
.living-cv .timeline-card:last-child .seg-dot { fill: var(--tone-ink); stroke: var(--tone-ink); }

.living-cv .timeline.is-armed .timeline-card:not(.is-reached) .seg-actual { stroke-dashoffset: 1; }
.living-cv .timeline.is-armed .timeline-card:not(.is-reached) .seg-dot { fill: var(--tone-paper); stroke: var(--tone-accent); }
@media (hover: hover) {
  .living-cv .timeline-card:hover img { filter: saturate(.85) contrast(1.02); }
  .living-cv .timeline-card:hover .seg-actual { stroke-width: 2.6; }
}
@media (prefers-reduced-motion: reduce) { .living-cv :is(.seg-actual, .timeline-card img) { transition: none; } }
@media (max-width: 1279px) {
  .living-cv .timeline-head { flex-direction: column; align-items: flex-start; gap: 1.75rem; }
  .living-cv .timeline-head .fig-itinerary { width: min(100%, 560px); }
}
@media (max-width: 700px) {
  .living-cv .about-timeline-navigation { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: .5rem 1rem; }
  .living-cv .about-timeline-position { grid-column: 1; grid-row: 1; margin: 0; }
  .living-cv .timeline-controls { grid-column: 2; grid-row: 1; }
  .living-cv .cv-index { grid-column: 1 / -1; grid-row: 2; overflow-x: auto; gap: .75rem; scrollbar-width: none; }
  .living-cv .station-seg { height: 36px; }
}
@media (max-width: 560px) {
  .living-cv { padding-block: 3.25rem; }
  .living-cv .timeline-head h2 { font-size: clamp(2.1rem, 9vw, 2.65rem); line-height: 1.12; }
  .living-cv > .shell > .lede { font-size: 1.0625rem; }
  .living-cv .timeline-card { flex-basis: calc(100% - 2rem); }
  .living-cv .timeline-body > p:last-child { font-size: 1rem; line-height: 1.65; }
}


:is(.cv-way, .cv-glance-list li, #beyond-the-university .scholar-card h3, #card-beyond-calm, #card-religious-grammars, .speaking-best-for, #teaching .scholar-prose, #contact .scholar-prose, .foundation h3,
  #fellowships .record-list li, .record-list--courses li, .teaching-record dt, #supervision .scholar-prose, .flagship-card-copy,
  #talks article > header, .invite-routes dt, .invite-media, #bio-title, #stage-title, #film-profile-title, :is(#monographs-title, #articles-title, #chapters-title, #public-scholarship-title, #review-title), .privacy-prose h2,
  .cv-document section > h2)::before {
  content: ""; flex: none; background-color: currentColor;
  -webkit-mask: var(--icon) center / contain no-repeat; mask: var(--icon) center / contain no-repeat;
}

.cv-way--living { --icon: var(--icon-route); }
.cv-way--full { --icon: var(--icon-file-text); }
.cv-glance-post { --icon: var(--icon-landmark); }
.cv-glance-degrees { --icon: var(--icon-graduation-cap); }
.cv-glance-books { --icon: var(--icon-book-open); }
.cv-glance-languages { --icon: var(--icon-languages); }
#card-beyond-calm { --icon: var(--icon-mountain-snow); }
#card-religious-grammars { --icon: var(--icon-scroll-text); }
.speaking-best-for { --icon: var(--icon-users); }
#beyond-trilogy { --icon: var(--icon-book-open); }
#beyond-talks { --icon: var(--icon-mic); }
#beyond-advisory { --icon: var(--icon-compass); }
#teaching .scholar-prose { --icon: var(--icon-graduation-cap); }
#contact .scholar-prose { --icon: var(--icon-mail); }
#foundation-sky { --icon: var(--icon-mountain-snow); }
#foundation-de-martino { --icon: var(--icon-archive); }
#foundation-mind { --icon: var(--icon-brain); }
#fellowships .record-list { --icon: var(--icon-award); }
.record-list--courses { --icon: var(--icon-book-open); }
.teaching-record { --icon: var(--icon-map-pin); }
#supervision .scholar-prose { --icon: var(--icon-users); }
.flagship-card-copy { --icon: var(--icon-signpost); }
[aria-labelledby="talk-end-of-world"] { --icon: var(--icon-hourglass); }
[aria-labelledby="talk-cuckoo"] { --icon: var(--icon-bird); }
[aria-labelledby="talk-war-room"] { --icon: var(--icon-messages-square); }
.invite-routes > div:first-child { --icon: var(--icon-landmark); }
.invite-routes > div:nth-child(2) { --icon: var(--icon-mic); }
.invite-media:has(a[href^="https://www.erraticintelligence.com"]) { --icon: var(--icon-compass); }
.invite-media:has(a[href^="https://www.erraticus.press"]) { --icon: var(--icon-book-open); }
#bio-title { --icon: var(--icon-user-round); }
#stage-title { --icon: var(--icon-mic); }
#film-profile-title { --icon: var(--icon-film); }
#monographs-title { --icon: var(--icon-book-open); }
#articles-title { --icon: var(--icon-newspaper); }
#chapters-title { --icon: var(--icon-book-marked); }
#public-scholarship-title { --icon: var(--icon-globe); }
#review-title { --icon: var(--icon-message-square-text); }
#operator { --icon: var(--icon-user-round); }
#site-load { --icon: var(--icon-globe); }
#statistics { --icon: var(--icon-chart-column); }
#email { --icon: var(--icon-mail); }
#films { --icon: var(--icon-film); }
#external { --icon: var(--icon-external-link); }
#rights { --icon: var(--icon-shield-check); }
#review { --icon: var(--icon-refresh-cw); }
#profile { --icon: var(--icon-scroll-text); }
#appointments { --icon: var(--icon-landmark); }
#education { --icon: var(--icon-graduation-cap); }
#publications { --icon: var(--icon-book-open); }
#funding { --icon: var(--icon-award); }
#research { --icon: var(--icon-brain); }
.cv-document #teaching { --icon: var(--icon-presentation); }
#service { --icon: var(--icon-users); }
#lectures { --icon: var(--icon-mic); }
.cv-document #languages { --icon: var(--icon-languages); }
#qualifications { --icon: var(--icon-badge-check); }

:is(#beyond-the-university .scholar-card h3, #card-beyond-calm, #card-religious-grammars, #teaching .scholar-prose, #contact .scholar-prose, #supervision .scholar-prose, .flagship-card-copy, #talks article > header)::before {
  display: block; width: 30px; height: 30px; margin-bottom: 16px; color: var(--tone-accent);
}
#beyond-the-university .scholar-card h3::before { color: var(--tone-accent-light); }
.speaking-best-for::before { display: inline-block; width: 15px; height: 15px; margin-right: 8px; vertical-align: -3px; color: var(--tone-accent); }
.foundation h3::before { display: block; width: 32px; height: 32px; margin-bottom: 14px; color: var(--tone-accent); }
:is(#fellowships .record-list li, .record-list--courses li) { display: grid; grid-template-columns: 18px minmax(0, 1fr); gap: 14px; align-items: start; }
:is(#fellowships .record-list li, .record-list--courses li)::before { width: 18px; height: 18px; margin-top: 3px; color: var(--tone-accent); }
.teaching-record dt { display: flex; align-items: center; gap: 8px; }
.teaching-record dt::before { width: 14px; height: 14px; color: var(--tone-accent); }
.invite-routes dt { display: flex; align-items: center; gap: 10px; }
.invite-routes dt::before { width: 16px; height: 16px; color: var(--tone-accent-light); }
.invite-media::before { display: inline-block; width: 16px; height: 16px; margin-right: 9px; vertical-align: -3px; color: var(--tone-accent-light); }
:is(#bio-title, #stage-title, #film-profile-title)::before { display: inline-block; width: 20px; height: 20px; margin-right: 10px; vertical-align: -3px; color: var(--tone-accent-light); }
:is(#monographs-title, #articles-title, #chapters-title, #public-scholarship-title, #review-title)::before { display: inline-block; width: .72em; height: .72em; margin-right: .32em; vertical-align: -.04em; color: var(--tone-accent); }
.privacy-prose h2::before { display: inline-block; width: 22px; height: 22px; margin-right: 10px; vertical-align: -3px; color: var(--tone-accent); }
.cv-document section > h2::before { display: inline-block; width: 22px; height: 22px; margin-right: 10px; vertical-align: -3px; color: var(--tone-accent); }
@media print { :is(.cv-document section > h2, .privacy-prose h2)::before { content: none; } }


.cv-hero .inv-identity span { padding: 0 6px; }
.cv-ways { display: grid; gap: 10px; max-width: 540px; margin-top: 30px; }
.cv-way { display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; align-items: center; gap: 16px; padding: 16px 18px; background: var(--tone-raised); border: 1px solid var(--tone-rule); color: var(--tone-text); text-decoration: none; transition: border-color .25s, transform .25s, box-shadow .25s; }
.cv-way::before { width: 28px; height: 28px; color: var(--tone-accent); }
.cv-way:hover, .cv-way:focus-visible { border-color: var(--tone-accent); transform: translateY(-1px); box-shadow: 0 8px 22px #252b2d14; }
.cv-way-title { display: block; font: 400 1.3rem/1.2 var(--serif); }
.cv-way-note { display: block; margin-top: 5px; font: 500 .66rem/1.5 var(--sans); letter-spacing: .07em; text-transform: uppercase; color: var(--tone-muted); }
.cv-way-arrow { display: inline-flex; color: var(--tone-accent); }
@media (prefers-reduced-motion: reduce) { .cv-way { transition: none; } .cv-way:hover, .cv-way:focus-visible { transform: none; } }
.cv-glance { background: var(--tone-paper); border-top: 1px solid var(--tone-rule); border-bottom: 1px solid var(--tone-rule); }
.cv-glance-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0 auto; padding: 0; list-style: none; }
.cv-glance-list li { display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 12px; align-items: start; padding: 22px 22px 22px 24px; border-left: 1px solid var(--tone-rule); font: 400 .9rem/1.55 var(--sans); color: var(--tone-text); }
.cv-glance-list li:first-child { padding-left: 0; border-left: 0; }
.cv-glance-list li::before { width: 24px; height: 24px; color: var(--tone-accent); }
.cv-glance-list a { color: inherit; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .2em; text-decoration-color: var(--tone-accent); }
.cv-glance-list a:hover { color: var(--tone-button); }
@media (max-width: 1100px) {
  .cv-glance-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cv-glance-list li:nth-child(3) { padding-left: 0; border-left: 0; }
  .cv-glance-list li:nth-child(n+3) { border-top: 1px solid var(--tone-rule); }
}
@media (max-width: 620px) {
  .cv-hero .inv-portrait--full { width: min(62%, 240px); }
  .cv-ways { margin-top: 22px; }
  .cv-way { gap: 12px; padding: 14px; }
  .cv-way-title { font-size: 1.15rem; }
  .cv-glance-list { grid-template-columns: minmax(0, 1fr); }
  .cv-glance-list li { padding: 14px 0; border-left: 0; }
  .cv-glance-list li + li { border-top: 1px solid var(--tone-rule); }
}


.site-footer .footer-top { grid-template-columns: minmax(280px, 1.2fr) minmax(140px, .5fr) minmax(280px, 1.1fr); }
.site-footer .footer-identity p.footer-role { max-width: 40ch; margin: 1.4rem 0 0; font: 400 .86rem/1.65 var(--sans); color: #bec5c1; }
.footer-contact { display: flex; flex-direction: column; gap: .9rem; }
.footer-line { margin: 0; font: 400 .8rem/1.65 var(--sans); color: #bec5c1; }
.footer-line a { color: var(--tone-light); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .22em; text-decoration-color: #ffffff4d; overflow-wrap: anywhere; }
.footer-line a:hover, .footer-line a:focus-visible { text-decoration-color: var(--tone-accent-light); color: #fff; }
.footer-line span[aria-hidden] { padding: 0 3px; color: #ffffff59; }
.footer-independent { padding-top: .9rem; border-top: 1px solid #ffffff26; }
.site-footer .footer-bottom { gap: 1rem 2rem; flex-wrap: wrap; text-transform: none; letter-spacing: .02em; font-size: .76rem; }
@media (max-width: 1000px) { .site-footer .footer-top { grid-template-columns: 1fr 1fr; } .site-footer .footer-identity { grid-column: 1 / -1; } }
@media (max-width: 620px) { .site-footer .footer-top { grid-template-columns: 1fr; } }


@media print {
  html body[data-route=cv] :is([data-header], [data-footer], .cv-hero, .living-cv, .cv-nav, .cv-actions) { display: none !important; }
  html body[data-route=cv] .cv-section { padding: 0; background: #fff; }
  html body[data-route=cv] .cv-section .shell { width: 100%; }
  html body[data-route=cv] .cv-document { max-width: none; padding: 0; border: 0; background: #fff; }
  html body[data-route=cv] .cv-document a { color: inherit; text-decoration: none; }
  html body[data-route=cv] .cv-document section { break-inside: auto; padding-top: 14px; }
  html body[data-route=cv] .cv-document :is(h2, h3) { break-after: avoid; page-break-after: avoid; }
  html body[data-route=cv] .cv-document :is(h2, h3) + :is(dl, ul, p, div) { break-before: avoid; }
  html body[data-route=cv] .cv-rows .row { break-inside: avoid; }
}


.abc-broadcast{background:var(--tone-paper,#f4f0e7);color:var(--tone-text,#242825);border-block:1px solid var(--tone-rule,#c9c7ba);padding:clamp(28px,4vw,54px) 0}
.abc-broadcast .abc-inner{width:min(1240px,calc(100% - 2 * var(--inv-gutter,32px)));margin-inline:auto;display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(22px,4vw,64px);align-items:start}
.abc-broadcast .abc-kicker{margin:0 0 12px;font:500 .68rem/1.5 var(--sans,sans-serif);letter-spacing:.08em;text-transform:uppercase;color:var(--tone-accent,#854539)}
.abc-broadcast h2{margin:0;font:400 clamp(1.7rem,2.6vw,2.6rem)/1.15 var(--serif,serif);text-wrap:balance;letter-spacing:-.015em;overflow-wrap:anywhere}
.abc-broadcast .abc-body{margin:0 0 14px;font:400 1rem/1.7 var(--sans,sans-serif);max-width:66ch}
.abc-broadcast .abc-episode{margin:0 0 12px;font:italic 400 1.05rem/1.5 var(--serif,serif);overflow-wrap:anywhere}
.abc-broadcast .abc-meta{margin:0 0 16px;font:400 .8rem/1.6 var(--sans,sans-serif);color:var(--tone-muted-strong,#53594e)}
.abc-broadcast .abc-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px}
.abc-broadcast .abc-actions a{display:inline-flex;align-items:center;min-height:44px;font:500 .86rem/1.4 var(--sans,sans-serif);color:var(--tone-text,#242825);text-decoration:underline;text-underline-offset:.25em;text-decoration-color:var(--tone-accent,#854539);overflow-wrap:anywhere}
.abc-broadcast .abc-actions a:first-child{padding:11px 18px;background:var(--tone-button,#77392f);color:#fff;text-decoration:none;border:1px solid transparent}
.abc-broadcast a:focus-visible,.abc-context a:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.abc-context{margin-block:22px;padding-inline-start:18px;border-inline-start:2px solid var(--tone-accent,#854539);font:400 .94rem/1.7 var(--sans,sans-serif);color:var(--tone-text,#242825)}
.abc-context a{color:inherit;text-decoration:underline;text-underline-offset:.22em}
@media(max-width:700px){.abc-broadcast .abc-inner{grid-template-columns:minmax(0,1fr);width:calc(100% - 40px);gap:20px}.abc-broadcast h2{font-size:clamp(1.6rem,7vw,2rem)}.abc-broadcast .abc-actions{align-items:flex-start;gap:8px 22px}}
