/* vimeo.css */

.video-row{
  display:flex;
  flex-wrap:wrap;        /* lets items wrap on narrow screens  */
  gap:1rem;              /* the 1 rem spacing you asked for    */
  border:1px solid #000; /* replicates the old .outer-border   */
  padding:1rem;
  margin-bottom:1.5rem;  /* space between rows                 */
}

/*  Children – let both grow/shrink, but favour text */
.video-text   { flex:1 1 300px; min-width:280px; }
.video-frame  { flex:1 1 350px; }

/*  Maintain 16:9 without inline hacks */
.ratio-16x9{
  position:relative;
  padding-top:56.25%;    /* 9 / 16 = 0.5625  */
}
.ratio-16x9 iframe{
  position:absolute; inset:0;
  width:100%; height:100%; border:0;
}

/*  Small-screen stacking */
@media (max-width:768px){
  .video-row{ flex-direction:column; }
  .video-frame{ align-self:center; }
}