.equipment-demos {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 24px;
  max-width: 960px;
}

.equipment-demo {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  background: #f4f7fb;
  border: 1px solid #dbe4f0;
  border-radius: 14px;
}

.equipment-demo video {
  display: block;
  width: 100%;
  height: auto;
  max-height: min(66vh, 420px);
  background: #081f38;
  object-fit: contain;
}

.equipment-demo--portrait { max-width: 480px; }
.equipment-demo--landscape { max-width: 760px; }
.equipment-demo figcaption { padding: 16px 18px; }
.equipment-demo h3 { margin: 0 0 6px; font-size: 1.1rem; }
.equipment-demo p { margin: 0; font-size: .94rem; color: #33404f; }

@media (min-width: 740px) {
  .equipment-demos:has(> :nth-child(2)) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
  }
}
