.lol-field { box-sizing: border-box; width: 100%; min-width: 0; min-height: 44px; font: inherit; line-height: 1.3; padding: 10px 16px; border: 1px solid var(--color-border,#3a4149); border-radius: var(--field-radius,6px); background: var(--color-surface,#1a1a1a); color: var(--color-text,#f0f4f8); caret-color: var(--color-focus,var(--color-primary,#00ff41)); }
.lol-field:focus { border-color: var(--color-focus,var(--color-primary,#00ff41)); outline: 2px solid var(--color-focus,var(--color-primary,#00ff41)); outline-offset: -1px; }
.lol-field:disabled { opacity: .65; cursor: not-allowed; }
.lol-field[aria-invalid=true] { border-color: var(--color-error,#ff7070); }
.lol-select-field { position: relative; min-width: 0; color: var(--color-text,#f0f4f8); }
.lol-select-field > select { appearance: none; padding-inline-end: 44px; }
.lol-select-field > svg { position: absolute; inset-inline-end: 16px; top: 50%; transform: translateY(-50%); width: 12px; height: 12px; pointer-events: none; }
.lol-select-field:has(> select:disabled) > svg { opacity: .65; }
@media(forced-colors:active) {
  .lol-field:focus { outline-color: Highlight; }
  .lol-select-field > svg { color: ButtonText; }
}

@font-face { font-family: "Hanken Grotesk"; src: url("/static/fonts/hanken-grotesk-regular.ttf") format("truetype"); font-style: normal; font-weight: 400; font-display: swap; }
@font-face { font-family: "Hanken Grotesk"; src: url("/static/fonts/hanken-grotesk-semibold.ttf") format("truetype"); font-style: normal; font-weight: 600; font-display: swap; }
@font-face { font-family: "EB Garamond"; src: url("/static/fonts/eb-garamond-regular.ttf") format("truetype"); font-style: normal; font-weight: 400; font-display: swap; }
:root { --paper: #f5f4ee; --ink: #413e3a; --muted: #67675e; --green: #345c50; --night: #102a36; --mineral: #e7eced; --sage: #e6e7d6; --ease-out: cubic-bezier(.2,.8,.2,1); --feedback: 360ms; --hover-ease: cubic-bezier(.22, 1, .36, 1); --hover-motion: 420ms; --disclosure: 200ms; --gutter: clamp(24px, 5vw, 88px); --header-height: 100px; scroll-padding-top: calc(var(--header-height) + 24px); font-family: "Hanken Grotesk", sans-serif; color: var(--ink); background: var(--paper); font-synthesis: none; scroll-behavior: smooth; scrollbar-color: #7a887b var(--paper); }
* { box-sizing: border-box; }
body { margin: 0; font-size: 18px; line-height: 1.6; }
::selection { color: var(--paper); background: var(--green); }
a { color: inherit; text-decoration: none; }
a:focus-visible, button:focus-visible, summary:focus-visible { outline: 2px solid var(--green); outline-offset: 6px; }
:where(main, section, article, div, h1, h2, h3, h4, h5, h6)[tabindex="-1"]:focus { outline: none; }
img { display: block; max-width: 100%; }
figure, p, h1, h2, h3 { margin: 0; }
h1, h2, h3, h4, h5, h6, .hero-remit { font-family: "EB Garamond", Georgia, serif; font-weight: 400; }
h2, h3, .hero-remit { text-wrap: balance; }
h2 { font-size: clamp(40px, 4.3vw, 64px); line-height: 1.08; letter-spacing: -.03em; }
h3 { line-height: 1.2; letter-spacing: -.02em; }
p { text-wrap: pretty; }
section[id] { scroll-margin-top: 0; }
.section-gutter { padding-inline: var(--gutter); }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; top: -100px; left: 20px; z-index: 100; padding: 12px 20px; background: var(--paper); }
.skip-link:focus { top: 12px; }
.arrow { width: 22px; height: 22px; flex: 0 0 22px; transition: transform var(--hover-motion) var(--hover-ease); }
.text-link { display: inline-flex; align-items: center; gap: 22px; min-height: 44px; text-decoration: none; font-size: 16px; line-height: 1.3; }
.text-link:focus-visible .arrow { transform: translateX(4px); }
.text-link.link-down:focus-visible .arrow { transform: translateY(4px); }
.text-link.link-out:focus-visible .arrow { transform: translate(3px, -3px); }
#site-navigation { position: sticky; top: 0; z-index: 30; }
.site-header { position: relative; background: var(--paper); }
.header-main { display: flex; align-items: center; justify-content: space-between; min-height: 100px; padding: 16px var(--gutter); gap: 45px; }
.site-logo { display: inline-flex; align-items: center; gap: 10px; font-family: "EB Garamond", Georgia, serif; font-size: 29px; line-height: 1; letter-spacing: -.025em; text-decoration: none; white-space: nowrap; flex-shrink: 0; }
.site-logo img { width: 64px; height: 64px; }
.navigation-shell { min-width: 0; }
.navigation-toggle, .mobile-contact { display: none; }
#primary-navigation { display: flex; align-items: center; gap: 32px; }
summary { cursor: pointer; list-style: none; }
summary::-webkit-details-marker { display: none; }
.nav-section > summary { display: flex; align-items: center; gap: 9px; font-size: 17px; min-height: 48px; white-space: nowrap; }
.nav-chevron { width: 12px; height: 12px; transition: transform 180ms ease-out; }
.nav-section[data-expanded=true] > summary, .nav-section > summary[aria-current] { color: var(--green); }
.nav-section[data-expanded=true] .nav-chevron { transform: rotate(180deg); }
.nav-panel { position: absolute; inset: 100% 0 auto; display: flex; gap: 8%; padding: 48px var(--gutter) 52px; background: #eeefe6; box-shadow: 0 16px 28px #142b3624; }
.nav-overview { flex: 0 0 31%; max-width: 400px; }
.nav-title { font-family: "EB Garamond", Georgia, serif; font-size: 40px; line-height: 1.15; margin-bottom: 17px; }
.nav-overview > p:not(.nav-title) { font-size: 18px; color: #596354; }
.nav-overview .text-link { margin-top: 18px; }
.nav-destinations { flex: 1; display: grid; grid-template-columns: 1fr 1fr; gap: 12px 48px; }
.nav-destinations a { position: relative; isolation: isolate; display: grid; grid-template-columns: 1fr 22px; gap: 4px 16px; align-content: center; padding-block: 18px; text-decoration: none; }
.nav-link-title { position: relative; width: fit-content; font-size: 21px; line-height: 1.3; transition: color var(--feedback) var(--hover-ease); }
.nav-link-detail { font-size: 15px; color: #596354; grid-column: 1; transition: color var(--feedback) var(--hover-ease); }
.nav-destinations .arrow { grid-column: 2; grid-row: 1 / 3; align-self: center; }
.nav-destinations a:focus-visible .arrow { transform: translateX(4px); }
.hero { position: relative; min-height: clamp(760px, 54vw, 960px); overflow: hidden; background: #e4e9e5; }
.hero-identity { position: relative; z-index: 1; text-align: center; display: flex; flex-direction: column; align-items: center; padding: 44px var(--gutter) 240px; }
.hero-logo { width: 252px; height: auto; margin-bottom: 28px; }
.hero-remit { font-size: clamp(30px, 3.2vw, 48px); line-height: 1.12; letter-spacing: -.015em; }
.hero-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 44px; margin-top: 25px; }
.hero-landscape { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 100%; }
.research { padding-block: 104px 112px; }
.research-intro { display: flex; justify-content: space-between; align-items: start; gap: 40px; }
.research-intro h2 { font-size: clamp(44px, 4.5vw, 64px); }
.research-intro > p { max-width: 350px; font-size: 18px; line-height: 1.55; color: var(--muted); }
.theme-index { list-style: none; padding: 0; margin: 64px 0 0 16%; font-family: "EB Garamond", Georgia, serif; font-size: clamp(44px, 4.9vw, 72px); line-height: 1.3; letter-spacing: -.025em; }
.theme-index li { display: inline; white-space: nowrap; }
.theme-index a { display: inline-block; min-height: 44px; text-decoration: none; color: var(--green); }
.theme-punctuation { color: var(--muted); }
.research-more { margin: 40px 0 0 16%; }
.content-unavailable { padding-block: 24px; color: var(--muted); }
.programme { padding-block: 95px 115px; background: var(--mineral); }
.programme-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 12%; margin-bottom: 64px; }
.programme-heading h2 { order: 2; text-align: right; flex-shrink: 0; }
.programme-heading > div { max-width: 370px; font-size: 19px; }
.programme-heading .text-link { margin-top: 21px; }
.programme-body { display: flex; gap: 8%; align-items: stretch; }
.masterclass-feature { flex: 0 0 59%; min-height: 430px; padding: 50px; display: flex; flex-direction: column; justify-content: space-between; text-decoration: none; background: #cbd8d8; color: #263f41; }
.masterclass-feature h3 { font-size: clamp(38px, 4.2vw, 65px); line-height: 1.14; }
.masterclass-feature:focus-visible { background: #c3d2d2; color: #203c3e; }
.feature-bottom { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-top: 60px; }
.feature-bottom > p { max-width: 310px; font-size: 18px; }
.feature-arrow { background: #b9cbc6; display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; flex-shrink: 0; border-radius: 50%; transition: background-color var(--feedback) var(--hover-ease), border-color var(--feedback) var(--hover-ease); }
.masterclass-feature:focus-visible .arrow { transform: translate(3px, -3px); }
.masterclass-feature:focus-visible .feature-arrow { background: #b4c7c4; border-color: #506f69; }
.programme-companions { flex: 1; display: flex; flex-direction: column; }
.programme-companions > a { display: block; position: relative; flex: 1; text-decoration: none; padding-block: 30px; }
.programme-companions h3 { font-size: 34px; max-width: 300px; }
.programme-companions p { font-size: 17px; margin-top: 14px; max-width: 275px; }
.programme-companions .arrow { position: absolute; right: 0; bottom: 28px; }
.mathesis { padding: 95px var(--gutter) 110px; background: var(--sage); }
.mathesis-inner { max-width: 1160px; margin-inline: auto; }
.mathesis h2 { font-size: clamp(70px, 7vw, 96px); letter-spacing: -.035em; }
.mathesis-subtitle { font-family: "EB Garamond", Georgia, serif; font-size: clamp(30px, 3.2vw, 46px); line-height: 1.2; letter-spacing: -.025em; margin: 15px 0 30px 23%; }
.mathesis-copy { margin-left: 46%; font-size: 20px; max-width: 580px; }
.mathesis-links { display: flex; flex-wrap: wrap; gap: 12px 34px; margin: 25px 0 0 46%; }
.heritage { padding-block: 112px; }
.heritage-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr) minmax(0, 1fr); grid-template-areas: "lie copy stormer"; align-items: center; gap: clamp(32px, 4vw, 64px); max-width: 1280px; margin-inline: auto; }
.portrait { min-width: 0; }
.portrait img { width: 100%; height: auto; aspect-ratio: 3 / 4; object-fit: cover; }
.portrait-lie { grid-area: lie; }
.portrait-stormer { grid-area: stormer; }
.portrait figcaption { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px 16px; font-size: 14px; margin-top: 14px; }
.portrait figcaption span { color: var(--muted); }
.heritage-copy { grid-area: copy; max-width: 470px; text-align: center; justify-self: center; }
.heritage-copy h2 { font-size: clamp(34px, 3.1vw, 46px); line-height: 1.15; }
.heritage-copy p { margin-top: 26px; font-size: 18px; color: var(--muted); }
.heritage-copy .text-link { margin-top: 22px; }
.community { background: var(--night); color: #f3f3e9; }
.community a:focus-visible { outline-color: #d8e5cc; }
.community { position: relative; isolation: isolate; overflow: hidden; }
.community-content { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr 320px; align-items: center; column-gap: 64px; max-width: 1600px; margin-inline: auto; padding-block: 104px 96px; }
.community h2 { font-size: clamp(60px, 6.5vw, 96px); line-height: 1.04; }
.community p { font-size: 19px; line-height: 1.55; color: #d9e4e2; }
.community-actions { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; margin-top: 24px; }
.community-actions .text-link { min-width: 215px; justify-content: space-between; }
a, summary { -webkit-tap-highlight-color: transparent; }
a, button, summary, input, select { transition: color var(--feedback) var(--hover-ease), background-color var(--feedback) var(--hover-ease), border-color var(--feedback) var(--hover-ease), opacity var(--feedback) var(--hover-ease), box-shadow var(--feedback) var(--hover-ease), transform var(--hover-motion) var(--hover-ease); }
.site-logo:active { opacity: .75; }
.programme-companions a:focus-visible .arrow { transform: translateX(4px); }
@media (hover: hover) and (pointer: fine) {
  a:hover { color: #24483e; }
  .theme-index a:hover { color: #132f27; }
  .text-link:hover .arrow { transform: translateX(4px); }
  .text-link.link-down:hover .arrow { transform: translateY(4px); }
  .text-link.link-out:hover .arrow { transform: translate(3px, -3px); }
  .masterclass-feature:hover { background: #c3d2d2; color: #203c3e; }
  .masterclass-feature:hover .arrow { transform: translate(3px, -3px); }
  .masterclass-feature:hover .feature-arrow { background: #b4c7c4; border-color: #506f69; }
  .community a:hover { color: #ffffff; }
  .nav-section > summary:hover { color: var(--green); }
  .nav-destinations a:hover .arrow, .programme-companions a:hover .arrow { transform: translateX(4px); }
  .nav-destinations a:hover .nav-link-title { color: #254d40; }
  .nav-destinations a:hover .nav-link-detail { color: #435747; }
}
.text-link:active .arrow, .nav-destinations a:active .arrow, .programme-companions a:active .arrow { transform: translateX(1px); transition-duration: 70ms; }
.text-link.link-down:active .arrow { transform: translateY(1px); }
.text-link.link-out:active .arrow { transform: translate(1px, -1px); }
.nav-section > summary:active { color: #254438; }
.masterclass-feature:active { background: #bacdca; }
.masterclass-feature:active .arrow { transform: translate(1px, -1px); }
.community a:active { color: #adc9c1; }
@media (min-width: 1800px) {
  .hero-identity { padding-top: 65px; }
  .hero-logo { width: 280px; }
}
@media (max-width: 1199px) {
  .header-main { gap: 25px; }
  .site-logo { font-size: 26px; gap: 8px; }
  .site-logo img { width: 58px; height: 58px; }
  #primary-navigation { gap: 22px; }
  .masterclass-feature { padding: 38px; }
}
@media (max-width: 1079px) {
  .community-content { grid-template-columns: 1fr 280px; gap: 40px; }
  .community h2 { font-size: 64px; }
  :root { --header-height: 90px; }
  .header-main { min-height: 90px; }
  .navigation-toggle { display: flex; align-items: center; gap: 13px; min-height: 48px; font-size: 16px; }
  .menu-lines { width: 21px; height: 12px; position: relative; }
  .menu-lines::before, .menu-lines::after { content: ""; position: absolute; left: 0; width: 21px; height: 1px; background: currentColor; transition: transform 180ms cubic-bezier(.2,.8,.2,1); }
  .menu-lines::before { top: 0; }
  .menu-lines::after { bottom: 0; }
  .navigation-toggle[aria-expanded=true] .menu-lines::before { transform: translateY(5.5px) rotate(45deg); }
  .navigation-toggle[aria-expanded=true] .menu-lines::after { transform: translateY(-5.5px) rotate(-45deg); }
  #primary-navigation { position: absolute; inset: 100% 0 auto; display: block; max-height: calc(100dvh - 90px); overflow-y: auto; overscroll-behavior: contain; padding: 12px var(--gutter) 28px; background: var(--paper); box-shadow: 0 16px 28px #142b3624; }
  .nav-section > summary { justify-content: space-between; font-size: 23px; min-height: 65px; }
  .nav-panel { position: static; display: block; padding: 15px 0 25px; box-shadow: none; background: transparent; }
  .nav-overview { max-width: none; }
  .nav-title, .nav-overview > p:not(.nav-title) { display: none; }
  .nav-overview .text-link { margin-top: 0; margin-bottom: 10px; }
  .nav-destinations { display: grid; gap: 0 35px; }
  .nav-destinations a { padding-block: 18px; }
  .nav-link-title { font-size: 19px; }
  .mobile-contact { display: inline-flex; margin-top: 22px; min-height: 44px; align-items: center; }
  .hero-remit { font-size: 39px; }
  .programme-heading { gap: 7%; }
  .programme-body { gap: 6%; }
  .masterclass-feature { flex-basis: 55%; padding: 32px; }
  .programme-companions h3 { font-size: 29px; }
  .theme-index { margin-left: 8%; font-size: 58px; }
  .research-more { margin-left: 8%; }
  .heritage { padding-block: 88px; }
  .heritage-layout { grid-template-columns: 1fr 1fr; grid-template-areas: "copy copy" "lie stormer"; gap: 48px 32px; max-width: 620px; }
  .heritage-copy { max-width: 500px; }
  .heritage-copy h2 { font-size: 44px; }
}
@media (max-width: 700px) {
  .community-content { display: block; padding-block: 72px 80px; }
  .community h2 { font-size: clamp(46px, 12vw, 64px); }
  .community-invitation { margin-top: 30px; max-width: 390px; }
  .community p { font-size: 18px; }
  .community-actions { margin-top: 22px; }
  :root { --gutter: 24px; }
  body { font-size: 17px; }
  .header-main { min-height: 84px; padding-block: 14px; gap: 20px; }
  :root { --header-height: 84px; }
  .site-logo { font-size: clamp(19px, 5vw, 24px); gap: 6px; }
  .site-logo img { width: 44px; height: 44px; }
  #primary-navigation { max-height: calc(100dvh - 84px); }
  .nav-destinations { grid-template-columns: 1fr; }
  .nav-link-detail { font-size: 14px; }
  .hero { min-height: 740px; }
  .hero-identity { padding: 32px 22px 260px; }
  .hero-logo { width: 212px; margin-bottom: 28px; }
  .hero-remit { font-size: 29px; line-height: 1.22; max-width: 440px; }
  .hero-remit br { display: none; }
  .hero-actions { gap: 8px 24px; margin-top: 24px; }
  .hero-actions .text-link { font-size: 16px; gap: 10px; }
  .hero-actions .arrow { width: 18px; height: 18px; flex-basis: 18px; }
  .hero-landscape { object-position: 43% 100%; }
  .research { padding-block: 72px 80px; }
  .research-intro { display: block; }
  .research-intro h2 { font-size: 42px; }
  .research-intro > p { font-size: 17px; margin-top: 24px; }
  .theme-index { margin: 36px 0 0; font-size: clamp(31px, 8.9vw, 48px); line-height: 1.5; }
  .research-more { margin: 28px 0 0; }
  .programme { padding-block: 64px 70px; }
  .programme-heading { display: block; margin-bottom: 35px; }
  .programme-heading h2 { text-align: right; font-size: 42px; margin-bottom: 28px; }
  .programme-heading > div { font-size: 17px; max-width: 330px; }
  .programme-body { display: block; }
  .masterclass-feature { min-height: 340px; padding: 29px; }
  .masterclass-feature h3 { font-size: 38px; }
  .feature-bottom { gap: 20px; margin-top: 45px; }
  .feature-bottom > p { font-size: 16px; }
  .feature-arrow { width: 44px; height: 44px; }
  .programme-companions { margin-top: 34px; }
  .programme-companions > a { padding-block: 27px 34px; }
  .programme-companions h3 { font-size: 29px; }
  .programme-companions p { max-width: 275px; padding-right: 20px; }
  .mathesis { padding-block: 66px 70px; }
  .mathesis h2 { font-size: 72px; text-align: center; }
  .mathesis-subtitle { font-size: 31px; margin: 22px 0 30px; text-align: center; }
  .mathesis-copy { margin-left: 0; font-size: 18px; }
  .mathesis-links { margin-left: 0; gap: 8px 28px; }
  .heritage { padding-block: 72px 80px; }
  .heritage-layout { gap: 40px 24px; }
  .heritage-copy h2 { font-size: 40px; }
  .heritage-copy p { font-size: 18px; }
  .portrait figcaption { font-size: 14px; flex-direction: column; gap: 0; }
}
@media (max-width: 360px) {
  :root { --gutter: 20px; }
  .hero-remit { font-size: 27px; }
  .navigation-toggle { gap: 8px; font-size: 14px; }
  .masterclass-feature { padding: 24px; }
  .masterclass-feature h3 { font-size: 34px; }
}
@media (prefers-reduced-motion: reduce) {
  :root { scroll-behavior: auto; }
  a, button, summary, input, select { transition: color 120ms ease-out, background-color 120ms ease-out, border-color 120ms ease-out, opacity 120ms ease-out !important; }
  .arrow { transform: none !important; transition: none; }
  .nav-chevron, .menu-lines::before, .menu-lines::after { transition: none; }
}

.site-footer { --footer-ink: #f3f3e9; --footer-link: #f3f3e9; --footer-muted: #d2dfdf; --footer-focus: #d8e5cc; --footer-identity-ground: #d4ddcf; position: relative; isolation: isolate; background: var(--green); color: var(--footer-ink); }
.footer-interior { --footer-ink: var(--ink); --footer-link: var(--green); --footer-muted: #505b55; --footer-focus: var(--green); background: var(--paper); padding: 72px var(--gutter) 32px; }
.footer-surface { max-width: 1600px; margin-inline: auto; }
.footer-interior .footer-surface { --gutter: clamp(24px, 4vw, 64px); position: relative; isolation: isolate; background: var(--mineral); }
.footer-interior .footer-surface::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 36%; background: var(--footer-identity-ground); z-index: -1; }
.footer-interior .footer-identity { color: var(--ink); --footer-focus: var(--green); }
.site-footer a { color: var(--footer-link); text-decoration: none; }
.site-footer a:focus-visible { outline-color: var(--footer-focus); }
.footer-directory { display: grid; grid-template-columns: 1.1fr .9fr .75fr; gap: clamp(48px, 7vw, 112px); align-items: center; padding-block: 88px 80px; max-width: 1600px; margin-inline: auto; }
.footer-identity { max-width: 360px; }
.footer-logo { display: block; width: clamp(200px, 23vw, 320px); max-width: 100%; margin-bottom: 28px; }
.footer-logo img { width: 100%; height: auto; }
.footer-identity > p { font-family: "EB Garamond", Georgia, serif; font-size: 27px; line-height: 1.25; max-width: 25ch; }
.footer-directory nav { display: flex; flex-direction: column; align-items: flex-start; }
.footer-primary { gap: 8px; }
.footer-primary a { font-family: "EB Garamond", Georgia, serif; font-size: clamp(32px, 3.6vw, 52px); line-height: 1.1; letter-spacing: -.02em; }
.footer-secondary { gap: 0; }
.footer-secondary a { font-size: 17px; }
.footer-email { font-size: 16px; margin-top: 32px; overflow-wrap: anywhere; }
.footer-directory nav a, .footer-email, .footer-places a, .footer-legal a { display: inline-flex; align-items: center; width: fit-content; min-height: 44px; padding-block: 6px; }
.footer-institutions { display: grid; grid-template-columns: 1.1fr .9fr .75fr; gap: clamp(48px, 7vw, 112px); align-items: center; max-width: 1600px; margin-inline: auto; padding-bottom: 40px; font-size: 15px; color: var(--footer-muted); }
.footer-places { grid-column: 2 / -1; display: flex; flex-wrap: wrap; gap: 0 32px; }
.footer-bottom { display: grid; grid-template-columns: 1.1fr .9fr .75fr; gap: 8px clamp(48px, 7vw, 112px); padding-block: 0 24px; max-width: 1600px; margin-inline: auto; font-size: 14px; color: var(--footer-muted); }
.footer-legal { grid-column: 2 / -1; display: flex; flex-wrap: wrap; gap: 0 24px; }
.image-credit { grid-column: 1 / -1; font-size: 12px; line-height: 1.6; color: var(--footer-muted); margin-top: 8px; }
.image-credit a { display: inline; }
.footer-home { background: var(--night); padding-top: clamp(200px, 20vw, 340px); }
.footer-landscape { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 100%; z-index: -2; pointer-events: none; }
.footer-home::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, #102a36 0%, #102a3600 20%, #102a3680 48%, #102a3640 100%); }
.footer-home .footer-directory { padding-top: 64px; }
@media (hover: hover) and (pointer: fine) {
  .site-footer a:hover { color: #d8e5cc; }
  .footer-interior a:hover { color: var(--ink); }
  .footer-primary a:hover { transform: translateX(5px); }
  .footer-home a:hover { color: #d8e5cc; }
}
.site-footer a:active { opacity: .7; }
@media (min-width: 701px) {
  .image-credit { white-space: nowrap; }
  .footer-interior .footer-institutions > span { color: var(--ink); }
}
@media (max-width: 1079px) {
  .footer-directory { grid-template-columns: 1fr 1fr; gap: 56px 48px; }
  .footer-identity { grid-row: 1 / 3; align-self: start; }
  .footer-center { grid-column: 2; }
  .footer-interior .footer-surface::before { width: 48%; }
  .footer-primary a { font-size: 42px; }
  .footer-institutions { grid-template-columns: 1fr 1fr; gap: 48px; }
  .footer-bottom { grid-template-columns: 1fr 1fr; column-gap: 48px; }
  .footer-places { flex-direction: column; }
}
@media (max-width: 700px) {
  .footer-interior { padding-block: 48px 24px; }
  .footer-interior .footer-surface::before { display: none; }
  .footer-directory { grid-template-columns: 1fr 1fr; gap: 48px 24px; padding-block: 56px 48px; align-items: start; }
  .footer-identity { grid-column: 1 / -1; grid-row: auto; max-width: 330px; justify-self: center; text-align: center; }
  .footer-logo { width: 220px; margin: 0 auto 24px; }
  .footer-identity > p { font-size: 27px; }
  .footer-interior .footer-identity { position: relative; z-index: 0; width: 100%; max-width: none; }
  .footer-interior .footer-identity::before { content: ""; position: absolute; z-index: -1; top: -56px; bottom: -24px; left: calc(-1 * var(--gutter)); width: calc(100% + 2 * var(--gutter)); background: var(--footer-identity-ground); }
  .footer-primary a { font-size: clamp(27px, 7.7vw, 38px); }
  .footer-secondary a { font-size: 16px; }
  .footer-email { font-size: 15px; margin-top: 20px; }
  .footer-institutions { grid-template-columns: 1fr; gap: 16px; padding-bottom: 24px; }
  .footer-places { grid-column: auto; gap: 0; }
  .footer-bottom { display: block; }
  .footer-home { padding-top: 220px; }
  .footer-landscape { object-position: 73% 100%; }
  .footer-home .footer-directory { padding-top: 32px; }
  .footer-home::before { background: linear-gradient(180deg, #102a36 0%, #102a3600 12%, #102a3680 35%, #102a3640 100%); }
}
@media (max-width: 480px) {
  .footer-interior .footer-directory { grid-template-columns: 1fr; }
  .footer-interior .footer-center { grid-column: auto; }
  .footer-interior .footer-identity { display: grid; grid-template-columns: minmax(80px, .85fr) 1.15fr; align-items: center; gap: 20px; text-align: left; }
  .footer-interior .footer-logo { width: 100%; margin: 0; }
  .footer-interior .footer-identity > p { font-size: 21px; line-height: 1.25; }
  .footer-interior .footer-primary a { font-size: 34px; }
  .footer-interior .footer-directory .footer-secondary { display: grid; grid-template-columns: 1fr 1fr; gap: 0 20px; align-items: start; }
  .footer-interior .footer-legal { flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) {
  .footer-primary a:hover { transform: none; }
}

.landing-opening { display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(56px, 8vw, 128px); padding-block: 104px 112px; max-width: 1600px; margin-inline: auto; }
.landing-opening h1 { font-size: clamp(56px, 7vw, 96px); line-height: 1; letter-spacing: -.035em; }
.landing-contents { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; margin-top: 64px; }
.landing-contents .text-link { justify-content: space-between; min-width: 230px; }
main nav a[aria-current=location] { color: var(--green); font-weight: 600; }
.landing-introduction { padding-top: 4px; }
.landing-statement { font-family: "EB Garamond", Georgia, serif; font-size: clamp(36px, 4.1vw, 60px); line-height: 1.12; letter-spacing: -.025em; text-wrap: balance; }
.landing-summary { font-size: 19px; line-height: 1.65; max-width: 62ch; margin-top: 32px; color: var(--muted); }
.interior-page h2[id], .interior-page h3[id] { scroll-margin-top: 0; }
@media (max-width: 700px) {
  .landing-opening { grid-template-columns: 1fr; gap: 0; padding-block: 64px 72px; }
  .landing-opening-label { display: contents; }
  .landing-opening h1 { grid-row: 1; font-size: 64px; margin-bottom: 36px; }
  .landing-introduction { grid-row: 2; padding-top: 0; }
  .landing-statement { font-size: clamp(34px, 9.6vw, 44px); }
  .landing-summary { font-size: 18px; margin-top: 24px; }
  .landing-contents { grid-row: 3; margin-top: 30px; gap: 4px; }
  .interior-page h2[id], .interior-page h3[id] { scroll-margin-top: 0; }
}

.programme-opening { padding-block: 76px 88px; }
.programme-opening h1 { font-size: clamp(60px, 7vw, 96px); line-height: 1.03; letter-spacing: -.035em; }
.programme-remit { font-family: 'EB Garamond', Georgia, serif; font-size: clamp(38px, 4.5vw, 64px); line-height: 1.12; max-width: 25ch; margin-top: 36px; color: var(--green); text-wrap: balance; }
.programme-introduction { display: grid; grid-template-columns: 1.1fr 1fr; gap: 80px; margin-top: 44px; align-items: end; }
.programme-introduction > p { max-width: 56ch; font-size: 20px; line-height: 1.65; }
.programme-introduction nav { display: flex; flex-wrap: wrap; gap: 8px 32px; justify-content: end; }
.research-questions { background: var(--sage); padding-block: 64px 76px; }
.research-questions h2 { font-size: 38px; margin-bottom: 36px; }
.research-question-list { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 48px; font-family: 'EB Garamond', Georgia, serif; font-size: 29px; line-height: 1.3; }
.research-theme-section { padding-block: 96px 104px; }
.research-theme-intro { display: grid; grid-template-columns: 1.1fr 1fr; gap: 80px; align-items: end; margin-bottom: 56px; }
.research-theme-intro h2, .research-section-heading h2, .programme-projects > h2 { font-size: clamp(38px, 4vw, 56px); max-width: 17ch; }
.research-theme-intro p { max-width: 46ch; font-size: 19px; }
.research-theme-articles { display: grid; grid-template-columns: 1fr 1fr; gap: 56px 80px; }
.research-theme h3 { font-size: 40px; }
.research-theme h3 a { display: flex; justify-content: space-between; align-items: center; gap: 24px; text-decoration: none; }
.research-theme p { font-size: 18px; max-width: 46ch; margin-top: 12px; color: var(--muted); }
.programme-projects { padding-block: 80px 88px; background: var(--mineral); }
.research-section-heading { display: flex; justify-content: space-between; align-items: end; gap: 32px; margin-bottom: 48px; }
.project-entry { display: grid; grid-template-columns: 1.5fr 1fr; gap: clamp(48px, 9vw, 144px); padding-block: 40px; }
.project-entry h2, .project-entry h3 { font-size: clamp(32px, 3.3vw, 46px); line-height: 1.14; max-width: 29ch; text-wrap: pretty; }
.project-entry a, .project-facts a, .project-person, .research-prose a { text-decoration: none; }
.project-summary { font-size: 19px; line-height: 1.65; max-width: 58ch; margin-top: 24px; }
.project-entry-main > .text-link { margin-top: 24px; }
.project-entry-context { font-size: 17px; padding-top: 6px; }
.project-status { color: var(--green); font-weight: 600; margin-bottom: 8px; }
.project-entry-context > .text-link { margin-top: 12px; }
.project-names { list-style: none; padding: 0; margin: 24px 0 0; }
.project-names a { display: inline-flex; min-height: 44px; align-items: center; }
.project-archive { padding-block: 0 88px; }
.research-output { display: grid; grid-template-columns: 1.35fr .8fr; gap: clamp(48px, 8vw, 128px); padding-block: 96px 104px; }
.research-output h2 { font-size: 44px; margin-bottom: 36px; }
.research-latest > .text-link { margin-top: 36px; }
.research-books { background: var(--sage); padding: 40px; align-self: start; }
.research-books > p { font-size: 19px; line-height: 1.65; }
.research-books > .text-link { margin-top: 28px; }
.theme-question { font-family: 'EB Garamond', Georgia, serif; font-size: clamp(32px, 3.7vw, 52px); line-height: 1.2; max-width: 29ch; margin-top: 36px; color: var(--green); text-wrap: balance; }
.theme-explanation { display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(56px, 8vw, 128px); margin-top: 72px; padding-top: 40px; }
.theme-explanation h2 { font-size: 32px; max-width: 14ch; }
.theme-lead { margin-top: 40px; }
.research-prose, .research-prose.record-prose > p { font-size: 20px; line-height: 1.7; max-width: 65ch; }
.research-prose p + p { margin-top: 24px; }
.research-prose a { color: var(--green); }
.project-standfirst { font-size: 23px; line-height: 1.55; max-width: 61ch; margin-top: 32px; }
.project-facts { margin: 0; }
.project-facts > div + div { margin-top: 28px; }
.project-facts dt { font-size: 15px; margin-bottom: 6px; }
.project-facts dd { margin: 0; font-size: 19px; color: var(--ink); }
.project-team { padding-block: 72px 88px; background: var(--sage); }
.project-team h2 { font-size: 46px; margin-bottom: 40px; }
.project-team-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 48px; }
.project-person { display: block; }
.project-person img { width: 160px; height: auto; aspect-ratio: 3 / 4; object-fit: cover; margin-bottom: 24px; }
.project-person h3 { font-size: 30px; line-height: 1.2; margin-bottom: 12px; }
.project-person p { font-size: 17px; }
.project-person .arrow { margin-top: 16px; }
.project-support { margin-top: 40px; }
.book-series-introduction { display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(56px, 8vw, 128px); padding-block: 72px 80px; background: var(--sage); }
.book-series-introduction h2 { font-size: 50px; max-width: 12ch; }
.book-series-introduction p { font-size: 20px; line-height: 1.65; max-width: 60ch; }
.book-series-introduction .text-link { margin-top: 28px; }
.book-series-introduction .series-catalogue-note { font-size: 16px; color: var(--muted); margin-top: 32px; }
@media (hover: hover) and (pointer: fine) {
  .research-theme a:hover, .project-entry a:hover, .project-facts a:hover, .project-person:hover { color: var(--green); }
}
@media (max-width: 1079px) {
  .programme-introduction, .research-theme-intro { gap: 40px; }
  .programme-introduction nav { justify-content: start; }
  .research-question-list { gap: 28px; font-size: 26px; }
  .research-theme-articles { column-gap: 48px; }
  .research-output { grid-template-columns: 1fr 1fr; }
  .research-books { padding: 32px; }
  .project-team-grid { gap: 28px; }
}
@media (max-width: 700px) {
  .programme-opening { padding-block: 36px 56px; }
  .programme-remit { font-size: 39px; margin-top: 28px; }
  .programme-introduction, .research-theme-intro, .research-theme-articles, .project-entry, .research-output, .theme-explanation, .project-team-grid, .book-series-introduction { grid-template-columns: 1fr; gap: 32px; }
  .programme-introduction { margin-top: 28px; }
  .programme-introduction > p { font-size: 18px; }
  .research-questions, .research-theme-section, .programme-projects, .research-output, .project-team { padding-block: 52px 60px; }
  .research-question-list { grid-template-columns: 1fr; font-size: 28px; gap: 28px; }
  .research-theme-intro { margin-bottom: 32px; }
  .research-theme h3 { font-size: 36px; }
  .research-section-heading { display: block; margin-bottom: 12px; }
  .research-section-heading > .text-link { margin-top: 20px; }
  .project-entry { padding-block: 32px; }
  .project-entry-context { padding-top: 0; }
  .project-summary { font-size: 18px; }
  .project-names { margin-top: 12px; }
  .research-output h2, .project-team h2 { font-size: 38px; }
  .research-books { margin-top: 16px; padding: 28px; }
  .theme-explanation { margin-top: 44px; padding-top: 32px; }
  .theme-explanation h2 { max-width: none; }
  .research-prose, .research-prose.record-prose > p { font-size: 19px; }
  .project-standfirst { font-size: 20px; }
  .project-team-grid { gap: 36px; }
  .project-person { display: grid; grid-template-columns: 96px 1fr; gap: 16px 24px; }
  .project-person img { width: 96px; margin-bottom: 0; grid-row: 1 / 3; }
  .project-person h3 { font-size: 28px; }
  .project-person .arrow { grid-column: 2; margin-top: 0; }
}

.research-trail { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; font-size: 16px; color: var(--muted); margin-bottom: 48px; }
.research-trail a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: none; }
.collection-opening, .theme-opening, .record-opening { padding-block: 48px 80px; max-width: 1600px; margin-inline: auto; }
.collection-opening h1, .theme-opening h1, .record-opening h1 { font-size: clamp(64px, 7vw, 104px); line-height: 1.02; letter-spacing: -.035em; }
.collection-heading, .theme-reading, .record-body, .research-state, .record-collection, .series-editors { display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(56px, 8vw, 128px); }
.collection-heading > p { font-family: "EB Garamond", Georgia, serif; font-size: 34px; line-height: 1.3; max-width: 36ch; padding-top: 7px; }
.theme-reading { margin-top: 64px; }
.theme-prose > p { font-size: 25px; line-height: 1.55; max-width: 48ch; }
.theme-prose .text-link { margin-top: 32px; }
.theme-context h2 { font-size: 28px; margin-bottom: 16px; }
.theme-context p { font-size: 17px; color: var(--muted); }
.theme-context .text-link { margin-top: 16px; }
.theme-next { padding-block: 72px 96px; }
.theme-next > p { font-size: 18px; color: var(--muted); margin-bottom: 24px; }
.theme-next > a { display: flex; align-items: center; justify-content: space-between; min-height: 44px; gap: 32px; text-decoration: none; font-family: "EB Garamond", Georgia, serif; font-size: clamp(48px, 6vw, 80px); line-height: 1.1; letter-spacing: -.03em; }
.theme-next .arrow { width: 40px; height: 40px; flex-basis: 40px; }
.research-state { padding-block: 72px 80px; background: var(--sage); }
.research-state h2 { font-size: 44px; }
.research-state p { font-size: 21px; max-width: 48ch; }
.research-state .text-link { margin-top: 24px; }
.series-editors, .record-collection { padding-block: 80px 96px; }
.series-editors p { font-size: 24px; line-height: 1.65; }
.publication-archive { display: grid; grid-template-columns: .36fr 1fr; gap: clamp(64px, 8vw, 128px); padding-block: 8px 112px; max-width: 1600px; margin-inline: auto; align-items: start; }
.year-navigation { position: sticky; top: calc(var(--header-height) + 32px); display: flex; flex-direction: column; align-items: flex-start; }
.year-navigation > p { color: var(--muted); font-size: 16px; margin-bottom: 24px; }
.year-navigation a { display: inline-flex; min-height: 44px; align-items: center; font-size: 19px; text-decoration: none; }
.publication-year + .publication-year { margin-top: 72px; }
.publication-year h2 { font-size: 52px; color: var(--green); margin-bottom: 32px; }
.record-item + .record-item { margin-top: 40px; }
.record-item h3 { font-size: 32px; line-height: 1.2; text-wrap: pretty; }
.record-item h3 > a { display: flex; gap: 32px; justify-content: space-between; align-items: baseline; text-decoration: none; }
.record-item h3 .arrow { width: 22px; height: 22px; }
.record-authors { font-size: 17px; margin-top: 14px; }
.record-meta { font-size: 16px; color: var(--muted); margin-top: 6px; }
.record-description { font-size: 19px; margin-top: 20px; color: var(--muted); }
.record-actions { display: flex; flex-wrap: wrap; gap: 0 32px; margin-top: 14px; color: var(--green); }
.record-opening { padding-bottom: 64px; }
.record-opening h1 { font-size: clamp(44px, 4.8vw, 68px); max-width: 25ch; text-wrap: pretty; }
.record-byline { font-size: 22px; max-width: 70ch; margin-top: 32px; }
.record-body { padding-block: 0 104px; }
.record-facts { font-size: 17px; max-width: 320px; color: var(--muted); }
.record-facts > p + p { margin-top: 16px; }
.record-facts .record-date { font-size: 24px; color: var(--ink); }
.record-facts .record-actions { flex-direction: column; align-items: flex-start; margin-top: 24px; }
.record-prose h2 { font-size: 36px; margin-bottom: 24px; }
.record-prose > p { font-size: 21px; line-height: 1.65; max-width: 58ch; }
.research-next { display: flex; align-items: center; justify-content: space-between; gap: 48px; padding-block: 72px 80px; background: var(--mineral); }
.research-next h2 { font-size: 48px; }
.research-next p { font-size: 18px; max-width: 42ch; margin-top: 20px; color: var(--muted); }
.research-next > .text-link { font-size: 19px; flex-shrink: 0; }
.research-trail a, .year-navigation a, .record-item h3 > a, .theme-next > a { transition: color var(--feedback) var(--hover-ease); }
@media (hover: hover) and (pointer: fine) {
  .research-trail a:hover, .year-navigation a:hover, .record-item h3 > a:hover, .theme-next > a:hover { color: var(--green); }
  .record-item h3 > a:hover .arrow, .theme-next > a:hover .arrow { transform: translateX(4px); }
}
.record-item h3 > a:focus-visible .arrow, .theme-next > a:focus-visible .arrow { transform: translateX(4px); }
.research-trail a:active, .year-navigation a:active, .record-item h3 > a:active, .theme-next > a:active { color: #132f27; }
@media (max-width: 1079px) {
  .collection-heading { grid-template-columns: 1fr; gap: 32px; }
  .collection-heading > p { max-width: 40ch; }
  .publication-archive { grid-template-columns: 160px 1fr; gap: 48px; }
}
@media (max-width: 700px) {
  .research-trail { margin-bottom: 28px; }
  .collection-opening, .theme-opening, .record-opening { padding-block: 24px 48px; }
  .collection-opening h1 { font-size: clamp(48px, 12vw, 64px); }
  .theme-opening h1 { font-size: clamp(42px, 10.5vw, 64px); }
  .collection-heading > p { font-size: 28px; padding-top: 0; }
  .theme-reading, .record-body, .research-state, .record-collection, .series-editors { grid-template-columns: 1fr; gap: 32px; }
  .theme-reading { margin-top: 32px; }
  .theme-prose { grid-row: 1; }
  .theme-prose > p { font-size: 21px; }
  .theme-context .text-link { margin-top: 0; }
  .theme-next { padding-block: 48px 64px; }
  .theme-next > a { font-size: clamp(36px, 9vw, 48px); gap: 12px; }
  .theme-next .arrow { width: 28px; height: 28px; flex-basis: 28px; }
  .research-state, .record-collection, .series-editors { padding-block: 48px 56px; }
  .research-state h2, .research-next h2, .series-editors h2 { font-size: 38px; }
  .research-state p { font-size: 19px; }
  .publication-archive { display: block; padding-bottom: 72px; }
  .year-navigation { position: static; flex-direction: row; flex-wrap: wrap; gap: 0 24px; margin-bottom: 44px; }
  .year-navigation > p { width: 100%; margin-bottom: 12px; }
  .publication-year h2 { font-size: 42px; margin-bottom: 28px; }
  .publication-year + .publication-year { margin-top: 48px; }
  .record-item h3 { font-size: 27px; }
  .record-item h3 > a { gap: 18px; }
  .record-item + .record-item { margin-top: 36px; }
  .record-opening h1 { font-size: 40px; }
  .record-byline { font-size: 19px; margin-top: 24px; }
  .record-body { padding-bottom: 64px; gap: 48px; }
  .record-facts { max-width: none; }
  .record-facts .record-actions { flex-direction: row; margin-top: 16px; }
  .record-prose > p { font-size: 19px; }
  .research-next { display: block; padding-block: 48px 56px; }
  .research-next > .text-link { font-size: 17px; margin-top: 24px; }
}

.person-sources { margin-top: 36px; padding-top: 24px; }
.person-sources h3 { font-size: 26px; margin-bottom: 12px; }
.people-opening { display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(56px, 8vw, 128px); padding-block: 88px 64px; max-width: 1600px; margin-inline: auto; }
.people-opening h1, .person-introduction h1 { font-size: clamp(64px, 7vw, 96px); letter-spacing: -.035em; line-height: 1.03; }
.people-opening > p { font-family: "EB Garamond", Georgia, serif; font-size: 38px; line-height: 1.25; max-width: 30ch; padding-top: 8px; }
.people-directory { padding-bottom: 112px; max-width: 1600px; margin-inline: auto; }
.people-controls { display: grid; grid-template-columns: 1.5fr 1fr auto; align-items: end; gap: 24px; --color-primary: var(--green); --color-focus: var(--green); --color-surface: transparent; --color-text: var(--ink); --color-border: #969d92; --field-radius: 0; }
.people-controls label { display: block; font-size: 16px; margin-bottom: 12px; }
.people-controls input, .people-controls select { height: 54px; font-size: 17px; }
.people-controls input::placeholder { color: var(--muted); opacity: 1; }
.people-controls button:focus-visible { outline: 2px solid var(--green); outline-offset: 4px; }
.people-controls button { height: 54px; display: inline-flex; gap: 28px; align-items: center; justify-content: space-between; padding-inline: 24px; border: 0; font: inherit; font-size: 17px; background: var(--green); color: var(--paper); cursor: pointer; transition: background-color var(--feedback) var(--hover-ease), color var(--feedback) var(--hover-ease), border-color var(--feedback) var(--hover-ease); }
.people-controls > .text-link { grid-column: 1 / -1; justify-self: start; margin-top: -12px; }
.people-count { font-size: 16px; color: var(--muted); margin-block: 24px 56px; }
.people-directory-layout { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: clamp(56px, 6vw, 88px); align-items: start; }
.people-group-navigation { position: sticky; top: calc(var(--header-height) + 32px); display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.people-group-navigation a { display: inline-flex; align-items: center; min-height: 44px; font-size: 18px; line-height: 1.4; text-decoration: none; color: var(--muted); }
.people-group + .people-group { margin-top: 72px; }
.people-group > h2 { font-size: 40px; margin-bottom: 32px; }
.people-entries { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px 48px; }
.person-entry-link { display: grid; grid-template-columns: 88px minmax(0, 1fr) 18px; align-items: center; gap: 18px; min-height: 110px; text-decoration: none; }
.person-entry-link img { width: 88px; height: 110px; object-fit: cover; object-position: center 25%; }
.person-entry h3 { font-size: 29px; line-height: 1.12; text-wrap: pretty; }
.person-entry p { font-size: 16px; line-height: 1.4; color: var(--muted); margin-top: 10px; }
.person-entry .arrow { width: 18px; height: 18px; }
.person-entry-text .person-entry-link > div { grid-column: 1 / 3; }
.person-entry-text .arrow { grid-column: 3; }
.people-empty { padding-block: 24px 16px; max-width: 700px; }
.people-empty h2 { font-size: 44px; }
.people-empty p { margin-top: 24px; color: var(--muted); }
.people-empty .text-link { margin-top: 24px; }
.person-opening { padding-block: 48px 88px; max-width: 1600px; margin-inline: auto; }
.person-identity { display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(56px, 8vw, 128px); align-items: center; }
.person-portrait { width: 100%; max-width: 380px; height: auto; aspect-ratio: 4 / 5; object-fit: cover; object-position: center 25%; }
.person-entry-link .person-photo-ragni-piene, .person-portrait.person-photo-ragni-piene { object-position: right center; }
.person-introduction h1 { font-size: clamp(56px, 5.6vw, 80px); text-wrap: balance; }
.person-role { font-size: 23px; color: var(--green); margin-top: 32px; }
.person-position { font-size: 18px; margin-top: 16px; }
.person-institution { font-size: 20px; margin-top: 4px; }
.person-contact { display: flex; flex-wrap: wrap; gap: 4px 28px; margin-top: 24px; }
.person-contact .text-link:first-child { flex-basis: 100%; justify-content: flex-start; }
.person-contact .text-link { overflow-wrap: anywhere; }
.person-office { font-size: 16px; color: var(--muted); margin-top: 20px; }
.person-without-portrait { display: block; max-width: 900px; }
.person-background, .person-work { display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(56px, 8vw, 128px); padding-block: 80px 96px; }
.person-background { background: var(--sage); }
.person-background h2, .person-work h2 { font-size: 48px; max-width: 14ch; }
.person-keywords { list-style: none; padding: 0; margin: 32px 0 0; font-size: 18px; line-height: 1.5; color: var(--green); }
.person-keywords li + li { margin-top: 10px; }
.person-biography p { font-size: 20px; line-height: 1.7; max-width: 62ch; }
.person-biography p + p { margin-top: 24px; }
.person-work-heading > p { font-size: 16px; color: var(--muted); margin-top: 24px; }
.person-publication > .record-meta { margin-bottom: 14px; color: var(--green); }
.person-publication + .person-publication { margin-top: 48px; }
.person-entry-link, .people-group-navigation a { transition: color var(--feedback) var(--hover-ease); }
.person-entry-link:focus-visible .arrow, .people-controls button:focus-visible .arrow { transform: translateX(4px); }
@media (hover: hover) and (pointer: fine) {
  .person-entry-link:hover, .people-group-navigation a:hover { color: var(--green); }
  .person-entry-link:hover .arrow, .people-controls button:hover .arrow { transform: translateX(4px); }
  .people-controls button:hover { background: #27483e; }
}
.person-entry-link:active, .people-group-navigation a:active { color: #132f27; }
.people-controls button:active { background: #132f27; }
@media (max-width: 1199px) {
  .people-entries { grid-template-columns: 1fr; }
  .person-entry-link { grid-template-columns: 88px minmax(0, 1fr) 22px; gap: 24px; }
}
@media (max-width: 1079px) {
  .people-opening > p { font-size: 32px; }
  .people-controls { grid-template-columns: 1.3fr 1fr auto; gap: 16px; }
  .people-controls button { padding-inline: 18px; gap: 16px; }
  .people-controls input, .people-controls select { font-size: 16px; padding-inline-start: 12px; }
  .person-identity { grid-template-columns: .8fr 1.2fr; gap: 40px; }
  .person-introduction h1 { font-size: 56px; }
}
@media (max-width: 700px) {
  .people-opening { display: block; padding-block: 56px 40px; }
  .people-opening h1 { font-size: 64px; }
  .people-opening > p { font-size: 30px; margin-top: 28px; padding-top: 0; }
  .people-directory { padding-bottom: 72px; }
  .people-controls { grid-template-columns: 1fr auto; gap: 24px 16px; }
  .people-search { grid-column: 1 / -1; }
  .people-role-select { min-width: 0; }
  .people-controls button { gap: 12px; padding-inline: 16px; }
  .people-count { margin-bottom: 28px; }
  .people-directory-layout { display: block; }
  .people-group-navigation { position: static; flex-direction: row; flex-wrap: wrap; gap: 4px 24px; margin-bottom: 40px; }
  .people-group-navigation a { font-size: 16px; }
  .people-group > h2 { font-size: 34px; margin-bottom: 28px; }
  .people-group + .people-group { margin-top: 48px; }
  .people-entries { gap: 28px; }
  .person-entry-link { grid-template-columns: 72px minmax(0, 1fr) 18px; gap: 16px; min-height: 94px; }
  .person-entry-link img { width: 72px; height: 94px; }
  .person-entry h3 { font-size: 26px; }
  .person-entry p { font-size: 15px; }
  .person-opening { padding-block: 24px 56px; }
  .person-identity { grid-template-columns: 1fr; gap: 32px; }
  .person-portrait { width: 72%; max-width: 280px; }
  .person-introduction h1 { font-size: clamp(44px, 12vw, 58px); }
  .person-role { font-size: 21px; margin-top: 24px; }
  .person-contact { gap: 4px 24px; }
  .person-background, .person-work { grid-template-columns: 1fr; gap: 36px; padding-block: 56px 64px; }
  .person-background h2, .person-work h2 { font-size: 40px; max-width: none; }
  .person-keywords { font-size: 17px; margin-top: 24px; }
  .person-keywords li + li { margin-top: 6px; }
  .person-biography p { font-size: 18px; }
  .person-work-heading > p { margin-top: 16px; }
}

.community-prose { display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(56px, 8vw, 128px); padding-block: 80px 96px; }
.community-prose-shaded { background: var(--sage); }
.community-prose h2 { font-size: 48px; max-width: 14ch; line-height: 1.12; }
.community-page-actions { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; margin-top: 28px; }
.community-page-actions .text-link { color: var(--green); }
.community-section-heading { display: flex; justify-content: space-between; align-items: baseline; gap: 24px; margin-bottom: 40px; }
.community-section-heading h2 { font-size: 40px; }
.doctoral-directory { padding-top: 64px; }
.doctoral-directory .people-entries { gap: 40px 80px; }
.cohort-controls.people-controls { grid-template-columns: minmax(180px, 300px) max-content; max-width: 660px; }
.person-entry .person-cohort { color: var(--green); margin-top: 6px; }
.organization-directory { padding-top: 80px; }
@media (max-width: 1199px) {
  .doctoral-directory .people-entries { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px; }
}
@media (max-width: 700px) {
  .doctoral-directory { padding-top: 48px; }
  .cohort-controls.people-controls { grid-template-columns: 1fr; }
  .community-prose { grid-template-columns: 1fr; gap: 32px; padding-block: 56px 64px; }
  .community-prose h2 { font-size: 40px; max-width: none; }
  .community-section-heading { display: block; margin-bottom: 32px; }
  .community-section-heading h2 { font-size: 34px; }
  .community-section-heading .record-meta { margin-top: 12px; }
  .doctoral-directory .people-entries { grid-template-columns: 1fr; gap: 28px; }
  .organization-directory { padding-top: 56px; }
}
.people-destinations { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 8px 40px; margin-top: -24px; }
.participation-opening, .participation-community { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); align-items: start; gap: clamp(40px, 6vw, 88px); padding-block: 72px 88px; }
.participation-introduction h1 { font-size: clamp(56px, 6.5vw, 96px); line-height: 1.03; letter-spacing: -.035em; max-width: 10ch; margin-block: 24px; }
.participation-introduction > p { font-family: "EB Garamond", Georgia, serif; font-size: 30px; line-height: 1.3; max-width: 30ch; }
.participation-photo { margin: 0; min-width: 0; }
.participation-photo img { display: block; width: 100%; height: auto; }
.participation-photo figcaption { font-size: 14px; line-height: 1.5; color: var(--muted); margin-top: 14px; max-width: 65ch; }
.participation-photo figcaption a { display: block; color: var(--green); padding-block: 6px; width: fit-content; }
.participation-paths { padding-block: 24px 96px; }
.participation-paths > h2, .participation-community h2, .participation-stories h2 { font-size: clamp(40px, 4.3vw, 64px); line-height: 1.08; letter-spacing: -.03em; }
.participation-paths > h2 { margin-bottom: 48px; scroll-margin-top: calc(var(--header-height) + 24px); }
.participation-route { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(40px, 6vw, 88px); padding-block: 40px; }
.participation-route h3 { font-size: 38px; line-height: 1.15; max-width: 22ch; }
.participation-route p { max-width: 58ch; }
.participation-audience { font-size: 16px; color: var(--muted); margin-top: 16px; }
.participation-route .community-page-actions { margin-top: 16px; }
.participation-community { background: var(--sage); padding-block: 80px; }
.participation-community h2 { max-width: 18ch; }
.participation-approach { margin-top: 24px; max-width: 60ch; }
.participation-member-heading { font-size: 30px; margin-block: 40px 24px; }
.participation-members { display: grid; gap: 28px; }
.participation-members .person-entry h3 { font-size: 27px; }
.participation-member-research { font-size: 16px; line-height: 1.5; margin-top: 12px; max-width: 60ch; }
.participation-stories { padding-block: 88px; }
@media (max-width: 1000px) {
  .participation-opening { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .participation-introduction h1 { font-size: 64px; }
  .participation-community { gap: 40px; }
  .participation-members .person-entry-link { grid-template-columns: 72px minmax(0, 1fr) 18px; gap: 12px; }
  .participation-members .person-entry-link img { width: 72px; height: 94px; }
}
@media (max-width: 800px) {
  .participation-opening, .participation-community, .participation-route { grid-template-columns: 1fr; }
  .participation-opening { padding-block: 40px 56px; gap: 40px; }
  .participation-introduction h1 { font-size: clamp(56px, 10vw, 72px); max-width: none; }
  .participation-introduction > p { max-width: 52ch; }
  .participation-community { padding-block: 56px; }
  .participation-community .participation-photo { max-width: 440px; }
  .participation-paths { padding-bottom: 48px; }
  .participation-route { gap: 20px; padding-block: 32px; }
  .participation-route h3 { font-size: 34px; }
  .participation-stories { padding-block: 56px; }
  .people-destinations { gap: 8px 24px; margin-top: 24px; }
}

.school-opening { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(40px, 6vw, 88px); padding-block: 80px 64px; align-items: start; }
.school-opening h1 { font-size: clamp(64px, 7vw, 96px); line-height: 1; letter-spacing: -.035em; }
.school-deck { font-family: "EB Garamond", Georgia, serif; font-size: clamp(32px, 3.2vw, 46px); line-height: 1.15; letter-spacing: -.02em; max-width: 28ch; margin-bottom: 24px; }
.school-remit > p:not(.school-deck) { max-width: 49ch; }
.school-actions { display: flex; flex-wrap: wrap; gap: 8px 32px; margin-top: 24px; }
.school-document { padding-bottom: 88px; }
.school-document .participation-photo { max-width: 1000px; margin-inline: auto; }
.school-document .participation-photo figcaption { max-width: 78ch; }
.school-learning, .school-community, .school-membership { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(48px, 8vw, 120px); padding-block: 80px; }
.school-learning h2, .school-community h2, .school-membership h2 { font-size: clamp(42px, 4.5vw, 64px); line-height: 1.08; letter-spacing: -.03em; max-width: 15ch; }
.school-learning-intro { margin-top: 28px; max-width: 50ch; }
.school-learning-notes article + article { margin-top: 40px; }
.school-learning-notes h3 { font-size: 34px; line-height: 1.2; margin-bottom: 16px; }
.school-learning-notes p, .school-membership p { max-width: 58ch; }
.school-learning-notes > .text-link { margin-top: 28px; }
.school-community { background: var(--sage); padding-block: 88px; }
.school-community-copy { font-family: "EB Garamond", Georgia, serif; font-size: 32px; line-height: 1.35; max-width: 38ch; }
.school-membership p + p { margin-top: 24px; }
.school-resources { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; padding-block: 0 88px; }
.school-resources > div { padding-top: 32px; }
.school-resources h2 { font-size: 36px; margin-bottom: 16px; }
.school-resources p { max-width: 48ch; }
@media (max-width: 800px) {
  .school-opening, .school-learning, .school-community, .school-membership, .school-resources { grid-template-columns: 1fr; gap: 32px; }
  .school-opening { padding-block: 40px; }
  .school-opening h1 { font-size: 72px; }
  .school-document { padding-bottom: 48px; }
  .school-learning, .school-community, .school-membership { padding-block: 56px; }
  .school-community h2, .school-membership h2, .school-learning h2 { max-width: 19ch; }
  .school-resources { padding-bottom: 56px; gap: 40px; }
  .school-resources .school-actions { flex-direction: column; align-items: flex-start; }
}

.school-page-opening { padding-block: 40px 48px; }
.school-page-opening .research-trail { margin-bottom: 28px; }
.school-page-heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 64px; align-items: start; }
.school-page-heading h1 { font-size: clamp(48px, 5.5vw, 80px); line-height: 1.05; letter-spacing: -.03em; max-width: 18ch; }
.school-page-heading > p { font-family: "EB Garamond", Georgia, serif; font-size: 30px; line-height: 1.35; max-width: 36ch; }
.school-page-centered .school-page-heading { display: block; text-align: center; }
.school-page-centered .school-page-heading h1 { max-width: none; }
.school-page-centered .school-page-heading > p { margin: 24px auto 0; max-width: 48ch; }
.school-navigation { display: flex; flex-wrap: wrap; gap: 4px 20px; padding-block: 12px; font-size: 16px; }
.school-navigation a { display: inline-flex; align-items: center; min-height: 44px; padding-inline: 10px; color: var(--green); }
.school-navigation a[aria-current=page] { background: var(--sage); color: var(--ink); font-weight: 600; }
.school-section, .school-partner-group, .school-correspondence, .school-contact-people { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(48px, 8vw, 120px); padding-block: 72px; }
.school-section h2, .school-benefits > h2, .school-course-intro h2, .school-notice h2, .school-partner-group h2, .school-network-note h2, .school-correspondence h2, .school-contact-people h2, .school-opportunities > h2, .school-closed-positions > h2, .school-programme > h2, .school-library h2 { font-size: clamp(36px, 3.5vw, 52px); line-height: 1.12; letter-spacing: -.025em; max-width: 22ch; margin-bottom: 24px; }
.school-section p, .school-notice p, .school-partner-group p, .school-correspondence p, .school-contact-people p, .school-library p { max-width: 62ch; }
.school-benefits { background: var(--sage); padding-block: 64px; }
.school-benefits > h2 { max-width: none; margin-bottom: 40px; }
.school-notes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 48px; }
.school-notes h3, .school-steps h3, .school-course h3, .school-partner-list h3, .school-resource h3, .school-position h3, .school-correspondence h3 { font-size: 30px; line-height: 1.2; margin-bottom: 16px; }
.school-steps { padding-left: 28px; margin: 0; }
.school-steps li { padding-left: 12px; }
.school-steps li + li { margin-top: 36px; }
.school-steps li::marker { color: var(--green); font-variant-numeric: lining-nums; }
#join { scroll-margin-top: calc(var(--header-height) + 24px); }
.school-course-intro { display: grid; grid-template-columns: 1.1fr .9fr; gap: 72px; padding-block: 64px; }
.school-course-intro p { max-width: 56ch; }
.school-course-credit { margin-top: 24px; }
.school-notice { display: grid; grid-template-columns: .85fr 1.15fr; gap: 80px; padding-block: 56px; background: var(--sage); }
.school-archive-intro { padding-top: 48px; }
.school-archive-intro p { max-width: 68ch; }
.school-lecturers { color: var(--muted); }
.school-programme { padding-block: 56px 72px; }
.school-course, .school-position { display: grid; grid-template-columns: minmax(170px, .4fr) minmax(0, 1fr); gap: 64px; padding-block: 36px; }
.school-course-facts, .school-position-date { font-size: 16px; color: var(--muted); }
.school-course-facts p + p, .school-position-date p + p { margin-top: 8px; }
.school-course .editorial-prose, .school-position .editorial-prose { max-width: 65ch; }
.school-partner-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px; }
.school-partner-link { display: flex; align-items: baseline; justify-content: space-between; gap: 20px; min-height: 44px; }
.school-partner-link .arrow { width: 18px; height: 18px; flex-shrink: 0; color: var(--green); }
.school-partner-link:hover { color: var(--green); }
.school-partner-list h3 { font-size: 28px; margin-bottom: 12px; }
.school-network-note { background: var(--sage); padding-block: 64px; }
.school-network-note h2 { max-width: none; }
.school-network-note p { max-width: 66ch; margin-bottom: 24px; }
.school-library { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, .7fr); gap: 88px; padding-block: 64px 88px; }
.school-library-guide { background: var(--sage); padding: 32px; align-self: start; }
.school-library-guide h2 { font-size: 32px; }
.school-library-guide .school-actions { flex-direction: column; align-items: flex-start; }
.school-resource { padding-block: 28px; }
.school-resource .record-meta { margin-bottom: 12px; }
.school-resource > .text-link, .school-library-empty > .text-link { margin-top: 20px; }
.school-opportunities { padding-block: 64px; }
.school-position-empty { max-width: 66ch; }
.school-position-empty > .text-link { margin-top: 24px; }
.school-closed-positions { padding-block: 56px 72px; background: var(--sage); }
.school-email { display: block; font-family: "EB Garamond", Georgia, serif; font-size: clamp(26px, 3vw, 40px); line-height: 1.2; color: var(--green); margin-bottom: 24px; overflow-wrap: anywhere; }
.school-correspondence { grid-template-columns: 1.25fr .75fr; }
.school-correspondence address { font-style: normal; padding-top: 8px; }
.school-correspondence address p + p { margin-top: 8px; }
.school-contact-people { background: var(--sage); }
.school-contacts { display: grid; gap: 36px; }
.school-person-email { display: inline-flex; align-items: center; min-height: 44px; color: var(--green); font-size: 16px; margin-top: 12px; overflow-wrap: anywhere; }
@media (max-width: 1000px) {
  .school-navigation { gap: 4px 8px; }
  .school-notes { gap: 28px; }
  .school-library { gap: 40px; }
  .school-partner-list { grid-template-columns: 1fr; }
}
@media (max-width: 800px) {
  .school-page-heading, .school-section, .school-course-intro, .school-notice, .school-partner-group, .school-library, .school-correspondence, .school-contact-people { grid-template-columns: 1fr; gap: 28px; }
  .school-page-heading h1 { font-size: clamp(48px, 8vw, 64px); }
  .school-page-heading > p { font-size: 28px; }
  .school-page-opening { padding-block: 28px 36px; }
  .school-page-centered .school-page-heading { text-align: left; }
  .school-page-centered .school-page-heading > p { margin-inline: 0; }
  .school-navigation { gap: 2px 8px; font-size: 15px; }
  .school-navigation a { padding-inline: 8px; }
  .school-section, .school-course-intro, .school-partner-group, .school-correspondence, .school-contact-people { padding-block: 48px; }
  .school-notes { grid-template-columns: 1fr; gap: 32px; }
  .school-benefits, .school-network-note { padding-block: 48px; }
  .school-course, .school-position { grid-template-columns: 1fr; gap: 24px; }
  .school-library { padding-block: 48px; }
  .school-library-guide { padding: 28px; }
  .school-partner-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .school-correspondence address { padding-top: 24px; }
}
@media (max-width: 480px) {
  .school-partner-list { grid-template-columns: 1fr; }
}

.editorial-links { display: flex; flex-wrap: wrap; gap: 8px 36px; padding-block: 0 40px; color: var(--green); }
.editorial-list { padding-block: 16px 96px; }
.editorial-row { display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(56px, 8vw, 128px); padding-block: 40px; }
:is(.editorial-row h2, .editorial-row h3) { font-size: 36px; line-height: 1.2; text-wrap: pretty; }
:is(.editorial-row h2, .editorial-row h3) a { display: flex; justify-content: space-between; gap: 24px; text-decoration: none; }
:is(.editorial-row h2, .editorial-row h3) a:hover { color: var(--green); }
.editorial-image { display: block; width: 100%; height: auto; margin-bottom: 32px; }
.editorial-portrait { display: block; width: min(100%, 320px); height: auto; margin-top: 32px; }
.editorial-prose { overflow-wrap: anywhere; }
.editorial-prose h2, .editorial-prose h3, .editorial-prose h4 { margin-block: 40px 16px; font-size: 30px; max-width: none; }
.editorial-prose > :first-child { margin-top: 0; }
.editorial-prose ul, .editorial-prose ol { padding-inline-start: 24px; margin-block: 20px; }
.editorial-prose li + li { margin-top: 12px; }
.editorial-prose a { color: var(--green); text-decoration: none; }
.editorial-prose blockquote { margin-block: 32px; font-size: 28px; }
.community-prose address { font-style: normal; }
.journal-opening h1 { max-width: 22ch; }
.journal-deck { max-width: 48ch; font-size: clamp(21px, 2vw, 28px); line-height: 1.5; margin-top: 28px; }
.journal-visual { margin: 0; padding-bottom: 40px; display: flex; flex-direction: column; align-items: center; }
.journal-visual img { margin: 0; width: auto; height: auto; max-width: 100%; max-height: min(56svh, 640px); object-fit: contain; }
.journal-byline { font-size: 15px; color: var(--muted); margin-top: 24px; }
.journal-visual figcaption, .editorial-prose figcaption { font-size: 14px; line-height: 1.5; color: var(--muted); margin-top: 12px; max-width: 80ch; }
.editorial-prose figure { margin: 36px 0; }
.editorial-prose figure img { display: block; width: 100%; height: auto; }
.journal-body .editorial-prose { max-width: 66ch; }
.article-sharing { margin-top: 40px; }
.article-sharing h2 { font-family: "Hanken Grotesk", sans-serif; font-size: 16px; margin-bottom: 12px; }
.share-buttons { display: flex; flex-wrap: wrap; gap: 8px; }
.share-buttons button { border: 1px solid var(--green); background: transparent; color: var(--green); font: inherit; padding: 10px 16px; min-height: 44px; cursor: pointer; }
.share-buttons button:hover { background: var(--green); color: var(--paper); }
.share-buttons button[hidden] { display: none; }
.share-status { min-height: 1.5em; font-size: 14px; margin-block: 8px 0; }
.share-permalink { font-size: 14px; color: var(--green); text-decoration: none; }
.related-news { padding-block: 56px 80px; background: var(--sage); }
.related-news-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 24px; }
.related-news-heading h2 { font-size: clamp(32px, 4vw, 48px); }
@media (max-width: 700px) {
  .editorial-links { gap: 0 24px; padding-bottom: 24px; }
  .editorial-row { grid-template-columns: 1fr; gap: 16px; padding-block: 32px; }
  :is(.editorial-row h2, .editorial-row h3) { font-size: 30px; }
  .editorial-list { padding-bottom: 56px; }
}

.events-opening { padding-block: 80px 40px; }
.events-opening h1 { font-size: clamp(60px, 6.5vw, 88px); line-height: 1.05; }
.events-opening > p { font-family: 'EB Garamond', Georgia, serif; font-size: clamp(28px, 3vw, 40px); line-height: 1.25; color: var(--green); max-width: 38ch; margin-top: 24px; }
.events-opening-centered { text-align: center; padding-block: 80px 48px; }
.events-opening-centered > p { margin-inline: auto; max-width: 42ch; }
.events-navigation { display: flex; flex-wrap: wrap; gap: 8px 12px; padding-bottom: 40px; }
.events-navigation a { display: inline-flex; align-items: center; min-height: 44px; padding-inline: 12px; color: var(--green); text-decoration: none; }
.events-navigation a[aria-current] { background: var(--sage); color: var(--ink); font-weight: 600; }
.events-section { padding-block: 64px 80px; }
.events-section h2, .events-series-section h2, .series-next h2, .series-editions > h2, .event-continuity h2 { font-size: clamp(36px, 4vw, 52px); line-height: 1.12; }
.events-upcoming { display: grid; grid-template-columns: .7fr 1.3fr; gap: 64px; padding-top: 32px; }
.events-between-meetings { max-width: 52ch; }
.events-between-meetings > p { font-size: 21px; margin-bottom: 16px; }
.events-section-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 32px; margin-bottom: 48px; }
.events-section-heading > .text-link { flex-shrink: 0; }
.events-section-heading p { max-width: 52ch; margin-top: 20px; }
.events-series-section { background: var(--sage); padding-block: 64px 80px; }
.event-series-briefs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 48px; }
.event-series-name h2, .event-series-name h3 { font-size: 36px; line-height: 1.15; }
.event-series-name h2 a, .event-series-name h3 a, .event-row h2 a, .event-row h3 a { display: flex; align-items: baseline; justify-content: space-between; gap: 24px; min-height: 44px; text-decoration: none; }
.event-series-name .arrow, .event-row .arrow { flex-shrink: 0; width: 18px; height: 18px; }
.event-series-frequency { font-size: 16px; margin-top: 12px; color: var(--green); }
.event-series-description { max-width: 56ch; }
.event-series-brief .event-series-description { margin-top: 28px; }
.event-series-description p + p { margin-top: 20px; }
.event-series-edition { font-size: 16px; margin-top: 28px; }
.event-series-edition a, .event-row-series { color: var(--green); text-decoration: none; min-height: 44px; display: inline-flex; align-items: center; }
.event-rows { display: grid; gap: 48px; }
.event-row { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 48px; }
.event-row-date { font-family: 'EB Garamond', Georgia, serif; font-size: 28px; line-height: 1.2; color: var(--green); font-variant-numeric: lining-nums tabular-nums; }
.event-row h2, .event-row h3 { font-size: 36px; line-height: 1.18; text-wrap: pretty; }
.event-row-meta { font-size: 16px; color: var(--muted); margin-top: 12px; }
.event-row-summary { max-width: 60ch; margin-top: 16px; }
.event-row-series { font-size: 16px; margin-top: 12px; }
.events-upcoming .event-row { grid-template-columns: 1fr; gap: 16px; }
.events-teaching { display: grid; grid-template-columns: .7fr 1.3fr; gap: 64px; padding-block: 48px 56px; background: var(--mineral); }
.events-teaching h2 { font-size: 36px; }
.events-teaching p { max-width: 54ch; margin-bottom: 16px; }
.events-archive { padding-block: 24px 96px; }
.events-filter { grid-template-columns: minmax(240px, 400px) auto; justify-content: start; max-width: 720px; }
.events-count { font-size: 16px; color: var(--muted); margin-block: 24px 64px; }
.event-year-group { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 64px; }
.event-year-group + .event-year-group { margin-top: 88px; }
.event-year { font-size: 56px; line-height: 1; font-variant-numeric: lining-nums; }
.event-year-group .event-row { grid-template-columns: 160px minmax(0, 1fr); gap: 40px; }
.events-filter-empty { padding-block: 16px 40px; }
.events-filter-empty h2 { font-size: 36px; margin-bottom: 20px; }
.events-series-index { padding-block: 40px 96px; }
.event-series-entry { display: grid; grid-template-columns: 1fr 1.15fr; gap: clamp(48px, 8vw, 112px); padding-block: 40px; }
.event-series-entry .event-series-name h2 { font-size: clamp(36px, 4vw, 52px); max-width: 19ch; }
.event-series-entry .event-series-description { font-size: 21px; }
.series-opening, .event-opening { padding-block: 64px 56px; }
.series-opening .research-trail, .event-opening .research-trail { margin-bottom: 48px; flex-wrap: wrap; }
.series-introduction { display: grid; grid-template-columns: 1.6fr .6fr; gap: 96px; align-items: end; }
.series-introduction h1 { font-size: clamp(52px, 6vw, 80px); max-width: 20ch; line-height: 1.05; }
.series-lead { font-family: 'EB Garamond', Georgia, serif; font-size: 30px; line-height: 1.35; max-width: 44ch; margin-top: 28px; }
.series-context { font-size: 18px; color: var(--green); }
.series-context p + p { margin-top: 12px; }
.series-context .text-link { margin-top: 28px; }
.series-next { display: grid; grid-template-columns: .7fr 1.3fr; gap: 64px; padding-block: 48px 56px; background: var(--sage); }
.series-next > p { font-size: 21px; max-width: 48ch; }
.series-next .event-row { grid-template-columns: 1fr; gap: 16px; }
.series-editions { padding-block: 64px 40px; }
.series-editions > h2 { margin-bottom: 48px; }
.events-back { padding-block: 32px 64px; }
.event-opening-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(280px, .85fr); gap: 64px; align-items: start; }
.event-opening h1 { font-size: clamp(44px, 4.8vw, 68px); line-height: 1.06; max-width: 24ch; text-wrap: pretty; }
.event-deck { font-size: 23px; line-height: 1.5; max-width: 50ch; margin-top: 28px; }
.event-facts { background: var(--sage); padding: 32px; }
.event-date { font-family: 'EB Garamond', Georgia, serif; font-size: 32px; line-height: 1.2; color: var(--green); font-variant-numeric: lining-nums; }
.event-state { font-family: 'Hanken Grotesk', sans-serif; font-size: 16px; line-height: 1.5; margin-top: 12px; color: var(--green); }
.event-location { margin-top: 24px; }
.event-format { font-size: 16px; margin-top: 12px; color: var(--muted); }
.event-actions { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; margin-top: 20px; }
.event-visual { margin: 0 0 40px; display: flex; justify-content: flex-start; }
.event-visual img { display: block; width: auto; height: auto; max-width: 100%; max-height: min(64svh, 640px); object-fit: contain; object-position: left top; }
.event-reading { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(280px, .85fr); gap: 64px; padding-block: 16px 64px; }
.event-practical { max-width: 38ch; }
.event-practical h2, .event-teaching-note h2 { font-size: 28px; margin-bottom: 16px; }
.event-teaching-note p { margin-bottom: 16px; }
.event-practical p { font-size: 17px; margin-bottom: 16px; }
.event-teaching-note { margin-top: 40px; }
.event-main-content { max-width: 68ch; }
.event-reading .article-sharing { margin-top: 40px; }
.event-reading-brief { display: block; }
.event-reading-brief .event-practical { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 32px; max-width: none; }
.event-reading-brief .event-teaching-note, .event-reading-brief .article-sharing { margin-top: 0; }
.event-continuity { background: var(--mineral); padding-block: 56px 64px; }
.event-continuity-intro { max-width: 60ch; margin-bottom: 32px; }
.event-continuity .events-section-heading h2 { max-width: 24ch; }
.school-course { scroll-margin-top: calc(var(--header-height) + 32px); }
@media (hover: hover) and (pointer: fine) {
  .event-series-name a:hover, .event-row h3 a:hover, .event-row-series:hover, .event-series-edition a:hover { color: var(--green-hover); }
}
@media (max-width: 1100px) {
  .event-series-briefs { gap: 32px; }
  .event-year-group { grid-template-columns: 88px minmax(0, 1fr); gap: 32px; }
  .event-year-group .event-row { grid-template-columns: 1fr; gap: 12px; }
  .event-opening-grid, .series-introduction { gap: 40px; }
  .event-reading { gap: 48px; }
}
@media (max-width: 800px) {
  .events-upcoming, .events-teaching, .event-series-briefs, .event-series-entry, .series-introduction, .series-next, .event-opening-grid, .event-reading { grid-template-columns: 1fr; gap: 32px; }
  .event-series-briefs { gap: 48px; }
  .event-series-brief .event-series-description { margin-top: 20px; }
  .event-series-entry { padding-block: 32px; }
  .series-context { display: flex; gap: 12px 28px; flex-wrap: wrap; align-items: center; }
  .series-context p + p, .series-context .text-link { margin-top: 0; }
  .event-practical { max-width: none; }
  .event-facts { max-width: none; }
}
@media (max-width: 600px) {
  .events-opening, .events-opening-centered { padding-block: 48px 32px; text-align: left; }
  .events-opening h1 { font-size: 56px; }
  .events-opening > p { font-size: 30px; }
  .events-navigation { padding-bottom: 24px; }
  .events-section, .events-series-section, .events-teaching, .series-editions, .event-continuity { padding-block: 48px 56px; }
  .events-upcoming { padding-top: 24px; }
  .events-section-heading { align-items: flex-start; flex-direction: column; gap: 16px; margin-bottom: 36px; }
  .event-row, .event-year-group, .events-filter { grid-template-columns: 1fr; gap: 16px; }
  .event-rows { gap: 40px; }
  .event-row-date { font-size: 24px; }
  .event-row h2, .event-row h3, .event-series-name h3 { font-size: 32px; }
  .event-year { font-size: 48px; margin-bottom: 24px; }
  .event-year-group + .event-year-group { margin-top: 64px; }
  .events-count { margin-bottom: 48px; }
  .events-series-index { padding-block: 8px 56px; }
  .event-series-entry .event-series-name h2 { font-size: 40px; }
  .series-opening, .event-opening { padding-block: 40px; }
  .series-opening .research-trail, .event-opening .research-trail { margin-bottom: 32px; }
  .series-introduction h1 { font-size: 48px; }
  .series-lead { font-size: 28px; }
  .series-next { padding-block: 36px 40px; }
  .event-deck { font-size: 21px; }
  .event-facts { padding: 24px; }
  .event-reading { padding-block: 0 40px; }
  .event-reading-brief .event-practical { display: grid; gap: 32px; }
  .event-visual { margin-bottom: 32px; }
  .events-back { padding-block: 24px 48px; }
}

.history-opening { padding-top: 44px; padding-bottom: 56px; }
.history-heading { display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(48px, 7vw, 112px); align-items: end; margin-top: 40px; }
.history-heading h1 { font-size: clamp(64px, 6.7vw, 96px); line-height: 1.02; letter-spacing: -.035em; text-wrap: balance; max-width: 12ch; }
.history-introduction { max-width: 46ch; padding-bottom: 4px; }
.history-introduction > p + p { margin-top: 20px; }
.history-deck { font-family: 'EB Garamond', Georgia, serif; font-size: 32px; line-height: 1.25; }
.history-introduction .text-link { margin-top: 20px; color: var(--green); }
.history-film-player { position: relative; aspect-ratio: 16 / 9; background: var(--night); }
.history-film-poster { display: block; height: 100%; position: relative; z-index: 1; color: var(--ink); text-decoration: none; }
.history-film-poster:focus-visible { outline-offset: 6px; }
.history-film-poster img { width: 100%; height: 100%; object-fit: contain; }
.history-play { position: absolute; left: 32px; bottom: 32px; display: inline-flex; align-items: center; gap: 14px; padding: 17px 24px; background: var(--paper); font-size: 18px; transition: background-color var(--feedback) var(--hover-ease), color var(--feedback) var(--hover-ease), transform var(--hover-motion) var(--hover-ease); }
.history-play svg { transition: transform var(--hover-motion) var(--hover-ease); }
.history-film-poster:focus-visible .history-play { background: var(--green); color: var(--paper); transform: translateY(-3px); }
.history-film-poster:focus-visible .history-play svg { transform: translateX(2px); }
.history-film-player[data-state=loading] .history-play { background: var(--green); color: var(--paper); transform: none; }
.history-film-player iframe { position: absolute; inset: 0; display: block; width: 100%; height: 100%; border: 0; }
.history-film figcaption { display: flex; justify-content: space-between; align-items: start; gap: 24px; padding-top: 24px; }
.history-film figcaption h2 { font-size: 29px; letter-spacing: -.02em; line-height: 1.2; }
.history-film figcaption p { font-size: 15px; color: var(--muted); margin-top: 7px; }
.history-film figcaption .text-link { flex-shrink: 0; color: var(--green); }
.history-contents { display: flex; flex-wrap: wrap; gap: 8px 40px; padding-top: 56px; padding-bottom: 24px; color: var(--green); }
.history-contents a { display: inline-flex; align-items: center; min-height: 44px; font-size: 16px; text-decoration: none; }
.history-contents a:focus-visible, .history-biography summary:focus-visible { color: #27483e; }
.history-chapter { display: grid; grid-template-columns: minmax(220px, .85fr) 1.15fr; column-gap: clamp(64px, 9vw, 144px); align-items: start; padding-block: 96px 112px; }
.history-portrait { max-width: 360px; width: 100%; justify-self: center; }
.history-portrait img { width: 100%; height: auto; }
.history-portrait figcaption { padding-top: 22px; }
.history-portrait h2 { font-size: 36px; line-height: 1.15; }
.history-portrait figcaption p { font-size: 16px; color: var(--muted); margin-top: 6px; }
.history-chapter-copy { max-width: 58ch; }
.history-chapter-copy h3 { font-size: clamp(36px, 3.5vw, 50px); line-height: 1.1; max-width: 17ch; margin-bottom: 28px; }
.history-chapter-copy > p, .history-connection p, .history-today-copy > p { font-size: 20px; line-height: 1.7; }
.history-chapter-copy > p + p, .history-connection p + p, .history-today-copy > p + p { margin-top: 22px; }
.history-carl-stormer { background: var(--mineral); grid-template-columns: 1.15fr minmax(220px, .85fr); }
.history-carl-stormer .history-portrait { grid-column: 2; grid-row: 1; }
.history-carl-stormer .history-chapter-copy { grid-column: 1; grid-row: 1; }
.history-biography { margin-top: 24px; }
.history-biography summary { display: inline-flex; align-items: center; gap: 22px; min-height: 44px; color: var(--green); font-size: 16px; transition: color var(--feedback) var(--hover-ease); }
.history-biography summary .arrow { transition: transform var(--hover-motion) var(--hover-ease); }
.history-biography[data-expanded=true] summary .arrow, .history-biography[open]:not([data-expanded]) summary .arrow { transform: rotate(180deg); }
.history-biography .editorial-prose { padding-top: 16px; font-size: 18px; }
.history-biography .editorial-prose p + p { margin-top: 20px; }
.history-biography .editorial-prose a { color: var(--green); text-decoration: none; }
.history-source { display: inline-block; font-size: 14px; line-height: 1.5; color: var(--muted); padding-block: 12px; margin-top: 12px; text-decoration: none; }
.history-connection { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(56px, 8vw, 128px); padding-block: 112px 96px; }
.history-connection h2 { max-width: 12ch; }
.history-connection > div { max-width: 58ch; }
.history-chronology { padding-bottom: 112px; }
.history-chronology-intro { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(56px, 8vw, 128px); margin-bottom: 40px; }
.history-chronology-intro h2 { font-size: 40px; max-width: 17ch; }
.history-chronology-intro p { align-self: end; max-width: 43ch; }
.history-chronology ol { list-style: none; margin: 0; padding: 0; }
.history-chronology li { display: grid; grid-template-columns: 220px 1fr auto; gap: 24px 48px; padding-block: 26px; }
.history-year { font-family: 'EB Garamond', Georgia, serif; font-size: 36px; line-height: 1.25; font-variant-numeric: lining-nums tabular-nums; }
.history-chronology h3 { font-size: 29px; margin-bottom: 8px; }
.history-chronology li > div { max-width: 60ch; }
.history-moment-source { display: inline-flex; align-items: center; align-self: start; gap: 10px; min-height: 44px; font-size: 14px; color: var(--muted); text-decoration: none; }
.history-moment-source .arrow { width: 16px; height: 16px; flex-basis: 16px; }
.history-moment-source:focus-visible .arrow { transform: translate(2px, -2px); }
.history-today { background: var(--sage); padding-block: 96px 112px; }
.history-today-heading { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(56px, 8vw, 128px); align-items: end; margin-bottom: 56px; }
.history-today-heading h2 { max-width: 14ch; }
.history-today-heading > p { font-family: 'EB Garamond', Georgia, serif; font-size: 30px; line-height: 1.3; max-width: 28ch; }
.history-today-body { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(56px, 8vw, 128px); align-items: start; }
.history-today-image img { width: 100%; height: auto; }
.history-today-image figcaption { margin-top: 18px; font-size: 14px; line-height: 1.6; }
.history-today-image figcaption a { display: block; padding-top: 8px; color: var(--green); text-decoration: none; }
.history-next-links { display: flex; flex-direction: column; align-items: start; gap: 8px; margin-top: 28px; color: var(--green); }
@media (hover: hover) and (pointer: fine) {
  .history-contents a:hover, .history-biography summary:hover, .history-biography .editorial-prose a:hover, .history-today-image figcaption a:hover { color: #27483e; }
  .history-biography:not([data-expanded=true]):not([open]) summary:hover .arrow { transform: translateY(3px); }
  .history-biography[data-expanded=true] summary:hover .arrow { transform: translateY(-3px) rotate(180deg); }
  .history-moment-source:hover .arrow { transform: translate(2px, -2px); }
  .history-film-poster:hover .history-play { background: var(--green); color: var(--paper); transform: translateY(-3px); }
  .history-film-poster:hover .history-play svg { transform: translateX(2px); }
}
.history-film-poster:active .history-play { transform: translateY(0); transition-duration: 90ms; }
.history-biography summary:active, .history-contents a:active, .history-moment-source:active { color: #132f27; }
.history-moment-source:active .arrow { transform: translate(1px, -1px); }
@media (max-width: 1080px) {
  .history-heading { gap: 40px; }
  .history-heading h1 { font-size: 70px; }
  .history-deck { font-size: 28px; }
  .history-chapter { column-gap: 56px; }
  .history-chronology li { grid-template-columns: 180px 1fr auto; gap: 24px; }
}
@media (max-width: 700px) {
  .history-opening { padding-top: 28px; padding-bottom: 32px; }
  .history-heading { grid-template-columns: 1fr; gap: 26px; margin-top: 28px; }
  .history-heading h1 { font-size: clamp(48px, 12vw, 64px); max-width: 14ch; }
  .history-deck { font-size: 27px; }
  .history-introduction > p + p { margin-top: 16px; }
  .history-introduction .text-link { margin-top: 12px; }
  .history-play { left: 12px; bottom: 12px; gap: 9px; padding: 12px 15px; font-size: 15px; }
  .history-film figcaption { display: block; padding-top: 20px; }
  .history-film figcaption h2 { font-size: 26px; }
  .history-film figcaption .text-link { margin-top: 12px; }
  .history-contents { gap: 0 24px; padding-top: 32px; padding-bottom: 0; }
  .history-chapter { grid-template-columns: 1fr; gap: 36px; padding-block: 56px 64px; }
  .history-portrait { max-width: 280px; width: 80%; justify-self: start; }
  .history-carl-stormer .history-portrait { grid-column: auto; grid-row: auto; justify-self: end; }
  .history-carl-stormer .history-chapter-copy { grid-column: auto; grid-row: auto; }
  .history-portrait h2 { font-size: 32px; }
  .history-chapter-copy h3 { font-size: 36px; max-width: 18ch; margin-bottom: 20px; }
  .history-chapter-copy > p, .history-connection p, .history-today-copy > p { font-size: 18px; }
  .history-connection { grid-template-columns: 1fr; gap: 28px; padding-block: 64px 56px; }
  .history-connection h2 { font-size: 42px; max-width: 15ch; }
  .history-chronology { padding-bottom: 64px; }
  .history-chronology-intro { grid-template-columns: 1fr; gap: 20px; margin-bottom: 16px; }
  .history-chronology-intro h2 { font-size: 34px; }
  .history-chronology li { grid-template-columns: 1fr auto; gap: 12px 24px; padding-block: 24px; }
  .history-year { font-size: 30px; grid-column: 1; grid-row: 1; }
  .history-chronology li > div { grid-column: 1 / -1; grid-row: 2; }
  .history-moment-source { grid-column: 2; grid-row: 1; }
  .history-chronology h3 { font-size: 27px; }
  .history-today { padding-block: 64px; }
  .history-today-heading { grid-template-columns: 1fr; gap: 24px; margin-bottom: 32px; }
  .history-today-heading h2 { font-size: 44px; }
  .history-today-heading > p { font-size: 27px; }
  .history-today-body { grid-template-columns: 1fr; gap: 36px; }
}
@media (prefers-reduced-motion: reduce) {
  .history-play, .history-play svg { transform: none !important; transition: background-color 120ms ease-out, color 120ms ease-out; }
  .history-biography[data-expanded=true] summary .arrow, .history-biography[open]:not([data-expanded]) summary .arrow { transform: rotate(180deg) !important; transition: none; }
}

.about-page a { text-decoration: none; }
.about-opening { padding-block: 44px 72px; }
.about-heading { display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(48px, 7vw, 112px); align-items: end; margin-top: 40px; }
.about-heading h1 { font-size: clamp(64px, 6.7vw, 96px); line-height: 1.03; letter-spacing: -.035em; max-width: 13ch; text-wrap: balance; }
.about-introduction { max-width: 47ch; padding-bottom: 4px; }
.about-deck { font-family: 'EB Garamond', Georgia, serif; font-size: 31px; line-height: 1.25; }
.about-introduction > p + p { margin-top: 22px; font-size: 18px; }
.about-overview .about-opening { padding-top: 44px; }
.about-prose { font-size: 19px; line-height: 1.7; max-width: 65ch; }
.about-prose p + p { margin-top: 22px; }
.about-prose a, .about-page .text-link { color: var(--green); }
.about-prose .text-link { margin-top: 22px; }
.about-section-intro { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(48px, 7vw, 112px); align-items: end; margin-bottom: 44px; }
.about-section-intro h2 { font-size: clamp(36px, 3.5vw, 50px); max-width: 18ch; }
.about-section-intro > p, .about-section-intro > .about-prose { max-width: 48ch; }
.about-homes { padding-block: 64px 72px; background: var(--sage); }
.about-homes-pair, .about-foundation-pair { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(48px, 7vw, 112px); }
.about-homes-pair h3 { font-size: 52px; margin-bottom: 8px; }
.about-host-name { font-size: 19px; margin-bottom: 12px; }
.about-homes-pair .about-prose { font-size: 17px; max-width: 48ch; margin-bottom: 12px; }
.about-purpose, .about-inheritance, .about-governance-purpose, .about-accountability { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(48px, 7vw, 112px); padding-block: 104px; }
.about-purpose h2, .about-inheritance h2, .about-governance-purpose h2, .about-accountability h2 { max-width: 15ch; }
.about-inheritance, .about-governance-purpose { background: var(--mineral); }
.about-welcome { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(56px, 8vw, 128px); padding-block: 32px 104px; }
.about-welcome-copy h2 { font-size: 48px; max-width: 12ch; margin-bottom: 28px; }
.about-welcome-copy > .text-link { margin-top: 24px; }
.about-directors { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; }
.about-director-link { display: block; }
.about-director-link img { width: 100%; height: auto; aspect-ratio: 3 / 4; object-fit: cover; object-position: center top; }
.about-director-link h3 { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: 28px; margin-top: 20px; }
.about-director-link > p { font-size: 15px; line-height: 1.5; margin-top: 9px; color: var(--muted); }
.about-director-link:focus-visible .arrow { transform: translateX(4px); }
.about-vision-statement { display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(64px, 9vw, 144px); padding-block: 80px; background: var(--sage); }
.about-vision-statement > p { font-family: 'EB Garamond', Georgia, serif; font-size: clamp(40px, 4vw, 58px); line-height: 1.14; letter-spacing: -.025em; text-wrap: balance; }
.about-vision-statement > .about-prose { align-self: end; }
.about-commitments { padding-block: 24px 40px; }
.about-commitment { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(56px, 8vw, 128px); padding-block: 72px; }
.about-commitment h2 { max-width: 16ch; font-size: clamp(38px, 4vw, 56px); }
.about-commitment:nth-child(2) h2 { grid-column: 2; grid-row: 1; }
.about-commitment:nth-child(2) .about-prose { grid-column: 1; grid-row: 1; }
.about-story { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(48px, 7vw, 112px); align-items: center; padding-block: 80px; background: var(--mineral); }
.about-story-copy h2 { font-size: clamp(38px, 3.4vw, 48px); max-width: 18ch; margin-bottom: 28px; }
.about-story-date { font-size: 14px; color: var(--muted); margin-bottom: 12px; }
.about-story-copy h3 { font-size: 28px; line-height: 1.22; margin-bottom: 16px; }
.about-story-copy > p:not(.about-story-date) { font-size: 18px; max-width: 48ch; }
.about-story-copy .text-link { margin-top: 20px; }
.about-story img { width: 100%; height: auto; }
.about-story figcaption { font-size: 13px; line-height: 1.6; margin-top: 14px; }
.about-leadership { padding-bottom: 88px; }
.about-leadership .about-directors { max-width: 860px; margin-left: auto; gap: 56px; }
.about-leadership .about-director-link h3 { font-size: 36px; }
.about-governance, .about-partnerships { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: clamp(48px, 7vw, 112px); padding-block: 88px 40px; }
.about-section-index { position: sticky; top: calc(var(--header-height) + 40px); align-self: start; display: flex; flex-direction: column; gap: 8px; }
.about-section-index a { display: flex; align-items: center; min-height: 44px; padding-block: 8px; font-size: 16px; line-height: 1.4; color: var(--muted); }
.about-section-index a[aria-current=location] { color: var(--green); font-weight: 600; }
.about-board, .about-partner-group { padding-bottom: 80px; }
.about-board h2, .about-partner-group > h2 { font-size: 44px; max-width: 22ch; margin-bottom: 20px; }
.about-board-purpose { font-size: 18px; color: var(--green); margin-bottom: 8px; }
.about-board-explanation, .about-group-intro { max-width: 58ch; margin-bottom: 36px; }
.about-board .people-entries { grid-template-columns: 1fr 1fr; gap: 12px 36px; }
.about-partner-entries { display: grid; grid-template-columns: 1fr 1fr; gap: 36px 48px; }
.about-organization-entry h3 { font-size: 29px; line-height: 1.18; margin-bottom: 14px; }
.about-organization-entry .about-prose { font-size: 17px; line-height: 1.65; }
.about-organization-entry > .text-link { margin-top: 14px; }
.about-foundations { background: var(--sage); padding-block: 64px 72px; }
.about-foundation-pair h3 { font-size: 38px; max-width: 20ch; }
.about-funding .about-story { background: var(--paper); }
.about-funding-bodies { display: grid; grid-template-columns: 1fr 1.2fr; gap: clamp(64px, 9vw, 144px); padding-block: 64px 96px; }
.about-funding-bodies > div > h2 { font-size: 52px; margin-bottom: 24px; }
.about-funding-bodies > div > p { max-width: 35ch; }
.about-funding-list { display: grid; gap: 40px; }
.about-accountability { background: var(--mineral); }
.about-actions { display: flex; flex-direction: column; align-items: start; gap: 8px; margin-top: 20px; }
.about-actions .text-link { margin-top: 0; }
.about-contact-routes { display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(48px, 7vw, 112px); padding-block: 16px 88px; }
.about-contact-primary h2 { font-size: 44px; margin-bottom: 18px; }
.about-contact-primary .text-link { font-size: clamp(21px, 2.2vw, 32px); margin-top: 20px; }
.about-contact-specific { display: grid; gap: 36px; }
.about-contact-specific h2 { font-size: 30px; margin-bottom: 12px; }
.about-contact-specific .text-link { margin-top: 12px; }
.about-contact-locations { padding-block: 72px 80px; background: var(--sage); }
.about-addresses { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(48px, 7vw, 112px); }
.about-addresses h3 { font-size: 48px; margin-bottom: 20px; }
.about-addresses address { font-style: normal; font-size: 18px; line-height: 1.7; }
.about-local-contact { margin-top: 32px; margin-bottom: 14px; }
.about-local-contact h4 { font-size: 19px; font-weight: 600; margin: 0 0 4px; }
.about-local-contact > p { font-size: 15px; color: var(--muted); }
.about-local-contact .text-link { margin-top: 8px; }
.about-phone { display: flex; flex-wrap: wrap; gap: 12px 28px; margin-top: 48px; font-size: 16px; }
.about-phone a { color: var(--green); }
.about-next { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(48px, 7vw, 112px); padding-block: 80px 88px; }
.about-next h2 { font-size: 40px; max-width: 21ch; margin-bottom: 20px; }
.about-next p { max-width: 48ch; }
.about-next nav { display: flex; flex-direction: column; align-items: start; justify-content: center; gap: 12px; }
.about-overview .about-heading { display: block; margin-top: 24px; }
.about-overview .about-heading h1 { max-width: none; font-size: clamp(64px, 7.1vw, 96px); }
.about-overview .about-introduction { display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(48px, 7vw, 112px); max-width: none; margin-top: 36px; }
.about-overview .about-introduction > p + p { margin-top: 0; max-width: 46ch; }
.about-overview .about-homes { display: grid; grid-template-columns: .75fr 1.25fr; gap: 64px; background: none; padding-block: 0 64px; }
.about-overview .about-homes .about-section-intro { display: block; margin: 0; }
.about-overview .about-homes .about-section-intro h2 { font-size: 29px; max-width: 20ch; }
.about-overview .about-homes .about-section-intro .about-prose { font-size: 16px; margin-top: 16px; }
.about-overview .about-homes-pair { gap: 40px; }
.about-overview .about-homes-pair h3 { font-size: 36px; }
.about-overview .about-host-name { font-size: 16px; }
.about-welcome { grid-template-columns: 1.15fr .85fr; align-items: center; padding-block: 32px 88px; }
.about-welcome .about-directors { grid-column: 1; grid-row: 1; }
.about-welcome-copy { grid-column: 2; grid-row: 1; }
.about-welcome-copy h2 { max-width: none; font-size: 42px; }
.about-welcome-copy .about-prose { font-size: 18px; }
.about-purpose { display: block; padding-block: 72px 80px; background: var(--sage); }
.about-purpose h2 { max-width: none; font-size: clamp(40px, 4.4vw, 64px); margin-bottom: 36px; }
.about-purpose .about-prose { display: grid; grid-template-columns: 1fr 1fr; gap: 0 clamp(48px, 7vw, 112px); max-width: none; }
.about-purpose .about-prose p + p { margin-top: 0; }
.about-purpose .about-actions { grid-column: 2; margin-top: 20px; }
.about-inheritance { display: block; text-align: center; background: none; padding-block: 88px; }
.about-inheritance h2 { max-width: 24ch; font-size: clamp(40px, 4.2vw, 60px); margin: 0 auto 28px; }
.about-inheritance .about-prose { max-width: 63ch; margin-inline: auto; }
.about-inheritance .about-actions { align-items: center; }
.about-closing-routes { display: flex; justify-content: center; flex-wrap: wrap; gap: 20px 64px; margin-top: 56px; }
.about-closing-routes .text-link { font-family: 'EB Garamond', Georgia, serif; font-size: 30px; gap: 20px; }
.about-vision .about-heading { grid-template-columns: 1fr; gap: 32px; }
.about-vision .about-heading h1 { max-width: none; }
.about-vision .about-introduction { max-width: 800px; }
.about-vision .about-introduction > p + p { max-width: 65ch; }
.about-vision-statement { display: block; margin-inline: var(--gutter); padding: 56px 64px; }
.about-vision-statement > p { max-width: 23ch; font-size: clamp(40px, 4.7vw, 64px); }
.about-vision-statement > .about-prose { margin-left: auto; max-width: 56ch; margin-top: 36px; }
.about-commitments { display: grid; grid-template-columns: 1fr 1fr; gap: 0 80px; padding-block: 32px 56px; }
.about-commitment:first-child { grid-column: 1 / -1; }
.about-commitment:not(:first-child) { display: block; padding-top: 24px; }
.about-commitment:not(:first-child) h2 { font-size: 40px; max-width: 20ch; margin-bottom: 24px; }
.about-organization .about-heading { display: block; }
.about-organization .about-heading h1 { max-width: none; font-size: clamp(60px, 6vw, 86px); }
.about-organization .about-introduction { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; max-width: none; margin-top: 28px; }
.about-organization .about-introduction > p + p { margin-top: 0; }
.about-leadership { display: grid; grid-template-columns: .65fr 1.35fr; gap: 64px; align-items: center; }
.about-leadership .about-section-intro { display: block; margin: 0; }
.about-leadership .about-section-intro h2 { margin-bottom: 20px; }
.about-leadership .about-directors { width: 100%; gap: 32px; }
.about-leadership .about-director-link h3 { font-size: 30px; }
.about-partners .about-heading { grid-template-columns: 1.3fr .7fr; gap: 64px; }
.about-partners .about-heading h1 { max-width: 17ch; }
.about-partners .about-homes { background: none; padding-top: 16px; }
.about-partners .about-homes .about-section-intro { display: block; margin-bottom: 32px; }
.about-partners .about-homes .about-section-intro h2 { max-width: none; font-size: 38px; margin-bottom: 16px; }
.about-partners .about-homes .about-section-intro .about-prose { max-width: none; }
.about-partners .about-homes-pair { background: var(--sage); padding: 40px 48px; }
.about-partners .about-story { background: none; grid-template-columns: 1.2fr .8fr; padding-top: 16px; }
.about-partners .about-story figure { grid-column: 1; grid-row: 1; }
.about-partners .about-story-copy { grid-column: 2; grid-row: 1; }
.about-contact .about-heading { display: block; }
.about-contact .about-heading h1 { max-width: none; font-size: clamp(60px, 6vw, 86px); }
.about-contact .about-introduction { max-width: 760px; margin-top: 28px; }
.about-contact .about-introduction > p + p { margin-top: 14px; }
.about-contact-routes { grid-template-columns: 1.35fr .65fr; }
.about-contact-primary { background: var(--sage); padding: 40px 48px; align-self: start; }
.about-contact-specific { padding-top: 8px; }
.about-contact-locations { background: none; padding-top: 0; }
@media (hover: hover) and (pointer: fine) {
  .about-page .text-link:hover, .about-prose a:hover, .about-section-index a:hover { color: #27483e; }
  .about-director-link:hover .arrow { transform: translateX(4px); }
}
.about-director-link:active .arrow { transform: translateX(1px); }
@media (max-width: 1100px) {
  .about-overview .about-homes, .about-leadership { gap: 32px; }
  .about-leadership .about-director-link h3 { font-size: 25px; }
  .about-partners .about-heading { grid-template-columns: 1fr 1fr; gap: 40px; }
  .about-contact-primary { padding: 32px; }
  .about-governance, .about-partnerships { grid-template-columns: 200px minmax(0, 1fr); gap: 40px; }
  .about-partner-entries, .about-board .people-entries { grid-template-columns: 1fr; }
  .about-heading, .about-welcome, .about-story, .about-commitment, .about-vision-statement { gap: 40px; }
  .about-directors { gap: 20px; }
  .about-director-link h3 { font-size: 25px; }
}
@media (max-width: 700px) {
  .about-overview .about-heading h1, .about-organization .about-heading h1, .about-contact .about-heading h1 { font-size: clamp(48px, 12vw, 64px); }
  .about-overview .about-introduction, .about-overview .about-homes, .about-organization .about-introduction, .about-leadership, .about-partners .about-heading, .about-partners .about-story { grid-template-columns: 1fr; gap: 28px; }
  .about-overview .about-introduction, .about-organization .about-introduction { margin-top: 24px; }
  .about-overview .about-introduction > p + p { margin-top: 0; }
  .about-overview .about-homes { padding-block: 0 48px; }
  .about-overview .about-homes .about-section-intro { display: none; }
  .about-overview .about-homes-pair { grid-template-columns: 1fr 1fr; gap: 24px; }
  .about-overview .about-homes-pair h3 { font-size: 32px; }
  .about-overview .about-host-name { font-size: 14px; }
  .about-overview .about-homes .text-link { font-size: 14px; gap: 8px; }
  .about-welcome .about-directors, .about-welcome-copy, .about-partners .about-story figure, .about-partners .about-story-copy { grid-column: auto; grid-row: auto; }
  .about-welcome-copy { order: 2; }
  .about-purpose .about-prose { display: block; }
  .about-purpose .about-prose p + p { margin-top: 20px; }
  .about-purpose h2 { margin-bottom: 28px; }
  .about-inheritance { padding-block: 56px 64px; }
  .about-inheritance h2 { max-width: 18ch; }
  .about-closing-routes { flex-direction: column; align-items: center; gap: 12px; margin-top: 36px; }
  .about-closing-routes .text-link { font-size: 27px; }
  .about-vision-statement { padding: 32px 24px; }
  .about-vision-statement > .about-prose { margin-top: 24px; }
  .about-commitments { display: block; }
  .about-commitment:not(:first-child) { padding-top: 24px; }
  .about-commitment:not(:first-child) h2 { font-size: 38px; }
  .about-leadership .about-directors { max-width: none; }
  .about-partners .about-homes-pair { padding: 32px 24px; }
  .about-partners .about-homes .about-section-intro h2 { font-size: 34px; }
  .about-contact-primary { padding: 32px 24px; }
  .about-contact-primary .text-link { font-size: clamp(15px, 4.6vw, 21px); gap: 8px; }
  .about-opening, .about-overview .about-opening { padding-block: 28px 44px; }
  .about-heading { grid-template-columns: 1fr; gap: 26px; margin-top: 28px; }
  .about-heading h1 { font-size: clamp(48px, 12vw, 64px); max-width: 15ch; }
  .about-deck { font-size: 27px; }
  .about-introduction > p + p { font-size: 17px; margin-top: 16px; }
  .about-section-intro, .about-homes-pair, .about-foundation-pair, .about-purpose, .about-inheritance, .about-governance-purpose, .about-accountability, .about-welcome, .about-vision-statement, .about-commitment, .about-story, .about-funding-bodies, .about-contact-routes, .about-addresses, .about-next { grid-template-columns: 1fr; gap: 28px; }
  .about-homes, .about-foundations, .about-contact-locations { padding-block: 48px 56px; }
  .about-homes-pair, .about-foundation-pair, .about-addresses { gap: 40px; }
  .about-section-intro { margin-bottom: 36px; }
  .about-section-intro h2, .about-purpose h2, .about-inheritance h2, .about-governance-purpose h2, .about-accountability h2 { font-size: 40px; max-width: 18ch; }
  .about-homes-pair h3, .about-addresses h3 { font-size: 40px; }
  .about-prose { font-size: 18px; }
  .about-purpose, .about-inheritance, .about-governance-purpose, .about-accountability, .about-vision-statement, .about-story, .about-next, .about-funding-bodies { padding-block: 56px 64px; }
  .about-welcome { padding-block: 0 64px; gap: 36px; }
  .about-welcome-copy h2 { font-size: 40px; max-width: 18ch; }
  .about-directors, .about-leadership .about-directors { gap: 20px; }
  .about-director-link h3, .about-leadership .about-director-link h3 { font-size: 24px; gap: 8px; align-items: start; }
  .about-director-link h3 .arrow { width: 18px; height: 18px; flex-basis: 18px; margin-top: 5px; }
  .about-director-link > p { font-size: 13px; }
  .about-vision-statement > p { font-size: 40px; }
  .about-commitments { padding-block: 8px 16px; }
  .about-commitment { padding-block: 44px; }
  .about-commitment h2 { font-size: 38px; max-width: 18ch; }
  .about-commitment:nth-child(2) h2, .about-commitment:nth-child(2) .about-prose { grid-column: auto; grid-row: auto; }
  .about-story { gap: 32px; }
  .about-story-copy h2 { font-size: 38px; }
  .about-story-copy h3 { font-size: 27px; }
  .about-leadership { padding-bottom: 48px; }
  .about-governance, .about-partnerships { grid-template-columns: 1fr; gap: 36px; padding-block: 48px 8px; }
  .about-section-index { position: static; flex-direction: row; flex-wrap: wrap; gap: 0 24px; }
  .about-section-index a { font-size: 15px; }
  .about-board, .about-partner-group { padding-bottom: 48px; }
  .about-board h2, .about-partner-group > h2 { font-size: 36px; }
  .about-partner-entries { gap: 32px; }
  .about-foundation-pair h3 { font-size: 33px; }
  .about-funding-bodies > div > h2 { font-size: 40px; }
  .about-contact-routes { padding-block: 0 56px; gap: 40px; }
  .about-contact-primary h2 { font-size: 36px; }
  .about-contact-primary .text-link { font-size: 21px; }
  .about-local-contact .text-link { font-size: 15px; gap: 12px; }
  .about-next h2 { font-size: 36px; }
  .about-next nav { gap: 8px; }
}

.privacy-page a { text-decoration: none; color: var(--green); }
.privacy-opening { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: end; padding-block: 80px 72px; }
.privacy-opening h1 { font-size: clamp(60px, 6.5vw, 88px); line-height: 1.05; }
.privacy-introduction { font-family: 'EB Garamond', Georgia, serif; font-size: 32px; line-height: 1.25; color: var(--green); }
.privacy-updated { font-size: 16px; margin-top: 20px; color: var(--muted); }
.privacy-layout { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: clamp(48px, 8vw, 112px); padding-bottom: 96px; }
.privacy-index { top: calc(var(--header-height) + 24px); gap: 0; }
.privacy-sections { max-width: 70ch; min-width: 0; }
.privacy-sections section + section { margin-top: 56px; }
.privacy-sections section { scroll-margin-top: calc(var(--header-height) + 32px); }
.privacy-sections h2 { font-size: 36px; line-height: 1.15; margin-bottom: 24px; }
.privacy-prose { font-size: 19px; line-height: 1.7; overflow-wrap: anywhere; }
.privacy-prose h3 { font-size: 28px; line-height: 1.2; margin-block: 32px 16px; }
.privacy-prose p + p, .privacy-prose ul + p { margin-top: 20px; }
.privacy-prose ul, .privacy-prose ol { padding-left: 24px; margin-block: 20px; }
.privacy-prose li + li { margin-top: 8px; }
.privacy-related { display: flex; flex-wrap: wrap; gap: 16px 40px; margin-top: 48px; }
@media (max-height: 760px) {
  .privacy-index { position: static; }
}
@media (max-width: 900px) {
  .privacy-opening { grid-template-columns: 1fr; gap: 24px; padding-block: 48px; }
  .privacy-layout { grid-template-columns: 1fr; gap: 48px; padding-bottom: 64px; }
  .privacy-index { position: static; display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; }
  .privacy-prose { font-size: 18px; }
  .privacy-sections h2 { font-size: 32px; }
  .privacy-sections section + section { margin-top: 48px; }
}

