:root {
  --ink: #0b0b0c;
  --ink-2: #141416;
  --paper: #f2eee6;
  --paper-2: #e5ded1;
  --gold: #b99a61;
  --gold-soft: #92784b;
  --muted: #9d968b;
  --line: rgba(185,154,97,.30);
  --line-soft: rgba(242,238,230,.12);
  --max: 1220px;
  --serif: "Iowan Old Style", "Baskerville", "Times New Roman", serif;
  --sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--ink);
  color: var(--paper);
  font-family: var(--sans);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
a { color: inherit; text-decoration: none; }
a:focus-visible, button:focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; }
::selection { background: var(--gold); color: var(--ink); }

.skip-link {
  position: fixed; top: 12px; left: 12px; z-index: 100;
  transform: translateY(-200%); background: var(--paper); color: var(--ink);
  padding: 10px 14px; font-size: 12px; letter-spacing: .08em; text-transform: uppercase;
}
.skip-link:focus { transform: none; }

.site-header {
  position: sticky; top: 0; z-index: 50;
  backdrop-filter: blur(16px);
  background: rgba(11,11,12,.86);
  border-bottom: 1px solid var(--line-soft);
}
.header-inner {
  max-width: var(--max); margin: 0 auto; height: 76px;
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 28px;
}
.brand {
  font-family: var(--serif); font-size: 16px; letter-spacing: .18em; text-transform: uppercase;
}
.nav { display: flex; align-items: center; gap: 28px; }
.nav a {
  font-size: 11px; letter-spacing: .16em; text-transform: uppercase; color: var(--muted);
  transition: color .2s ease;
}
.nav a:hover, .nav a[aria-current="page"] { color: var(--paper); }
.menu-toggle { display: none; background: none; border: 0; color: var(--paper); font-size: 12px; letter-spacing: .14em; text-transform: uppercase; }

.shell { max-width: var(--max); margin: 0 auto; padding: 0 28px; }

.hero {
  min-height: calc(100vh - 76px);
  display: grid;
  grid-template-columns: 1.35fr .65fr;
  align-items: end;
  gap: 70px;
  padding: 120px 0 72px;
}
.kicker, .section-index, .meta {
  font-size: 10px; letter-spacing: .22em; text-transform: uppercase; color: var(--gold);
}
.hero h1 {
  margin: 18px 0 28px;
  font-family: var(--serif); font-weight: 400;
  font-size: clamp(64px, 10vw, 146px); line-height: .88;
  letter-spacing: -.045em;
  max-width: 920px;
}
.hero-copy {
  max-width: 580px; font-family: var(--serif); font-size: clamp(24px, 3vw, 38px); line-height: 1.14;
  color: var(--paper-2);
}
.hero-aside { border-left: 1px solid var(--line); padding-left: 24px; padding-bottom: 8px; }
.hero-aside p { margin: 0 0 18px; color: var(--muted); font-size: 13px; line-height: 1.65; }
.hero-aside a { display: inline-block; margin-top: 16px; font-size: 11px; letter-spacing: .15em; text-transform: uppercase; color: var(--paper); border-bottom: 1px solid var(--gold-soft); padding-bottom: 5px; }

.rule { border-top: 1px solid var(--line); }
.section { padding: 96px 0; }
.section-head {
  display: grid; grid-template-columns: 170px 1fr; gap: 32px; margin-bottom: 54px; align-items: start;
}
.section-head h2 { margin: 0; font-family: var(--serif); font-size: clamp(34px, 5vw, 62px); font-weight: 400; letter-spacing: -.025em; }
.section-head p { max-width: 700px; margin: 8px 0 0; color: var(--muted); line-height: 1.7; font-size: 14px; }

.initiative-list { border-top: 1px solid var(--line-soft); }
.initiative-item {
  display: grid; grid-template-columns: 80px 1.1fr 1.4fr 120px;
  gap: 28px; align-items: start; padding: 34px 0;
  border-bottom: 1px solid var(--line-soft);
  transition: background .2s ease, padding .2s ease;
}
.initiative-item:hover { background: rgba(255,255,255,.018); }
.initiative-no { color: var(--gold); font-family: var(--serif); font-size: 16px; }
.initiative-title h3 { margin: 0 0 7px; font-family: var(--serif); font-weight: 400; font-size: 27px; }
.initiative-title span { font-size: 10px; letter-spacing: .16em; text-transform: uppercase; color: var(--muted); }
.initiative-desc { color: var(--paper-2); font-family: var(--serif); font-size: 18px; line-height: 1.5; }
.initiative-link { text-align: right; font-size: 10px; letter-spacing: .16em; text-transform: uppercase; color: var(--muted); }










.bio-grid { display: grid; grid-template-columns: 170px 1.3fr .7fr; gap: 32px; align-items: start; }
.bio-copy { font-family: var(--serif); font-size: clamp(22px, 3vw, 34px); line-height: 1.35; color: var(--paper-2); max-width: 760px; }
.bio-meta { border-left: 1px solid var(--line); padding-left: 24px; }
.bio-meta dl { margin: 0; }
.bio-meta div { margin-bottom: 20px; }
.bio-meta dt { font-size: 9px; letter-spacing: .16em; text-transform: uppercase; color: var(--gold); margin-bottom: 6px; }
.bio-meta dd { margin: 0; font-size: 13px; color: var(--muted); line-height: 1.5; }

.correspondence { display: grid; grid-template-columns: 170px 1fr; gap: 32px; align-items: start; }
.contact-links { display: flex; flex-wrap: wrap; gap: 14px 26px; }
.contact-links a { font-family: var(--serif); font-size: clamp(24px, 3.5vw, 46px); border-bottom: 1px solid var(--line); padding-bottom: 4px; }
.contact-links a:hover { color: var(--gold); }

.page-hero { padding: 120px 0 72px; border-bottom: 1px solid var(--line); }
.page-hero h1 { margin: 12px 0 18px; font-family: var(--serif); font-size: clamp(58px, 9vw, 120px); line-height: .95; font-weight: 400; letter-spacing: -.04em; }
.page-hero p { margin: 0; max-width: 740px; color: var(--paper-2); font-family: var(--serif); font-size: clamp(20px, 2.4vw, 30px); line-height: 1.35; }

.detail-grid { display: grid; grid-template-columns: 180px 1fr; gap: 38px; padding: 64px 0; border-bottom: 1px solid var(--line-soft); }
.detail-main h2 { margin: 0 0 18px; font-family: var(--serif); font-weight: 400; font-size: 42px; }
.detail-main p { max-width: 790px; color: var(--paper-2); line-height: 1.75; font-size: 15px; }
.detail-main .lead { font-family: var(--serif); font-size: 24px; line-height: 1.45; color: var(--paper); }
.pill-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
.pill { border: 1px solid var(--line); color: var(--muted); font-size: 10px; letter-spacing: .1em; text-transform: uppercase; padding: 8px 10px; }
.inline-link { display: inline-block; margin-top: 18px; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; border-bottom: 1px solid var(--gold-soft); padding-bottom: 4px; }





.site-footer { border-top: 1px solid var(--line-soft); padding: 34px 0 42px; color: var(--muted); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }
.footer-inner { display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; }

.reveal { opacity: 0; transform: translateY(14px); transition: opacity .65s ease, transform .65s ease; }
.reveal.visible { opacity: 1; transform: none; }

@media (max-width: 900px) {
  .hero { grid-template-columns: 1fr; gap: 44px; align-items: start; min-height: auto; }
  .hero-aside { max-width: 520px; }
  .section-head, .bio-grid, .correspondence, .detail-grid { grid-template-columns: 1fr; }
  .initiative-item { grid-template-columns: 54px 1fr; }
  .initiative-desc { grid-column: 2; }
  .initiative-link { grid-column: 2; text-align: left; }
  
  .bio-meta { border-left: 0; border-top: 1px solid var(--line); padding: 22px 0 0; }
}

@media (max-width: 680px) {
  .header-inner, .shell { padding-left: 18px; padding-right: 18px; }
  .header-inner { height: 68px; }
  .menu-toggle { display: block; }
  .nav { display: none; position: absolute; top: 68px; left: 0; right: 0; background: var(--ink); padding: 24px 18px 28px; border-bottom: 1px solid var(--line-soft); flex-direction: column; align-items: flex-start; gap: 18px; }
  .nav.open { display: flex; }
  .hero { padding: 84px 0 56px; }
  .hero h1 { font-size: clamp(58px, 20vw, 92px); }
  .section { padding: 70px 0; }
  .section-head { margin-bottom: 38px; }
  .initiative-item { padding: 28px 0; gap: 16px; }
  
  .page-hero { padding: 84px 0 54px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .reveal { opacity: 1; transform: none; transition: none; }
}

/* Full-screen photographs, original archive layout and file structure. */
:root { --ink:#211923; --ink-2:#2c222e; --paper:#f2e9dc; --paper-2:#e2d5ce; --gold:#e2b781; --gold-soft:#a17b57; --muted:#c2b4b6; --line:rgba(226,183,129,.28); }
html { scroll-padding-top:96px; }
.reveal { opacity:1; transform:none; }
.site-header { background:rgba(28,21,30,.94); backdrop-filter:none; }
.header-inner { height:82px; }
.nav a { color:var(--paper-2); }
.fullscreen-home .site-header,.fullscreen-about-page .site-header { position:absolute;top:0;left:0;right:0;background:transparent; border-bottom:1px solid rgba(242,233,220,.22); }
.image-section { isolation:isolate;position:relative;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);min-height:100vh;min-height:100svh;overflow:hidden; }
.scene-image { position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:38% center;z-index:-2; }
.image-section:before { content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(18,12,20,.04) 22%,rgba(18,12,20,.24) 44%,rgba(18,12,20,.86) 69%,rgba(18,12,20,.92) 100%); }
.image-section:after { content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(15,10,18,.62),transparent 22%,transparent 75%,rgba(18,12,20,.3)); }
.hero.image-section { display:flex;flex-direction:column;justify-content:center;align-items:flex-end;gap:25px;padding:145px max(40px,calc((100vw - 1164px)/2)) 75px; }
.hero.image-section>div,.hero.image-section>.hero-aside { width:min(43vw,550px);max-width:550px; }
.hero.image-section h1 { font-size:clamp(51px,5.1vw,78px);line-height:1.02;letter-spacing:-.038em;max-width:550px;margin:23px 0; }
.hero.image-section .hero-copy { font-size:clamp(19px,1.8vw,26px);line-height:1.4;max-width:510px; }
.hero.image-section .hero-aside { border-left:0;border-top:1px solid var(--line);padding:20px 0 0;display:grid;grid-template-columns:1fr auto;gap:20px;align-items:end; }
.hero.image-section .hero-aside p { margin:0;font-size:12px;line-height:1.8; }
.hero.image-section .hero-aside a { font-size:9px;line-height:1.6;white-space:nowrap;margin:0 0 4px; }
.fullscreen-about { display:flex;justify-content:flex-end;align-items:center;padding:90px max(40px,calc((100vw - 1164px)/2));border-top:0; }
.fullscreen-about .bio-grid { display:block;width:min(43vw,550px); }
.fullscreen-about .bio-copy { margin-top:28px;font-size:clamp(25px,2.5vw,36px);line-height:1.4; }
.fullscreen-about .bio-meta { margin-top:32px;border-left:0;border-top:1px solid var(--line);padding:25px 0 0; }
.fullscreen-about .bio-meta dl { display:grid;grid-template-columns:.65fr 1fr 1fr;gap:20px; }
.fullscreen-about .bio-meta div { margin:0; }
.fullscreen-about .bio-meta dd { color:var(--paper-2); }
.about-cover { display:flex;flex-direction:column;justify-content:center;align-items:flex-end;gap:15px;padding:145px max(40px,calc((100vw - 1164px)/2)) 80px; }
.about-cover>*:not(img) { width:min(43vw,550px); }
.about-cover h1 { font-size:clamp(55px,6vw,85px);line-height:1.05; }
.about-cover p { font-size:24px;line-height:1.45; }
.section:not(.image-section) { padding-block:90px; }
.initiative-item { grid-template-columns:65px 1.1fr 1.4fr 80px; }
.initiative-title h3 { overflow-wrap:break-word; }

@media(min-width:1800px) { .hero.image-section,.fullscreen-about,.about-cover { padding-right:max(80px,calc((100vw - 1350px)/2)); } }
@media(max-width:1000px) { .hero.image-section>div,.hero.image-section>.hero-aside,.fullscreen-about .bio-grid,.about-cover>*:not(img) { width:46vw; } .hero.image-section .hero-aside { grid-template-columns:1fr;gap:14px; } .hero.image-section .hero-aside a { justify-self:start; } .hero.image-section h1 { font-size:58px; } .hero.image-section,.fullscreen-about,.about-cover { padding-right:35px; } .fullscreen-about .bio-copy { font-size:29px; } .about-cover p { font-size:23px; } }
@media(max-width:900px) { .initiative-item { grid-template-columns:45px 1fr; } }
@media(max-width:680px) {
 html { scroll-padding-top:20px; }
 .header-inner { height:68px; }
 .brand { font-size:13px;letter-spacing:.14em; }
 .nav a { font-size:12px;padding:6px 0; }
 .menu-toggle { padding:12px 0 12px 14px; }
 .image-section { min-height:100svh; }
 .scene-image { object-position:32% center; }
 .image-section:before { background:linear-gradient(180deg,rgba(18,12,20,.14) 0%,rgba(18,12,20,.04) 20%,rgba(18,12,20,.28) 40%,rgba(18,12,20,.88) 61%,rgba(18,12,20,.97) 100%); }
 .image-section:after { background:linear-gradient(180deg,rgba(15,10,18,.65),transparent 18%); }
 .hero.image-section { align-items:stretch;justify-content:flex-end;gap:19px;padding:365px 22px 35px; }
 .hero.image-section>div,.hero.image-section>.hero-aside,.fullscreen-about .bio-grid,.about-cover>*:not(img) { width:100%;max-width:530px; }
 .hero.image-section h1 { font-size:clamp(40px,11.2vw,65px);line-height:1.02;margin:16px 0 18px;max-width:530px; }
 .hero.image-section .hero-copy { font-size:18px;line-height:1.4; }
 .hero.image-section .hero-aside { padding-top:17px;gap:13px; }
 .hero.image-section .hero-aside p { font-size:11px;line-height:1.7; }
 .hero.image-section .hero-aside a { font-size:10px; }
 .fullscreen-about { justify-content:flex-start;align-items:flex-end;padding:380px 22px 42px; }
 .fullscreen-about .scene-image,.about-cover .scene-image { object-position:35% center; }
 .fullscreen-about .bio-copy { margin-top:22px;font-size:25px;line-height:1.35; }
 .fullscreen-about .bio-meta { margin-top:25px;padding-top:20px; }
 .fullscreen-about .bio-meta dl { gap:12px; }
 .fullscreen-about .bio-meta dt { font-size:8px;line-height:1.5; }
 .fullscreen-about .bio-meta dd { font-size:11px;line-height:1.6; }
 .fullscreen-about .bio-meta .inline-link { font-size:10px; }
 .about-cover { align-items:stretch;justify-content:flex-end;gap:10px;padding:440px 22px 55px; }
 .about-cover h1 { font-size:59px;margin:8px 0 15px; }
 .about-cover p { font-size:21px;line-height:1.4; }
 .section:not(.image-section) { padding-block:62px; }
 .initiative-item { grid-template-columns:30px 1fr;gap:13px; }
 .initiative-title h3 { font-size:25px; }
 .initiative-title span { font-size:9px;line-height:1.8; }
 .initiative-desc { font-size:17px; }
 .bio-copy { overflow-wrap:break-word; }
 
 
 .page-hero:not(.image-section) h1 { font-size:clamp(50px,15vw,80px);overflow-wrap:break-word; }
}
@media(max-height:650px) and (min-width:681px) { .hero.image-section h1 { font-size:54px; } .hero.image-section { padding-top:115px;padding-bottom:50px; } }
@media(prefers-reduced-motion:reduce) { .reveal { transition:none; } }

/* Restrained four-page edition. */
.hero.image-section h1 { font-size:clamp(72px,7.5vw,112px);line-height:.96;letter-spacing:-.04em;margin:24px 0 28px; }
.hero.image-section .hero-copy { font-size:clamp(20px,2vw,28px);margin:0;line-height:1.45; }
.hero.image-section .hero-aside { margin-top:18px; }
.bio-grid { grid-template-columns:170px minmax(0,1fr); }
.bio-copy { margin:0;max-width:800px; }
.bio-note { color:var(--muted);font-size:15px;line-height:1.8;max-width:680px;margin:22px 0 0; }
.initiative-item:hover .initiative-link { color:var(--gold); }
.initiative-index { display:flex;flex-wrap:wrap;gap:12px 30px;padding:30px 0;border-bottom:1px solid var(--line-soft); }
.initiative-index a { font-size:12px;line-height:1.7;color:var(--paper-2); }
.initiative-index a:hover { color:var(--gold); }
.initiative-index span { margin-right:7px;color:var(--gold);font-family:var(--serif); }
.record-meta .section-index { line-height:1.8;max-width:170px; }
.detail-grid { scroll-margin-top:100px; }
.contact-records { padding:30px 0 90px; }
.contact-record { display:grid;grid-template-columns:180px minmax(0,1fr);gap:38px;padding:50px 0;border-bottom:1px solid var(--line-soft);align-items:baseline; }
.contact-record a { font-family:var(--serif);font-size:clamp(24px,4vw,44px);overflow-wrap:anywhere; }
.contact-record a:hover { color:var(--gold); }
@media(max-width:900px) { .bio-grid { grid-template-columns:1fr; } }
@media(max-width:680px) {
 .hero.image-section h1 { font-size:clamp(64px,18vw,88px);margin:15px 0 20px; }
 .hero.image-section .hero-copy { font-size:19px;line-height:1.5; }
 .hero.image-section .hero-aside { margin-top:0;grid-template-columns:1fr auto;gap:10px; }
 .hero.image-section .hero-aside a { justify-self:end; }
 .hero.image-section { padding-top:370px; }
 .about-cover { padding-top:390px; }
 .contact-record { grid-template-columns:1fr;gap:20px;padding:36px 0; }
 .contact-records { padding-bottom:65px; }
 .page-hero:not(.image-section) h1 { font-size:clamp(43px,11.6vw,70px);overflow-wrap:normal; }
 .detail-main h2 { font-size:35px;overflow-wrap:break-word; }
 .initiative-index { flex-direction:column;gap:13px; }
 .detail-grid { scroll-margin-top:85px; }
}

/* Small identity label above the opening statement. */
.hero.image-section h1.hero-name { font-family:var(--sans);font-size:10px;font-weight:400;letter-spacing:.22em;line-height:1.5;text-transform:uppercase;color:var(--gold);margin:0 0 24px; }
