/* Expanding document panels use the catalogue gallery behavior. */
.letters-showcase{padding-bottom:var(--section-y)}
.letters-gallery{height:clamp(400px,40vw,580px);gap:8px}
.letters-gallery .letter-card{display:block;flex:1 1 0;min-width:0;border:0;border-radius:0;box-shadow:none;background:#fff;transform:none}
.letters-gallery .letter-card img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:top center;padding:0;filter:none;transform:none}
.letters-gallery .letter-card.is-active,.letters-gallery .letter-card:focus-visible{flex-grow:3;transform:none;box-shadow:none}
.letters-gallery .letter-card:hover{transform:none;box-shadow:none}
.letters-gallery .letter-card.is-active img,.letters-gallery .letter-card:focus-visible img{filter:none;transform:none}
.letters-gallery .letter-card>span{color:#F4F1EB;left:16px;right:16px;bottom:20px}
.letters-gallery .letter-card strong{font-size:clamp(18px,1.7vw,25px);line-height:1.2;letter-spacing:-.03em}
.letters-gallery .letter-card::after{background:linear-gradient(transparent 50%,rgba(24,59,87,.9));opacity:.25}
.letters-gallery .letter-card.is-active::after,.letters-gallery .letter-card:focus-visible::after{opacity:1}
/* Preserve each original's real proportions, including the non-A4 NTV letter. */
.letter-dialog img{width:auto;height:auto;aspect-ratio:auto;max-width:calc(100vw - 48px);max-height:calc(100dvh - 92px);object-fit:contain;background:#fff}
.letter-dialog{padding:64px 24px 28px}
@media(max-width:750px){.letters-gallery{height:440px;overflow-x:auto;padding:0 0 8px;scroll-padding-left:0;contain:layout paint}.letters-gallery .letter-card,.letters-gallery .letter-card.is-active,.letters-gallery .letter-card:focus-visible{flex:0 0 78%;min-width:0;scroll-snap-align:start}.letters-gallery .letter-card>span{opacity:1;transform:none}.letters-gallery .letter-card::after{opacity:1}.letters-gallery .letter-card strong{font-size:22px}.letter-dialog{padding:60px 12px 20px}.letter-dialog img{max-width:calc(100vw - 24px);max-height:calc(100dvh - 80px)}}
