/* Cache-safe portrait gallery for /a-propos/. */
.ww-about__portrait-gallery { display: grid; max-width: 65rem; margin: 0 auto clamp(2.75rem, 5vw, 4.5rem); padding: 0; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: clamp(.55rem, 1.5vw, 1.25rem); list-style: none; }
.ww-about__portrait-gallery li { position: relative; padding: clamp(.2rem, .55vw, .36rem); border: 1px solid rgb(42 35 32 / .1); border-radius: calc(var(--ww-radius-md) + .1rem); background: var(--ww-color-white); box-shadow: .38rem .38rem 0 var(--ww-color-cream), 0 .65rem 1.35rem rgb(42 35 32 / .1); opacity: 1 !important; transform: none !important; animation: none !important; }
.ww-about__portrait-gallery li::before { position: absolute; z-index: 1; inset: clamp(.1rem, .28vw, .18rem); border: 1px solid rgb(42 35 32 / .09); border-radius: calc(var(--ww-radius-md) - .05rem); content: ""; pointer-events: none; }
.ww-about__portrait-gallery img { display: block; width: 100%; aspect-ratio: 4 / 5; border-radius: calc(var(--ww-radius-md) - .12rem); background: var(--ww-color-cream); object-fit: cover; object-position: center top; }
.ww-about__portrait-gallery span { position: absolute; z-index: 2; right: clamp(.35rem, .7vw, .55rem); bottom: clamp(.35rem, .7vw, .55rem); padding: .3rem .55rem; border-radius: 999px; background: rgb(255 255 255 / .9); box-shadow: 0 1px 0 rgb(42 35 32 / .1); color: var(--ww-color-ink); font-family: var(--ww-font-display); font-size: clamp(.72rem, 1vw, .86rem); font-weight: 600; letter-spacing: .02em; line-height: 1; }
@media (max-width: 48rem) {
	.ww-about__portrait-gallery { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 37rem) {
	.ww-about__portrait-gallery { gap: .65rem; }
}
@media (max-width: 30rem) {
	.ww-about__portrait-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
