/* Featured event, "Next on stage" card. Lazy. Mobile-first: single column,
   image stacked above the body. Ported from V1 speaking.html .next-feat. */
.featured-event-sec{padding:56px 0}
.featured-event-sec .next-feat{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;display:grid;grid-template-columns:1fr}
.featured-event-sec .img{position:relative;min-height:240px;background:var(--ph)}
.featured-event-sec .img img{display:block;width:100%;height:100%;object-fit:cover}
.featured-event-sec .img .ev-vid{display:block;width:100%;height:100%;object-fit:cover}
.featured-event-sec .pulse-flag{position:absolute;top:16px;left:16px;display:inline-flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-family:var(--f-mono);font-size:12px;letter-spacing:0.08em;text-transform:uppercase;color:var(--accent)}
.featured-event-sec .pulse{width:8px;height:8px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 4px rgba(210,135,11,0.18)}
.featured-event-sec .body{padding:28px 26px;display:flex;flex-direction:column;gap:14px}
.featured-event-sec h3{font-family:var(--f-display);font-weight:700;font-size:26px;line-height:1.1;letter-spacing:-0.02em;color:var(--ink)}
.featured-event-sec .when{font-size:15px;color:var(--muted)}
.featured-event-sec .talk{font-size:15px;color:var(--muted)}
.featured-event-sec .ctas{margin-top:auto;display:flex;gap:12px;flex-wrap:wrap;padding-top:6px}

.featured-event-sec.band-dark{background:var(--ink)}
.featured-event-sec.band-dark .next-feat{border-color:rgba(237,241,246,0.14)}

/* is-video-only: the card is just a video showcase, no body/CTAs column. */
.featured-event-sec.is-video-only .next-feat{grid-template-columns:1fr}
.featured-event-sec.is-video-only .img{min-height:320px;cursor:pointer}

/* vid-compact: a smaller, centered rendition of the video-only card (used
   where the video is a supporting aside rather than the section's focus). */
.featured-event-sec.vid-compact{padding:36px 0}
.featured-event-sec.vid-compact .next-feat{max-width:640px;margin:0 auto}
.featured-event-sec.vid-compact .img{min-height:200px}
.featured-event-sec .ev-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:999px;background:rgba(15,19,25,0.55);color:#fff;display:flex;align-items:center;justify-content:center;border:0;cursor:pointer;transition:transform .18s,background .18s}
.featured-event-sec .ev-play svg{width:26px;height:26px;margin-left:3px}
.featured-event-sec .img:hover .ev-play{background:var(--accent);transform:translate(-50%,-50%) scale(1.08)}
.featured-event-sec .img.is-playing .ev-play{display:none}
