/* Shared cards across the homepage, cases, audiences, services and insights. */
:is(#quantconnect, .service-page) .content-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
:is(#quantconnect, .service-page) .content-card { display: flex; flex-direction: column; min-width: 0; max-width: none; height: auto; overflow: hidden; border: 1px solid var(--qc-border); border-radius: 5px; background: var(--qc-paper); box-shadow: none; }
:is(#quantconnect, .service-page) .content-card > img { display: block; width: 100%; height: 150px; object-fit: cover; }
:is(#quantconnect, .service-page) .content-card-body { padding: 24px; display: flex; flex-direction: column; flex: 1; align-items: start; gap: 14px; }
:is(#quantconnect, .service-page) .content-card h3 { margin: 0; font-size: 18px; line-height: 1.45; }
:is(#quantconnect, .service-page) .content-card .card-title { display: inline; color: var(--qc-navy); font: inherit; text-decoration: none; margin: 0; }
:is(#quantconnect, .service-page) .content-card .card-title:hover { text-decoration: underline; text-underline-offset: 4px; }
:is(#quantconnect, .service-page) .content-card p { margin: 0; color: var(--qc-muted); font-size: 14px; line-height: 1.65; }
:is(#quantconnect, .service-page) .content-link { margin-top: auto; padding-top: 6px; color: var(--qc-navy); font-size: 14px; font-weight: 600; text-decoration: underline; text-underline-offset: 4px; }
:is(#quantconnect, .service-page) .content-link:hover { text-decoration-thickness: 2px; }
:is(#quantconnect, .service-page) .content-card .content-tags { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; padding: 0; margin: 0; }
:is(#quantconnect, .service-page) .content-card .content-tags li { margin: 0; padding: 3px 7px; border-radius: 3px; background: var(--qc-soft); color: var(--qc-muted); font-size: 11px; line-height: 1.5; }
@media (max-width: 900px) {
    :is(#quantconnect, .service-page) .content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 650px) {
    :is(#quantconnect, .service-page) .content-grid { grid-template-columns: 1fr; }
    :is(#quantconnect, .service-page) .content-card-body { padding: 22px; }
    :is(#quantconnect, .service-page) .content-card > img { height: 160px; }
}
