/* Single post — imagem destacada + corpo + sidebar (recentes). */
.raz-post-feat {
	width: 100%; height: 220px;     /* mobile */
	background-size: cover; background-position: center;
}
.raz-post-body { background: #fff; color: var(--raz-ink); }
.raz-post-body__grid { display: grid; grid-template-columns: 1fr; gap: 48px; padding-block: 56px; }

/* sidebar */
.raz-post-aside__title {
	display: block; font-family: var(--raz-font-display); font-weight: 500;
	font-size: 20px; color: var(--raz-ink); margin: 0 0 18px;
}
.raz-post-aside__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 18px; }
.raz-post-mini { display: grid; grid-template-columns: 84px 1fr; gap: 14px; align-items: center; text-decoration: none; color: var(--raz-ink); }
.raz-post-mini__img { display: block; width: 84px; height: 64px; border-radius: 6px; background-size: cover; background-position: center; filter: grayscale(1); }
.raz-post-mini__date { display: block; font-family: var(--raz-font); font-size: 11px; color: var(--raz-muted, #6E7A84); margin-bottom: 4px; }
.raz-post-mini__t { display: block; font-family: var(--raz-font); font-size: 14px; line-height: 1.4; color: var(--raz-ink); }
.raz-post-mini:hover .raz-post-mini__t { color: var(--raz-accent); }

/* artigo */
.raz-post-article { font-family: var(--raz-font); font-size: 17px; line-height: 1.8; color: #2a2f31; max-width: 760px; }
.raz-post-article > * { margin: 0 0 1.2em; }
.raz-post-article h2 { font-family: var(--raz-font-display); font-weight: 600; font-size: 30px; line-height: 1.2; color: var(--raz-ink); margin-top: 1.6em; }
.raz-post-article h3 { font-family: var(--raz-font-display); font-weight: 600; font-size: 23px; line-height: 1.25; color: var(--raz-ink); margin-top: 1.4em; }
.raz-post-article a { color: var(--raz-accent); text-decoration: underline; }
.raz-post-article ul, .raz-post-article ol { padding-left: 1.3em; }
.raz-post-article li { margin-bottom: 0.5em; }
.raz-post-article img { max-width: 100%; height: auto; border-radius: 8px; }
.raz-post-article blockquote { border-left: 3px solid var(--raz-accent); padding-left: 20px; color: #555; font-style: italic; }
.raz-post-back { display: inline-block; margin-top: 24px; color: var(--raz-accent); text-decoration: none; font-family: var(--raz-font); }
.raz-post-back:hover { text-decoration: underline; }

@media (min-width: 740px) { .raz-post-feat { height: 328px; } }
@media (min-width: 980px) {
	.raz-post-body__grid { grid-template-columns: 300px 1fr; gap: 56px; padding-block: 70px; }
	.raz-post-aside { position: sticky; top: 110px; align-self: start; }
}
