.partner-site:has(.research-page) { background:#f5f7fc; }
.research-page { overflow:hidden; color:#182946; }
.research-page .wrap { width:min(1600px,calc(100% - 80px)); }
.research-hero { position:relative; overflow:hidden; background:radial-gradient(circle at 90% 12%,#2954a7 0,transparent 38%),linear-gradient(115deg,#0c1b39,#173b7b); color:#fff; }
.research-hero-inner { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; min-height:202px; padding-block:25px 55px; }
.research-back { display:inline-flex; align-items:center; gap:8px; width:max-content; min-height:32px; color:#a8bee9; font-size:13px; }
.research-back:hover { color:#fff; }
.research-hero-copy { padding-top:12px; }
.research-kicker { color:#5075bf; font-size:12px; font-weight:750; letter-spacing:.13em; }
.research-hero .research-kicker { color:#97b5ee; }
.research-hero h1 { margin:0; font-size:clamp(30px,3vw,43px); font-weight:750; letter-spacing:-.04em; }
.research-journey { position:relative; z-index:2; margin-top:-32px; }
.research-journey ol { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:0; padding:0; list-style:none; }
.research-journey li { min-width:0; }
.research-journey a { display:flex; align-items:flex-start; gap:14px; min-height:110px; padding:21px 22px; border:1px solid #dce6f8; border-radius:14px; background:#f1f6ff; box-shadow:0 10px 24px #183e8010; transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease; }
.research-journey a:hover { transform:translateY(-2px); background:#e7f0ff; border-color:#b8cdf6; box-shadow:0 16px 30px #183e801b; }
.research-journey a[aria-current="step"] { background:#2458ec; border-color:#2458ec; box-shadow:0 15px 30px #1749cf3b; }
.research-journey-number { flex:none; color:#6486c6; font-size:22px; line-height:1.25; font-weight:760; letter-spacing:-.06em; }
.research-journey-copy { display:grid; gap:7px; min-width:0; }
.research-journey-title { display:flex; align-items:baseline; flex-wrap:wrap; gap:3px 6px; }
.research-journey strong { font-size:19px; line-height:1.35; }
.research-journey-caption { color:#b67a18; font-size:11px; line-height:1.5; white-space:nowrap; border-left:1px solid currentColor; padding-left:6px; }
.research-journey a[aria-current="step"] .research-journey-caption { color:#f4cc79; }
.research-journey small { color:#647797; font-size:12px; line-height:1.5; }
.research-journey a[aria-current="step"] .research-journey-number,.research-journey a[aria-current="step"] strong { color:#fff; }
.research-journey a[aria-current="step"] small { color:#dce7ff; }
.research-content { padding-block:22px 88px; }
.research-stage { scroll-margin-top:28px; padding:34px 38px 38px; border:1px solid #dfe6f2; border-radius:18px; background:#fff; box-shadow:0 8px 30px #24447108; }
.research-stage+.research-stage { margin-top:20px; }
.research-stage[hidden] { display:none; }
.research-stage-heading { display:flex; align-items:end; gap:19px; padding-bottom:29px; border-bottom:1px solid #e8edf5; }
.research-stage-number { font-size:60px; line-height:1; font-weight:760; letter-spacing:-.1em; color:#ceddff; }
.research-stage-overline { color:#6a7892; font-size:12px; letter-spacing:.03em; }
.research-stage h2 { margin-top:3px; font-size:29px; font-weight:730; letter-spacing:-.045em; }
.research-stage-steps { margin-left:auto; padding-bottom:4px; color:#6180bf; font-size:13px; white-space:nowrap; }
.research-stage-steps span { padding-inline:4px; color:#b9c8e4; }
.research-stage-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:stretch; gap:24px; padding-top:30px; }
.research-roles,.research-features { display:flex; flex-direction:column; min-width:0; padding:21px 22px 16px; border:1px solid #e3eaf6; border-radius:13px; }
.research-roles { background:#fbfcff; }
.research-roles h3,.research-feature-label { display:inline-flex; align-items:center; align-self:flex-start; min-height:32px; padding:5px 9px; border-radius:4px; font-size:12px; font-weight:750; letter-spacing:.03em; }
.research-roles h3 { background:#eaf0fb; color:#385a96; }
.research-roles ul,.research-features ul { display:flex; flex:1; flex-direction:column; margin:12px 0 0; padding:0; list-style:none; }
.research-roles li { display:grid; flex:1; grid-template-columns:102px minmax(0,1fr); align-items:center; gap:18px; padding:12px 2px; border-top:1px solid #e6ecf6; }
.research-roles li:first-child { border-top:0; }
.research-roles strong { width:max-content; max-width:100%; padding:5px 9px; border-radius:5px; background:#eef3fe; color:#315ac1; font-size:12px; font-weight:700; line-height:1.5; white-space:nowrap; }
.research-roles p { color:#465773; font-size:14px; line-height:1.8; }
.research-features { border-color:#dfe9fc; background:linear-gradient(140deg,#f5f8ff,#eef4ff); }
.research-feature-label { gap:8px; background:#dce9ff; color:#1f56ba; }
.research-feature-label span { color:#d49029; font-size:14px; }
.research-features li { display:flex; flex:1; align-items:center; gap:10px; padding:12px 2px; border-top:1px solid #dce5f6; }
.research-features li:first-child { border-top:0; }
.research-feature-mark { padding-top:1px; color:#dc9b30; font-size:13px; }
.research-features h4 { margin:0; color:#243b69; font-size:13px; font-weight:720; }
.research-features p { margin-top:3px; color:#61718e; font-size:13px; line-height:1.7; }
.research-feature-lead .research-feature-mark { color:#dc9b30; }
.research-feature-lead h4 { color:#174fbd; font-size:15px; }
.research-capability-note { max-width:820px; margin:28px auto 0; color:#72809b; font-size:12px; text-align:center; line-height:1.8; }
.research-cta { color:#fff; background:linear-gradient(110deg,#173669,#174baf); }
.research-cta-inner { display:flex; align-items:center; justify-content:space-between; gap:40px; padding-block:52px; }
.research-cta .research-kicker { color:#a7c7ff; }
.research-cta h2 { margin:10px 0; font-size:clamp(24px,2.8vw,34px); letter-spacing:-.04em; }
.research-cta p:last-child { color:#bed0f1; font-size:14px; }
.research-cta-actions { display:flex; gap:11px; align-items:center; flex-wrap:wrap; }
.research-cta-actions a { display:inline-flex; align-items:center; justify-content:center; min-height:47px; padding:10px 18px; border-radius:6px; font-size:13px; font-weight:700; white-space:nowrap; }
.research-cta-primary { gap:19px; color:#16376f; background:#fff; }
.research-cta-primary:hover { background:#e6efff; }
.research-cta-secondary { border:1px solid #ffffff70; color:#fff; }
.research-cta-secondary:hover { background:#ffffff18; }
@media(max-width:960px) {
  .research-stage-grid { gap:30px; }
  .research-stage { padding-inline:30px; }
  .research-journey a { padding-inline:15px; gap:9px; }
  .research-journey strong { font-size:17px; }
  .research-journey small { font-size:11px; }
}
@media(max-width:700px) {
  .research-page .wrap { width:calc(100% - 40px); }
  .research-hero-inner { min-height:184px; padding-block:17px 48px; }
  .research-hero h1 { font-size:clamp(27px,6vw,36px); }
  .research-journey { margin-top:-25px; }
  .research-journey ol { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
  .research-journey a { min-height:88px; padding:12px; gap:9px; }
  .research-journey-number { font-size:19px; }
  .research-journey strong { font-size:16px; }
  .research-journey small { font-size:10px; }
  .research-content { padding-block:18px 72px; }
  .research-stage { padding:28px 22px; }
  .research-stage-heading { flex-wrap:wrap; gap:10px 14px; padding-bottom:21px; }
  .research-stage-number { font-size:48px; }
  .research-stage h2 { font-size:25px; }
  .research-stage-steps { margin-left:0; flex-basis:100%; }
  .research-stage-grid { display:block; padding-top:25px; }
  .research-features { margin-top:25px; }
  .research-cta-inner { display:block; padding-block:42px; }
  .research-cta-actions { margin-top:24px; }
}
@media(max-width:430px) {
  .research-page .wrap { width:calc(100% - 32px); }
  .research-journey-number { font-size:15px; }
  .research-journey a { align-items:flex-start; min-height:104px; gap:6px; padding:11px 9px; }
  .research-journey strong { font-size:15px; }
  .research-journey small { font-size:10px; }
  .research-roles li { grid-template-columns:1fr; align-items:start; gap:6px; padding:13px 0; }
  .research-cta-actions a { width:100%; }
}
@media(prefers-reduced-motion:reduce) { .research-journey a { transition:none; } }

/* Compact product introduction, scoped to this page. */
.research-explore-site .header.wrap,.research-explore-site .partner-footer.wrap { width:min(1600px,calc(100% - 80px)); }
.research-explore-site .gateway-brand-mark { display:grid; place-items:center; width:62px; height:52px; flex-shrink:0; }
.research-explore-site .gateway-brand-mark img { display:block; width:100%; height:100%; object-fit:contain; }
.research-hero-inner { flex-direction:row; align-items:center; justify-content:space-between; gap:28px; min-height:170px; padding-block:28px 52px; }
.research-hero-copy { flex-shrink:0; padding:0; }
.research-hero h1 { font-size:clamp(28px,2.6vw,40px); }
.research-hero-message { margin-left:auto; }
.research-hero-message h2 { margin:6px 0; font-size:19px; }
.research-hero-message>p:last-child { color:#bed0f1; font-size:12px; }
.research-hero .research-cta-actions { flex-direction:column; align-items:stretch; flex-shrink:0; gap:8px; }
.research-hero .research-cta-actions a { min-height:40px; }
.research-content { padding-bottom:32px; }
.research-stage { padding:24px; }
.research-stage-grid { padding-top:0; }
.research-capability-note { margin-top:18px; }
@media(max-width:1100px) {
  .research-hero-inner { flex-wrap:wrap; gap:20px; }
  .research-hero-message { margin-left:0; }
  .research-hero .research-cta-actions { flex-direction:row; }
}
@media(max-width:700px) {
  .research-explore-site .header.wrap,.research-explore-site .partner-footer.wrap { width:calc(100% - 40px); }
  .research-hero-inner { align-items:flex-start; flex-direction:column; gap:16px; padding-block:24px 48px; }
  .research-hero-message h2 { font-size:18px; }
  .research-hero .research-cta-actions { margin-top:0; width:100%; }
  .research-hero .research-cta-actions a { flex:1; padding-inline:12px; }
  .research-stage { padding:18px; }
  .research-stage-grid { padding-top:0; }
}
@media(max-width:430px) {
  .research-explore-site .header.wrap,.research-explore-site .partner-footer.wrap { width:calc(100% - 32px); }
  .research-explore-site .gateway-brand-mark { width:52px; height:44px; }
  .research-hero .research-cta-actions a { width:auto; font-size:12px; }
}

.research-hero-copy { display:flex; align-items:baseline; gap:32px; flex-wrap:wrap; min-width:0; flex-shrink:1; }
.research-product-description { color:#d9e6ff; font-size:17px; line-height:1.9; text-decoration:underline; text-decoration-color:#ebc991; text-decoration-thickness:1px; text-underline-offset:8px; }
.research-bottom-actions { display:flex; justify-content:flex-end; margin-top:22px; }
.research-bottom-actions .research-cta-actions { margin:0; justify-content:flex-end; }
.research-bottom-actions .research-cta-primary { color:#fff; background:#2458ec; }
.research-bottom-actions .research-cta-primary:hover { background:#1947cd; }
.research-bottom-actions .research-cta-secondary { color:#315ac1; border-color:#b8caf0; }
.research-bottom-actions .research-cta-secondary:hover { background:#e8efff; }
@media(max-width:700px) {
 .research-hero-copy { gap:14px; }
 .research-product-description { font-size:14px; }
 .research-bottom-actions .research-cta-actions { width:100%; flex-wrap:nowrap; }
 .research-bottom-actions .research-cta-actions a { width:auto; padding-inline:12px; font-size:12px; }
}

.research-hero-copy { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; width:100%; gap:10px 20px; }
.research-home-link { justify-self:end; color:#fff; font-size:13px; white-space:nowrap; border:1px solid #ffffff70; border-radius:8px; padding:8px 12px; }
.research-home-link:hover { background:#ffffff18; }
.research-product-description { grid-column:1 / -1; }
@media(max-width:430px) {
 .research-hero-copy { gap:10px 8px; }
 .research-home-link { font-size:11px; padding:7px 8px; }
}

.research-title-row { display:flex; align-items:baseline; flex-wrap:wrap; gap:8px 14px; min-width:0; }
.research-product-label { color:#f4cc79; font-size:14px; line-height:1.4; white-space:nowrap; border-left:1px solid currentColor; padding-left:12px; }
@media(max-width:430px) { .research-product-label { font-size:12px; padding-left:8px; } }

.dialysis-intro { grid-column:1 / -1; max-width:1050px; color:#c9daf8; font-size:14px; line-height:1.85; margin:0; }
.dialysis-page .research-hero-inner { padding-bottom:60px; }
.dialysis-page .dialysis-stage-summary { margin:0; font-size:21px; line-height:1.5; letter-spacing:0; color:#284978; }
.dialysis-page .research-stage-grid { padding-top:20px; }
.dialysis-functions li { display:block; padding:14px 2px; }
.dialysis-functions strong { display:inline-block; width:auto; white-space:normal; }
.dialysis-functions li p { margin-top:8px; }
.dialysis-highlights { display:flex; flex-wrap:wrap; gap:8px; margin-top:24px; padding:18px 20px; background:#f0f5ff; border-radius:12px; }
.dialysis-highlights span { color:#385a96; font-size:12px; padding:4px 10px; background:#fff; border:1px solid #e0e8f7; border-radius:5px; }
@media(max-width:700px) { .dialysis-page .dialysis-stage-summary { font-size:17px; } .dialysis-intro { font-size:13px; } .dialysis-highlights { padding:14px; } }

.dialysis-page .research-stage-grid { padding-top:0; }
