/* ============================================================
   RANGELIGHT - Sources: source cards, count chips, footer
   ============================================================ */

/* card cluster per category */
.src-cluster{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:680px){.src-cluster{grid-template-columns:1fr}}

/* a single source row/card */
.src-card{position:relative;display:flex;align-items:center;gap:16px;
  background:var(--rl-smoke-2);border:1px solid var(--rl-line);border-radius:12px;
  padding:16px 18px;transition:border-color var(--rl-transition),background var(--rl-transition),
    transform var(--rl-transition)}
.src-card:hover{border-color:var(--rl-line-2);background:var(--rl-smoke-3);transform:translateY(-1px)}
.src-card__main{min-width:0;flex:1}
.src-card__name{font-family:var(--rl-font-display);font-weight:600;font-size:15.5px;line-height:1.25;
  color:var(--rl-bone);margin:0 0 3px;text-wrap:pretty}
.src-card__auth{font-size:12.5px;line-height:1.4;color:var(--rl-dim);margin:0}
.src-card__right{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex:none}

/* mono document-count citation chip - warm at rest, teal glow on hover */
.count-chip{display:inline-flex;align-items:baseline;gap:5px;
  font-family:var(--rl-font-mono);font-size:12.5px;line-height:1;
  color:var(--rl-amber-soft);background:rgba(245,165,35,.07);
  border:1px solid rgba(245,165,35,.28);border-radius:999px;padding:6px 11px;white-space:nowrap;
  transition:border-color var(--rl-transition),box-shadow var(--rl-transition),background var(--rl-transition)}
.count-chip__num{font-weight:600;letter-spacing:.01em}
.count-chip__unit{font-size:10.5px;color:var(--rl-faint);letter-spacing:.04em}
.src-card:hover .count-chip{border-color:rgba(111,196,210,.55);box-shadow:var(--rl-glow-teal-sm);
  background:rgba(245,165,35,.1)}

/* view-source affordance - warm at rest, teal glow on hover */
.src-view{display:inline-flex;align-items:center;gap:5px;text-decoration:none;
  font-family:var(--rl-font-mono);font-size:11px;letter-spacing:.04em;color:var(--rl-dim);
  transition:color var(--rl-transition),text-shadow var(--rl-transition)}
.src-view svg{width:12px;height:12px}
.src-view:hover,.src-view:focus-visible{outline:none;color:var(--rl-amber);
  text-shadow:0 0 14px rgba(111,196,210,.5)}

/* ============================================================
   CTA band (homepage email capture) - closing
   ============================================================ */
.src-close{padding:80px 0;position:relative;
  background:radial-gradient(120% 130% at 18% 0%, rgba(245,165,35,.06), rgba(14,13,12,0) 60%)}
.src-close::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg, transparent, var(--rl-line) 14%, var(--rl-line) 86%, transparent)}
.src-close__inner{max-width:840px;margin:0 auto;padding:0 32px}
@media(max-width:600px){.src-close__inner{padding:0 22px}}
.src-close__eyebrow{font-family:var(--rl-font-mono);font-size:12px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--rl-amber);margin:0 0 14px}
.src-close__title{font-family:var(--rl-font-display);font-weight:500;font-size:clamp(28px,3.8vw,40px);
  line-height:1.12;letter-spacing:-.015em;color:var(--rl-bone);margin:0;max-width:20ch}
.src-close__sub{font-size:18px;line-height:1.6;color:var(--rl-dim);margin:16px 0 28px;max-width:50ch}
.src-close .rl-capture{align-items:flex-start}

/* ---- footer ---- */
.site-footer{border-top:1px solid var(--rl-line);padding:54px 0 64px}
.site-footer__top{display:flex;align-items:flex-start;justify-content:space-between;gap:32px;flex-wrap:wrap}
.site-footer__tag{font-family:var(--rl-font-mono);font-size:12px;color:var(--rl-faint);margin:14px 0 0}
.site-footer__nav{display:flex;gap:26px;flex-wrap:wrap}
.site-footer__nav a{color:var(--rl-dim);font-size:14px;text-decoration:none}
.site-footer__nav a:hover{color:var(--rl-bone)}
.site-footer__rule{height:1px;background:var(--rl-line);margin:34px 0 26px}
.site-footer__legal{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;flex-wrap:wrap}
.site-footer__disclaimer{font-size:13px;line-height:1.6;color:var(--rl-faint);max-width:74ch;margin:0}
.site-footer__meta{font-family:var(--rl-font-mono);font-size:12px;color:var(--rl-faint);white-space:nowrap}
