.optical-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr);
  gap: clamp(22px, 4vw, 52px);
  align-items: center;
  margin-top: clamp(20px, 3vw, 38px);
}

.optical-stage {
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--stage-line, #4d6571);
  background: var(--stage-background, #223c47);
  color: var(--stage-ink, #f6e9d3);
}

.optical-stage-tag,
.optical-stage-caption {
  display: flex;
  justify-content: space-between;
  gap: 4px 14px;
  flex-wrap: wrap;
  padding: 9px clamp(10px, 2vw, 22px);
  font-size: clamp(10px, 1.15vw, 12px);
  letter-spacing: .08em;
  text-transform: uppercase;
}

.optical-stage-tag { border-bottom: 1px solid var(--stage-line, #4d6571); }
.optical-stage-caption { border-top: 1px solid var(--stage-line, #4d6571); }
.optical-stage-caption span:first-child { font-weight: 600; }
.optical-stage > svg { display: block; width: 100%; height: auto; }

.optical-panel {
  border-block: 1px solid var(--merch-line);
  padding-block: clamp(13px, 2vw, 22px);
}

.optical-panel h2 {
  margin: 4px 0 11px;
  font: 300 clamp(30px, 3.8vw, 51px)/1.04 var(--font-serif);
  letter-spacing: -.04em;
}

.optical-panel > p:not(.eyebrow, .proof-status) { max-width: 45ch; }
.optical-panel .proof-controls { margin-bottom: 10px; }
.optical-panel .proof-controls button:hover { border-color: var(--merch-rust); }
.optical-panel .proof-controls button:first-of-type {
  background: var(--merch-ink);
  border-color: var(--merch-ink);
  color: var(--merch-paper);
}

.optical-panel .proof-controls button[aria-pressed="true"] {
  background: #783f35;
  border-color: #783f35;
  color: #fff9ef;
}

.optical-slider {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  width: 100%;
  column-gap: 9px;
}

.optical-slider input { width: 100%; margin: 0; grid-column: 1 / -1; }
.optical-slider output { font-variant-numeric: tabular-nums; color: #70483e; }
.optical-slider-scale {
  display: flex;
  justify-content: space-between;
  grid-column: 1 / -1;
  margin: -6px 8px 0;
  font-size: 11px;
  color: #70483e;
}

.optical-readout {
  padding: 10px 12px;
  background: #ede2d2;
  border-inline-start: 2px solid var(--merch-rust);
  color: #5d3e34;
  font-size: 13px;
  font-variant-numeric: tabular-nums;
}

.optical-reference {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 18px 0 0;
}

.optical-reference img { width: 47px; height: 54px; object-fit: contain; background: #e7d8bd; }
.optical-reference figcaption { font: italic 300 17px/1.12 var(--font-serif); }
.optical-reference figcaption small { display: block; margin-bottom: 4px; font: 10px/1.2 var(--font-sans); letter-spacing: .08em; text-transform: uppercase; }

@media (max-width: 760px) {
  .optical-layout { grid-template-columns: minmax(0, 1fr); align-items: start; }
}
