.p-article-grid { display: grid; gap: 24px 18px; }
.p-article-card { height: 100%; overflow: hidden; background: var(--color-white); border: 1px solid var(--color-border-light); border-radius: 8px; }
.p-article-card__link { display: flex; height: 100%; flex-direction: column; color: inherit; text-decoration: none; }
.p-article-card__media { overflow: hidden; aspect-ratio: 600/315; background: var(--color-bg-blue); }
.p-article-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s; }
.p-article-card__link:hover img { transform: scale(1.02); }
.p-article-card__placeholder { display: grid; width: 100%; height: 100%; place-items: center; color: var(--color-primary); background: var(--color-bg-green); font-size: 34px; font-weight: 700; }
.p-article-card__body { display: flex; padding: 16px; flex: 1; align-items: flex-start; flex-direction: column; }
.p-article-card h3 { margin: 8px 0; font-size: 18px; line-height: 1.55; }
.p-article-card__excerpt { margin-bottom: 14px; color: var(--color-secondary); font-size: 13px; line-height: 1.75; }
.p-article-card time { margin-top: auto; color: var(--color-secondary); font-size: 12px; }
.p-featured-card { overflow: hidden; border: 1px solid var(--color-border-light); border-radius: 8px; }
.p-featured-card > a { display: block; color: inherit; text-decoration: none; }
.p-featured-card__media { overflow: hidden; aspect-ratio: 16/9; background: var(--color-bg-green); }
.p-featured-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s; }
.p-featured-card > a:hover img { transform: scale(1.015); }
.p-featured-card__body { padding: 18px; }
.p-featured-card h3 { margin: 10px 0; font-size: clamp(22px, 5.5vw, 30px); line-height: 1.5; }
.p-featured-card p { margin-bottom: 14px; color: var(--color-secondary); font-size: 14px; }
.p-featured-card time, .p-compact-card time { color: var(--color-secondary); font-size: 12px; }
.p-compact-card { padding-bottom: 16px; border-bottom: 1px solid var(--color-border-light); }
.p-compact-card > a { display: grid; grid-template-columns: 112px minmax(0,1fr); gap: 14px; color: inherit; text-decoration: none; }
.p-compact-card__media { overflow: hidden; aspect-ratio: 4/3; background: var(--color-bg-green); border-radius: 6px; }
.p-compact-card__media img { width: 100%; height: 100%; object-fit: cover; }
.p-compact-card__body > span { color: var(--color-primary); font-size: 11px; font-weight: 700; }
.p-compact-card h3 { margin: 3px 0 5px; font-size: 15px; line-height: 1.55; }
@media (min-width: 768px) { .p-article-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .p-article-grid { grid-template-columns: repeat(3, 1fr); } }

