/* Project archive only. Share card rows so varying titles and facts keep one baseline. */
body .ian-article-directory .ip-collection-grid:has(> .ip-card .ip-card-scope){--ian-project-row-gap:38px}
/* Readable fallback for browsers without CSS Subgrid. */
body .ian-article-directory .ip-collection-grid .ip-card-scope{min-height:112px}
@supports(grid-template-rows:subgrid){
 body .ian-article-directory .ip-collection-grid:has(> .ip-card .ip-card-scope){row-gap:0}
 body .ian-article-directory .ip-collection-grid:has(> .ip-card .ip-card-scope)>.ip-card,
 body .ian-article-directory .ip-collection-grid:has(> .ip-card .ip-card-scope)>.ip-card>.ip-card-link{display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:0;height:auto;min-width:0}
 body .ian-article-directory .ip-collection-grid:has(> .ip-card .ip-card-scope)>.ip-card>.ip-card-link{width:100%;align-self:stretch}
 body .ian-article-directory .ip-collection-grid:has(> .ip-card .ip-card-scope) .ip-card h3{min-height:0;align-self:start}
 body .ian-article-directory .ip-collection-grid:has(> .ip-card .ip-card-scope) .ip-card-scope{margin:0;min-height:0;align-self:start;padding-bottom:var(--ian-project-row-gap)}
}
@media(max-width:767px){body .ian-article-directory .ip-collection-grid:has(> .ip-card .ip-card-scope){--ian-project-row-gap:34px}}
