.split-row {
  display: grid;
  gap: 2rem;
  grid-template-columns: 1fr 1.25fr;
  align-items: center;
}

.split-row.is-media-left {
  grid-template-columns: 1.25fr 1fr;
}

.visual-card {
  border-radius: 18px;
  overflow: hidden;
  box-shadow: var(--shadow);
}

.visual-card img {
  aspect-ratio: 16/10;
  object-fit: cover;
}

@media (max-width: 1080px) {
  .split-row,
  .split-row.is-media-left {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .reverse-mobile {
    display: flex;
    flex-direction: column-reverse;
  }
}
