.archive-main { padding-top: 48px; padding-bottom: 90px; }
.archive-heading { max-width: 790px; }
.archive-heading h1 { margin: 9px 0 14px; font: 700 clamp(42px, 5vw, 69px)/.95 var(--serif); letter-spacing: -2.4px; }
.archive-heading p { margin: 0; max-width: 690px; color: var(--ink-soft); font: 16px/1.6 var(--sans); }
.archive-jump { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.archive-jump a { display: inline-flex; align-items: center; gap: 15px; padding: 12px 16px; border: 1px solid var(--line); background: var(--soft); color: var(--ink); font: 700 12px var(--sans); text-decoration: none; }
.archive-jump a:hover, .archive-jump a:focus-visible { border-color: var(--red); color: var(--red); }
.archive-jump strong { color: var(--red); font: 700 17px var(--serif); }
.archive-toolbar { display: flex; align-items: end; justify-content: space-between; gap: 26px; margin-top: 38px; padding: 20px 0; border-block: 3px solid var(--ink); }
.archive-count { display: flex; align-items: baseline; flex-wrap: wrap; gap: 7px; }
.archive-count strong { font: 700 26px var(--serif); }
.archive-count span { color: var(--muted); font: 10px var(--mono); text-transform: uppercase; letter-spacing: .04em; }
.archive-count i { width: 1px; height: 20px; margin: 0 13px; background: var(--line); }
.archive-toolbar label { display: grid; gap: 8px; color: var(--muted); font: 700 9px var(--mono); text-transform: uppercase; letter-spacing: .08em; }
.archive-toolbar input { width: min(340px, 80vw); padding: 12px 13px; border: 1px solid #9faab1; border-radius: 0; background: white; color: var(--ink); font: 13px var(--sans); }
.archive-result { margin: 19px 0 15px; color: var(--muted); font: 10px var(--mono); text-transform: uppercase; }
.archive-section { scroll-margin-top: 25px; margin-top: 48px; }
.archive-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; border-top: 3px solid var(--ink); padding-top: 18px; }
.archive-section-heading h2 { margin: 7px 0 0; font: 700 clamp(30px, 4vw, 44px)/1.03 var(--serif); letter-spacing: -1.3px; }
.archive-section-heading p { max-width: 300px; margin: 0; color: var(--ink-soft); font: 13px/1.5 var(--sans); }
.archive-section-count { margin: 16px 0; color: var(--muted); font: 700 10px var(--mono); text-transform: uppercase; letter-spacing: .06em; }
.archive-section-empty { margin: 0; padding: 22px; background: var(--soft); color: var(--muted); font: 13px var(--sans); }
.archive-section-empty[hidden] { display: none; }
.archive-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 17px; }
.archive-card { display: flex; flex-direction: column; min-height: 280px; padding: 0 22px 21px; border: 1px solid var(--line); border-top: 3px solid var(--ink); background: white; }
.archive-card-image { display: block; margin: 0 -22px 18px; aspect-ratio: 16 / 9; overflow: hidden; background: #d9dee0; }
.archive-card-image img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.archive-card:hover .archive-card-image img { transform: scale(1.035); }
.archive-card[hidden], .archive-empty[hidden] { display: none; }
.archive-card:hover { border-top-color: var(--red); box-shadow: 0 10px 30px #17232b10; }
.archive-card-top { display: flex; justify-content: space-between; gap: 12px; color: var(--red); font: 700 9px var(--mono); text-transform: uppercase; letter-spacing: .07em; }
.archive-card-top span:last-child { color: var(--muted); text-align: right; }
.archive-card h2 { margin: 17px 0 10px; font: 700 25px/1.08 var(--serif); letter-spacing: -.6px; }
.archive-card h2 a { text-decoration: none; }
.archive-card h2 a:hover { color: var(--red); }
.archive-card p { margin: 0; color: var(--ink-soft); font: 12px/1.5 var(--sans); }
.archive-completed .archive-card { border-top-color: var(--green); }
.archive-outcome { display: flex; flex-wrap: wrap; align-items: center; gap: 7px 12px; margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--line); color: var(--muted); font: 700 10px var(--sans); }
.archive-outcome strong { color: var(--green); }
.archive-outcome a { color: var(--red); text-decoration: underline; text-underline-offset: 2px; }
.archive-card-bottom { display: flex; align-items: baseline; flex-wrap: wrap; gap: 7px 11px; margin-top: auto; padding-top: 22px; color: var(--muted); font: 9px var(--mono); text-transform: uppercase; }
.archive-card-bottom strong { margin-right: 6px; color: var(--green); font: 700 26px var(--serif); }
.archive-empty { padding: 35px 20px; background: var(--soft); text-align: center; color: var(--muted); }
@media (max-width: 1000px) { .archive-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 680px) { .archive-main { padding-top: 32px; } .archive-toolbar, .archive-section-heading { align-items: start; flex-direction: column; } .archive-toolbar input { width: min(100%, 420px); } .archive-toolbar label { width: 100%; } .archive-grid { grid-template-columns: 1fr; } .archive-card { min-height: 230px; } }
