    /* --- Video play button on activity-card images --- */
a.video-thumb{
  position: relative;
  display: block;
  overflow: hidden;
}
a.video-thumb img{
  display: block;
  width: 100%;
  transition: transform .3s ease;
}
a.video-thumb:hover img{
  transform: scale(1.03);
}
a.video-thumb .play-btn{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: rgb(228 0 43);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 16px rgba(0,0,0,.25);
  transition: transform .2s ease, background .2s ease;
  pointer-events: none; /* clicks pass through to the <a> */
}
a.video-thumb:hover .play-btn{
  transform: translate(-50%, -50%) scale(1.08);
  background:#e4002b;
}
a.video-thumb .play-btn svg{
  width: 30px;
  height: 30px;
  margin-left: 0px;
  fill: #ffffff;
}

/* --- Lightbox --- */
.video-lightbox-overlay{
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.85);
  z-index: 9999;
  align-items: center;
  justify-content: center;
  padding: 24px;
}
.video-lightbox-overlay.open{
  display: flex;
}
.video-lightbox-inner{
  position: relative;
  width: 100%;
  max-width: 900px;
  aspect-ratio: 16/9;
  background: #000;
}
.video-lightbox-inner iframe{
  width: 100%;
  height: 100%;
  border: 0;
}
.video-lightbox-close{
  position: absolute;
  top: -44px;
  right: 0;
  background: none;
  border: none;
  color: #fff;
  font-size: 32px;
  line-height: 1;
  cursor: pointer;
}