/* Event stories extend the shared project overlay; original photos are never cropped. */
.event-story-scroll { gap: clamp(32px,5vw,90px); align-items: center; }
.event-story-intro { width: min(68vw,900px); grid-template-columns:minmax(0,1fr) minmax(140px,210px); }
.event-story-year { font: 14px var(--_omono); color:var(--proj-mut); margin:0 0 20px; }
.event-story-meta { margin:0; display:grid; gap:28px; }
.event-story-meta dt { color:var(--proj-accent); font:11px var(--_omono); text-transform:uppercase; letter-spacing:.08em; margin-bottom:8px; }
.event-story-meta dd { margin:0; font-size:17px; line-height:1.4; }
.event-story-panel { flex:0 0 auto; height:100%; display:flex; align-items:center; justify-content:center; }
.event-story-photo { margin:0; width:100%; height:100%; display:flex; align-items:center; justify-content:center; }
.event-story-photo img { display:block; width:100%; height:100%; max-height:100%; max-width:100%; object-fit:contain; border-radius:4px; }
.event-story-panel--hero { width:auto; aspect-ratio:var(--story-ratio, 1.5); max-width:min(78vw,1200px); }
.event-story-panel--small { width: min(36vw,520px); height:56%; align-self:flex-start; margin-top:3%; }
.event-story-panel--low { align-self:flex-end; margin-top:0; margin-bottom:3%; }
.event-story-panel--pair { width:min(80vw,1100px); height:76%; gap:clamp(16px,2.5vw,40px); }
.event-story-panel--pair .event-story-photo { min-width:0; flex:1; height:88%; }
.event-story-panel--pair .event-story-photo:first-child { align-self:flex-start; }
.event-story-panel--pair .event-story-photo:last-child { align-self:flex-end; }
.event-story-panel--wide { width:min(88vw,1400px); height:92%; }
.event-story-text { flex:0 0 auto; width:min(36vw,460px); max-height:100%; overflow-y:auto; padding:20px 8px; scrollbar-width:thin; }
.event-story-index { display:block; color:var(--proj-accent); font:12px var(--_omono); margin:0 0 35px; }
.event-story-text h2 { font:500 clamp(26px,3.1vw,46px)/1.04 var(--_osans); letter-spacing:-.04em; margin:0 0 24px; color:var(--proj-ink); }
.event-story-text p { font:400 clamp(17px,1.6vw,22px)/1.5 var(--_obody); margin:0; color:var(--proj-mut); }
.event-story-end { flex:0 0 auto; width:min(45vw,550px); padding-right:40px; }
.event-story-end p { font:500 clamp(34px,4vw,60px)/1.05 var(--_osans); letter-spacing:-.04em; }
.event-story-page { opacity:1; visibility:visible; pointer-events:auto; }
.event-story-back { text-decoration:none; }
@media(max-width:820px) {
 .event-story-scroll { align-items:stretch; gap:42px; }
 .event-story-intro { width:100%; grid-template-columns:1fr; }
 .event-story-meta { grid-template-columns:1fr 1fr; gap:20px; }
 .event-story-panel { width:100%; height:auto; }
 .event-story-panel--hero { aspect-ratio:auto; max-width:100%; }
 .event-story-photo { height:auto; }
 .event-story-panel .event-story-photo img { width:100%; height:auto; }
 .event-story-panel--small { width:74%; align-self:flex-start; margin:20px 0; }
 .event-story-panel--low { align-self:flex-end; }
 .event-story-panel--pair { gap:14px; align-items:flex-start; }
 .event-story-panel--pair .event-story-photo { height:auto; }
 .event-story-panel--pair .event-story-photo:last-child { margin-top:55px; }
 .event-story-text { width:100%; max-height:none; overflow:visible; padding:12px 4px; }
 .event-story-text h2 { font-size:34px; }
 .event-story-text p { font-size:20px; }
 .event-story-end { width:100%; padding:10px 0 60px; }
 .event-story-back { left:50%; }
}
