/* ============================================================
   R&D page. Reuses the shared panels, values, areas/split/chips
   and status pills; only layout specific to this page lives here.
   ============================================================ */

.rd-hero__grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: clamp(32px, 5vw, 72px); align-items: center; }
.rd-hero__grid > * { min-width: 0; }
.rd-hero__ctas { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 32px; }

@media (max-width: 900px) {
  .rd-hero__grid { grid-template-columns: 1fr; }
  .rd-hero__ctas .btn { flex: 1 1 220px; }
}

/* research themes: a full-width lead theme, then a 3-up grid.
   Reuses .area/.area__for for card content; only the grid
   container and the lead span are specific to this page. */
.themes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.themes__lead { grid-column: 1 / -1; }
.themes__lead p { max-width: 46rem; }
@media (max-width: 1000px) { .themes { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) { .themes { grid-template-columns: 1fr; } }

/* research project cards */
.rd-projects { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.rd-project { display: flex; flex-direction: column; gap: 12px; padding: clamp(24px, 3vw, 34px); }
.rd-project > * { position: relative; z-index: 1; }
.rd-project .status-pill { align-self: flex-start; }
.rd-project h3 { font-size: clamp(1.3rem, 1.8vw, 1.5rem); line-height: 1.15; }
.rd-project p { color: var(--ink-mute); }
.rd-project .text-link { margin-top: auto; padding-top: 4px; }
.rd-project--soon { border: 2px dashed var(--green-line); box-shadow: none; }
.rd-project--soon::after { display: none; }
@media (max-width: 980px) { .rd-projects { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) { .rd-projects { grid-template-columns: 1fr; } }

/* publications empty state: reuses .load-error at full section width */
#publications .load-error { max-width: 860px; }
