.si-photo-proof { margin-block: 0 32px; padding-block: 24px; }
.si-photo-proof h2 { margin: 0 0 12px; font-size: clamp(1.4rem, 3vw, 2rem); line-height: 1.35; }
.si-photo-proof-intro { max-width: 76ch; }
.si-photo-proof-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 24px 0 16px; padding: 0; list-style: none; }
.si-photo-proof-step { min-width: 0; padding: 16px; border: 1px solid #c7d6df; border-radius: 14px; background: #f7fafb; }
.si-photo-proof-step h3 { margin: 0 0 14px; font-size: 1rem; line-height: 1.6; }
.si-photo-proof-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; align-items: center; min-height: 230px; }
.si-photo-proof-pair figure { margin: 0; min-width: 0; }
.si-photo-proof img { display: block; width: 100%; height: 230px; object-fit: contain; }
.si-photo-proof-pair img { height: 170px; }
.si-photo-proof-pair figcaption { margin-top: 8px; font-size: .85rem; text-align: center; }
.si-photo-proof a:focus-visible { outline: 3px solid #155f86; outline-offset: 4px; }
.si-photo-proof-notes { margin: 10px 0; font-size: .875rem; line-height: 1.75; }
.si-photo-proof .actions { margin-block: 18px 12px; }
.si-photo-proof .actions .button { white-space: normal; text-align: center; }
@media (max-width: 700px) {
  .si-photo-proof-steps { grid-template-columns: 1fr; }
  .si-photo-proof-step { padding: 14px; }
  .si-photo-proof-pair { min-height: 0; }
  .si-photo-proof-pair img { height: 190px; }
  .si-photo-proof img { max-height: 280px; }
}
