
/* Gainwell v1.30 — video thumbnails already contain their own title/play art */
.gw-video-v120__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:38px 24px
}
.gw-video-v120__card{
  aspect-ratio:16/9;
  position:relative;
  display:block;
  overflow:hidden;
  border-radius:7px;
  background:#0b2a3d;
  border:1px solid rgba(11,42,61,.08);
  box-shadow:0 12px 30px rgba(7,31,46,.08);
  transition:transform .25s ease,box-shadow .25s ease
}
.gw-video-v120__card:hover{
  transform:translateY(-3px);
  box-shadow:0 20px 42px rgba(7,31,46,.14)
}
.gw-video-v120__card img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .55s ease
}
.gw-video-v120__card:hover img{transform:scale(1.025)}

/* Hard-hide any legacy duplicated overlay elements. */
.gw-video-v120__card > .gw-video-v120__shade,
.gw-video-v120__card > .gw-video-v120__play,
.gw-video-v120__card > strong{
  display:none!important
}

.gw-video-v120__modal[hidden]{display:none!important}
.gw-video-v120__modal{
  position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:30px
}
.gw-video-v120__backdrop{
  position:absolute;inset:0;background:rgba(4,14,22,.88);backdrop-filter:blur(6px)
}
.gw-video-v120__dialog{
  width:min(1120px,94vw);position:relative;z-index:1;padding:18px;
  background:#071f2e;box-shadow:0 35px 90px rgba(0,0,0,.45)
}
.gw-video-v120__frame{aspect-ratio:16/9;background:#000}
.gw-video-v120__frame iframe{width:100%;height:100%;display:block;border:0}
.gw-video-v120__close{
  position:absolute;right:7px;top:-48px;width:40px;height:40px;
  border:1px solid rgba(255,255,255,.4);background:transparent;
  color:#fff;font-size:28px;line-height:1;cursor:pointer
}
.gw-video-v120__dialog h2{margin:17px 0 6px;color:#fff;font-size:24px}
.gw-video-v120__youtube-link{
  color:#75cbe9;font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase
}
body.gw-video-modal-open{overflow:hidden}

@media(max-width:1120px){
  .gw-video-v120__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:820px){
  .gw-video-v120__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
}
@media(max-width:560px){
  .gw-video-v120__grid{grid-template-columns:1fr}
  .gw-video-v120__modal{padding:14px}
  .gw-video-v120__dialog{padding:8px}
  .gw-video-v120__dialog h2{font-size:18px}
}
