.archive-link { display: inline-flex; align-items: center; min-height: 40px; }
.archive-link[aria-current="page"] { color: var(--forest); text-decoration: underline; text-underline-offset: 6px; }
.simple-progress { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.simple-progress > a { color: #38553c; font-weight: 650; padding: 4px 0 4px 12px; }
.archive-screen { max-width: 920px; padding-top: 28px; }
.archive-heading { margin-bottom: 24px; }
.archive-heading .back-link { margin-bottom: 20px; width: auto; height: auto; min-height: 32px; justify-content: flex-start; background: transparent; border: 0; }
.archive-heading h1 { margin: 0 0 8px; font: 500 43px/1.15 var(--serif); letter-spacing: -1px; }
.archive-heading h1 em { color: #385e3f; }
.archive-heading > p { font-size: 13px; color: var(--muted); margin: 0; }
.archive-card { display: flex; flex-direction: column; position: relative; overflow: hidden; border: 1px solid #ced8c4; border-radius: 12px; background: #f0f3e9; transition: border-color .15s, transform .15s; }
.archive-card:hover { border-color: #6d885b; transform: translateY(-2px); }
.archive-card img { width: 100%; aspect-ratio: 2.5; object-fit: cover; display: block; background: #d8e2cc; }
.archive-card-copy { padding: 17px 18px 15px; }
.archive-card h2 { margin: 7px 0; font: 500 24px/1.15 var(--serif); }
.archive-card p { display: flex; justify-content: space-between; gap: 10px; margin: 0; font-size: 11px; color: #62705a; }
.archive-card p span { font-weight: 600; }
.archive-arrow { position: absolute; right: 18px; top: 16px; display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; color: #2b4933; background: #f7f8eee8; font-size: 21px; }
.archive-current { flex-direction: row; align-items: center; }
.archive-current img { width: 40%; aspect-ratio: 2; align-self: stretch; }
.archive-current .archive-card-copy { flex: 1; }
.archive-current .archive-arrow { position: static; flex: 0 0 32px; margin-right: 18px; }
.archive-section-heading { display: flex; justify-content: space-between; align-items: baseline; margin: 28px 0 13px; }
.archive-section-heading h2 { margin: 0; font-size: 15px; }
.archive-section-heading > span { font-size: 11px; color: var(--muted); }
.archive-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.archive-empty { padding: 32px 24px; border: 1px dashed #bac9ab; border-radius: 13px; background: #edf2e5; text-align: center; }
.archive-empty > span { font-size: 34px; color: #71885c; }
.archive-empty h3 { margin: 10px 0; font: 500 27px/1.2 var(--serif); }
.archive-empty p { max-width: 390px; margin: 0 auto 22px; font-size: 12px; color: #63725b; line-height: 1.7; }
.archive-empty .button-primary { display: inline-flex; }
.archive-footnote { text-align: center; font-size: 10px; color: var(--muted); margin-top: 27px; }
@media (max-width: 600px) {
  .header .brand-wordmark { width: clamp(90px,29vw,128px); height: 32px; }
  .header nav { gap: 6px; flex-shrink: 0; }
  .header .nav-button { white-space: nowrap; }
  .header .archive-link { font-size: 10px; }
  .archive-screen { padding: 18px 14px 25px; min-height: calc(100dvh - var(--phone-header)); }
  .archive-heading { margin-bottom: 20px; }
  .archive-heading .back-link { margin-bottom: 18px; font-size: 11px; }
  .archive-heading h1 { font-size: 35px; }
  .archive-heading > p { font-size: 11px; }
  .archive-current img { width: 34%; }
  .archive-current .archive-card-copy { padding: 14px 12px; }
  .archive-current .archive-arrow { width: 26px; flex-basis: 26px; height: 26px; margin-right: 10px; }
  .archive-card h2 { font-size: 20px; }
  .archive-card p { font-size: 10px; }
  .archive-grid { grid-template-columns: 1fr; gap: 14px; }
  .archive-empty { padding: 20px 18px; }
  .archive-empty > span { font-size: 24px; }
  .archive-empty h3 { font-size: 23px; }
  .archive-footnote { font-size: 9px; line-height: 1.6; }
  .simple-progress { font-size: 8px; }
}
@media (prefers-reduced-motion: reduce) { .archive-card { transition: none; } .archive-card:hover { transform: none; } }
