.revision { margin-top: var(--section); }
.revision-proof { margin-top: var(--lead); }
.revision-prompt { margin-bottom: 24px; font-size: clamp(1.125rem, 1.7vw, 1.5rem); letter-spacing: -0.025em; }
.revision-pair { display: grid; grid-template-columns: 1fr 1fr; gap: var(--pair-gap); }
.revision-stage { position: relative; aspect-ratio: 1.22; min-width: 0; overflow: hidden; background: #eaeaf2; }
.revision-stage img { width: 100%; height: 100%; object-fit: cover; }
.revision-stage .wipe { position: absolute; inset: 0; clip-path: inset(0 calc((1 - var(--wipe, 1)) * 100%) 0 0); }
.wipe-edge { position: absolute; top: 0; bottom: 0; left: calc(var(--wipe, 1) * 100%); width: 1px; background: #fff; opacity: calc((1 - var(--wipe, 1)) * 12); pointer-events: none; }
.revision-state { position: absolute; bottom: var(--edge); left: var(--edge); font-size: 0.75rem; color: #555; }
.revision-note { margin-top: var(--note); font-size: 0.9375rem; line-height: 1.65; color: #555; }
@media (min-width: 1600px) {
  .revision > *, .revision-pair { max-width: 1600px; }
}
@media (max-width: 700px) {
  .revision-prompt { margin-bottom: 20px; }
  .revision-stage { aspect-ratio: 0.72; }
  .revision-stage img { object-fit: contain; transform: scale(1.38); }
  .revision-stage .visual-label, .revision-state { font-size: 0.6875rem; }
}
