/* ============================================
   WICFLOW — Founder VSL (click-to-play)
   Sits inside .founder-strip, under the quote.
   ============================================ */

.vsl {
  margin-top: clamp(1.75rem, 3.5vw, 2.75rem);
}

.vsl__frame {
  position: relative;
  display: block;
  width: 100%;
  max-width: 880px;
  margin-inline: auto;
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid var(--border-subtle, rgba(0, 0, 0, 0.06));
  background: #111113;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04), 0 12px 32px rgba(0, 0, 0, 0.07);
}

/* Reserve the space before the poster paints, so nothing shifts. */
.vsl__video {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  background: #111113;
}

/* Play affordance. Hidden once playback starts. */
.vsl__play {
  position: absolute;
  inset: 0;
  margin: auto;
  width: 74px;
  height: 74px;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.94);
  display: grid;
  place-items: center;
  cursor: pointer;
  box-shadow: 0 6px 26px rgba(0, 0, 0, 0.26);
  transition:
    transform 0.2s ease,
    opacity 0.2s ease;
}

.vsl__play svg {
  margin-left: 4px;
  display: block;
}

.vsl__frame:hover .vsl__play {
  transform: scale(1.07);
}

.vsl__play:focus-visible {
  outline: 2px solid var(--text-primary, #111113);
  outline-offset: 4px;
}

.vsl.is-playing .vsl__play {
  opacity: 0;
  pointer-events: none;
}

@media (max-width: 640px) {
  .vsl__play {
    width: 58px;
    height: 58px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .vsl__play,
  .vsl__frame:hover .vsl__play {
    transition: none;
    transform: none;
  }
}
