/* PAST EVENTS strip + lightbox — shared by index.html and media.html */
.ev-head { display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; flex-wrap:wrap; }
.ev-nav { display:flex; gap:0.6rem; }
.ev-btn { width:42px; height:42px; border-radius:50%; border:1px solid rgba(255,255,255,0.25); background:rgba(10,10,16,0.85); color:#fff;
  font-size:1.3rem; line-height:1; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:background .25s, border-color .25s; }
.ev-btn:hover { background:#7C5CFC; border-color:#7C5CFC; }
.ev-strip { display:grid; grid-auto-flow:column; grid-auto-columns:calc((100% - 2 * 1.5rem) / 3); gap:1.5rem;
  overflow-x:auto; scroll-snap-type:x mandatory; scroll-behavior:smooth; padding-bottom:0.75rem; margin-top:1.75rem;
  scrollbar-width:thin; scrollbar-color:rgba(124,92,252,0.6) transparent; }
.ev-strip::-webkit-scrollbar { height:6px; } .ev-strip::-webkit-scrollbar-thumb { background:rgba(124,92,252,0.6); border-radius:3px; }
.ev-card { scroll-snap-align:start; cursor:pointer; }
.ev-card .ev-img { position:relative; aspect-ratio:16/10; overflow:hidden; border-radius:6px; background:#111; }
.ev-card img { width:100%; height:100%; object-fit:cover; display:block; filter:grayscale(0.6) brightness(0.85); transition:filter .4s, transform .6s; }
.ev-card:hover img { filter:none; transform:scale(1.04); }
.ev-card .ev-play { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:52px; height:52px; border-radius:50%;
  background:rgba(124,92,252,0.85); display:flex; align-items:center; justify-content:center; color:#fff; font-size:1.1rem; }
.ev-card .work-card-title { margin-top:1rem; font-size:1rem; }
@media (max-width:1024px) { .ev-strip { grid-auto-columns:calc((100% - 1.5rem) / 2); } }
@media (max-width:640px)  { .ev-strip { grid-auto-columns:82%; gap:1rem; } .ev-card img { filter:none; } }
        /* lightbox */
        .pe-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.93);display:none;align-items:center;justify-content:center;z-index:3000;padding:2rem;}
        .pe-lightbox.active{display:flex;}
        .pe-lb-close{position:absolute;top:1.1rem;right:1.5rem;font-size:1.9rem;line-height:1;color:#fff;background:none;border:none;cursor:pointer;}
        .pe-lb-nav{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,0.3);background:rgba(0,0,0,0.5);color:#fff;font-size:1.7rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3010;transition:background .2s,border-color .2s;}
        .pe-lb-prev{left:1.5rem;} .pe-lb-next{right:1.5rem;}
        .pe-lb-nav:hover{background:#7C5CFC;border-color:#7C5CFC;}
        @media(max-width:600px){.pe-lb-nav{width:38px;height:38px;font-size:1.3rem;}.pe-lb-prev{left:0.5rem;}.pe-lb-next{right:0.5rem;}}
        .pe-lb-fig{position:relative;display:inline-block;margin:0;line-height:0;}
        .pe-lb-fig img,.pe-lb-fig video{display:block;max-width:92vw;max-height:88vh;border-radius:8px;}
        .pe-lb-cap{position:absolute;left:0;right:0;bottom:0;padding:3rem 1.25rem 1.2rem;font-size:1.02rem;font-weight:700;line-height:1.45;color:#fff;text-align:left;text-shadow:0 1px 6px rgba(0,0,0,0.8);background:linear-gradient(to top,rgba(0,0,0,0.92),rgba(0,0,0,0.45) 60%,transparent);border-radius:0 0 8px 8px;}

/* invite to speak (Past Events headers + media page strip) */
.ev-invite, .cta-strip-actions .cs-speak { display:inline-flex; align-items:center; height:42px; padding:0 1.3rem; margin-right:0.6rem; color:#fff; text-decoration:none;
  font:700 0.72rem/1 var(--font, 'Outfit', sans-serif); letter-spacing:0.14em; text-transform:uppercase;
  border:1px solid rgba(124,92,252,0.8); background:rgba(124,92,252,0.12); transition:background .25s, border-color .25s; }
.ev-invite:hover, .cta-strip-actions .cs-speak:hover { background:rgba(124,92,252,0.35); border-color:#B39DFF; }
.cta-strip-actions .cs-speak { height:50px; margin-right:0; }
@media (max-width:640px) { .ev-head .ev-nav { width:100%; } .ev-invite { flex:1; justify-content:center; } }
