/* Reports gallery &mdash; companion to site.css */
:root{
  --rg-brand:#1f4dd8;
  --rg-ink:#0b1a2b;
  --rg-ink-2:#506074;
  --rg-line:#e5eaf2;
  --rg-bg:#f6f8fc;
  --rg-teal:#0aa1a1;
  --rg-violet:#6b46c1;
  --rg-amber:#b56b00;
}

.rg-hero{
  padding:64px 0 32px;
  background:
    radial-gradient(900px 380px at 92% -10%, rgba(31,77,216,.10), transparent 60%),
    radial-gradient(700px 320px at -10% 110%, rgba(10,161,161,.08), transparent 60%),
    linear-gradient(180deg,#fbfcfe,#fff);
  border-bottom:1px solid var(--rg-line);
}
.rg-hero .eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--rg-brand)}
.rg-hero h1{font-size:clamp(1.9rem,3.6vw,2.8rem);margin:.4rem 0 .6rem;max-width:24ch;color:var(--rg-ink);line-height:1.15}
.rg-hero .lede{max-width:62ch;color:var(--rg-ink-2);font-size:1.05rem}
.rg-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.btn{display:inline-block;padding:11px 18px;border-radius:10px;font-weight:600;font-size:.95rem;text-decoration:none;border:1px solid transparent;transition:.15s}
.btn.primary{background:var(--rg-brand);color:#fff;box-shadow:0 10px 22px -12px rgba(31,77,216,.6)}
.btn.primary:hover{filter:brightness(1.08)}
.btn.ghost{background:#fff;border-color:var(--rg-line);color:var(--rg-ink)}
.btn.ghost:hover{border-color:var(--rg-brand);color:var(--rg-brand)}
.btn.lg{padding:14px 22px;font-size:1rem}
.rg-meta{margin-top:18px;display:flex;flex-wrap:wrap;gap:8px;color:var(--rg-ink-2);font-size:.88rem}
.rg-meta strong{color:var(--rg-ink)}

.rg-filter-wrap{position:sticky;top:0;z-index:5;background:rgba(255,255,255,.92);backdrop-filter:saturate(180%) blur(8px);border-bottom:1px solid var(--rg-line)}
.rg-filter{display:flex;flex-wrap:wrap;gap:14px;align-items:center;padding:14px 0}
#rg-q{flex:1 1 260px;min-width:220px;padding:11px 14px;border:1px solid var(--rg-line);border-radius:10px;font-size:.95rem;background:#fff}
#rg-q:focus{outline:none;border-color:var(--rg-brand);box-shadow:0 0 0 3px rgba(31,77,216,.15)}
.rg-chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{appearance:none;border:1px solid var(--rg-line);background:#fff;color:var(--rg-ink-2);padding:8px 13px;border-radius:999px;font-weight:600;font-size:.85rem;cursor:pointer;transition:.15s}
.chip:hover{color:var(--rg-brand);border-color:var(--rg-brand)}
.chip.is-on{background:var(--rg-brand);color:#fff;border-color:var(--rg-brand)}

.rg-grid-wrap{padding:32px 0 72px}
.rg-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.rg-card{background:#fff;border:1px solid var(--rg-line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:.18s;box-shadow:0 1px 0 rgba(11,26,43,.02)}
.rg-card:hover{transform:translateY(-2px);box-shadow:0 18px 40px -22px rgba(11,26,43,.25);border-color:#c9d4ea}
.rg-card .thumb{display:block;background:#fff;aspect-ratio:16/10;overflow:hidden;position:relative;padding:14px 16px 16px;}
.rg-card .thumb img{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .25s ease}
.rg-card:hover .thumb img{transform:scale(1.03)}
.rg-card .thumb::after{
  content:"View full size →";position:absolute;left:10px;bottom:10px;
  background:rgba(11,26,43,.85);color:#fff;padding:5px 10px;border-radius:999px;font-size:.74rem;font-weight:600;
  opacity:0;transition:.18s;transform:translateY(4px)
}
.rg-card:hover .thumb::after{opacity:1;transform:translateY(0)}
.rg-card .body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px}
.rg-card .tag{align-self:flex-start;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--rg-brand);background:rgba(31,77,216,.08);padding:3px 8px;border-radius:999px}
.rg-card h3{margin:2px 0 0;font-size:1.02rem;color:var(--rg-ink)}
.rg-card p{margin:0;color:var(--rg-ink-2);font-size:.9rem;line-height:1.5}
.rg-card a.inline{color:var(--rg-brand);text-decoration:none;font-weight:600}
.rg-card a.inline:hover{text-decoration:underline}

.rg-empty{text-align:center;color:var(--rg-ink-2);padding:30px 0;font-size:.95rem}

.rg-cta-band{background:linear-gradient(135deg,#0b1a2b,#142a4a);color:#fff;padding:44px 0}
.rg-cta-band .container{display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between}
.rg-cta-band h2{margin:0 0 6px;font-size:clamp(1.3rem,2.4vw,1.7rem)}
.rg-cta-band p{margin:0;color:#c9d4ea}
.rg-cta-band .btn.primary{background:#fff;color:var(--rg-brand)}
.rg-cta-band .btn.primary:hover{background:#eef2f8}

@media (max-width:640px){
  .rg-hero{padding:44px 0 24px}
  .rg-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
}
