.research-launch{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:center;margin-bottom:24px}
.research-launch h3,.research-launch p{margin:12px 0}
.research-image-link{display:block;border-radius:10px;overflow:hidden}
.research-image-link img{width:100%;height:auto;max-height:360px;object-fit:contain;background:var(--mc-cream)}
.research-image-link span{display:block;padding:12px;background:var(--mc-navy);color:var(--mc-on-dark);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.image-viewer{width:min(1200px,calc(100% - 24px));max-height:calc(100dvh - 24px);margin:auto;padding:20px;border:2px solid var(--mc-line);border-radius:16px;background:var(--mc-paper);color:var(--mc-ink)}
.image-viewer::backdrop{background:color-mix(in srgb,var(--mc-navy-deep) 85%,transparent)}
.image-viewer-heading,.image-viewer-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.image-viewer-controls{justify-content:flex-start;margin:16px 0}
.image-viewer button,.image-viewer a{min-height:48px}
.image-viewer-stage{height:60dvh;overflow:auto;overscroll-behavior:contain;border:1px solid var(--mc-line);background:var(--mc-cream);padding:12px}
.image-viewer-stage img{max-width:none;height:auto;margin:0 auto}
.image-viewer-help{margin-top:10px;color:var(--mc-muted)}
.image-viewer-error{font-weight:700}
.image-viewer-error[hidden]{display:none}
@media(max-width:760px){.research-launch{grid-template-columns:1fr}.image-viewer{padding:12px}.image-viewer-stage{height:55dvh}}
