/* Approved Home and Firm photographs: keep each complete composition visible. */
.page-home .opening-a {
  grid-template-columns: .82fr 1.18fr;
  gap: 0 4.5vw;
  align-items: center;
}
.page-home .opening-visual { margin-block: 0 38px; }
.page-home .opening .opening-scene.selected-photograph {
  min-height: 0;
  height: auto;
  aspect-ratio: 3 / 2;
}
.selected-photograph { margin: 0; background: transparent; }
.selected-photograph > img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  transform: none;
}
.page-firm .firm-opening-photo {
  grid-template-columns: minmax(0, 1fr) minmax(220px, 26%);
  align-items: center;
  background: var(--maroon);
}
.page-firm .firm-scene.selected-photograph {
  width: 100%;
  height: auto;
  aspect-ratio: 1800 / 857;
}
.page-firm .firm-photo-caption { align-self: stretch; }
@media (max-width: 1100px) and (min-width: 801px) {
  .page-home .opening-a { grid-template-columns: .85fr 1.15fr; gap: 0 30px; }
  .page-home .opening-a h1 { font-size: clamp(58px, 6.8vw, 74px); }
}
@media (max-width: 800px) {
  .page-home .opening-a { grid-template-columns: 1fr; gap: 24px; }
  .page-home .opening-visual { margin: 0; }
  .page-firm .firm-opening-photo { grid-template-columns: 1fr; }
}
