.aef-related-posts { margin-top: 1.5rem; }
.aef-related-posts .wp-block-post-template { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem 1rem; margin: 0; padding: 0; list-style: none; }
.aef-related-posts .wp-block-post-featured-image { margin: 0 0 .75rem; border-radius: 26px; overflow: hidden; aspect-ratio: 7 / 4; box-sizing: border-box; }
.aef-related-posts .wp-block-post-featured-image a { display: block; width: 100%; height: 100%; }
.aef-related-posts .wp-block-post-featured-image img { display: block; width: 100%; height: 100%; aspect-ratio: 7 / 4; object-fit: cover; }
.aef-related-posts .aef-related-image--placeholder { background: #f0f0f0; border: 1px solid #ddd; }
.aef-related-posts .aef-related-image--placeholder a { display: flex; align-items: center; justify-content: center; }
.aef-related-posts .aef-related-image--placeholder img { width: 65%; height: auto; aspect-ratio: auto; object-fit: contain; filter: grayscale(1); opacity: .55; }
.aef-related-posts .wp-block-post-title { margin: 0 0 1rem; padding-inline: 1rem; font-family: var(--wp--preset--font-family--minion-pro); font-size: 1.25rem; font-weight: 400; line-height: 1.25; }
.aef-related-posts .wp-block-post-title a { color: var(--wp--preset--color--charcoal); text-decoration: none; }
.aef-related-posts .wp-block-post-title a:hover { color: var(--wp--preset--color--custom-azure-blue, #007ec5); text-decoration: underline; }
.aef-post-navigation { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 1rem; }
.aef-post-navigation .post-navigation-link-previous { grid-column: 1; justify-self: start; }
.aef-post-navigation .post-navigation-link-next { grid-column: 2; justify-self: end; }
.aef-post-navigation .wp-block-post-navigation-link { font-size: 1rem; white-space: nowrap; }
@media (max-width: 640px) { .aef-related-posts .wp-block-post-template { grid-template-columns: 1fr; } }

.aef-post-image--placeholder { background: #f0f0f0; border: 1px solid #ddd; overflow: hidden; box-sizing: border-box; }
.aef-post-image--placeholder .aef-post-image-placeholder-content { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }
.aef-post-image--placeholder img { display: block; width: 65%; height: auto; max-height: 75%; object-fit: contain; filter: grayscale(1); opacity: .55; }
