.archive-list { display: grid; gap: 22px; }
.archive-issue, .archive-detail-top { display: grid; grid-template-columns: 188px minmax(0, 1fr); align-items: center; gap: clamp(24px, 4vw, 46px); }
.archive-issue { padding: 28px; border: 1px solid #dce3d9; border-radius: 22px; background: #fff; }
.archive-cover-link { display: block; width: fit-content; max-width: 100%; perspective: 950px; }
.archive-cover { display: block; width: 188px; height: auto; aspect-ratio: 595 / 842; object-fit: cover; background: #dfe9df; box-shadow: 4px 10px 19px rgba(22, 55, 43, .18); transform-origin: left center; transition: transform .7s cubic-bezier(.2,.7,.2,1), box-shadow .7s cubic-bezier(.2,.7,.2,1); }
.archive-cover-link:hover .archive-cover, .archive-cover-link:focus-visible .archive-cover { transform: rotateY(-12deg) rotateZ(-1.5deg) translateY(-5px); box-shadow: 13px 18px 28px rgba(22, 55, 43, .23); }
.archive-issue-copy { min-width: 0; }
.archive-issue-copy h2, .archive-detail-copy h2 { margin: 12px 0 8px; line-height: 1.18; }
.archive-issue-copy h2 { font-size: clamp(26px, 3vw, 36px); }
.archive-issue-copy h2 a { color: inherit; text-decoration: none; }
.archive-issue-copy h2 a:hover { color: var(--accent); }
.archive-issue-copy p, .archive-detail-copy p { margin: 0 0 24px; color: #5a6d60; }
.archive-issue .actions, .archive-detail .actions { display: flex; flex-wrap: wrap; gap: 10px; }
.archive-issue .btn, .archive-detail .btn { white-space: nowrap; }
.archive-back { display: inline-block; margin: 0 0 26px; }
.archive-detail-top { grid-template-columns: 220px minmax(0, 1fr); align-items: center; padding: 34px; border-radius: 22px; background: #e5ebe2; }
.archive-cover-large { width: 220px; }
.archive-detail-copy h2 { font-size: clamp(30px, 3.5vw, 45px); }
.archive-contents { margin-top: 46px; }
.archive-contents > h2 { margin: 0 0 10px; }
.archive-note { margin: 0 0 36px; color: #5a6d60; font-size: 15px; }
.archive-section-title { margin: 34px 0 12px; padding-bottom: 12px; border-bottom: 1px solid #cbd8ca; font-family: inherit; font-size: 16px; line-height: 1.5; color: #315948; }
.archive-article { display: flex; justify-content: space-between; align-items: start; gap: 22px; padding: 19px 0; border-bottom: 1px solid #e0e7df; }
.archive-article > div { min-width: 0; }
.archive-article h4 { margin: 0; font-size: 17px; line-height: 1.5; font-weight: 600; }
.archive-article h4 a { color: var(--ink); text-decoration: none; }
.archive-article h4 a:hover { color: var(--accent); text-decoration: underline; text-underline-offset: 4px; }
.archive-article p { margin: 7px 0 0; font-size: 14px; color: #5a6d60; }
.archive-article-page { flex: none; padding-top: 2px; font-size: 14px; color: #315948; white-space: nowrap; }
@media (max-width: 900px) {
  .archive-issue, .archive-detail-top { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .archive-cover-large { width: 220px; }
}
@media (max-width: 700px) {
  .archive-issue { padding: 25px; }
  .archive-cover { width: min(55vw, 195px); }
  .archive-detail-top { padding: 26px; }
  .archive-cover-large { width: min(58vw, 220px); }
  .archive-issue-copy h2, .archive-detail-copy h2 { font-size: 30px; }
  .archive-contents { margin-top: 38px; }
  .archive-article h4 { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) { .archive-cover { transition: none; } }
