@font-face{font-family:'Libre Franklin';src:url('/assets/fonts/librefranklin-latin.woff2') format('woff2');
font-weight:400 700;font-style:normal;font-display:swap;
unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,
U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Libre Franklin';src:url('/assets/fonts/librefranklin-latin-ext.woff2') format('woff2');
font-weight:400 700;font-style:normal;font-display:swap;
unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,
U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}

:root{
  --navy:#26368a; --navy-dark:#1c2a70; --ink:#1a1a1a; --muted:#55545a;
  --rule:#d8d5cd; --ivory:#f4f2ed; --white:#fff;
  --sans:'Libre Franklin',-apple-system,'Segoe UI',Arial,sans-serif;
  --serif:Georgia,'Times New Roman',serif;
  --shell:1140px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--white);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6}
img{max-width:100%;height:auto;display:block}
a{color:var(--navy)}
h1,h2,h3,h4{font-family:var(--sans);font-weight:700;letter-spacing:-.01em;margin:0}
p{margin:0 0 1em}
.shell{max-width:var(--shell);margin:0 auto;padding:0 24px;width:100%}

.skip-link{position:absolute;left:-9999px;top:0;background:var(--navy);color:#fff;padding:10px 16px;z-index:20}
.skip-link:focus{left:0}
a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--navy);outline-offset:2px}

/* archive disclosure ---------------------------------------------------- */
.archive-note{background:var(--ivory);border-bottom:1px solid var(--rule)}
.archive-note p{max-width:var(--shell);margin:0 auto;padding:12px 24px;font-size:14px;line-height:1.55;
  color:var(--ink)}
.archive-note strong{font-weight:700}
.archive-note a{color:var(--navy);text-decoration:underline;white-space:nowrap}
.archive-colophon{border-top:1px solid rgba(255,255,255,.28);margin-top:28px;padding-top:22px;
  font-size:14px;line-height:1.6;max-width:78ch}
.archive-colophon p{margin:0 0 12px;color:#e6e8f4}
.archive-colophon strong{color:#fff}
.archive-colophon a{color:#fff;text-decoration:underline}
/* same fixed block, restated on a light page surface */
.notice-colophon{background:var(--ivory);border:1px solid var(--rule);padding:24px 26px;margin:38px 0 0;
  max-width:72ch}
.notice-colophon .archive-colophon{border-top:0;margin-top:0;padding-top:0;max-width:none}
.notice-colophon .archive-colophon p{color:var(--ink)}
.notice-colophon .archive-colophon strong{color:var(--ink)}
.notice-colophon .archive-colophon a{color:var(--navy)}

/* lead ------------------------------------------------------------------ */
.lead{position:relative;height:560px;overflow:hidden;background:#0d1330}
.lead-img,.pagehead-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.lead-scrim{position:absolute;inset:0;background:rgba(0,0,0,.45)}
.lead-body{position:absolute;left:0;right:0;bottom:0;padding-bottom:44px;color:#fff}
.wordmark{width:260px;background:#fff;padding:10px 14px;margin-bottom:22px}
.lead-kicker{font-size:13px;text-transform:uppercase;letter-spacing:.09em;font-weight:600;margin:0 0 10px;
  color:#dfe3f5}
.lead h1{font-size:44px;line-height:1.14;max-width:17ch;color:#fff}

.pagehead{position:relative;height:200px;overflow:hidden;background:#0d1330}
.pagehead-body{position:absolute;left:0;right:0;bottom:0;padding-bottom:22px;color:#fff}
.pagehead-brand img{width:180px;background:#fff;padding:7px 10px;margin-bottom:12px}
.pagehead h1{font-size:34px;line-height:1.18;color:#fff;max-width:24ch}

/* white page menu -------------------------------------------------------- */
.page-menu{background:#fff;border-bottom:2px solid var(--navy);box-shadow:0 1px 0 rgba(0,0,0,.04)}
.page-menu ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center}
.page-menu li{margin:0}
.page-menu a,.menu-historical{display:block;padding:16px 16px;font-size:13px;font-weight:600;
  text-transform:uppercase;letter-spacing:.09em;text-decoration:none;color:var(--ink)}
.page-menu a:hover{color:var(--navy);background:var(--ivory)}
.page-menu a.is-active{color:var(--navy);box-shadow:inset 0 -3px 0 var(--navy)}
.menu-historical{color:var(--muted);cursor:default}
.menu-historical em{font-style:normal;text-transform:none;letter-spacing:0;font-weight:400;font-size:11px;
  display:block;color:var(--muted)}

/* panels ----------------------------------------------------------------- */
.panel{padding:56px 0;border-bottom:1px solid var(--rule)}
.panel:last-child{border-bottom:0}
.panel h2{font-size:30px;margin:0 0 8px;padding-bottom:10px;border-bottom:2px solid var(--navy);
  display:inline-block}
.panel-note,.facts-note{color:var(--muted);font-size:14px}
.lede{font-family:var(--serif);font-size:19px;line-height:1.7;max-width:64ch;margin-top:18px}

/* bracket-plate motif ---------------------------------------------------- */
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:26px 0 10px}
.fact{border:1px solid var(--navy);padding:18px 20px;position:relative}
.fact-value{font-size:30px;font-weight:700;margin:0 0 4px;color:var(--navy);line-height:1.1}
.fact-label{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}

.steps{list-style:none;margin:26px 0 0;padding:0;counter-reset:step}
.steprow{counter-increment:step;border-top:1px solid var(--rule);padding:22px 0 22px 74px;position:relative}
.steprow:last-child{border-bottom:1px solid var(--rule)}
.steprow::before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:22px;
  width:46px;height:46px;border:1px solid var(--navy);color:var(--navy);font-size:15px;font-weight:700;
  display:flex;align-items:center;justify-content:center}
.steprow h3{font-size:21px;margin:0 0 6px}
.steprow p{margin:0;font-family:var(--serif);font-size:16.5px;line-height:1.7;max-width:66ch}

.divider{margin:48px 0;height:280px;overflow:hidden}
.divider img{width:100%;height:100%;object-fit:cover}

.servicelist{margin-top:26px}
.servicerow{border-top:1px solid var(--rule);padding:22px 0}
.servicerow:last-child{border-bottom:1px solid var(--rule)}
.servicerow h3{font-size:21px;margin:0 0 6px;color:var(--navy)}
.servicerow p{margin:0;font-family:var(--serif);font-size:16.5px;line-height:1.7;max-width:66ch}

/* post rows -------------------------------------------------------------- */
.postlist{margin-top:26px}
.postrow{display:grid;grid-template-columns:132px 1fr;gap:24px;border-top:1px solid var(--rule);
  padding:20px 0}
.postlist .postrow:last-child{border-bottom:1px solid var(--rule)}
.postlist-extra{margin-top:32px}
.postrow-date{margin:0}
.postrow-date time,.postrow-date span{display:inline-block;border:1px solid var(--navy);padding:5px 8px;
  font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--navy)}
.postrow-body h3{font-size:21px;line-height:1.3;margin:0 0 6px}
.postrow-body h3 a{text-decoration:none;color:var(--ink)}
.postrow-body h3 a:hover{color:var(--navy);text-decoration:underline}
.postrow-body p{margin:0;font-family:var(--serif);font-size:16px;color:var(--muted);line-height:1.65;
  max-width:70ch}

/* people ----------------------------------------------------------------- */
.people{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:start;margin-top:26px}
.people-text p{font-family:var(--serif);font-size:17px;line-height:1.75;max-width:60ch}
.signature{font-family:var(--sans);font-weight:700;font-size:16px;margin-top:20px;
  border-top:1px solid var(--rule);padding-top:14px}
.signature span{display:block;font-weight:400;font-size:13px;text-transform:uppercase;letter-spacing:.08em;
  color:var(--muted);margin-top:4px}
.people-figure{margin:0}
.roster-heading{font-size:21px;margin:44px 0 0;padding-bottom:8px;border-bottom:2px solid var(--navy);
  display:inline-block}
.roster{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);
  gap:0 40px}
.roster li{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--rule);
  padding:13px 0}
.person-name{font-weight:700}
.person-role{color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.07em;
  text-align:right}

.quoted{font-family:var(--serif);font-size:18px;color:var(--muted)}
.plainlink{font-weight:600}

/* prose / articles -------------------------------------------------------- */
.prose{font-family:var(--serif);font-size:17px;line-height:1.72;max-width:64ch}
.prose h2{font-size:26px;font-family:var(--sans);margin:36px 0 12px;padding-bottom:8px;
  border-bottom:2px solid var(--navy);display:inline-block}
.prose h3{font-size:20px;font-family:var(--sans);margin:28px 0 10px}
.prose ul,.prose ol{padding-left:22px;margin:0 0 1em}
.prose li{margin-bottom:.55em}
.prose figure{margin:28px 0}
.prose figure:empty{display:none}
.prose blockquote{margin:24px 0;padding:4px 0 4px 20px;border-left:3px solid var(--navy);color:var(--muted)}
.prose table{border-collapse:collapse;width:100%;font-family:var(--sans);font-size:15px}
.prose th,.prose td{border:1px solid var(--rule);padding:8px 10px;text-align:left}
.article-meta{font-size:12.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);
  font-weight:600;margin:0 0 22px;padding-bottom:14px;border-bottom:1px solid var(--rule)}
.article-body{margin-bottom:44px}

.prevnext{display:grid;grid-template-columns:1fr 1fr;gap:20px;border-top:1px solid var(--rule);
  padding-top:22px}
.pn{display:block;text-decoration:none;color:var(--ink);font-weight:700;font-size:16px;line-height:1.35}
.pn span{display:block;font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;
  color:var(--muted);margin-bottom:6px}
.pn:hover{color:var(--navy)}
.pn-prev{text-align:right}
.morefrom{margin-top:40px;border-top:1px solid var(--rule);padding-top:26px}
.morefrom h2{font-size:21px;padding-bottom:8px;border-bottom:2px solid var(--navy);display:inline-block}
.morefrom ul{list-style:none;margin:16px 0 0;padding:0}
.morefrom li{border-bottom:1px solid var(--rule);padding:11px 0;display:flex;justify-content:space-between;
  gap:20px}
.morefrom li span{color:var(--muted);font-size:12.5px;text-transform:uppercase;letter-spacing:.07em;
  white-space:nowrap}
.morefrom-note{margin-top:16px;font-size:15px;color:var(--muted)}

/* glossary ---------------------------------------------------------------- */
.pullquote{margin:34px 0;padding:20px 24px;background:var(--ivory);border-left:3px solid var(--navy);
  font-family:var(--serif);font-size:18px;max-width:64ch}
.pullquote cite{display:block;font-style:normal;font-family:var(--sans);font-size:12.5px;font-weight:600;
  text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-top:10px}
.glossary-index{background:var(--ivory);border:1px solid var(--rule);padding:22px 24px;margin:34px 0 8px}
.glossary-index h2{font-size:14px;text-transform:uppercase;letter-spacing:.09em;border:0;padding:0;
  margin:0 0 12px;color:var(--muted)}
.glossary-index ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);
  gap:14px}
.glossary-index li a{font-weight:700;text-decoration:none;display:block}
.glossary-index li a:hover{text-decoration:underline}
.glossary-index li span{display:block;font-size:12px;color:var(--muted);text-transform:uppercase;
  letter-spacing:.07em;margin-top:3px}
.glossgroup{margin-top:52px}
.glossgroup h2{font-size:26px;padding-bottom:10px;border-bottom:2px solid var(--navy);display:inline-block}
.term{border-top:1px solid var(--rule);padding:24px 0 24px 34px;position:relative}
.glossgroup .term:last-child{border-bottom:1px solid var(--rule)}
.term::before{content:"";position:absolute;left:0;top:29px;width:16px;height:16px;
  border:1px solid var(--navy)}
.term h3{font-size:21px;margin:0 0 10px;color:var(--navy)}
.term p{font-family:var(--serif);font-size:16.5px;line-height:1.72;max-width:70ch;margin:0 0 .9em}
.term p:last-child{margin-bottom:0}
.term ol,.term ul{font-family:var(--serif);font-size:16.5px;line-height:1.72;max-width:70ch;
  padding-left:22px}

/* records / rosters on inner pages ---------------------------------------- */
.recordlist{margin-top:8px}
.record{border-top:1px solid var(--rule);padding:22px 0}
.recordlist .record:last-child{border-bottom:1px solid var(--rule)}
.record h2{font-size:20px;margin:0 0 8px;border:0;padding:0;display:block;line-height:1.35}
.record p{margin:0;font-family:var(--serif);font-size:16.5px;line-height:1.7;max-width:70ch}
.histnote{font-size:14px;color:var(--muted);border-left:3px solid var(--rule);padding-left:14px;
  margin-top:30px}

/* footer ------------------------------------------------------------------ */
.site-footer{background:var(--navy);color:#e6e8f4;padding:44px 0 40px;margin-top:0}
.footer-mark{width:230px;margin-bottom:22px}
.footer-nav ul{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-wrap:wrap;gap:6px 26px}
.footer-nav a{color:#fff;text-decoration:none;font-size:13px;font-weight:600;text-transform:uppercase;
  letter-spacing:.08em}
.footer-nav a:hover{text-decoration:underline}
.footer-credit{font-size:13px;color:#c3c9e6;margin:0}

/* ------------------------------------------------------------------ 1024 */
@media (max-width:1024px){
  .shell{max-width:92vw}
  .lead{height:460px}
  .lead h1{font-size:38px}
}

/* ------------------------------------------------------------------- 767 */
@media (max-width:767px){
  body{font-size:16px}
  .lead{height:auto;overflow:visible}
  .lead-img{position:relative;height:340px;inset:auto}
  .lead-scrim{display:none}
  .lead-body{position:static;background:var(--navy);padding:24px 0 28px}
  .wordmark{width:200px;margin-bottom:16px}
  .lead h1{font-size:26px;max-width:none}
  .pagehead{height:132px}
  .pagehead h1{font-size:23px}
  .pagehead-brand img{width:140px;margin-bottom:8px}

  .page-menu ul{display:block}
  .page-menu li{border-bottom:1px solid var(--rule)}
  .page-menu li:last-child{border-bottom:0}
  .page-menu a,.menu-historical{padding:13px 0;min-height:44px}

  .panel{padding:38px 0}
  .panel h2{font-size:24px}
  .lede{font-size:17px}
  .facts{grid-template-columns:1fr;gap:12px}
  .fact{display:block;padding:14px 16px}
  .fact-value{font-size:24px}
  .steprow{padding:18px 0 18px 60px}
  .steprow::before{width:40px;height:40px;top:18px}
  .divider{height:190px;margin:34px 0}
  .postrow{grid-template-columns:1fr;gap:10px}
  .postrow-body h3{font-size:19px}
  .people{grid-template-columns:1fr;gap:26px}
  .people-text{order:1}
  .people-figure{order:2}
  .roster{grid-template-columns:1fr}
  .roster li{display:block;padding:12px 0}
  .person-role{display:block;text-align:left;margin-top:3px}
  .prose,.term p,.term ol,.term ul,.servicerow p,.steprow p,.record p{font-size:16px}
  .prose{line-height:1.7}
  .prose h2{font-size:22px}
  .glossary-index ul{grid-template-columns:1fr;gap:12px}
  .prevnext{grid-template-columns:1fr;gap:18px}
  .pn-prev{text-align:left}
  .morefrom li{display:block}
  .morefrom li span{display:block;margin-top:4px}
  .archive-note p{font-size:14px;padding:12px 20px}
  .site-footer{padding:34px 0 32px}
}

@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
