.np-content-card { max-width: 850px; margin: auto; border: 1px solid var(--np-border, #e5e2eb); border-radius: 22px; background: var(--np-background, #fff); padding: 42px; box-shadow: 0 14px 34px #2e275112; color: var(--np-text, var(--muted)); line-height: 1.65; }
.np-content-card::after { content: ''; display: block; clear: both; }
.np-content-card > :first-child { margin-top: 0; }
.np-content-card > :last-child { margin-bottom: 0; }
.np-content-card :where(h1, h2, h3, h4, h5, h6) { color: var(--np-heading, var(--ink)); font-weight: 700; line-height: 1.25; margin-block: 1.2em .65em; }
.np-content-card h2 { font-size: 27px; margin-top: 0; }
.np-content-card h3 { font-size: 23px; }
.np-content-card h4 { font-size: 20px; }
.np-content-card :where(h5, h6) { font-size: 18px; }
.np-content-card p { margin-block: 1em; }
.np-content-card :where(ul, ol) { padding-inline-start: 22px; margin-block: 1em; }
.np-content-card a { color: var(--np-accent, var(--purple)); text-underline-offset: 3px; }
.np-content-card :where(img, video) { max-width: 100%; height: auto; border-radius: 12px; }
.np-content-card figure { max-width: 100%; margin-inline: 0; }
.np-content-card :where(figcaption, .wp-caption-text) { font-size: 13px; text-align: center; }
.np-content-card .aligncenter { display: block; margin-inline: auto; }
.np-content-card .alignleft { float: left; max-width: 48%; margin: 0 22px 18px 0; }
.np-content-card .alignright { float: right; max-width: 48%; margin: 0 0 18px 22px; }
.np-content-card blockquote { margin-inline: 0; padding: 12px 22px; border-inline-start: 3px solid var(--np-accent, var(--purple)); background: #f8f7fb; }
.np-content-card table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
.np-content-card :where(th, td) { padding: 10px 14px; border: 1px solid var(--np-border, #e5e2eb); text-align: start; }
.np-content-card pre { max-width: 100%; overflow-x: auto; padding: 16px; background: #f8f7fb; }
.np-content-card hr { border: 0; border-top: 1px solid var(--np-border, #e5e2eb); margin-block: 24px; }
@media (max-width: 760px) {
	.np-content-card { padding: 27px 22px; }
	.np-content-card :where(.alignleft, .alignright) { float: none; max-width: 100%; margin-inline: 0; }
}
