/* Research extends NorthLight's existing type, palette and button system. */
.research-intro { position: relative; isolation: isolate; overflow: hidden; min-height: 600px; padding: 100px 0 112px; }
.research-intro-grid { display: block; }
.research-intro-copy { position: relative; z-index: 1; min-width: 0; width: min(66%, 740px); }
.research-geology { min-width: 0; padding-top: 24px; }
.research-geology img { width: 100%; height: auto; }
/* Keep the supplied photograph intact; feather it into the paper at display time. */
.research-geology--photo { position: absolute; inset: 0 0 0 auto; width: 78%; height: 100%; padding-top: 0; overflow: hidden; pointer-events: none; }
.research-geology--photo img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 46%; }
.research-geology--photo::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, var(--paper), #f3f0e7f5 18%, #f3f0e7e6 32%, #f3f0e7b3 44%, #f3f0e744 58%, transparent 74%), linear-gradient(180deg, var(--paper), #f3f0e766 12%, transparent 30%, transparent 74%, #f3f0e799 90%, var(--paper)); }
.research-perspective { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 60px; align-items: center; border-top: 1px solid var(--line); padding: 38px 0 48px; }
.research-perspective .eyebrow { margin-bottom: 14px; }
.research-perspective h2 { font-size: clamp(28px, 3vw, 42px); line-height: 1.2; }
.research-perspective h2 em { color: var(--gold); font-weight: 400; }
.research-perspective > p { color: var(--muted); font-size: 16px; line-height: 1.7; max-width: 54ch; }
.research-lead { max-width: 740px; margin-top: 27px; font-size: 21px; line-height: 1.6; color: var(--muted); }
.research-collection { padding: 0 0 104px; }
.research-note { max-width: 880px; padding: 24px 0 38px; font-size: 15px; line-height: 1.65; color: var(--muted); border-top: 1px solid var(--line); }
.research-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(28px, 3.5vw, 48px); }
.research-document { min-width: 0; display: flex; flex-direction: column; }
.research-cover { display: block; border-bottom: 2px solid var(--gold); }
.research-cover img { width: 100%; height: auto; object-fit: contain; }
.research-copy { display: flex; flex: 1; flex-direction: column; padding-top: 28px; }
.research-source { color: var(--gold); font-size: 14px; line-height: 1.6; margin-bottom: 16px; }
.research-copy h2 { font-size: clamp(29px, 2.65vw, 38px); line-height: 1.16; letter-spacing: -.025em; }
.research-description { color: var(--muted); font-size: 17px; line-height: 1.7; margin-top: 22px; margin-bottom: 28px; }
.research-copy .actions { margin-top: auto; gap: 12px; align-items: flex-start; flex-direction: column; }
.research-copy .interactive-button { min-height: 48px; max-width: 100%; font-size: 15px; }
.research-copy .button-label { white-space: normal; }
@media (max-width: 960px) {
  .research-perspective { gap: 32px; }
  .research-intro { min-height: 540px; padding-top: 76px; }
  .research-grid { grid-template-columns: minmax(0, 1fr); gap: 52px; }
  .research-document { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1fr); gap: 32px; align-items: start; }
  .research-copy { padding-top: 0; }
  .research-copy .actions { margin-top: 0; }
}
@media (max-width: 760px) {
  .research-intro { min-height: 0; padding: 48px 0 clamp(260px, 68vw, 350px); }
  .research-intro-copy { width: 100%; }
  .research-geology--photo { inset: auto 0 0; width: 100%; height: clamp(340px, 88vw, 430px); max-width: none; margin: 0; }
  .research-geology--photo img { object-position: 50% 46%; }
  .research-geology--photo::after { background: linear-gradient(180deg, var(--paper), #f3f0e7ed 12%, #f3f0e755 32%, transparent 48%, transparent 76%, #f3f0e799 91%, var(--paper)); }
}
@media (max-width: 600px) {
  .research-perspective { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .research-perspective { padding: 30px 0 36px; }
  .research-intro .eyebrow { font-size: 13px; }
  .research-lead { font-size: 18px; margin-top: 22px; }
  .research-note { padding: 22px 0 32px; }
  .research-collection { padding-bottom: 64px; }
  .research-document { display: flex; gap: 0; }
  .research-cover { width: 100%; max-width: 400px; margin-inline: auto; }
  .research-copy { padding-top: 26px; }
  .research-copy h2 { font-size: 32px !important; }
  .research-copy .actions { flex-direction: row; flex-wrap: wrap; gap: 12px 18px; }
}
