/* "What people are saying": recommendation card + grant card. */
#voices { margin-top: 20px; }
#voices > * { animation: vo-in .45s cubic-bezier(.2,.8,.2,1); }
@keyframes vo-in { from { opacity: 0; transform: translateY(8px); } }

/* shared */
.vo-q { position: relative; margin: 0; }
.vo-q blockquote { margin: 0; }
#voices mark { background: none; color: var(--fg); font-weight: 500; }
.vo-who { display: flex; align-items: center; gap: 12px; margin-top: 22px; }
.vo-who b { display: block; font-size: 14px; font-weight: 500; }
.vo-who small { font-size: 12px; color: var(--muted); }
.vo-av { display: grid; place-items: center; flex-shrink: 0; width: 42px; height: 42px; border-radius: 50%; background: linear-gradient(135deg, #a5b4fc, #0ea5e9); color: #fff; font-size: 14px; font-weight: 500; }
.vo-av-li { border-radius: 10px; background: #0a66c2; color: #fff; transition: transform .2s, box-shadow .2s; } /* LinkedIn brand blue */
.vo-av-li:hover { transform: translateY(-1px); box-shadow: 0 8px 18px -10px rgba(10,102,194,.8); }

.vo-grant { display: flex; flex-direction: column; overflow: hidden; border-radius: 18px; background: #fff; }
.vo-grant-img { display: grid; place-items: center; padding: 26px 24px; background: #fff; border-bottom: 1px solid var(--line); }
.vo-grant-img img { width: 100%; max-width: 260px; height: auto; display: block; }
/* the wordmark is a JPEG: push the faint compression noise to pure white */
.vo-grant-img img { filter: contrast(1.35) brightness(1.06) grayscale(1); mix-blend-mode: multiply; } /* multiply: whatever is left of its white background melts into the card */
.vo-grant-b { display: flex; flex-direction: column; gap: 10px; padding: 20px 22px 22px; }
.vo-grant-top { display: flex; align-items: center; justify-content: space-between; }
.vo-tag { font: 500 11px "Geist Mono", monospace; text-transform: uppercase; letter-spacing: .08em; color: var(--fg); background: #f3f4f6; padding: 3px 8px; border-radius: 6px; }
.vo-date { font: 500 12px "Geist Mono", monospace; color: var(--muted); }
.vo-grant-v b { display: block; font-size: 34px; font-weight: 500; letter-spacing: -.035em; line-height: 1.1; }
.vo-grant-v span { font-size: 13px; color: var(--muted); }
.vo-grant p { font-size: 13.5px; color: var(--text); }

/* quote card + grant card with the wordmark on top */
.vo-spot { display: grid; grid-template-columns: 1.5fr 1fr; gap: 8px; }
.vo-spot .vo-q { padding: 30px 30px 26px; border-radius: 18px; background: #fff; overflow: hidden; }
.vo-spot blockquote { position: relative; font-size: 18px; line-height: 1.55; letter-spacing: -.01em; color: var(--text); }

@media (max-width: 700px) {
  .vo-spot { grid-template-columns: 1fr; }
  .vo-spot blockquote { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) { #voices > * { animation: none; } }
