/* Phase-A sponsor slots — loaded only by allowlisted editorial documents.
   Fixed minimum dimensions prevent layout shift; nothing in the SPA imports this. */
.sponsor-slots { display: grid; gap: 14px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 32px 0; }
.sponsor-slot { min-height: 156px; box-sizing: border-box; border: 1px solid var(--border); border-radius: 12px; padding: 16px; background: var(--bg-card); display: flex; flex-direction: column; gap: 9px; }
.sponsor-label { color: var(--muted); font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.sponsor-slot a { color: var(--text); text-decoration: none; display: grid; gap: 5px; }
.sponsor-slot a:hover strong { color: var(--amber); }
.sponsor-slot strong { font-size: 15px; }
.sponsor-slot span { color: var(--muted); font-size: 13px; line-height: 1.45; }
.sponsor-report { align-self: flex-start; margin-top: auto; border: 0; padding: 0; background: transparent; color: var(--muted); font-size: 12px; text-decoration: underline; cursor: pointer; }
.sponsor-report:hover { color: var(--text); }
@media (max-width: 640px) { .sponsor-slots { grid-template-columns: 1fr; } }
