/* Shared, route-scoped presentation for the public Report Gallery.
 * This sheet keeps authored evidence imagery intact while making the paint
 * behind labels and copy deterministic for strict contrast evaluation. */

#main-content#main-content .pa-report-samples,
#main-content#main-content .pa-report-samples :is(
  .pa-page-hero > *,
  .pa-light-section,
  .pa-gallery-grid,
  .pa-gallery-card,
  .pa-quote-contrast,
  .pa-contrast-grid,
  .pa-contrast-image-card,
  .pa-sample-note
) {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

#main-content#main-content .pa-report-samples :is(h1, h2, h3, p, span, figcaption) {
  text-shadow: none !important;
}

#main-content#main-content .pa-report-samples .pa-gallery-card {
  overflow: hidden;
}

#main-content#main-content .pa-report-samples .pa-gallery-card .pa-sample-link {
  width: 100%;
  min-width: 0;
}

@media (max-width: 899.98px) {
  #main-content#main-content .pa-report-samples > .pa-page-hero {
    grid-template-columns: minmax(0, 1fr) !important;
    justify-items: stretch !important;
    gap: clamp(1.5rem, 4vw, 2.2rem) !important;
  }

  #main-content#main-content .pa-report-samples > .pa-page-hero > div:first-child {
    width: 100%;
    max-width: 39rem;
  }

  #main-content#main-content .pa-report-samples > .pa-page-hero h1 {
    max-width: 15ch;
    font-size: clamp(2.7rem, 7vw, 3.5rem) !important;
    line-height: 0.99;
  }

  #main-content#main-content .pa-report-samples > .pa-page-hero .pa-hero-media-frame {
    width: 100% !important;
    min-height: 0 !important;
    justify-self: stretch !important;
  }
}

@media (max-width: 480px) {
  #main-content#main-content .pa-report-samples > .pa-page-hero h1 {
    max-width: 13ch;
    font-size: clamp(2.35rem, 10.6vw, 2.7rem) !important;
  }

  #main-content#main-content .pa-report-samples .pa-light-section,
  #main-content#main-content .pa-report-samples .pa-quote-contrast {
    padding: 1rem !important;
  }
}

/* Light retains the established ice-and-paper language. These overrides only
 * replace indeterminate paint and strengthen the six audited ink roles. */
html:is([data-pa-theme="light"], [data-theme="light"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples > .pa-page-hero {
  border-color: #d9e9ef !important;
  background: #edf8fb !important;
  background-image: none !important;
  color: #263746 !important;
  box-shadow: none !important;
}

html:is([data-pa-theme="light"], [data-theme="light"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples > .pa-page-hero .pa-eyebrow {
  color: #066f7a !important;
}

html:is([data-pa-theme="light"], [data-theme="light"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples > .pa-page-hero p {
  color: #263746 !important;
}

html:is([data-pa-theme="light"], [data-theme="light"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples > .pa-page-hero .pa-hero-media-frame {
  border-color: #d9e9ef !important;
  background: #f4fbfd !important;
  background-image: none !important;
  box-shadow: 0 18px 38px rgba(18, 34, 51, 0.10) !important;
}

html:is([data-pa-theme="light"], [data-theme="light"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples > .pa-page-hero .pa-hero-media-frame::after,
html:is([data-pa-theme="light"], [data-theme="light"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples .pa-gallery-visual::after {
  content: none !important;
  display: none !important;
  background: none !important;
}

html:is([data-pa-theme="light"], [data-theme="light"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples .pa-gallery-visual-label {
  border-color: #29434c !important;
  background: #122233 !important;
  background-image: none !important;
  color: #f1f8f9 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  isolation: isolate !important;
}

html:is([data-pa-theme="light"], [data-theme="light"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples :is(
    .pa-quote-contrast,
    .pa-contrast-image-card
  ) {
  border-color: #d9e9ef !important;
  background: #fbfdfe !important;
  background-image: none !important;
  color: #263746 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  isolation: isolate !important;
}

html:is([data-pa-theme="light"], [data-theme="light"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples .pa-contrast-heading > .pa-eyebrow,
html:is([data-pa-theme="light"], [data-theme="light"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples .pa-contrast-card-head > div > span {
  color: #066f7a !important;
}

html:is([data-pa-theme="light"], [data-theme="light"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples :is(
    .pa-contrast-heading h2,
    .pa-contrast-card-head h3,
    .pa-contrast-outcome strong
  ) {
  color: #122233 !important;
}

html:is([data-pa-theme="light"], [data-theme="light"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples :is(
    .pa-contrast-heading > p,
    .pa-contrast-image-card figcaption,
    .pa-contrast-outcome > p
  ) {
  color: #263746 !important;
}

html:is([data-pa-theme="light"], [data-theme="light"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples .pa-contrast-outcome > span {
  color: #066f7a !important;
}

html:is([data-pa-theme="light"], [data-theme="light"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples .pa-contrast-image-card > .btn {
  border-color: #087f8c !important;
  background: #ffffff !important;
  background-image: none !important;
  color: #087f8c !important;
  box-shadow: none !important;
}

/* Dark foundations are canonical navy/slate. The authored evidence images stay
 * visible, while the pale hero render is explicitly bounded and dark-treated. */
html:is([data-pa-theme="dark"], [data-theme="dark"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples > .pa-page-hero {
  border-color: #29434c !important;
  background: #0f1e27 !important;
  background-image: none !important;
  color: #c7d4d9 !important;
  box-shadow: none !important;
}

html:is([data-pa-theme="dark"], [data-theme="dark"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples > .pa-page-hero .pa-hero-media-frame {
  border-color: #29434c !important;
  background: #152935 !important;
  background-image: none !important;
  box-shadow: 0 18px 44px rgba(8, 22, 32, 0.34) !important;
  isolation: isolate;
}

html:is([data-pa-theme="dark"], [data-theme="dark"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples > .pa-page-hero .pa-hero-media-frame::after {
  content: "" !important;
  display: block !important;
  background: rgba(8, 22, 32, 0.18) !important;
}

html:is([data-pa-theme="dark"], [data-theme="dark"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples > .pa-page-hero .pa-hero-media-frame > img {
  opacity: 0.9;
  filter: brightness(0.72) contrast(1.06) saturate(0.9) !important;
}

html:is([data-pa-theme="dark"], [data-theme="dark"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples > .pa-light-section {
  border-color: #29434c !important;
  background: #152935 !important;
  background-image: none !important;
  color: #c7d4d9 !important;
}

html:is([data-pa-theme="dark"], [data-theme="dark"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples .pa-gallery-card {
  border-color: #29434c !important;
  background: #183240 !important;
  background-image: none !important;
  color: #c7d4d9 !important;
}

html:is([data-pa-theme="dark"], [data-theme="dark"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples .pa-gallery-visual-label {
  border-color: #29434c !important;
  background: #0f1e27 !important;
  background-image: none !important;
  color: #f1f8f9 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

html:is([data-pa-theme="dark"], [data-theme="dark"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples :is(
    .pa-quote-contrast,
    .pa-contrast-image-card
  ) {
  border-color: #29434c !important;
  background: #0f1e27 !important;
  background-image: none !important;
  color: #c7d4d9 !important;
  box-shadow: none !important;
}

html:is([data-pa-theme="dark"], [data-theme="dark"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples .pa-contrast-image-card {
  background: #152935 !important;
}

html:is([data-pa-theme="dark"], [data-theme="dark"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples :is(
    .pa-contrast-heading h2,
    .pa-contrast-card-head h3,
    .pa-contrast-outcome strong
  ) {
  color: #f1f8f9 !important;
}

html:is([data-pa-theme="dark"], [data-theme="dark"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples :is(
    .pa-contrast-heading > p,
    .pa-contrast-image-card figcaption,
    .pa-contrast-outcome > p
  ) {
  color: #c7d4d9 !important;
}

html:is([data-pa-theme="dark"], [data-theme="dark"])
  body.pa-body:not(.pa-protected-workspace) #main-content#main-content .pa-report-samples .pa-contrast-outcome {
  border-color: #29434c !important;
  background: #203e4d !important;
  background-image: none !important;
}

/* Precision atlas closure. Keep the gallery's first decision inside a compact
 * editorial frame instead of vertically centering it in an oversized banner. */
body.pa-body:not(.pa-protected-workspace)
  #main-content#main-content .pa-report-samples > .pa-page-hero {
  position: relative !important;
  isolation: isolate !important;
  overflow: clip !important;
  min-height: 0 !important;
  padding: clamp(3.25rem, 6vw, 5.75rem) clamp(1.5rem, 5vw, 4.75rem) !important;
  border: 1px solid #d0e1e6 !important;
  border-radius: clamp(1rem, 2vw, 1.75rem) !important;
  grid-template-columns: minmax(0, 1.04fr) minmax(20rem, .96fr) !important;
  gap: clamp(2rem, 5vw, 5rem) !important;
  background:
    linear-gradient(rgba(8, 127, 140, .045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(8, 127, 140, .045) 1px, transparent 1px),
    radial-gradient(circle at 84% 18%, rgba(94, 214, 205, .16), transparent 24rem),
    #edf8fb !important;
  background-size: 52px 52px, 52px 52px, auto, auto !important;
  box-shadow: 0 25px 65px rgba(18, 34, 51, .08) !important;
}

body.pa-body:not(.pa-protected-workspace)
  #main-content#main-content .pa-report-samples > .pa-page-hero::before {
  content: "" !important;
  position: absolute !important;
  z-index: 0 !important;
  top: clamp(-8rem, -6vw, -4rem) !important;
  right: clamp(-6rem, -3vw, -1rem) !important;
  width: clamp(17rem, 28vw, 28rem) !important;
  aspect-ratio: 1 !important;
  border: 1px solid rgba(8, 127, 140, .2) !important;
  border-radius: 50% !important;
  background:
    linear-gradient(90deg, transparent 49.7%, rgba(8, 127, 140, .14) 50%, transparent 50.3%),
    linear-gradient(transparent 49.7%, rgba(8, 127, 140, .14) 50%, transparent 50.3%) !important;
  pointer-events: none !important;
}

body.pa-body:not(.pa-protected-workspace)
  #main-content#main-content .pa-report-samples > .pa-page-hero > * {
  position: relative !important;
  z-index: 1 !important;
}

html:is([data-pa-theme="dark"], [data-theme="dark"])
  body.pa-body:not(.pa-protected-workspace)
  #main-content#main-content .pa-report-samples > .pa-page-hero {
  border-color: #29434c !important;
  background:
    linear-gradient(rgba(112, 225, 220, .045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(112, 225, 220, .045) 1px, transparent 1px),
    radial-gradient(circle at 84% 18%, rgba(8, 127, 140, .2), transparent 24rem),
    #0f1e27 !important;
  background-size: 52px 52px, 52px 52px, auto, auto !important;
}

@media (max-width: 899.98px) {
  body.pa-body:not(.pa-protected-workspace)
    #main-content#main-content .pa-report-samples > .pa-page-hero {
    grid-template-columns: minmax(0, 1fr) !important;
    padding: clamp(2rem, 8vw, 3.5rem) clamp(1.1rem, 5vw, 2rem) !important;
  }
}
