<style>
  .hero-media { width: 100%; }
  .hero-media__ratio{
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
  }
  .hero-media__ratio iframe,
  .hero-media__ratio video{
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    border: 0;
    display: block;
  }
  .object-fit-cover { object-fit: cover; }

  /* Thumbnail overlay */
  .hero-thumb{
    position: absolute;
    inset: 0;
    z-index: 5;
    width: 100%;
    height: 100%;
    border: 0;
    padding: 0;
    cursor: pointer;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
  .hero-thumb__play{
    position: absolute;
    left: 50%;
    top: 50%;
    width: 84px;
    height: 84px;
    transform: translate(-50%, -50%);
    border-radius: 999px;
    background: rgba(0,0,0,0.55);
  }
  .hero-thumb__play::before{
    content: "";
    position: absolute;
    left: 52%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    border-left: 20px solid #fff;
    border-top: 12px solid transparent;
    border-bottom: 12px solid transparent;
  }
</style>