/*
Network posts ([iphc_network_blog] and friends), in the home page's card style.
Selectors carry extra classes to beat main.css's ".site-inner .content-sidebar-wrap" type rules.
*/

/* Centered column for full-width pages like News */
.iphc-posts-wrap { max-width: 1300px; margin: 0 auto; padding: 60px 32px; }
@media (max-width: 767px) { .iphc-posts-wrap { padding: 40px 16px; } }
.iphc-posts-wrap .iphc-posts { margin-bottom: 0; }

.iphc-posts { --iphc-posts-cols: 3; display: grid; gap: 28px; margin: 0 0 24px; }
.iphc-posts--grid { grid-template-columns: repeat(var(--iphc-posts-cols), minmax(0, 1fr)); }
@media (max-width: 1024px) { .iphc-posts--grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767px) { .iphc-posts--grid { grid-template-columns: 1fr; } }

.iphc-posts .iphc-post { display: flex; flex-direction: column; overflow: hidden; border: 1px solid #e3e6e9; border-radius: 16px; background: #fff; color: #15171a; text-decoration: none; transition: transform .2s, box-shadow .2s, border-color .2s; }
.iphc-posts .iphc-post:is(:hover, :focus-visible) { transform: translateY(-3px); border-color: transparent; box-shadow: 0 16px 40px rgba(0, 0, 0, .1); color: #15171a; }

.iphc-posts .iphc-post-media { position: relative; flex: none; aspect-ratio: 16 / 9; overflow: hidden; background: #dfe2e5; }
.iphc-posts .iphc-post .iphc-post-media .iphc-post-img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; }

.iphc-posts .iphc-post-body { display: flex; flex: 1; flex-direction: column; padding: 20px 22px 24px; }
.iphc-posts .iphc-post .iphc-post-meta { display: flex; flex-wrap: wrap; gap: 4px 12px; margin: 0 0 8px; font-size: 12px; font-weight: 700; line-height: 1.5; letter-spacing: .1em; text-transform: uppercase; }
.iphc-posts .iphc-post .iphc-post-site { color: #0a7fae; }
.iphc-posts .iphc-post .iphc-post-date { color: #6b7178; }
.iphc-posts .iphc-post .iphc-post-title { margin: 0 0 10px; color: #15171a; font-size: 19px; font-weight: 700; line-height: 1.3; }
.iphc-posts .iphc-post .iphc-post-excerpt { display: -webkit-box; margin: 0 0 16px; overflow: hidden; color: #4b5157; font-size: 15px; line-height: 1.55; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
.iphc-posts .iphc-post-more { display: inline-flex; align-items: center; gap: 6px; margin-top: auto; color: #15171a; font-size: 14px; font-weight: 700; }
.iphc-posts .iphc-post:is(:hover, :focus-visible) .iphc-post-more { color: #0a7fae; }

/* List: image beside the text, one post per row */
.iphc-posts--list { gap: 20px; }
.iphc-posts--list .iphc-post { flex-direction: row; }
.iphc-posts--list .iphc-post-media { width: min(36%, 340px); aspect-ratio: auto; min-height: 190px; }
.iphc-posts--list .iphc-post-body { justify-content: center; padding: 24px 28px; }
@media (max-width: 767px) {
	.iphc-posts--list .iphc-post { flex-direction: column; }
	.iphc-posts--list .iphc-post-media { width: 100%; aspect-ratio: 16 / 9; min-height: 0; }
	.iphc-posts--list .iphc-post-body { padding: 20px 22px 24px; }
}
