.rj-catalogue-intro {
  padding-block:50px 0;
  background:#eceee7
}
.rj-catalogue-heading {
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:48px;
  align-items:end;
  padding-bottom:40px
}
.rj-catalogue-heading h1 {
  font-size:clamp(42px,5vw,72px);
  line-height:1.2;
  letter-spacing:-1px;
  margin:0
}
.rj-catalogue-heading p {
  max-width:40ch;
  font-size:17px;
  margin-bottom:8px;
  color:var(--rj-muted)
}
.rj-catalogue-heading p span {
  font:15px/1.9 Georgia,serif;
  display:inline-block;
  margin-top:12px
}
.rj-catalogue-rule {
  display:flex;
  justify-content:space-between;
  border-top:1px solid #102c3a2a;
  padding-block:18px;
  font-size:12px
}
.rj-catalogue-rule a {
  text-decoration:none;
  font-weight:600
}
.rj-catalogue-toolbar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px
}
.rj-catalogue-toolbar h2 {
  margin:0
}
.rj-count {
  font:12px var(--rj-body);
  border:1px solid var(--rj-line);
  border-radius:30px;
  padding:5px 12px;
  vertical-align:middle;
  margin-inline-start:10px
}
.rj-search {
  width:min(340px,100%)
}
.rj-search label {
  display:block;
  font-size:11px;
  margin-bottom:6px;
  color:var(--rj-muted)
}
.rj-search input {
  width:100%;
  border:1px solid #c8cec9;
  border-radius:4px;
  background:white;
  min-height:48px;
  padding:10px 14px;
  font-size:13px;
  color:var(--rj-ink)
}
.rj-results {
  font-size:12px;
  color:var(--rj-muted);
  margin-block:18px 28px
}
.rj-issue-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:28px
}
.rj-issue {
  background:white;
  border:1px solid var(--rj-line);
  border-radius:var(--rj-radius);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  transition:box-shadow .2s
}
.rj-issue:hover {
  box-shadow:var(--rj-shadow)
}
.rj-issue-cover {
  padding:28px;
  background:#e7e9e2;
  display:flex;
  justify-content:center;
  align-items:center;
  min-height:260px
}
.rj-issue-cover img {
  height:260px;
  width:100%;
  object-fit:contain;
  filter:drop-shadow(4px 12px 9px #102c3a26)
}
.rj-issue-body {
  padding:26px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  flex:1
}
.rj-issue-body h2 {
  font-family:var(--rj-body);
  font-size:16px;
  font-weight:600;
  line-height:1.9;
  overflow-wrap:anywhere;
  margin-bottom:26px
}
.rj-issue-body .rj-button {
  margin-top:auto;
  font-size:12px;
  min-height:43px;
  padding:8px 18px
}
.rj-issue-featured {
  grid-column:1/-1;
  display:grid;
  grid-template-columns:1fr 1.4fr;
  background:var(--rj-navy);
  color:white
}
.rj-issue-featured .rj-issue-cover {
  grid-column:2;
  grid-row:1;
  background:#dfe3d9;
  padding:36px
}
.rj-issue-featured .rj-issue-body {
  grid-column:1;
  grid-row:1;
  justify-content:center;
  padding:40px
}
.rj-issue-featured h2 {
  font-family:var(--rj-heading);
  font-size:clamp(25px,2.7vw,36px);
  color:white
}
.rj-issue-featured .rj-eyebrow {
  color:#e1bc7f
}
.rj-issue-featured .rj-button {
  background:#e1bc7f;
  color:#102c3a;
  border-color:#e1bc7f;
  margin-top:8px
}
.rj-issue-featured .rj-issue-cover img {
  height:310px
}
.rj-issue-featured:not(:has(.rj-issue-cover)) .rj-issue-body {
  grid-column:1/-1
}
@media(max-width:900px) {
  .rj-issue-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
  .rj-catalogue-heading {
    gap:28px
  }
  .rj-issue-featured .rj-issue-body {
    padding:28px
  }
}
@media(max-width:600px) {
  .rj-catalogue-heading {
    grid-template-columns:1fr;
    gap:22px
  }
  .rj-catalogue-intro {
    padding-top:32px
  }
  .rj-catalogue-heading p {
    font-size:14px
  }
  .rj-catalogue-toolbar {
    align-items:flex-start;
    flex-direction:column
  }
  .rj-search {
    width:100%
  }
  .rj-issue-grid {
    grid-template-columns:1fr
  }
  .rj-issue-featured {
    display:flex;
    flex-direction:column
  }
  .rj-issue-featured .rj-issue-cover {
    order:0
  }
  .rj-issue-featured .rj-issue-body {
    order:1
  }
  .rj-issue-cover img {
    height:270px
  }
}
