/* ==========================================================================
   Типографика контента из базы (страницы, записи, тексты изделий).
   Текст выводится 1 в 1 — тема только оформляет теги.
   ========================================================================== */

.oa-section--content {
	gap: 0;
}

.oa-content {
	max-width: 880px;
	font-size: 16px;
	line-height: 1.7;
	color: var(--oa-text);
	overflow-wrap: break-word;
}

.oa-content > * {
	margin-top: 0;
	margin-bottom: 0;
}

.oa-content > * + * {
	margin-top: 16px;
}

.oa-content h2,
.oa-content h3,
.oa-content h4 {
	color: var(--oa-ink);
	font-family: var(--oa-font-head);
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: -0.01em;
	text-wrap: balance;
}

.oa-content h2 {
	margin-top: 32px;
	font-size: 22px;
}

.oa-content h3 {
	margin-top: 28px;
	font-size: 18px;
}

.oa-content h4 {
	margin-top: 24px;
	font-size: 16px;
}

.oa-content > :first-child {
	margin-top: 0;
}

/* Абзацы: отступ задаёт правило «> * + *» выше */
.oa-content p + p {
	margin-top: 12px;
}

.oa-content strong,
.oa-content b {
	color: var(--oa-ink);
	font-weight: 700;
}

.oa-content a {
	color: var(--oa-accent-ink);
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.oa-content a:hover {
	color: var(--oa-ink);
}

.oa-content ul,
.oa-content ol {
	margin: 0;
	padding-left: 22px;
}

.oa-content li + li {
	margin-top: 6px;
}

.oa-content li::marker {
	color: var(--oa-accent-ink);
}

.oa-content img {
	border-radius: 18px;
	height: auto;
}

.oa-content figure {
	margin: 0;
}

.oa-content figcaption {
	margin-top: 8px;
	font-size: 13px;
	color: var(--oa-muted);
}

.oa-content blockquote {
	margin: 0;
	padding: 16px 20px;
	border-radius: 18px;
	background: var(--oa-card-2);
	color: var(--oa-ink);
}

/* Таблицы в стиле макета: белая подложка, тёмная шапка, скруглённая рамка */
.oa-content .oa-table-wrap,
.oa-table-wrap {
	overflow-x: auto;
	border-radius: 18px;
	border: 1px solid var(--oa-line);
	background: #FFFFFF;
}

.oa-content table {
	width: 100%;
	border-collapse: collapse;
	font-size: 15px;
	line-height: 1.5;
	background: #FFFFFF;
}

.oa-content th,
.oa-content td {
	padding: 12px 16px;
	text-align: left;
	vertical-align: top;
	border-bottom: 1px solid var(--oa-line);
}

.oa-content thead th,
.oa-content thead td {
	background: var(--oa-ink);
	color: #FFFFFF;
	font-weight: 700;
	border-bottom: 0;
}

.oa-content tr:last-child td {
	border-bottom: 0;
}

.oa-content tbody tr:nth-child(even) td {
	background: #FBFAF7;
}

.oa-content td:first-child {
	color: var(--oa-ink);
	font-weight: 600;
}

.oa-content video,
.oa-content iframe {
	max-width: 100%;
	border-radius: 18px;
}

@media (min-width: 1024px) {
	.oa-content h2 {
		font-size: 26px;
	}

	.oa-content h3 {
		font-size: 20px;
	}
}
