#vg-player {
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #1a1a1a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23555'%3E%3Cpath d='M8 5v14l11-7z'/%3E%3C/svg%3E") no-repeat center center;
  background-size: 64px 64px;
  margin-bottom: 1.5em;
  border-radius: 4px;
}

#vg-player iframe {
  width: 100%;
  height: 100%;
  border-radius: 4px;
}

#videowrap {
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
}

.vg-item {
  cursor: pointer;
  width: calc(25% - 0.75em);
  background: #FFFFFF;
  border-radius: 4px;
  box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, .075);
  overflow: hidden;
  position: relative;
  transition: box-shadow .2s ease;
}

.vg-item:hover,
.vg-item.vg-active {
  box-shadow: 0 0 0 3px #4a90d9;
}

.vg-item img {
  display: block;
  width: 100%;
  height: auto;
}

.vg-play {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.15);
  opacity: 0;
  transition: opacity .2s ease;
}

.vg-item:hover .vg-play {
  opacity: 1;
}

.vg-play i.icon.play {
  color: #FFFFFF;
  font-size: 2.5em;
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.6);
}

.vg-title {
  margin: 0;
  padding: .6em .75em;
  font-size: .9em;
  line-height: 1.3;
  color: rgba(0, 0, 0, 0.75);
}

@media (max-width: 900px) {
  .vg-item {
    width: calc(33.333% - 0.67em);
  }
}

@media (max-width: 600px) {
  .vg-item {
    width: calc(50% - 0.5em);
  }
}
