/* SolarCompute Research Program V2 - page scoped */
.rp { --rp-gold:#f5b841; --rp-ink:#071019; --rp-line:rgba(136,158,177,.24); }
.rp h1,.rp h2,.rp h3 { letter-spacing:-.035em; }
.rp h1 { font-size:clamp(3rem,6vw,5.5rem); line-height:1.04; margin:12px 0 24px; }
.rp h2 { font-size:clamp(2rem,3.3vw,3rem); line-height:1.12; margin:12px 0 20px; }
.rp p { line-height:1.75; }
.rp .rp-hero { background:radial-gradient(circle at 78% 18%,#23344c 0%,#0c1725 42%,#071019 100%); }
.rp .rp-hero-grid { display:grid;grid-template-columns:minmax(0,1.25fr) minmax(290px,.75fr);gap:clamp(28px,5vw,75px);align-items:center; }
.rp .rp-lead { max-width:720px;font-size:clamp(1.12rem,1.8vw,1.35rem);color:#d5dee8; }
.rp .rp-actions { display:flex;flex-wrap:wrap;gap:12px;margin-top:28px; }
.rp .rp-btn { display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:14px 20px;border-radius:8px;font-weight:700;text-decoration:none;transition:transform .15s ease; }
.rp .rp-btn:hover { transform:translateY(-2px); }
.rp .rp-btn-gold { background:#f5b841;color:#071019; }
.rp .rp-btn-outline { border:1px solid #7b8797;color:#fff; }
.rp .rp-hero-panel { padding:28px;border:1px solid rgba(245,184,65,.28);border-radius:18px;background:rgba(255,255,255,.045); }
.rp .rp-panel-label,.rp .rp-number { color:#d89b2b;font-size:.78rem;font-weight:700;letter-spacing:.12em; }
.rp .rp-panel-item { padding:17px 0;border-bottom:1px solid rgba(255,255,255,.15);color:#f0f4fa;font-weight:600; }
.rp .rp-panel-item span { color:#f5b841;margin-right:15px;font-size:.83rem; }
.rp .rp-hero-panel p { color:#b5c1cf;font-size:.82rem;margin:16px 0 0; }
.rp .rp-two { display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(30px,6vw,95px);align-items:start; }
.rp .rp-section-lead { max-width:820px;margin-bottom:28px; }
.rp .rp-process { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:30px 0 18px; }
.rp .rp-process>div { border:1px solid var(--rp-line);border-radius:12px;padding:23px 19px;background:rgba(126,143,160,.05); }
.rp .rp-process strong,.rp .rp-process span { display:block; }
.rp .rp-process span { margin-top:10px;font-size:.9rem;opacity:.8;line-height:1.55; }
.rp .rp-note { font-size:.9rem;opacity:.75; }
.rp .rp-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:32px; }
.rp .rp-card { padding:30px;border:1px solid var(--rp-line);border-radius:14px;background:rgba(122,146,165,.045); }
.rp .rp-card h3 { margin:18px 0 12px;font-size:1.35rem; }
.rp .rp-card small { display:block;margin-top:20px;padding-top:16px;border-top:1px solid var(--rp-line);opacity:.75;line-height:1.6; }
.rp .rp-steps { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:30px; }
.rp .rp-steps>div { border-top:2px solid #d89b2b;padding:19px 8px 0 0; }
.rp .rp-steps b { display:block;color:#d89b2b;font-size:.8rem;margin-bottom:12px; }
.rp .rp-steps strong { display:block;font-size:1.13rem; }
.rp .rp-steps p { font-size:.9rem;line-height:1.6; }
.rp .rp-status { border-left:3px solid #d89b2b;padding:0 0 0 20px;margin-bottom:27px; }
.rp .rp-status p { margin:8px 0 0; }
.rp .rp-collab { background:linear-gradient(130deg,#071019,#13263b); }
.rp .rp-collab p { color:#d4dfeb; }
.rp .rp-collab-card { border:1px solid rgba(245,184,65,.32);padding:30px;border-radius:15px;background:rgba(255,255,255,.04); }
.rp .rp-collab-card .rp-btn { margin-top:12px; }
.rp .rp-link-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:26px; }
.rp .rp-link-grid a { display:block;border:1px solid var(--rp-line);padding:20px;border-radius:12px;text-decoration:none;color:inherit; }
.rp .rp-link-grid a:hover { border-color:#d89b2b; }
.rp .rp-link-grid strong,.rp .rp-link-grid span { display:block; }
.rp .rp-link-grid span { margin-top:9px;font-size:.85rem;opacity:.75;line-height:1.5; }
@media(max-width:900px) { .rp .rp-hero-grid,.rp .rp-two { grid-template-columns:1fr; } .rp .rp-process,.rp .rp-link-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .rp .rp-steps { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:600px) { .rp .rp-grid,.rp .rp-process,.rp .rp-link-grid,.rp .rp-steps { grid-template-columns:1fr; } .rp .rp-hero-panel { padding:20px; } .rp .rp-card { padding:22px; } }
@media(prefers-reduced-motion:reduce) { .rp .rp-btn { transition:none; } .rp .rp-btn:hover { transform:none; } }
