/* Abstract research: a reading list on one quiet, cool-white surface. */
html:root {
  color-scheme: light;
  scroll-padding-top: 100px;
}

html:root body.rl {
  --rl-bg: #f8f9f9;
  --rl-ink: #0c2340;
  --rl-ink-2: #667786;
  --rl-line: #dde3e7;
  margin: 0;
  background: var(--rl-bg) !important;
  color: var(--rl-ink);
  font-family: "Raleway", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}

body.rl * {
  box-sizing: border-box;
}
body.rl a {
  text-decoration: none;
}
body.rl .rl-wrap {
  width: min(1320px, calc(100% - 112px));
  margin-inline: auto;
}
body.rl .rl-section {
  padding: 0 0 100px;
}
html:root body.rl #research.rl-section--top {
  padding-top: 64px;
  padding-bottom: 88px;
}
.rl-visually-hidden {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.rl-intro {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 60px;
  margin-bottom: 88px;
}
.rl-intro h1 {
  margin: 0;
  color: #0c2340;
  font-family: "Instrument Serif", Georgia, serif;
  font-size: clamp(64px, 7.8vw, 108px);
  font-weight: 400;
  line-height: 1.02;
  letter-spacing: -3.8px;
}
.rl-intro p {
  max-width: 340px;
  margin: 0 0 8px;
  color: #667786;
  font-size: 16px;
  line-height: 1.7;
}
.rl-library-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding-bottom: 24px;
}
.rl-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 7px;
  margin: 0;
}
html:root body.rl .rl-chip {
  appearance: none;
  border: 0;
  border-radius: 7px;
  padding: 11px 17px;
  background: transparent;
  color: #667786;
  cursor: pointer;
  font:
    500 13px/1.25 "Space Grotesk",
    Arial,
    sans-serif;
  box-shadow: none;
  transition:
    background 0.18s ease,
    color 0.18s ease;
}
html:root body.rl .rl-chip:hover {
  background: #e9eded;
  color: #0c2340;
}
html:root body.rl .rl-chip.is-active {
  background: #d0e8ff;
  color: #0c2340;
}

body.rl .rl-grid {
  display: block;
  border-top: 1px solid var(--rl-line);
}
html:root body.rl .rl-card {
  position: relative;
  display: block;
  margin: 0;
  padding: 32px 0 34px;
  border: 0;
  border-bottom: 1px solid var(--rl-line);
  border-radius: 0;
  background: transparent !important;
  box-shadow: none;
  overflow: visible;
  transition: background 0.18s ease;
}
html:root body.rl .rl-card:hover {
  background: #eff4f7 !important;
  transform: none;
}
body.rl .rl-card::before {
  display: none;
}
body.rl .rl-card__img {
  display: none;
}
body.rl .rl-card__link {
  position: absolute;
  inset: 0;
  z-index: 2;
  border-radius: 3px;
}
body.rl .rl-card__pad {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr) 190px;
  grid-template-rows: auto auto;
  column-gap: 34px;
  row-gap: 10px;
  padding: 0 10px 0 0;
}
body.rl .rl-card__tag {
  grid-column: 1;
  grid-row: 1 / 3;
  margin-top: 6px;
  color: #667786;
  font:
    400 13px/1.5 "Space Grotesk",
    Arial,
    sans-serif;
}
body.rl .rl-card__title {
  grid-column: 2;
  grid-row: 1;
  margin: 0;
  color: #0c2340;
  font:
    500 25px/1.28 "Space Grotesk",
    Arial,
    sans-serif;
  letter-spacing: -0.6px;
}
body.rl .rl-card__excerpt {
  grid-column: 2;
  grid-row: 2;
  max-width: 64ch;
  margin: 0;
  color: #667786;
  font-size: 13px;
  line-height: 1.75;
}
body.rl .rl-card__foot {
  grid-column: 3;
  grid-row: 1 / 3;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-end;
  gap: 22px;
  margin: 0;
  padding: 5px 0 0;
  border: 0;
}
body.rl .rl-card__meta {
  color: #667786;
  font:
    400 11px/1.5 "Space Grotesk",
    Arial,
    sans-serif;
  text-align: right;
}
body.rl .rl-card__read {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #0c2340;
  font:
    500 12px/1.5 "Space Grotesk",
    Arial,
    sans-serif;
}
body.rl .rl-card__read svg {
  width: 16px;
  height: 16px;
  flex: none;
}
html:root body.rl .rl-card.is-hidden,
html:root body.rl .rl-grid:not(.is-expanded) .rl-card.is-more {
  display: none;
}

body.rl .rl-more-wrap {
  display: flex;
  justify-content: center;
  padding-top: 32px;
  margin: 0;
}
html:root body.rl .rl-more-btn {
  display: inline-flex;
  align-items: center;
  gap: 20px;
  margin: 0;
  padding: 13px 20px;
  border: 1px solid #d9e1e7;
  border-radius: 7px;
  background: transparent;
  color: #0c2340;
  box-shadow: none;
  font:
    500 13px/1.5 "Space Grotesk",
    Arial,
    sans-serif;
  cursor: pointer;
}
html:root body.rl .rl-more-btn:hover {
  background: #d0e8ff;
  border-color: #d0e8ff;
  transform: none;
}
body.rl .rl-more-btn svg {
  width: 15px;
  height: 15px;
}

body.rl .rl-cta {
  padding: 65px 40px;
  border: 0;
  border-radius: 10px;
  background: #eaf3fa;
  box-shadow: none;
  text-align: center;
}
body.rl .rl-cta h2 {
  margin: 0 auto;
  color: #0c2340;
  font:
    400 clamp(42px, 5vw, 64px)/1.1 "Instrument Serif",
    Georgia,
    serif;
  letter-spacing: -1.4px;
}
body.rl .rl-cta p {
  margin: 18px auto 0;
  max-width: 46ch;
  color: #667786;
  font-size: 14px;
  line-height: 1.65;
}
body.rl .rl-cta__btns {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-top: 28px;
}
html:root body.rl .rl-cta .fp-btn {
  padding: 12px 19px;
  border: 1px solid #cdddea;
  border-radius: 7px;
  background: transparent;
  color: #0c2340;
  box-shadow: none;
  font:
    500 13px/1.5 "Space Grotesk",
    Arial,
    sans-serif;
}
html:root body.rl .rl-cta .fp-btn:last-child {
  background: #0c2340;
  border-color: #0c2340;
  color: #f8f9f9;
}
html:root body.rl .rl-cta .fp-btn:hover {
  background: #d0e8ff;
  color: #0c2340;
  transform: none;
}
body.rl :is(.rl-chip, .rl-card__link, .rl-more-btn, .rl-cta a):focus-visible {
  outline: 2px solid #4076a5;
  outline-offset: 5px;
}
body.rl .rl-reveal {
  opacity: 1;
  transform: none;
}

@media (max-width: 1199px) {
  body.rl .rl-wrap {
    width: calc(100% - 64px);
  }
  .rl-intro {
    gap: 40px;
  }
  .rl-intro p {
    max-width: 285px;
    font-size: 14px;
  }
  .rl-library-head {
    flex-direction: column;
    align-items: flex-start;
    gap: 15px;
  }
  body.rl .rl-card__pad {
    grid-template-columns: 105px minmax(0, 1fr) 135px;
    column-gap: 22px;
  }
  body.rl .rl-card__title {
    font-size: 22px;
  }
}

@media (max-width: 700px) {
  body.rl .rl-wrap {
    width: calc(100% - 40px);
  }
  html:root body.rl #research.rl-section--top {
    padding-top: 40px;
    padding-bottom: 60px;
  }
  .rl-intro {
    display: block;
    margin-bottom: 44px;
  }
  .rl-intro h1 {
    font-size: clamp(64px, 12vw, 82px);
    letter-spacing: -2.3px;
  }
  .rl-intro p {
    max-width: 36ch;
    margin: 20px 0 0;
    font-size: 14px;
  }
  .rl-library-head {
    gap: 18px;
    padding-bottom: 20px;
  }
  .rl-filters {
    gap: 4px;
  }
  html:root body.rl .rl-chip {
    padding: 10px 12px;
    font-size: 12px;
  }
  html:root body.rl .rl-card {
    padding: 27px 0;
  }
  body.rl .rl-card__pad {
    display: flex;
    flex-direction: column;
    gap: 11px;
    padding: 0;
  }
  body.rl .rl-card__tag {
    margin: 0;
    font-size: 11px;
  }
  body.rl .rl-card__title {
    font-size: 23px;
    max-width: 30ch;
  }
  body.rl .rl-card__excerpt {
    font-size: 13px;
  }
  body.rl .rl-card__foot {
    flex-direction: row;
    align-items: center;
    padding-top: 8px;
    gap: 16px;
  }
  body.rl .rl-card__meta {
    text-align: left;
    font-size: 10px;
  }
  body.rl .rl-card__read {
    gap: 8px;
    font-size: 11px;
    flex-shrink: 0;
  }
  body.rl .rl-cta {
    padding: 42px 22px;
  }
  body.rl .rl-section {
    padding-bottom: 60px;
  }
  body.rl .rl-cta__btns {
    gap: 8px;
  }
  html:root body.rl .rl-cta .fp-btn {
    padding: 11px 14px;
    font-size: 11px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html:root {
    scroll-behavior: auto;
  }
  body.rl *,
  body.rl *::before,
  body.rl *::after {
    transition: none !important;
  }
}
