/* Archive uses the site's geometric panels and natural-height content. */
body[class^="page-archive"] .page-canvas { min-height: 0; }
.archive-page { --archive-ink: #50534d; --archive-panel: #999b94; background: #d2d3d4; padding-bottom: 60px; font-stretch: 87.5%; }
.archive-events, .archive-color-events { --archive-ink: #293f8d; --archive-panel: #83a7cc; }
.archive-publications, .archive-color-publications { --archive-ink: #328f3a; --archive-panel: #9fc391; }
.archive-videos, .archive-color-videos { --archive-ink: #a9440d; --archive-panel: #ffb080; }
.archive-events { background: #c5e7f3; }
.archive-publications { background: #d8e5d0; }
.archive-videos { background: #ffdbc4; }
.archive-heading { position: relative; min-height: 130px; }
.archive-heading-label, .archive-panel, .archive-group-heading { margin: 0; background: var(--archive-panel); color: var(--archive-ink); padding: 20px 28px 36px 32px; clip-path: polygon(0 0,100% 0,92% 78%,0 100%); font-size: 25px; line-height: 1.2; font-weight: 700; overflow-wrap: anywhere; }
.archive-heading-label { position: absolute; top: 0; left: 0; width: 260px; padding-left: 32px; color: white; background: var(--archive-ink); overflow-wrap: normal; }
.archive-heading-image { height: 460px; }
.archive-hero { width: 100%; height: 100%; object-fit: cover; display: block; }
.archive-book-banner { display: flex; height: 100%; overflow: hidden; }
.archive-publications .archive-heading-image { height: auto; aspect-ratio: 2.8 / 1; }
.archive-book-banner { position: absolute; inset: 0; }
.archive-book-banner img { flex: 27; min-width: 0; width: 0; height: 100%; object-fit: cover; object-position: center; }
.archive-book-banner img:first-child { flex: 50; }
.archive-book-banner img:last-child { flex: 23; }
.archive-navigation, .archive-years { display: flex; flex-wrap: wrap; gap: 10px 24px; padding: 20px 35px 20px 275px; margin: 0; }
.archive-navigation a, .archive-years a { color: var(--archive-ink); font-weight: 600; text-decoration: none; }
.archive-navigation a[aria-current], .archive-navigation a:hover, .archive-years a:hover { text-decoration: underline; text-underline-offset: 4px; }
.archive-years { padding-top: 0; }
.archive-sections { padding-top: 35px; }
.archive-section-link { display: grid; grid-template-columns: 260px 1fr; gap: 16px; align-items: start; margin-bottom: 28px; text-decoration: none; color: inherit; }
.archive-section-copy { padding: 0 35px 0 0; }
.archive-section-copy strong { color: var(--archive-ink); font-size: 21px; }
.archive-section-copy span { display: block; font-size: 19px; }
.archive-section-link:hover strong { text-decoration: underline; }
.archive-row { display: grid; grid-template-columns: 260px 240px minmax(0,1fr); gap: 16px; align-items: start; margin: 0 0 28px; padding-right: 35px; }
.archive-panel { grid-column: 1; padding-left: 45px; font-size: 24px; }
.archive-card-image { grid-column: 2; width: 100%; display: block; }
.archive-card-image img { display: block; width: 100%; height: auto; }
.archive-card-copy { grid-column: 3; min-width: 0; font-size: 18px; line-height: 1.4; }
.archive-card-copy h3, .archive-publication-copy h3 { font-size: 21px; margin: 0; color: var(--archive-ink); font-weight: 700; }
.archive-card-copy h3 a { color: inherit; text-decoration: none; }
.archive-card-copy h3 a:hover { text-decoration: underline; }
.archive-card-copy p, .archive-publication-copy p { margin: 0; }
.archive-card-copy p + p { margin-top: 10px; }
.archive-year-group { padding-top: 10px; scroll-margin-top: 20px; }
.archive-group-heading { color: white; background: var(--archive-ink); width: 260px; margin-bottom: 28px; }
.archive-event .archive-panel { font-size: 23px; }
.archive-publication-copy { grid-column: 2 / -1; font-size: 18px; line-height: 1.45; }
.archive-publication-notes { font-style: italic; }
.archive-action { display: inline-block; font-weight: 700; margin-top: 12px; color: var(--archive-ink); text-underline-offset: 3px; }
.archive-pending { font-style: italic; margin-top: 12px !important; }
.archive-message { padding: 25px 35px 40px 275px; font-size: 20px; }
.archive-page a:focus-visible { outline: 3px solid var(--brand-blue); outline-offset: 4px; }
@media (max-width: 1000px) {
    .archive-row { grid-template-columns: 200px 200px minmax(0,1fr); gap: 14px; padding-right: 24px; }
    .archive-panel { padding-left: 25px; font-size: 22px; }
    .archive-event .archive-panel { font-size: 20px; }
    .archive-section-link { grid-template-columns: 200px 1fr; }
    .archive-heading-image { height: 360px; }
    .archive-navigation, .archive-years, .archive-message { padding-left: 215px; }
}
@media (max-width: 700px) {
    .archive-heading-label { width: 205px; padding: 16px 30px 30px 24px; font-size: 23px; }
    .archive-heading { min-height: 105px; }
    .archive-heading-image { height: 270px; }
    .archive-row { grid-template-columns: 150px minmax(0,1fr); gap: 16px; padding-right: 20px; margin-bottom: 32px; }
    .archive-panel { padding: 14px 22px 28px 18px; font-size: 20px; }
    .archive-event .archive-panel { font-size: 18px; }
    .archive-card-copy { grid-column: 2; font-size: 17px; }
    .archive-card-image { grid-column: 2; }
    .archive-card-copy h3, .archive-publication-copy h3 { font-size: 20px; }
    .archive-navigation, .archive-years { padding: 18px 20px; gap: 10px 18px; }
    .archive-section-link { grid-template-columns: 150px minmax(0,1fr); }
    .archive-section-copy { padding-right: 20px; }
    .archive-group-heading { width: 205px; font-size: 22px; }
    .archive-message { padding: 24px; }
}
@media (max-width: 420px) {
    .archive-row { grid-template-columns: 1fr; padding-right: 0; gap: 14px; }
    .archive-row .archive-panel { width: 190px; }
    .archive-card-image, .archive-card-copy, .archive-publication-copy { grid-column: 1; margin: 0 20px; width: auto; }
    .archive-section-link { grid-template-columns: 150px minmax(0,1fr); gap: 12px; }
    .archive-section-link .archive-panel { font-size: 17px; padding-left: 12px; }
}
