/* Project photographs and planning notes, scoped to the commercial evidence block. */
.r33-evidence { color: #163d32; scroll-margin-top: 6rem; }
.r33-evidence *, .r33-evidence *::before, .r33-evidence *::after { box-sizing: border-box; }
.r33-evidence h2 { max-width: 26ch; }
.r33-intro { max-width: 72ch; line-height: 1.7; }
.r33-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.4rem; margin: 1.5rem 0; }
.r33-photo { margin: 0; min-width: 0; overflow: hidden; background: #f3f5f0; border: 1px solid #dbe4dd; border-radius: 1.2rem; }
.r33-photo img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: contain; background: #eaf0e9; }
.r33-caption, .r33-photo figcaption { padding: 1rem 1.15rem; font-size: .95rem; line-height: 1.65; color: #294b40; }
.r33-caption strong, .r33-photo figcaption strong { display: block; margin-bottom: .35rem; color: #123c2f; }
.r33-table { width: 100%; border-collapse: collapse; table-layout: fixed; margin: 1.5rem 0; font-size: .98rem; line-height: 1.6; }
.r33-table caption { text-align: left; font-size: 1.05rem; font-weight: 750; padding: 0 0 .7rem; color: #143c2e; }
.r33-table th, .r33-table td { padding: .9rem 1rem; text-align: left; vertical-align: top; border: 1px solid #dbe4dd; overflow-wrap: anywhere; }
.r33-table thead th { background: #edf3ed; color: #143c2e; }
.r33-table tbody th { font-weight: 650; }
.r33-checklist { margin: 1.1rem 0; padding: 1rem 1.3rem 1rem 2.4rem; background: #f3f5f0; border-left: 3px solid #f1b914; border-radius: 0 .8rem .8rem 0; }
.r33-checklist li { padding: .25rem 0 .25rem .2rem; line-height: 1.7; }
.r33-links { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; margin: 1.1rem 0 0; line-height: 1.7; }
.r33-links a { text-underline-offset: .22em; text-decoration-thickness: 1px; }
.r33-evidence a:focus-visible { outline: 3px solid #9d7400; outline-offset: 5px; border-radius: .15rem; }
.r33-evidence p { overflow-wrap: break-word; }
@media (max-width: 640px) {
  .r33-grid { grid-template-columns: minmax(0, 1fr); gap: 1rem; }
  .r33-photo { border-radius: .9rem; }
  .r33-photo img { aspect-ratio: var(--r33-image-ratio, 4 / 3); }
  .r33-table { font-size: .88rem; line-height: 1.5; }
  .r33-table th, .r33-table td { padding: .65rem .55rem; }
  .r33-links { display: grid; gap: .7rem; }
  .r33-evidence h2 { max-width: none; }
}
