@font-face{font-family:Oswald;src:url('./assets/oswald.ttf') format('truetype');font-display:swap}
@font-face{font-family:Literata;src:url('./assets/literata.ttf') format('truetype');font-display:swap}
@font-face{font-family:WorkSans;src:url('./assets/work-sans.ttf') format('truetype');font-display:swap}
@font-face{font-family:IBMMono;src:url('./assets/ibm-plex-mono.ttf') format('truetype');font-display:swap}
:root{--paper:#f4f0e7;--ink:#1c2926;--muted:#67726c;--line:#c7c9bf;--accent:#c8492b;--pale:#e7e8da}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:WorkSans,Arial,sans-serif;-webkit-font-smoothing:antialiased}
button,input,select{font:inherit}
button{cursor:pointer}
a{color:inherit}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.site-shell{max-width:1600px;margin:auto;padding:0 50px}
.utility-bar{display:flex;justify-content:space-between;border-bottom:1px solid var(--ink);padding:13px 0 12px;font:500 10px IBMMono,monospace;letter-spacing:.12em}
.utility-separator{color:var(--accent);padding:0 8px}
.masthead-row{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:12px 0 14px}
.wordmark,.footer-mark{font-family:Oswald,Impact,sans-serif;font-weight:600;letter-spacing:-.064em;line-height:.96;text-decoration:none;white-space:nowrap}
.wordmark{font-size:clamp(66px,8.7vw,142px)}
.wordmark>span:first-child,.footer-mark>span:first-child{color:var(--accent)}
.wordmark-dot{color:var(--accent)}
.masthead-note{font:italic 18px/1.32 Literata,Georgia,serif;text-align:right;letter-spacing:-.03em;margin-bottom:10px}
.section-nav{display:flex;align-items:center;gap:29px;border-top:2px solid var(--ink);border-bottom:1px solid var(--ink);min-height:48px;font:500 10px IBMMono,monospace;letter-spacing:.09em}
.section-nav a{text-decoration:none;font-weight:700}.section-nav a span{color:var(--accent);font-size:15px}
.nav-rule{height:17px;border-left:1px solid var(--line)}.nav-right{margin-left:auto}.nav-right span{color:var(--accent);font-size:16px;vertical-align:middle}
.intro-line{display:flex;justify-content:space-between;padding:16px 0 21px;font:500 10px IBMMono,monospace;letter-spacing:.09em;color:var(--muted)}
.browse-tools{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(185px,.7fr) auto;gap:16px;align-items:end;margin-bottom:39px}
.search-field,.topic-field{min-width:0}.search-field label,.topic-field label{display:block;margin-bottom:8px;font:600 10px IBMMono,monospace;letter-spacing:.1em}
.input-wrap{position:relative}.input-wrap svg{position:absolute;left:15px;top:50%;transform:translateY(-50%);width:19px;height:19px;fill:none;stroke:var(--ink);stroke-width:1.6;pointer-events:none}
.input-wrap input,.topic-field select{width:100%;height:47px;border:1px solid var(--ink);border-radius:0;background:transparent;color:var(--ink);font-size:13px}
.input-wrap input{padding:0 14px 0 44px}.input-wrap input::placeholder{color:#77807a;opacity:1}.topic-field select{padding:0 42px 0 14px;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m5 9 7 7 7-7' fill='none' stroke='%231c2926' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;background-size:17px}
.saved-filter{display:flex;align-items:center;justify-content:center;gap:11px;height:47px;min-width:183px;padding:0 13px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);font:600 10px IBMMono,monospace;letter-spacing:.07em;white-space:nowrap;transition:background .18s,color .18s}.saved-filter:hover,.saved-filter[aria-pressed=true]{background:var(--accent);border-color:var(--accent)}.saved-filter svg{width:15px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}.saved-filter[aria-pressed=true] svg{fill:currentColor}.saved-count{border-left:1px solid currentColor;padding-left:11px}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:15px;border-top:2px solid var(--ink);padding:19px 0 21px}.eyebrow{font:600 10px IBMMono,monospace;letter-spacing:.1em;color:var(--accent)}h1,h2,h3,p{margin-top:0}.section-heading h1{font:400 clamp(28px,3.3vw,48px)/1.15 Literata,Georgia,serif;letter-spacing:-.07em;margin:6px 0 0}.section-heading h1 span{color:var(--accent)}.result-count{font:500 11px IBMMono,monospace;white-space:nowrap;padding-bottom:7px;color:var(--muted)}
.story-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:20px;row-gap:37px}
.story-card{min-width:0;border-top:1px solid var(--ink);padding-top:13px}.story-card.lead-story{grid-column:1/-1;display:grid;grid-template-columns:1.25fr 1fr;gap:0;padding:0;border:1px solid var(--ink);min-height:400px;margin-bottom:6px}.story-image{display:block;overflow:hidden;background:var(--pale);position:relative}.story-image img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.75);transition:transform .3s ease}.story-image:hover img{transform:scale(1.025)}.story-card:not(.lead-story) .story-image{height:228px;margin-bottom:15px}.story-card.lead-story .story-image{height:100%;min-height:400px}.story-card.lead-story .story-image img{position:absolute;inset:0}
.lead-copy{display:flex;flex-direction:column;align-items:start;padding:31px 39px 32px;background:var(--pale)}.story-meta{font:600 10px IBMMono,monospace;letter-spacing:.08em;text-transform:uppercase}.story-meta .meta-dot{color:var(--accent);margin:0 8px}.lead-copy .story-meta{margin-bottom:auto}.lead-copy h2{font:400 clamp(37px,3.8vw,57px)/1.07 Literata,Georgia,serif;letter-spacing:-.075em;margin:22px 0 14px;max-width:580px}.lead-copy p{font:400 15px/1.65 WorkSans,Arial,sans-serif;max-width:465px;margin:0 0 20px;color:#424d47}.story-link{display:inline-flex;align-items:center;gap:12px;padding:0 0 5px;border:0;border-bottom:1px solid currentColor;background:none;color:var(--ink);font:600 11px IBMMono,monospace;letter-spacing:.07em;text-align:left}.story-link span{font-size:19px;line-height:.7;color:var(--accent);transition:transform .2s}.story-link:hover span{transform:translate(3px,-3px)}.story-card:not(.lead-story) .story-meta{margin-bottom:10px}.story-card:not(.lead-story) h2{font:400 clamp(22px,2.1vw,29px)/1.2 Literata,Georgia,serif;letter-spacing:-.055em;margin:0 0 9px}.story-card:not(.lead-story) p{font:400 13px/1.55 WorkSans,Arial,sans-serif;color:#4d5751;min-height:61px;margin:0 0 15px}.story-card:not(.lead-story) .story-link{font-size:10px}
.image-badge{position:absolute;left:12px;bottom:12px;background:var(--paper);color:var(--ink);padding:5px 7px;font:500 9px IBMMono,monospace;letter-spacing:.06em}
.card-date{font:500 9px IBMMono,monospace;letter-spacing:.06em;color:var(--muted);margin:0 0 11px}
.empty-state{border:1px solid var(--ink);background:var(--pale);text-align:center;padding:70px 20px 75px}.empty-state[hidden]{display:none}.empty-mark{font-size:50px;color:var(--accent)}.empty-state h2{font:400 37px Literata,Georgia,serif;letter-spacing:-.06em;margin:9px 0}.empty-state p{color:var(--muted);font-size:14px}.empty-state button{border:0;border-bottom:1px solid var(--ink);background:none;padding:5px 0;font:600 11px IBMMono,monospace;letter-spacing:.04em}.empty-state button span{color:var(--accent)}
.site-footer{margin-top:90px;border-top:2px solid var(--ink);padding:27px 0 24px}.footer-mark{font-size:53px}.site-footer>p{font:italic 19px Literata,Georgia,serif;margin:15px 0 45px}.footer-bottom{display:flex;justify-content:space-between;gap:15px;padding-top:13px;border-top:1px solid var(--line);font:500 10px IBMMono,monospace;letter-spacing:.04em}.footer-bottom a{text-decoration:none}
.article-dialog{width:min(960px,calc(100% - 44px));max-width:none;max-height:calc(100% - 44px);padding:0;border:1px solid var(--ink);background:var(--paper);color:var(--ink);box-shadow:0 20px 70px #101b16aa;overflow:auto}.article-dialog::backdrop{background:#101914bd}.dialog-frame{padding:0 40px 55px}.dialog-topbar{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--ink);background:var(--paper);min-height:58px;font:600 10px IBMMono,monospace;letter-spacing:.1em}.dialog-topbar-slash{color:var(--accent);padding:0 6px}.close-detail{display:flex;align-items:center;gap:12px;border:0;background:none;color:var(--ink);font:600 10px IBMMono,monospace;letter-spacing:.1em;padding:10px}.close-detail span:last-child{font:300 27px/15px WorkSans,Arial,sans-serif;color:var(--accent)}.article-header{max-width:730px;margin:46px auto 30px}.article-header .story-meta{color:var(--accent)}.article-header h2{font:400 clamp(43px,5.8vw,74px)/1.07 Literata,Georgia,serif;letter-spacing:-.073em;margin:20px 0}.article-dek{font:400 19px/1.55 WorkSans,Arial,sans-serif;color:#4c5750;margin-bottom:27px}.article-byline{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:18px;font:500 11px IBMMono,monospace;letter-spacing:.04em}.article-byline strong{font-weight:700}.save-item{display:flex;align-items:center;gap:8px;border:1px solid var(--ink);padding:10px 13px;background:transparent;color:var(--ink);font:600 10px IBMMono,monospace;letter-spacing:.05em}.save-item:hover,.save-item[aria-pressed=true]{background:var(--ink);color:var(--paper)}.save-item svg{width:15px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}.save-item[aria-pressed=true] svg{fill:currentColor}.article-photo{width:100%;height:390px;object-fit:cover;filter:saturate(.75);display:block}.article-caption{font:500 10px IBMMono,monospace;color:var(--muted);margin:8px 0 0}.article-body{max-width:650px;margin:42px auto 0}.article-body p{font:400 18px/1.85 Literata,Georgia,serif;letter-spacing:-.012em;margin-bottom:26px}.article-body p:first-child::first-letter{float:left;font-size:78px;line-height:.78;padding:9px 10px 0 0;color:var(--accent)}.article-end{max-width:650px;margin:40px auto 0;border-top:1px solid var(--ink);padding-top:16px;font:600 10px IBMMono,monospace;letter-spacing:.08em;color:var(--accent)}
@media(max-width:1050px){.site-shell{padding:0 30px}.masthead-note{font-size:15px}.story-card.lead-story{grid-template-columns:1.12fr 1fr}.lead-copy{padding:26px}.lead-copy h2{font-size:43px}.story-card:not(.lead-story) .story-image{height:190px}}
@media(max-width:720px){.site-shell{padding:0 18px}.utility-bar{font-size:9px}.utility-bar span:first-child{max-width:170px}.masthead-row{padding:15px 0 13px}.wordmark{font-size:clamp(46px,11.7vw,78px)}.masthead-note{display:none}.section-nav{min-height:42px;gap:10px;font-size:9px}.section-nav .nav-rule,.section-nav>span:not(.nav-right){display:none}.nav-right{font-size:9px}.intro-line{padding:14px 0 20px;font-size:9px}.browse-tools{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:27px}.search-field{grid-column:1/-1}.topic-field{grid-column:1}.saved-filter{grid-column:2;min-width:0;padding:0 7px;gap:6px;font-size:9px}.saved-count{padding-left:7px}.section-heading{padding:16px 0 17px;align-items:end}.section-heading h1{font-size:30px}.result-count{font-size:9px}.story-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 14px}.story-card.lead-story{display:block;min-height:0}.story-card.lead-story .story-image{height:275px;min-height:0}.lead-copy{padding:22px 23px 25px}.lead-copy .story-meta{margin-bottom:0}.lead-copy h2{font-size:39px;margin:17px 0 10px}.lead-copy p{font-size:13px;margin-bottom:18px}.story-card:not(.lead-story) .story-image{height:165px}.story-card:not(.lead-story) h2{font-size:21px}.story-card:not(.lead-story) p{font-size:12px;min-height:0}.story-meta{font-size:9px}.story-meta .meta-dot{margin:0 4px}.site-footer{margin-top:60px}.article-dialog{width:calc(100% - 16px);max-height:calc(100% - 16px)}.dialog-frame{padding:0 18px 35px}.article-header{margin:30px auto 23px}.article-header h2{font-size:44px}.article-dek{font-size:16px}.article-byline{align-items:start;flex-direction:column;gap:15px}.article-photo{height:260px}.article-body{margin-top:30px}.article-body p{font-size:16px;line-height:1.75}.article-body p:first-child::first-letter{font-size:66px}}
@media(max-width:430px){.utility-bar{font-size:8px;letter-spacing:.03em}.wordmark{font-size:11.6vw}.nav-right{font-size:8px}.intro-line{font-size:8px}.section-heading h1{font-size:27px}.story-card:not(.lead-story) .story-image{height:135px}.story-card:not(.lead-story) h2{font-size:19px}.story-card:not(.lead-story) p{font-size:11px}.story-card:not(.lead-story) .story-link{font-size:9px}.footer-bottom{font-size:8px;flex-wrap:wrap}.footer-bottom span:nth-child(2){order:3;width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.story-image img,.story-link span,.saved-filter{transition:none}}
