:where(.rx-top-project-card) { position: relative; isolation: isolate; display: flex; flex: 1; flex-direction: column; min-width: 0; min-height: 17.5rem; aspect-ratio: 454 / 280; padding: 1.5rem; border-radius: .375rem; }
:where(.rx-top-project-card:not(.has-background)) { background: var(--wp--preset--color--fog, #d9d9d9); }
:where(.rx-top-project-card:not(.has-text-color)) { color: var(--wp--preset--color--ink, #111); }
/* Image optimization may wrap the image in <picture>. The image is still a
 * background layer, never a flex item contributing its intrinsic height. */
.rx-top-project-card > picture { border-radius: inherit; }
.rx-top-project-card .rx-top-project-card__image,
.rx-top-project-card > .rx-top-project-card__overlay { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border-radius: inherit; z-index: -1; pointer-events: none; }
.rx-top-project-card > .rx-top-project-card__overlay { z-index: 0; }
.rx-top-project-card__content { position: relative; z-index: 1; display: flex; flex: 1 0 auto; flex-direction: column; justify-content: space-between; gap: 2rem; }
@media (max-width: 48rem) { .rx-top-project-card { aspect-ratio: auto; flex: 1 1 auto; } }
/* Query column count/gap remain Gutenberg settings. Stretch only these cards;
 * auto rows grow for long titles and enlarged text without clipping content. */
.wp-block-post-template:has(> li > .rx-top-project-card) { grid-auto-rows: 1fr; align-items: stretch; }
.wp-block-post-template > li:has(> .rx-top-project-card) { display: flex; min-width: 0; }
:where(.rx-top-project-card__content > *) { margin-block: 0; }
:where(.rx-top-project-card__content > .rx-meta-field) { line-height: 1; }
.rx-top-project-card__content > .rx-meta-field > strong { font: inherit; }
.rx-top-project-card__content > .wp-block-post-title { border-block-start: 1px solid currentColor; padding-block-start: .65rem; }
.rx-top-project-card .wp-block-post-title a { color: inherit; text-decoration: none; display: flex; justify-content: space-between; gap: 1rem; align-items: center; min-height: 2.75rem; }
:where(.rx-top-project-card .wp-block-post-title a)::after { content: '→'; }
@media (prefers-reduced-motion: no-preference) { .rx-top-project-card .wp-block-post-title a:hover::after { transform: translateX(.15rem); } }
