/* Original First Wave photography: retain color and complete frames. */
.lead-image.first-wave-cover img,
.lead-image.first-wave-cover:hover img,
.first-wave-story .article-head__media img,
.first-wave-story .article-inline img { filter: none; }
.lead-image.first-wave-cover { align-self: start; min-height: 0; aspect-ratio: 2 / 3; }
.lead-image.first-wave-cover img { display: block; height: auto; transform: none; }
.first-wave-story .article-head__media { align-self: center; min-height: 0; background: var(--paper, #f1f0ea); }
.first-wave-story .article-head__media img { display: block; height: auto; }
.first-wave-story .article-inline img { width: 100%; height: auto; aspect-ratio: auto; }
.wave-gallery { padding: 48px 24px; border-bottom: 1px solid var(--ink); }
.wave-gallery__heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; padding-bottom: 28px; }
.wave-gallery h2 { margin: 12px 0 0; max-width: 12ch; font-size: clamp(44px, 6vw, 96px); line-height: .9; letter-spacing: -.065em; text-transform: uppercase; }
.wave-gallery__heading > p { max-width: 32ch; line-height: 1.5; }
.wave-gallery__grid { columns: 3; column-gap: 24px; }
.wave-gallery figure { break-inside: avoid; margin: 0 0 28px; }
.wave-gallery__link { display: block; cursor: zoom-in; }
.wave-gallery__link:focus-visible { outline: 3px solid var(--orange); outline-offset: 4px; }
.wave-gallery img { display: block; width: 100%; height: auto; }
.wave-gallery figcaption { padding: 12px 0; border-bottom: 1px solid var(--ink); font-size: 12px; line-height: 1.4; }
.wave-gallery figcaption span { margin-right: 8px; font-weight: 800; }
.wave-lightbox { width: 100vw; max-width: none; height: 100dvh; max-height: none; margin: 0; padding: 16px 24px; border: 0; box-sizing: border-box; background: #111; color: #fff; }
.wave-lightbox[open] { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; gap: 16px; }
.wave-lightbox::backdrop { background: #111; }
.wave-lightbox__toolbar, .wave-lightbox__footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.wave-lightbox button { min-height: 44px; padding: 10px 14px; border: 1px solid #777; background: transparent; color: inherit; font: inherit; cursor: pointer; }
.wave-lightbox button:focus-visible { outline: 3px solid #f35b2a; outline-offset: 3px; }
.wave-lightbox__photo { min-height: 0; display: flex; justify-content: center; }
.wave-lightbox__photo img { width: 100%; height: 100%; object-fit: contain; }
.wave-lightbox__caption { margin: 0; text-align: center; }
html:has(.wave-lightbox[open]) { overflow: hidden; }
@media (max-width: 1000px) { .wave-gallery__grid { columns: 2; } }
@media (max-width: 600px) {
 .wave-gallery { padding: 32px 14px; }
 .wave-gallery__heading { display: block; }
 .wave-gallery__grid { columns: 1; }
 .wave-lightbox { padding: 12px; }
 .wave-lightbox__footer { flex-wrap: wrap; gap: 12px; }
 .wave-lightbox__caption { order: -1; flex-basis: 100%; }
}

.wave-gallery-jump { display: inline-block; margin-top: 24px; font-size: 14px; font-weight: 700; letter-spacing: 0; text-underline-offset: 4px; }
