:root { color-scheme: light; --paper:#f3f0e9; --paper-deep:#e9e4da; --ink:#171816; --muted:#62625d; --line:#c9c3b7; --accent:#9b6a25; --accent-soft:#d2b17f; --inverse:#121311; --inverse-ink:#f2efe8; --serif:Georgia,"Times New Roman",serif; --sans:Arial,Helvetica,sans-serif; }
:root[data-theme="dark"] { color-scheme:dark; --paper:#111210; --paper-deep:#191a17; --ink:#efede6; --muted:#aaa79d; --line:#3a3a35; --accent:#d0a15d; --accent-soft:#75542b; --inverse:#e8e4db; --inverse-ink:#141511; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; background:var(--paper); }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--sans); font-size:16px; line-height:1.6; }
a { color:inherit; text-underline-offset:.2em; }
button,a { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
.skip-link { position:fixed; left:1rem; top:-6rem; z-index:100; padding:.75rem 1rem; background:var(--ink); color:var(--paper); }
.skip-link:focus { top:1rem; }
.visually-hidden { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.publication-header { position:sticky; top:0; z-index:20; border-bottom:1px solid var(--line); background:color-mix(in srgb,var(--paper) 94%,transparent); backdrop-filter:blur(12px); }
.header-inner { width:min(1400px,calc(100% - 3rem)); min-height:92px; margin:auto; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; }
.publication-wordmark { width:max-content; display:flex; align-items:center; text-decoration:none; }
.publication-wordmark-text { display:flex; flex-direction:column; font-family:var(--serif); font-size:1.62rem; line-height:.83; letter-spacing:.18em; text-transform:uppercase; }
.publication-wordmark-text > span:last-child { margin-left:2.15rem; color:var(--accent); }
.publication-nav { display:flex; gap:clamp(.9rem,1.8vw,2.25rem); }
.publication-nav a,.back-to-latest { font-size:.78rem; font-weight:700; letter-spacing:.1em; text-decoration:none; text-transform:uppercase; }
.publication-nav a:hover,.back-to-latest:hover { color:var(--accent); }
.back-to-latest { justify-self:center; padding:.65rem .3rem; }
body[data-publication-page="article"] .header-inner { grid-template-columns:1fr auto 1fr; }
.theme-button { justify-self:end; width:44px; height:44px; display:grid; place-items:center; border:0; background:transparent; color:var(--ink); cursor:pointer; font-size:1.1rem; }
.edition-bar { width:min(1400px,calc(100% - 3rem)); min-height:58px; margin:auto; display:flex; align-items:center; gap:.8rem; overflow:hidden; border-bottom:1px solid var(--line); color:var(--muted); font-size:.74rem; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
.info-item { min-width:0; color:inherit; text-decoration:none; white-space:nowrap; }
a.info-item:hover { color:var(--accent); }
.info-short,.info-mobile { display:none; }
.search-section { width:min(1400px,calc(100% - 3rem)); margin:auto; padding:1rem 0; border-bottom:1px solid var(--line); scroll-margin-top:108px; }
.search-form { display:grid; grid-template-columns:auto minmax(280px,520px); align-items:center; justify-content:space-between; gap:1.5rem; }
.search-form label { font-size:.72rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.search-controls { display:grid; grid-template-columns:minmax(0,1fr) auto; }
.search-controls input,.search-controls button { min-height:42px; border:1px solid var(--line); border-radius:0; font:inherit; }
.search-controls input { min-width:0; padding:.55rem .8rem; background:transparent; color:var(--ink); }
.search-controls button { padding:.55rem 1rem; border-left:0; background:var(--ink); color:var(--paper); cursor:pointer; font-size:.72rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.publication-loading,.publication-error { width:min(1400px,calc(100% - 3rem)); margin:5rem auto; color:var(--muted); }
.lead-story { width:min(1400px,calc(100% - 3rem)); margin:auto; padding:clamp(3rem,6vw,6.5rem) 0; display:grid; grid-template-columns:minmax(300px,.8fr) minmax(480px,1.25fr); gap:clamp(2.5rem,6vw,7rem); align-items:center; border-bottom:1px solid var(--line); }
.eyebrow { margin:0 0 1rem; color:var(--accent); font-size:.72rem; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
.lead-copy h1 { max-width:690px; margin:0; font-family:var(--serif); font-size:clamp(3.1rem,5vw,6rem); font-weight:400; letter-spacing:-.045em; line-height:.95; }
.lead-copy h1 a { text-decoration:none; }
.lead-deck { max-width:620px; margin:2rem 0; color:var(--muted); font-family:var(--serif); font-size:clamp(1.24rem,1.8vw,1.58rem); line-height:1.45; }
.byline,.card-meta { color:var(--muted); font-size:.76rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }
.story-link,.view-all { width:max-content; margin-top:2.25rem; display:inline-flex; align-items:center; gap:.65rem; border-bottom:1px solid var(--accent); padding-bottom:.3rem; font-size:.8rem; font-weight:800; letter-spacing:.08em; text-decoration:none; text-transform:uppercase; }
.lead-image-wrap { min-height:560px; display:block; overflow:hidden; background:var(--paper-deep); }
.lead-photo { height:100%; margin:0; }
.lead-image-wrap img { width:100%; height:100%; min-height:560px; display:block; object-fit:cover; filter:contrast(1.06) saturate(.78); }
.text-lead { min-height:560px; display:grid; place-items:center; padding:3rem; border:1px solid var(--line); background:var(--paper-deep); color:var(--muted); font-family:var(--serif); font-size:1.5rem; text-align:center; }
.latest-section,.records-section,.collections-section { width:min(1400px,calc(100% - 3rem)); margin:auto; padding:clamp(4rem,7vw,7rem) 0; }
.section-heading { display:flex; align-items:end; justify-content:space-between; gap:2rem; margin-bottom:3rem; }
.section-heading h2,.perspective-section h2,.collection-context h2,.browse-context h1 { margin:0; font-family:var(--serif); font-size:clamp(2.6rem,5vw,5rem); font-weight:400; letter-spacing:-.04em; line-height:1; }
.section-note { max-width:510px; margin:0; color:var(--muted); font-family:var(--serif); font-size:1.08rem; }
.collection-context { width:min(1400px,calc(100% - 3rem)); margin:0 auto; padding:clamp(3rem,6vw,5rem) 0 0; }
.collection-context p:not(.eyebrow) { max-width:620px; margin:1.25rem 0 0; color:var(--muted); font-family:var(--serif); font-size:1.2rem; }
.collection-context a { display:inline-block; margin-top:1.25rem; color:var(--muted); font-size:.76rem; font-weight:700; letter-spacing:.08em; text-decoration:none; text-transform:uppercase; }
.collection-context a:hover { color:var(--accent); }
.browse-context { width:min(1400px,calc(100% - 3rem)); margin:auto; padding:clamp(3rem,6vw,5rem) 0 2.5rem; }
.browse-context p:not(.eyebrow) { max-width:720px; margin:1.25rem 0 0; color:var(--muted); font-family:var(--serif); font-size:1.2rem; }
.browse-context a { display:inline-block; margin-top:1.25rem; color:var(--muted); font-size:.76rem; font-weight:700; letter-spacing:.08em; text-decoration:none; text-transform:uppercase; }
.browse-section { width:min(1400px,calc(100% - 3rem)); margin:auto; padding:0 0 clamp(4rem,7vw,7rem); }
.browse-empty { padding:2rem 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); color:var(--muted); font-family:var(--serif); font-size:1.25rem; }
.story-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.story-card { min-height:390px; padding:2rem clamp(1.5rem,3vw,3rem) 2rem 0; display:flex; flex-direction:column; }
.story-card + .story-card { padding-left:clamp(1.5rem,3vw,3rem); border-left:1px solid var(--line); }
.story-card:nth-child(3n + 1) { padding-left:0; border-left:0; }
.story-card:nth-child(n + 4) { border-top:1px solid var(--line); }
.story-card h3 { max-width:370px; margin:.8rem 0 1.25rem; font-family:var(--serif); font-size:clamp(1.75rem,2.5vw,2.65rem); font-weight:400; line-height:1.08; }
.story-card h3 a { text-decoration:none; }
.story-card > p:not(.eyebrow) { max-width:410px; margin:0; color:var(--muted); }
.card-meta { margin-top:auto; display:flex; flex-direction:column; }
.perspective-section { padding:clamp(4rem,7vw,7rem) max(1.5rem,calc((100% - 1400px)/2)); display:grid; grid-template-columns:.8fr 1.2fr auto; align-items:end; gap:clamp(2rem,6vw,7rem); background:var(--inverse); color:var(--inverse-ink); }
.perspective-section .eyebrow { color:var(--accent-soft); }
.perspective-section > p { max-width:680px; margin:0; font-family:var(--serif); font-size:clamp(1.25rem,2vw,1.75rem); line-height:1.45; }
.perspective-section a { margin:0; color:var(--inverse-ink); border-color:var(--accent-soft); white-space:nowrap; }
.records-section { border-top:1px solid var(--line); }
.record-list { border-top:1px solid var(--line); }
.record-row { min-height:118px; display:grid; grid-template-columns:125px minmax(0,1fr) auto; align-items:center; gap:2rem; border-bottom:1px solid var(--line); color:var(--ink); text-decoration:none; }
.record-row time { color:var(--muted); font-size:.72rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.record-row-title { display:grid; gap:.35rem; }
.record-row strong { font-family:var(--serif); font-size:clamp(1.45rem,2.5vw,2.25rem); font-weight:400; line-height:1.15; }
.record-row small { overflow:hidden; color:var(--muted); font-size:.86rem; text-overflow:ellipsis; white-space:nowrap; }
.record-row-arrow { color:var(--accent); font-size:1.35rem; transition:transform .22s ease; }
.record-row:hover .record-row-arrow,.record-row:focus-visible .record-row-arrow { transform:translateX(.35rem); }
.collection-list { border-top:1px solid var(--line); }
.collection-row { min-height:105px; display:grid; grid-template-columns:70px minmax(0,1fr) auto; align-items:center; border-bottom:1px solid var(--line); color:var(--ink); text-decoration:none; }
.collection-number,.collection-meta em { color:var(--muted); font-size:.75rem; font-style:normal; letter-spacing:.08em; text-transform:uppercase; transition:color .2s ease; }
.collection-row strong { font-family:var(--serif); font-size:clamp(1.6rem,3vw,2.8rem); font-weight:400; transition:color .2s ease,transform .28s cubic-bezier(.2,.75,.2,1); }
.collection-meta { display:flex; align-items:center; gap:1.2rem; }
.collection-arrow { display:none; color:var(--accent); font-size:1.35rem; }
.collection-row:hover strong,.collection-row:focus-visible strong { color:var(--accent); transform:translateX(1rem); }
.publication-footer { padding:5rem max(1.5rem,calc((100% - 1400px)/2)) 2rem; display:grid; grid-template-columns:1fr 1fr; gap:3rem; background:#0e0f0d; color:#eae7df; }
.publication-footer > div { font-family:var(--serif); font-size:clamp(2rem,5vw,5rem); line-height:1; letter-spacing:-.03em; }
.publication-footer p { max-width:560px; margin:0; color:#aaa79d; font-family:var(--serif); font-size:1.3rem; }
.publication-footer small { grid-column:1/-1; padding-top:3rem; border-top:1px solid #34342f; color:#85837b; }
.publication-footer small a { color:#aaa79d; }

.article-shell { width:min(1200px,calc(100% - 3rem)); margin:auto; padding:clamp(3rem,7vw,7rem) 0; }
.archive-notice,.correction-note { max-width:780px; margin:0 auto 2rem; padding:1rem 1.25rem; border:1px solid var(--accent); background:var(--paper-deep); }
.article-header { max-width:1020px; margin:0 auto clamp(3rem,6vw,6rem); }
.article-header h1 { margin:0; font-family:var(--serif); font-size:clamp(3.3rem,7vw,7.5rem); font-weight:400; letter-spacing:-.055em; line-height:.94; }
.article-deck { max-width:800px; margin:2rem 0; color:var(--muted); font-family:var(--serif); font-size:clamp(1.35rem,2.4vw,2rem); line-height:1.4; }
.article-byline { display:flex; flex-wrap:wrap; gap:.6rem 1.5rem; padding-top:1.2rem; border-top:1px solid var(--line); color:var(--muted); font-size:.76rem; letter-spacing:.04em; text-transform:uppercase; }
.article-figure { margin:0 0 clamp(3rem,7vw,6rem); }
.article-figure img { width:100%; height:auto; display:block; filter:contrast(1.05) saturate(.8); }
.article-figure figcaption { margin-top:.7rem; color:var(--muted); font-size:.75rem; }
.article-body,.article-references { max-width:980px; margin:auto; font-family:var(--serif); font-size:clamp(1.15rem,1.6vw,1.32rem); line-height:1.82; }
.article-body p { margin:0 0 1.7rem; }
.article-body h1 { margin:4.5rem 0 1.5rem; font-size:clamp(2.5rem,5vw,4rem); font-weight:400; letter-spacing:-.04em; line-height:1.04; }
.article-body h2,.article-references h2 { margin:4rem 0 1.4rem; font-size:clamp(2rem,4vw,3.2rem); font-weight:400; letter-spacing:-.03em; line-height:1.1; }
.article-body h3 { margin:3rem 0 1.1rem; font-size:clamp(1.55rem,3vw,2.25rem); font-weight:400; letter-spacing:-.02em; line-height:1.18; }
.article-body h4 { margin:2.5rem 0 .9rem; font-size:clamp(1.18rem,2vw,1.45rem); font-weight:700; letter-spacing:.01em; line-height:1.3; }
.article-body blockquote { margin:3.5rem -6rem; padding:2.2rem 3rem; border-left:4px solid var(--accent); background:var(--paper-deep); font-size:clamp(1.55rem,3vw,2.3rem); line-height:1.35; }
.article-body blockquote p { margin:0; }
.article-body li { margin-bottom:.65rem; }
.article-body img { max-width:100%; height:auto; display:block; margin:2.5rem auto; }
.media-reference,.source-item { margin:1.25rem 0; padding:1.25rem; border:1px solid var(--line); background:var(--paper-deep); font-family:var(--sans); font-size:.9rem; }
.media-reference p,.source-item p { margin:.5rem 0 0; color:var(--muted); }
.video-frame { width:100%; aspect-ratio:16/9; margin-bottom:1rem; border:0; }
.article-actions { max-width:980px; margin:4rem auto 0; padding-top:1.5rem; border-top:1px solid var(--line); }
.share-button { min-height:44px; padding:.6rem 1rem; border:1px solid var(--ink); background:var(--ink); color:var(--paper); cursor:pointer; font-weight:700; }

@media(max-width:1550px) { .edition-bar { min-height:50px; justify-content:space-between; gap:.6rem; font-size:.67rem; letter-spacing:.06em; } .info-long { display:none; } .info-short { display:inline; } .info-separator { flex:0 0 auto; } }
@media(max-width:900px) { .header-inner { min-height:76px; grid-template-columns:1fr auto; } body[data-publication-page="article"] .header-inner { grid-template-columns:1fr auto auto; gap:.65rem; } .publication-nav { display:none; } .lead-story { grid-template-columns:1fr; } .lead-image-wrap,.lead-image-wrap img,.text-lead { min-height:min(620px,75vw); } .story-grid { grid-template-columns:1fr; } .story-card,.story-card + .story-card,.story-card:nth-child(n + 4) { min-height:310px; padding:2.3rem 0; border-top:0; border-left:0; border-bottom:1px solid var(--line); } .perspective-section { grid-template-columns:1fr; align-items:start; } .article-body blockquote { margin:3rem 0; } .search-form { grid-template-columns:1fr; gap:.6rem; } }
@media(max-width:600px) { .header-inner,.edition-bar,.search-section,.lead-story,.latest-section,.records-section,.collections-section,.collection-context,.browse-context,.browse-section,.article-shell { width:min(100% - 2rem,1400px); } .publication-wordmark-text { font-size:1.38rem; } .publication-wordmark-text > span:last-child { margin-left:1.85rem; } .back-to-latest { font-size:.68rem; letter-spacing:.06em; } .edition-bar { min-height:46px; gap:.4rem; font-size:.6rem; letter-spacing:.035em; } .info-short { display:none; } .info-mobile { display:inline; } .lead-copy h1 { font-size:clamp(3rem,15vw,4.3rem); } .section-heading { align-items:start; flex-direction:column; } .record-row { grid-template-columns:1fr auto; gap:.5rem 1rem; padding:1.25rem 0; } .record-row time { grid-column:1/-1; } .record-row small { white-space:normal; } .collection-row { grid-template-columns:44px minmax(0,1fr) auto; } .collection-meta em { display:none; } .collection-meta { gap:.4rem; } .collection-arrow { display:inline; } .publication-footer { grid-template-columns:1fr; } .publication-footer small { grid-column:1; } .article-header h1 { font-size:clamp(3.1rem,16vw,5rem); } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation-duration:.01ms!important; transition-duration:.01ms!important; } }
