.video-trigger {
  align-items: center;
  background: var(--color-white);
  border-radius: var(--border-radius);
  box-shadow: var(--box-shadow);
  cursor: pointer;
  display: flex;
  justify-self: start;
  overflow: clip;
}

.video-trigger figure {
  border-radius: calc(var(--border-radius) / 2);
  display: grid;
  margin: calc(var(--border-radius) / 2);
  margin-right: 0;
  overflow: clip;
  place-items: center;
  width: 9em;
}

.video-trigger figure img {
  aspect-ratio: 16 / 9;
  grid-area: 1 / 1;
}

.video-trigger figure:before {
  background: oklch(var(--oklch-black) / 0.16);
  content: '';
  grid-area: 1 / 1;
  height: 100%;
  pointer-events: none;
  width: 100%;
  z-index: 1;
}

.video-trigger figure:after {
  background: url('/assets/images/general/icon-play.svg') center / 0.875em auto no-repeat var(--color-white);
  border-radius: 100%;
  box-shadow: var(--box-shadow-play);
  content: '';
  grid-area: 1 / 1;
  height: 2em;
  pointer-events: none;
  width: 2em;
  z-index: 2;
}

.video-trigger span {
  flex: 1;
  font-size: var(--font-size-medium);
  font-weight: 600;
  letter-spacing: var(--letter-spacing);
  line-height: 1.2;
  padding-inline: var(--space-large);
  text-align: center;
  text-wrap: balance;
}



@media(hover: hover) {

  .video-trigger {
    outline: 0.1em solid transparent;
    transition:
      outline var(--transition),
      transform var(--transition)
    ;
    will-change: transform;
  }

  .video-trigger:focus,
  .video-trigger:hover {
    outline-color: var(--color-ink);
    transform: scale(1.01);
  }

  .video-trigger:active {
    transform: scale(1) translateY(0.05em);
  }

}



@media(min-width: 64em) {

  .video-trigger {
    justify-self: normal;
    margin-inline: calc(-1 * var(--space-medium));
    width: auto;
  }

  .video-trigger figure {
    width: 17em;
  }

  .video-trigger figure:after {
    background: url('/assets/images/general/icon-play.svg') center / 1.3em auto no-repeat var(--color-white);
    height: 3em;
    width: 3em;
  }

  .video-trigger span {
    font-size: var(--font-size-large);
    padding-inline: var(--space-large);
  }

  .video-trigger--intro {
    margin-inline: 0;
    width: auto;
  }

  .video-trigger--intro figure {
    width: 9em;
  }

  .video-trigger--intro figure:after {
    background: url('/assets/images/general/icon-play.svg') center / 0.875em auto no-repeat var(--color-white);
    height: 2em;
    width: 2em;
  }

  .video-trigger--intro span {
    font-size: var(--font-size-medium);
    padding-inline: var(--space-neutral);
  }

}
