.rg-grid{grid-template-columns:1fr;align-items:stretch;gap:16px;display:grid}@media (min-width:640px){.rg-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.rg-grid{grid-template-columns:repeat(3,1fr)}}.rg-card{background:var(--color-surface-card);border:1px solid var(--color-surface-card-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:box-shadow var(--duration-small) var(--ease-standard), transform var(--duration-small) var(--ease-standard);color:var(--color-text-primary);flex-direction:column;padding:24px;display:flex;position:relative}.rg-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.rg-card:after{content:"";border-radius:var(--radius-lg);pointer-events:none;position:absolute;inset:0}.rg-card-title-link{color:inherit;text-decoration:none}.rg-card-title-link:after{content:"";border-radius:var(--radius-lg);z-index:1;position:absolute;inset:0}.rg-card:focus-within{outline:none}.rg-card-title-link:focus-visible:after{outline:2px solid var(--color-accent-highlight);outline-offset:2px}.rg-card .rg-card-title,.rg-card-title{font-family:var(--font-display), system-ui, -apple-system, sans-serif;letter-spacing:-.01em;text-transform:none;color:var(--color-text-primary);margin:0;font-size:24px;font-weight:700;line-height:1.15;display:block}.rg-card .rg-card-title:before{content:none}.rg-card .rg-card-meta,.rg-card-meta{font-family:var(--font-body), system-ui, sans-serif;color:var(--color-text-secondary);font-variant-numeric:tabular-nums;margin-top:8px;margin-bottom:0;font-size:13px;font-weight:500;line-height:1.4}.rg-card .rg-card-blurb,.rg-card-blurb{font-family:var(--font-body), system-ui, sans-serif;color:var(--color-text-primary);flex:1;margin-top:12px;margin-bottom:0;font-size:15px;font-weight:400;line-height:1.5}.rg-card-badge{font-family:var(--font-body), system-ui, sans-serif;letter-spacing:.5px;color:var(--color-text-secondary);align-items:center;gap:6px;margin-top:12px;font-size:12px;font-weight:500;line-height:1;display:inline-flex}.rg-card-badge svg{flex-shrink:0}.rg-card-past-pill{background:var(--color-border-light);color:var(--color-text-tertiary);font-family:var(--font-body), system-ui, sans-serif;letter-spacing:.5px;border-radius:var(--radius-badge);text-transform:uppercase;margin-top:12px;padding:4px 10px;font-size:11px;font-weight:600;line-height:1.4;display:inline-block}.rg-card-cta{font-family:var(--font-display), system-ui, sans-serif;letter-spacing:.5px;color:var(--color-text-primary);text-transform:uppercase;margin-top:16px;font-size:14px;font-weight:600;line-height:1}.rg-card-cta:after{content:" →"}.rg-card--past .rg-card-meta{opacity:.6}.rg-card--past:hover{box-shadow:var(--shadow-card);transform:none}.rg-card--empty{background:var(--color-bg-secondary);text-align:center;border-style:dashed;justify-content:center;align-items:center;min-height:200px}.rg-card--empty .rg-card-title{color:var(--color-text-secondary);font-size:18px}.rg-card--empty .rg-card-blurb{color:var(--color-text-tertiary);flex:none;font-size:13px}@media (prefers-reduced-motion:reduce){.rg-card{transition:none}.rg-card:hover{transform:none}}
