/* Show the camera panels without the captured video's title and timestamp bars. */
#event-camera-dataset .launch-preview {
  display: grid;
  grid-template-columns: 1fr 1fr;
  overflow: hidden;
}

.launch-preview-panel {
  position: relative;
  height: 100%;
  overflow: hidden;
}

/* Center each camera view on the rocket and fill the existing 4:3 card. */
.launch-preview-panel img {
  position: absolute;
  top: -25.454545%;
  left: -50.227273%;
  width: 396.818182%;
  max-width: none;
  height: auto;
}

.launch-preview-cis img {
  left: -248.863636%;
}

.launch-frame-crop {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 873 / 330;
  overflow: hidden;
}

.launch-frame-crop > img,
.launch-page .launch-wide-photo .launch-frame-crop > img {
  position: absolute;
  top: -25.454545%;
  left: 0;
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
}

/* Field photographs and video players for the Nuri launch article. */
.launch-page .launch-video-figure,
.launch-page .launch-wide-photo {
  width: min(100%, 960px);
  margin: 1.6rem auto 2.4rem;
}

.launch-page .launch-video {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #111827;
}

.launch-page .launch-video iframe {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}

.launch-page .launch-photo-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  width: min(100%, 960px);
  margin-inline: auto;
  align-items: start;
}

.launch-page .launch-photo-grid .doc-figure {
  min-width: 0;
  margin: 1.5rem 0;
}

.launch-page .launch-photo-grid img {
  width: 100%;
  height: 320px;
  object-fit: contain;
  background: #f8fafc;
}

.launch-page .launch-location-grid img {
  height: 460px;
}

.launch-page .launch-wide-photo img {
  width: 100%;
  height: auto;
  max-height: 620px;
  object-fit: contain;
}

.launch-page .launch-portrait-photo {
  width: min(100%, 560px);
  margin-inline: auto;
}

.launch-page .launch-portrait-photo img {
  max-height: 620px;
  width: 100%;
  object-fit: contain;
}

.launch-page .launch-location-note {
  padding: 18px 22px;
  border: 1px solid #dfe6f0;
  border-left: 4px solid var(--nrv-red);
  background: #f8fafc;
  overflow-wrap: anywhere;
}

.launch-page .launch-location-note p {
  margin: 0 0 8px;
}

.launch-page .launch-location-note p:last-child {
  margin-bottom: 0;
}

.launch-page .launch-location-source {
  font-size: 0.9rem;
}

@media (max-width: 680px) {
  .launch-page .launch-photo-grid {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .launch-page .launch-photo-grid img {
    height: auto;
    max-height: 480px;
  }
}
