@font-face { font-family:Caslon; src:url('assets/caslon.woff') format('woff'); font-style:normal; font-weight:400; font-display:swap; }
@font-face { font-family:Caslon; src:url('assets/caslon-italic.woff') format('woff'); font-style:italic; font-weight:400; font-display:swap; }
:root { --paper:#fff; --ink:#000; --blue:#5863AA; --serif:Caslon,Georgia,serif; --sans:Arial,Helvetica,sans-serif; }
* { box-sizing:border-box; }
body { background:var(--paper); color:var(--ink); margin:0; font:17px/1.6 var(--serif); -webkit-font-smoothing:antialiased; }
h1, h2, p, figure { margin:0; }
h1, h2 { font-weight:400; }
a { color:inherit; text-decoration:none; }
a:hover { color:var(--blue); text-decoration:none; }
a { transition:color .15s ease; }
a:focus-visible { outline:2px solid var(--blue); outline-offset:5px; }
img { max-width:100%; height:auto; display:block; }
main img, .footer-photo picture img { filter:grayscale(1); }
.site { width:100%; margin:0 auto; padding:0 32px; container-type:inline-size; }
.skip { position:absolute; top:-80px; padding:10px; background:var(--paper); z-index:1; }
.skip:focus { top:0; }
.header { padding-top:36px; }
.wordmark { display:block; font:700 8cqw/.98 "Helvetica Neue",Helvetica,Arial,sans-serif; letter-spacing:-.025em; text-decoration:none!important; }
.wordmark span { display:block; white-space:nowrap; }
nav { display:flex; align-items:center; gap:42px; border-top:1px solid #000; border-bottom:1px solid #000; padding:16px 0; margin-top:29px; font:12px/1.4 var(--sans); text-transform:uppercase; letter-spacing:.25px; }
nav [aria-current=page] { text-decoration:underline; text-underline-offset:5px; }
.home { padding-top:36px; }
.printer-mark { display:flex; align-items:center; justify-content:center; gap:28px; padding:25px 0 27px; }
.printer-mark:before, .printer-mark:after { content:''; height:1px; background:#000; flex:1; }
.asterism { display:flex; align-items:center; justify-content:center; width:54px; height:65px; flex:0 0 54px; font:52px/1 Georgia,serif; color:#000; text-decoration:none; }
.asterism:hover, .asterism:focus-visible { color:var(--blue); }
.page-heading { font-size:46px; line-height:1.1; margin:48px 0 32px; letter-spacing:-1px; }
.about-grid { display:grid; grid-template-columns:58% 1fr; gap:48px; align-items:start; }
.about-copy { padding-top:4px; font-size:17px; line-height:1.7; }
.about-copy p+p { margin-top:23px; }
.about-copy a { text-decoration:underline; }
.about-copy section { margin-top:48px; }
.about-copy h2 { font-size:27px; margin-bottom:13px; line-height:1.2; }
.about-copy section p { font-size:15px; }
figcaption { font:11px/1.6 var(--sans); margin-top:10px; }
figcaption a { text-decoration:underline; text-underline-offset:2px; }
footer { margin-top:58px; border-top:1px solid #000; padding:18px 0 30px; display:flex; justify-content:space-between; gap:25px; font:10px/1.5 var(--sans); }
@container(max-width:950px) {
  .about-grid { gap:30px; }
  .about-copy { font-size:16px; }
}
@container(max-width:600px) {
  .header { padding-top:25px; }
  nav { margin-top:23px; padding:13px 0; gap:31px; font-size:11px; }
  .home { padding-top:26px; }
  .printer-mark { padding:23px 0; gap:22px; }
  .asterism { font-size:44px; height:55px; }
  .page-heading { font-size:36px; margin:33px 0 25px; }
  .about-grid { display:block; }
  .about-copy { font-size:17px; margin-top:27px; }
  .about-copy section { margin-top:31px; }
  footer { margin-top:40px; font-size:9px; flex-direction:column; gap:7px; padding-bottom:23px; }
}
nav { gap:25px; height:52px; }
nav a { display:inline-flex; align-items:center; width:79px; height:22px; flex:0 0 79px; }
nav a:hover, nav a:focus-visible { font-family:var(--serif); font-style:italic; font-size:14px; letter-spacing:0; text-transform:none; color:var(--blue); text-decoration:none; }
.about-intro { font-size:22px; line-height:1.55; }
.about-copy p+p { margin-top:24px; }
.journal-history { margin-top:55px; border-top:1px solid #000; padding-top:32px; }
.journal-history>h2 { font-size:36px; line-height:1.2; letter-spacing:-.6px; margin-bottom:36px; }
.history-entry { display:grid; grid-template-columns:29% 1fr; gap:45px; padding:0 0 30px; }
.history-entry h3 { font:400 23px/1.45 var(--serif); margin:0; max-width:260px; }
.history-entry p { max-width:710px; font-size:17px; line-height:1.8; margin:0 0 20px; }
.history-entry p:last-child { margin-bottom:0; }
.archive-covers { margin:8px 0 43px; }
.archive-covers img { width:100%; }
.history-entry+.history-entry { border-top:1px solid #d5d5d5; padding-top:30px; }
.team-list { max-width:800px; margin:0 auto; padding:0; }
.team-row { display:grid; grid-template-columns:1fr 1fr; gap:30px; padding:25px 0; border-top:1px solid #d5d5d5; }
.team-row:first-child { border-top:1px solid #000; }
.team-row dt { font-size:19px; }
.team-row dd { margin:0; font-size:19px; }
.team-row:last-child { border-bottom:1px solid #d5d5d5; }
@container(max-width:950px) {
  .about-intro { font-size:19px; }
  .history-entry { grid-template-columns:27% 1fr; gap:30px; }
  .history-entry h3 { font-size:21px; }
}
@container(max-width:600px) {
  nav { height:47px; gap:24px; }
  nav a { width:70px; flex-basis:70px; }
  .about-intro { font-size:21px; }
  .journal-history { margin-top:38px; padding-top:26px; }
  .journal-history>h2 { font-size:30px; margin-bottom:25px; }
  .history-entry { display:block; padding-bottom:26px; }
  .history-entry h3 { font-size:23px; max-width:none; margin-bottom:17px; }
  .history-entry p { font-size:16px; line-height:1.8; }
  .archive-covers { margin:0 0 30px; overflow:auto; }
  .archive-covers img { min-width:620px; }
  .team-row { grid-template-columns:1.4fr 1fr; gap:20px; padding:22px 0; }
  .team-row dt, .team-row dd { font-size:16px; }
}
@media(prefers-reduced-motion:reduce) {
  a { transition:none; }
}
nav a:last-child { width:105px; flex-basis:105px; }
.asterism { cursor:default; transition:color .15s ease; }
@container(max-width:600px) {
  nav { gap:0; justify-content:space-between; }
  nav a { width:53px; flex-basis:53px; }
  nav a:nth-child(3) { width:71px; flex-basis:71px; }
  nav a:last-child { width:90px; flex-basis:90px; }
}
@media(prefers-reduced-motion:reduce) {
  .asterism { transition:none; }
}
html { scrollbar-width:none; }
html::-webkit-scrollbar { display:none; width:0; height:0; }
.site { background:#fff; }
@media(orientation:landscape) {
  body { background:#f1f1f1 url('assets/margin-pattern.svg') repeat fixed; }
  .site { width:100dvh; min-height:100dvh; }
}
@media(orientation:portrait) {
  .site { padding-inline:clamp(20px,4vw,40px); }
}
@media(orientation:landscape) and (max-height:600px) {
  .site { padding-inline:20px; }
}
@container(max-width:600px) {
  .wordmark { line-height:1.02; }
  .archive-covers img { min-width:0; }
}
@container(max-width:300px) {
  nav { font-size:10px; }
  nav a { width:45px; flex-basis:45px; }
  nav a:nth-child(3) { width:64px; flex-basis:64px; }
  nav a:last-child { width:83px; flex-basis:83px; }
  nav a:hover, nav a:focus-visible { font-size:12px; }
}
.diplomat-entry { align-items:start; padding-bottom:36px; }
.diplomat-entry img { width:100%; height:auto; }
.diplomat-entry h3 { max-width:none; margin-bottom:18px; }
@container(max-width:600px) {
  .diplomat-entry figure { max-width:300px; margin-bottom:26px; }
}
.journal-history { border:0; margin-top:0; padding-top:0; }
.journal-history .history-entry { display:block; border:0; padding:0; }
.journal-history .history-entry h3 { max-width:none; margin:0 0 22px; }
.journal-history .history-entry p { max-width:none; }
.journal-history .archive-covers { margin:28px 0 0; }
.diplomat-layout { display:grid; grid-template-columns:29% 1fr; gap:30px; align-items:start; }
@container(max-width:600px) {
  .journal-history { margin-top:0; padding-top:0; }
  .diplomat-layout { display:block; }
}
.journal-history .diplomat-entry, .journal-history .history-entry+.history-entry { margin-top:40px; }
.launch-hero { display:grid; grid-template-columns:46% 1fr; gap:44px; align-items:center; }
.launch-hero img, .launch-archive img { width:100%; height:auto; }
.launch-copy h1 { font:400 42px/1.2 var(--serif); letter-spacing:-1px; margin:0 0 30px; }
.text-action { display:inline-block; font:14px/1.5 var(--sans); text-decoration:underline; text-underline-offset:5px; }
.text-action:hover { color:var(--blue); text-decoration:underline; }
.submission-intro { max-width:650px; font-size:18px; line-height:1.7; }
.submission-intro p+p { margin-top:18px; }
.submission-intro ul { padding-left:20px; margin:26px 0 30px; }
.submission-intro li { padding-left:4px; margin-bottom:12px; }
.team-list { max-width:none; }
@container(max-width:600px) {
  .launch-hero { grid-template-columns:1fr; gap:26px; }
  .launch-copy h1 { font-size:34px; margin-bottom:22px; }
  .launch-hero figure { max-width:100%; }
  .submission-intro { font-size:17px; }
}
.launch-copy .text-action { color:var(--blue); }
.site { --page-gutter:32px; padding-inline:var(--page-gutter); display:flex; flex-direction:column; }
.site>main { flex:1; }
.site-footer { display:block; margin:42px calc(-1 * var(--page-gutter)) 0; padding:0; border:0; background:#000; color:#fff; font:11px/1.5 var(--sans); }
.footer-photo { position:relative; overflow:hidden; }
.footer-photo picture { display:block; }
.footer-photo img { width:100%; height:auto; }
.footer-content { padding:0 var(--page-gutter) 20px; }
.footer-nav { height:auto; margin:12px 0 10px; padding:0; border:0; gap:22px; font:11px/1.5 var(--sans); text-transform:none; letter-spacing:0; justify-content:flex-start; flex-wrap:wrap; }
.footer-nav a, .footer-nav a:nth-child(3), .footer-nav a:last-child { width:66px; flex:0 0 66px; }
.footer-nav a:hover, .footer-nav a:focus-visible { font:italic 13px/1.27 var(--serif); color:var(--blue); }
.footer-name { margin-top:14px; font-size:10px; }
@media(orientation:portrait) {
  .site { --page-gutter:clamp(20px,4vw,40px); }
}
@media(orientation:landscape) and (max-height:600px) {
  .site { --page-gutter:20px; }
}
@container(max-width:600px) {
  .launch-copy { grid-row:1; }
  .launch-copy h1 { max-width:330px; }
  .launch-hero { gap:30px; }
  .site-footer { margin-top:34px; }
  .footer-nav { gap:12px; }
}
.footer-nav a.footer-legal { width:110px; flex-basis:110px; }
.legal-copy { max-width:650px; font-size:17px; line-height:1.7; }
.legal-copy p+p { margin-top:22px; }
.image-credit { margin-top:32px; }
.image-credit h2 { font-size:22px; margin-bottom:12px; }
.image-credit p { font-size:14px; }
.image-credit a { text-decoration:underline; text-underline-offset:3px; }
.footer-photo .footer-monogram { position:absolute; top:12px; left:16px; width:clamp(30px,5cqw,50px); height:auto; filter:brightness(0) invert(1); pointer-events:none; }
