.ontology-image-button {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border: 0;
  padding: 0;
  background: transparent;
  cursor: zoom-in;
}
.ontology-image-button:focus-visible { outline: 3px solid var(--cds-focus); outline-offset: -3px; }
.ontology-image-button .solution-step-image { aspect-ratio: 16 / 9; height: auto; }
.ontology-lightbox {
  width: min(1440px, 94vw);
  max-width: 94vw;
  max-height: 94vh;
  padding: 48px 16px 16px;
  border: 1px solid var(--cds-border-subtle);
  border-radius: 12px;
  background: var(--cds-background);
  color: var(--cds-text-primary);
}
.ontology-lightbox::backdrop { background: rgba(0, 0, 0, .7); }
.ontology-lightbox img { display: block; width: 100%; height: auto; }
.ontology-lightbox-close { position: absolute; top: 0; right: 16px; min-height: 48px; padding-inline: 16px; font-size: 14px; }
.ontology-modal-open { overflow: hidden; }
@media (max-width: 767px) {
  body:has(.ontology-image-button) nav[aria-label="Section navigation"] { display: none; }
}
