.app-preview {
  margin-top: 48px;
}
.app-preview-frame {
  position: relative;
  width: 100%;
  /* The supplied 1920 × 1080 capture has a 92 px browser toolbar. */
  aspect-ratio: 1920 / 988;
  overflow: hidden;
  border: 1px solid var(--rule);
  background: #faf7f0;
}
.app-preview-frame img {
  display: block;
  width: 100%;
  height: auto;
  /* Crop browser chrome without modifying the original captured app UI. */
  transform: translateY(-8.518519%);
}
.app-preview-caption {
  margin-top: 20px;
}
.app-preview-description {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px 24px;
  flex-wrap: wrap;
}
.app-preview-description p {
  font-size: 13px;
  color: var(--muted);
}
.app-preview-modes {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 32px;
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px solid var(--rule);
  list-style: none;
}
.app-preview-modes li {
  display: flex;
  align-items: baseline;
  gap: 10px;
  font-size: 13px;
}
.app-preview-modes [lang='en'] {
  font-family: var(--mono);
  font-size: 10px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--muted);
}
@media (max-width: 767px) {
  .app-preview-caption {
    margin-top: 16px;
  }
  .app-preview-modes {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 20px;
    margin-top: 20px;
    padding-top: 16px;
  }
}
