:root {
  color-scheme: light;
  --research-page: #fbfaf7;
  --research-ink: #10243a;
  --research-muted: #617892;
  --research-blue: #1260d5;
  --research-line: #1765df;
  --research-deck: #071820;
  --research-blue-on-dark: #78acff;
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  background: var(--research-page);
  color: var(--research-ink);
}

.research-page {
  position: relative;
  isolation: isolate;
  min-height: calc(100vh - 82px);
  overflow: hidden;
  padding: clamp(76px, 8vw, 112px) 24px 82px;
}

.research-page::before {
  content: "";
  position: absolute;
  z-index: -2;
  inset: 0;
  background:
    radial-gradient(circle at 88% 24%, rgba(18, 96, 213, .11), transparent 31rem),
    radial-gradient(circle at 11% 92%, rgba(30, 171, 157, .08), transparent 28rem);
}

.research-page::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  opacity: .25;
  background-image: radial-gradient(rgba(18, 96, 213, .23) .7px, transparent .7px);
  background-size: 24px 24px;
  mask-image: linear-gradient(to bottom, transparent, #000 14%, #000 90%, transparent);
}

.research-shell {
  width: min(1120px, 100%);
  margin: 0 auto;
}

.research-intro { text-align: center; }

.research-eyebrow {
  margin: 0 0 18px;
  color: var(--research-blue);
  font: 800 .78rem/1.2 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: .25em;
  text-transform: uppercase;
}

.research-lead {
  margin: 18px auto 0;
  color: var(--research-muted);
  font: 650 clamp(1rem, 1.6vw, 1.28rem)/1.45 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.research-directions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 40px;
  margin-top: clamp(68px, 7vw, 88px);
}

.research-direction {
  min-width: 0;
  padding-top: 19px;
  border-top: 2px solid var(--research-line);
}

.research-direction p {
  margin: 0 0 12px;
  color: var(--research-blue);
  font: 800 .79rem/1.2 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.research-direction h2 {
  margin: 0;
  font: 600 clamp(1.42rem, 2.25vw, 1.85rem)/.98 Georgia, "Times New Roman", serif;
  letter-spacing: -.035em;
}

.research-direction span {
  display: block;
  margin-top: 15px;
  color: var(--research-muted);
  font: 600 1rem/1.55 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.research-deck {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.06fr) minmax(340px, .94fr);
  min-height: 318px;
  margin-top: 66px;
  overflow: hidden;
  border: 1px solid rgba(143, 181, 199, .28);
  border-radius: 26px;
  background: var(--research-deck);
  color: #f8fbfc;
  text-decoration: none;
  box-shadow: 0 22px 50px rgba(16, 36, 58, .08);
}

.research-deck:focus-visible {
  outline: 3px solid #68a4ff;
  outline-offset: 4px;
}

.research-deck-copy {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 44px 46px 42px;
  background: linear-gradient(90deg, #071820 0%, #071820 80%, rgba(7, 24, 32, .88) 100%);
}

.research-deck-meta {
  margin: 0 0 9px;
  color: var(--research-blue-on-dark);
  font: 800 .77rem/1.3 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: .21em;
  text-transform: uppercase;
}

.research-deck h2 {
  margin: 0;
  font: 600 clamp(2.35rem, 4.2vw, 3.5rem)/.9 Georgia, "Times New Roman", serif;
  letter-spacing: -.052em;
}

.research-deck-summary {
  margin: 22px 0 0;
  color: #c8d6df;
  font: 650 1rem/1.45 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.research-deck-action {
  margin-top: 28px;
  color: #fff;
  font: 800 .82rem/1 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.research-deck-visual {
  position: relative;
  min-height: 318px;
  overflow: hidden;
  background: #071820;
}

.research-deck-visual::before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background: linear-gradient(90deg, #071820 0%, rgba(7, 24, 32, .5) 30%, transparent 68%);
}

.research-deck-visual img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 71% center;
  opacity: .88;
}

@media (max-width: 820px) {
  .research-page { padding: 60px 20px 58px; }
  .research-directions { grid-template-columns: 1fr; gap: 28px; margin-top: 56px; }
  .research-deck { grid-template-columns: 1fr; margin-top: 48px; }
  .research-deck-copy { padding: 36px 30px 34px; }
  .research-deck-visual { min-height: 230px; }
  .research-deck-visual::before { background: linear-gradient(180deg, #071820 0%, transparent 42%); }
}

@media (max-width: 520px) {
  .research-lead { margin-top: 22px; }
  .research-deck { border-radius: 20px; }
  .research-deck h2 { font-size: 2.25rem; }
  .research-deck-summary br { display: none; }
}

.research-videos {
  margin-top: clamp(56px, 6vw, 76px);
}
.research-videos-heading {
  margin: 0 0 12px;
  color: var(--research-blue);
  font: 800 .79rem/1.2 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.research-videos-title {
  margin: 0 0 28px;
  font: 600 clamp(1.42rem, 2.25vw, 1.85rem)/.98 Georgia, "Times New Roman", serif;
  letter-spacing: -.035em;
  color: var(--research-ink);
}
.research-video-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
.research-video-card {
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid rgba(16,36,58,.14);
  background: #fff;
  transition: border-color .18s ease, box-shadow .18s ease;
}
.research-video-card:hover {
  border-color: rgba(16,36,58,.28);
  box-shadow: 0 16px 38px rgba(16,40,61,.09);
}
.research-video-card video {
  display: block;
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
  background: #071820;
}
.research-video-card p {
  margin: 0;
  padding: 14px 16px 16px;
  color: var(--research-ink);
  font: 700 .88rem/1.35 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
@media(max-width: 900px) {
  .research-video-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media(max-width: 560px) {
  .research-video-grid { grid-template-columns: 1fr; }
}
