.plotter-page { width: min(920px, calc(100% - 48px)); }
.plotter-feature { padding-top: 32px; }
.plotter-feature figure, .plotter-feature .featured-copy { max-width: 660px; margin-inline: auto; }
.plotter-feature img { display: block; width: 100%; height: auto; }
.featured-copy { padding-top: 15px; font-size: 14px; line-height: 1.4; color: var(--muted); }
.featured-copy p { margin: 0 0 10px; }
.featured-copy .exhibition { margin-bottom: 0; color: var(--muted); font: 12px/1.4 "Courier New", Courier, monospace; }
.plotter-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 34px 30px; }
.plotter-grid figure { min-width: 0; }
.plotter-grid .media-frame { display: flex; align-items: center; justify-content: center; width: 100%; aspect-ratio: 4 / 3; }
.plotter-grid img, .plotter-grid video { display: block; width: 100%; height: 100%; object-fit: contain; }
.plotter-grid figcaption { color: var(--muted); font: 12px/1.6 "Courier New", Courier, monospace; margin-top: 10px; }
.plotter-grid a:hover { background: transparent; }
.plotter-page .project-footer { padding-bottom: 12px; }
@media (max-width: 640px) {
  .plotter-page { width: calc(100% - 40px); }
  .plotter-grid { grid-template-columns: minmax(0, 1fr); gap: 30px; }
  .plotter-grid .media-frame { aspect-ratio: auto; }
  .plotter-grid img, .plotter-grid video { height: auto; max-height: 75vh; object-fit: contain; }
}
