.rsr-lists-index{max-width:1120px;margin:0 auto 4rem;color:#183443}
.rsr-lists-directory-heading{margin:1.6rem 0 1.65rem;padding-bottom:1.15rem;border-bottom:1px solid #dce7e6}
.rsr-lists-eyebrow{font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;font-weight:800;color:#287d86;margin:0 0 .55rem}
.rsr-lists-directory-heading h1{font-size:clamp(2rem,4vw,3rem);font-weight:800;line-height:1.12;letter-spacing:-.025em;color:#102d40;margin:0 0 .6rem}
.rsr-lists-count{font-size:.9rem;color:#607985;font-weight:600;margin:0}
.rsr-lists-jump{display:flex;flex-wrap:wrap;gap:.55rem;margin:0 0 2.3rem}
.rsr-lists-jump a{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;border:1px solid #d5e5e5;border-radius:999px;background:#f4f9f9;padding:.5rem .78rem;font-size:.83rem;font-weight:700;color:#1a5661;transition:background .15s,border-color .15s}
.rsr-lists-jump a span{color:#667d84;font-size:.76rem;background:white;border-radius:99px;padding:.05rem .4rem}
.rsr-lists-jump a:hover,.rsr-lists-jump a:focus-visible{background:#e5f3f3;border-color:#79adb2;text-decoration:none}
.rsr-lists-category{scroll-margin-top:2rem;margin:0 0 2.5rem}
.rsr-lists-category-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin:0 0 1rem;padding:0 0 .85rem;border-bottom:2px solid #dce7e6}
.rsr-lists-category-heading h2{font-size:clamp(1.28rem,2.5vw,1.65rem);font-weight:800;letter-spacing:-.012em;color:#12394c;margin:0 0 .25rem}
.rsr-lists-category-heading p{font-size:.9rem;line-height:1.5;color:#637985;margin:0}
.rsr-lists-category-count{font-size:.77rem;color:#487a80;background:#e9f4f3;border-radius:999px;padding:.32rem .65rem;white-space:nowrap;font-weight:750}
.rsr-lists-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.72rem}
.rsr-lists-entry{list-style:none;margin:0;padding:0}
.rsr-lists-entry a{background:#f5f8f8;border:1px solid #dce7e6;border-radius:11px;display:flex;gap:1rem;align-items:center;justify-content:space-between;padding:1rem 1.12rem;height:100%;text-decoration:none;font-weight:650;line-height:1.4;color:#173d46;transition:box-shadow .15s ease,border-color .15s ease,transform .15s ease}
.rsr-lists-entry a:hover,.rsr-lists-entry a:focus-visible{border-color:#3c9295;box-shadow:0 4px 16px #082d351a;transform:translateY(-1px);text-decoration:none}
.rsr-lists-arrow{font-size:1.18rem;flex-shrink:0;color:#448e92}
.rsr-lists-original{border-top:2px solid #dce7e6;padding:1.8rem 0 1rem;margin-top:.6rem}
.rsr-lists-original h2{font-size:1.22rem;margin:0 0 .45rem;color:#12394c}
.rsr-lists-original p{font-size:.9rem;color:#617883;margin:0 0 .7rem}
.rsr-lists-original a{font-weight:700;color:#187a83}
@media(max-width:720px){.rsr-lists-grid{grid-template-columns:1fr}.rsr-lists-category-heading{align-items:flex-start}.rsr-lists-directory-heading{margin-top:1rem}}


/* RSR research directory search */
.rsr-lists-search {
  margin: 0 0 1.6rem;
  padding: 1.15rem 1.25rem;
  background: #f3f8f8;
  border: 1px solid #dce7e6;
  border-radius: 13px;
}

.rsr-lists-search label {
  display: block;
  font-size: .95rem;
  font-weight: 800;
  color: #12394c;
  margin-bottom: .65rem;
}

.rsr-lists-search-row {
  display: flex;
  gap: .7rem;
  align-items: stretch;
}

#rsr-list-query {
  flex: 1;
  min-width: 0;
  padding: .78rem 1rem;
  border: 1px solid #bad0d1;
  border-radius: 8px;
  font: inherit;
  font-size: 1rem;
  background: #fff;
  color: #183443;
}

#rsr-list-query:focus {
  outline: 2px solid #287d86;
  outline-offset: 1px;
}

.rsr-lists-archive-search {
  margin: 0;
}

.rsr-lists-archive-search button {
  height: 100%;
  padding: .7rem 1.2rem;
  background: #176c75;
  color: white;
  border: 0;
  border-radius: 8px;
  font: inherit;
  font-size: .9rem;
  font-weight: 750;
  cursor: pointer;
}

.rsr-lists-archive-search button:hover {
  background: #10515a;
}

.rsr-lists-search-hint {
  font-size: .81rem;
  color: #607985;
  margin: .65rem 0 0;
}

#rsr-lists-no-results {
  padding: 1.4rem;
  background: #f3f8f8;
  border-radius: 10px;
  color: #48636b;
}

/* Respect hidden state even on grid/flex elements. */
.rsr-lists-index [hidden] {
  display: none !important;
}

@media (max-width: 640px) {
  .rsr-lists-search-row {
    flex-direction: column;
  }

  .rsr-lists-archive-search button {
    width: 100%;
    min-height: 44px;
  }
}
