/* Narrow-screen corrections, after the shared editorial styles. */
.report-download-copy { min-width: 0; }
.wordmark picture, .brand-symbol-frame { display: block; }
.brand-symbol-frame { justify-self: center; flex-shrink: 0; }
#mobile-nav a[aria-current="page"] { color: var(--orange); }
.panel-foot > #scenario-page:only-child { margin-left: auto; }

@media screen and (max-width: 1050px) {
  #mobile-nav:not([hidden]) {
    top: 100%;
    max-height: calc(100vh - 100%);
    max-height: calc(100dvh - 100%);
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .contact-form input[type="text"],
  .contact-form textarea { font-size: 16px; }
  .header-contact { min-height: 44px; }
}

@media screen and (max-width: 850px) {
  .exhibit-bottom { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .boundary-switch > div { flex-wrap: wrap; }
  .exhibit-tools {
    grid-column: 1 / -1;
    width: 100%;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
  }
  .rock-controls { justify-content: flex-start; }
  .exhibit-tools button { min-height: 44px; }
}

@media screen and (max-width: 620px) {
  /* Reserve the artwork's space; copy can grow with text size or line wraps. */
  .exhibit-stage {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: 460px auto auto;
    height: auto;
  }
  .sculpture-stage.hero-art { width: 100%; height: 350px; top: 100px; left: 50%; }
  .exhibit-copy {
    position: relative;
    grid-row: 2;
    top: auto;
    bottom: auto;
    left: auto;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-top: 18px;
  }
  .exhibit-copy > p { max-width: 100%; font-size: 13px; }
  .exhibit-cta {
    position: relative;
    grid-row: 3;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    width: 100%;
    margin-top: 26px;
    min-height: 52px;
  }
  .exhibit-bottom { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .boundary-switch > .mono { font-size: 9px; }
  .boundary-switch .art-pin { min-height: 44px; font-size: 12px; padding: 8px 14px; }
  .exhibit-bottom .art-caption {
    border-left: 0;
    padding-left: 0;
    border-top: 1px solid var(--line);
    padding-top: 15px;
  }
  .exhibit-bottom .art-caption > .mono { font-size: 9px; }
  .exhibit-bottom .art-caption p { font-size: 13px; }
  .exhibit-tools { align-items: flex-start; }
  .exhibit-tools button { font-size: 12px; }
  .exhibit-tools > a { display: inline-flex; align-items: center; min-height: 44px; font-size: 9px; }
  .report-download-inner { grid-template-columns: 86px minmax(0, 1fr); }
  .report-download-copy > p { font-size: 13px; }
  .report-file-meta { font-size: 11px; }
  .report-download-link { font-size: 12px; }
  .report-view-link { font-size: 12px; }
  .contact-email { max-width: 100%; }
  .close-dialog { flex-shrink: 0; }
}

@media screen and (max-width: 420px) {
  .report-download-inner { grid-template-columns: minmax(0, 1fr); gap: 22px; }
  .report-cover-link { max-width: 112px; }
  .report-download-copy > .mono { font-size: 9px; }
  .report-download-copy h2 { font-size: 25px; }
  .report-actions { gap: 10px 20px; }
}
