.photo-show{max-width:850px;margin:26px auto 0}
.photo-stage{position:relative;background:#100d14;border:1px solid #55415f;overflow:hidden}
.paired-show{max-width:1200px}.paired-show .photo-stage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.paired-show .photo-stage figure{min-width:0}.paired-show .photo-stage img{height:clamp(300px,43vw,590px);object-fit:cover}.paired-show .photo-stage figure:after{height:clamp(300px,43vw,590px)}
.photo-stage figure{margin:0;position:relative}
.photo-stage figure:after{content:"";position:absolute;inset:0 0 auto;height:clamp(420px,62vw,680px);pointer-events:none;background:linear-gradient(90deg,#08070b92,transparent 20%,transparent 80%,#08070b92),linear-gradient(0deg,#08070b9c,transparent 25%,transparent 75%,#08070b9c);box-shadow:inset 0 0 60px 12px #07060988}
.photo-stage figure[hidden]{display:none!important}
.photo-stage img{display:block;width:100%;height:clamp(420px,62vw,680px);object-fit:contain;background:#0b090e}
.photo-stage figcaption{padding:14px 18px;color:#d9d0df;font-size:.95rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.photo-stage figure.is-entering{animation:photo-arrive .7s ease both}
@keyframes photo-arrive{from{opacity:.12}to{opacity:1}}
.photo-controls{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:16px}
.photo-controls button{min-width:48px;min-height:44px;padding:8px 14px;border:1px solid #81539b;background:#211429;color:white;font-weight:800}
.photo-controls button:hover{background:#723092}
.photo-count{min-width:75px;text-align:center;color:#d9c9e4;font-size:.9rem}
@media(max-width:600px){.photo-stage img,.photo-stage figure:after{height:440px}.photo-controls{gap:8px}.photo-controls button{padding:8px 10px}}
@media(max-width:600px){.paired-show .photo-stage{gap:4px}.paired-show .photo-stage img,.paired-show .photo-stage figure:after{height:280px}.paired-show figcaption{font-size:.7rem;padding:9px}}
@media(prefers-reduced-motion:reduce){.photo-stage figure.is-entering{animation:none}}
