/**
 * Shared WordPress rich-text presentation for product and news detail content.
 */
.mutuo-rich-text {
	color: var(--color-copy);
	font-size: clamp(18px, 1.1vw, 20px);
	line-height: 1.72;
}

.mutuo-rich-text > :first-child { margin-top: 0; }
.mutuo-rich-text > :last-child { margin-bottom: 0; }
.mutuo-rich-text > * + * { margin-top: 18px; }
.mutuo-rich-text::after { display: table; clear: both; content: ""; }

.mutuo-rich-text :is(h1, h2, h3, h4, h5, h6) {
	margin: 1.8em 0 .65em;
	color: var(--color-brand-navy);
}

.mutuo-rich-text h1 {
	font-size: var(--type-page-title-size);
	font-weight: var(--type-page-title-weight);
	letter-spacing: var(--type-page-title-tracking);
	line-height: var(--type-page-title-line-height);
}

.mutuo-rich-text h2 {
	font-size: var(--type-rich-text-h2-size);
	font-weight: var(--type-rich-text-h2-weight);
	letter-spacing: var(--type-rich-text-h2-tracking);
	line-height: var(--type-rich-text-h2-line-height);
}

.mutuo-rich-text h3 {
	font-size: var(--type-rich-text-h3-size);
	font-weight: var(--type-rich-text-h3-weight);
	letter-spacing: var(--type-rich-text-h3-tracking);
	line-height: var(--type-rich-text-h3-line-height);
}

.mutuo-rich-text h4 {
	font-size: var(--type-rich-text-h4-size);
	font-weight: var(--type-module-title-weight);
	letter-spacing: var(--type-module-title-tracking);
	line-height: var(--type-module-title-line-height);
}

.mutuo-rich-text h5 {
	font-size: var(--type-body-size);
	font-weight: var(--type-module-title-weight);
	line-height: var(--type-body-line-height);
}

.mutuo-rich-text h6 {
	font-size: var(--type-label-size);
	font-weight: var(--type-label-weight);
	letter-spacing: var(--type-label-tracking);
	line-height: var(--type-label-line-height);
	text-transform: uppercase;
}

.mutuo-rich-text :is(ul, ol) { padding-left: 1.35em; margin-bottom: 0; }
.mutuo-rich-text li + li { margin-top: 8px; }

.mutuo-rich-text a {
	color: var(--color-brand-blue);
	font-weight: 750;
	text-decoration-line: underline;
	text-decoration-thickness: 2px;
	text-decoration-color: var(--color-brand-orange);
	text-underline-offset: .22em;
	transition: color .2s ease, text-decoration-color .2s ease;
}

.mutuo-rich-text a:hover { color: var(--color-brand-navy); text-decoration-color: var(--color-brand-orange); }
.mutuo-rich-text a:focus-visible { outline: 2px solid var(--color-brand-orange); outline-offset: 3px; }

.mutuo-rich-text blockquote {
	margin: 28px 0;
	padding: 4px 0 4px 20px;
	color: var(--color-ink);
	border-left: 3px solid var(--color-brand-blue);
	font-size: var(--type-lead-size);
	line-height: var(--type-lead-line-height);
}

.mutuo-rich-text img { max-width: 100%; height: auto; }
.mutuo-rich-text > :is(figure, .wp-block-image) { max-width: 100%; margin: 28px 0; }
.mutuo-rich-text :is(figure, .wp-block-image) > img { display: block; max-width: 100%; height: auto; }
.mutuo-rich-text > p:has(> img.alignnone:only-child),
.mutuo-rich-text > p:has(> a:only-child > img.alignnone:only-child) { text-align: center; }
.mutuo-rich-text figcaption { margin-top: 8px; color: var(--color-copy); font-size: var(--type-label-size); line-height: var(--type-label-line-height); text-align: center; }

.mutuo-rich-text .has-text-align-left { text-align: left; }
.mutuo-rich-text .has-text-align-center { text-align: center; }
.mutuo-rich-text .has-text-align-right { text-align: right; }
.mutuo-rich-text .has-text-align-justify { text-align: justify; }
.mutuo-rich-text :is(figure, .wp-block-image).aligncenter { margin-right: auto; margin-left: auto; }
.mutuo-rich-text img.aligncenter { display: block; margin-right: auto; margin-left: auto; }
.mutuo-rich-text :is(figure, .wp-block-image).alignleft,
.mutuo-rich-text img.alignleft { float: left; margin: 4px 26px 18px 0; }
.mutuo-rich-text :is(figure, .wp-block-image).alignright,
.mutuo-rich-text img.alignright { float: right; margin: 4px 0 18px 26px; }
.mutuo-rich-text :is(.alignwide, .alignfull) { width: 100%; max-width: 100%; }

.mutuo-rich-text .wp-block-table { overflow-x: auto; }
.mutuo-rich-text table { width: 100%; margin: 28px 0; border: 1px solid var(--color-line); border-collapse: collapse; table-layout: fixed; }
.mutuo-rich-text :is(th, td) { padding: 18px 22px; text-align: center; vertical-align: middle; border-right: 1px solid var(--color-line); border-bottom: 1px solid var(--color-line); }
.mutuo-rich-text :is(th, tr:first-child td) { color: #fff; background: var(--color-brand-navy); border-bottom: 0; font-size: 14px; font-weight: 800; }
.mutuo-rich-text td:last-child { border-right: 0; }
.mutuo-rich-text td { color: var(--color-ink); font-size: 14px; font-weight: 500; line-height: 1.5; }
.mutuo-rich-text tr:not(:first-child) td:first-child { width: 22%; color: var(--color-brand-navy); background: #f5f8fb; font-weight: 750; }
.mutuo-rich-text tr:last-child td { border-bottom: 0; }

@media (max-width: 700px) {
	.mutuo-rich-text :is(figure, .wp-block-image, img).alignleft,
	.mutuo-rich-text :is(figure, .wp-block-image, img).alignright { float: none; margin: 24px auto; }
	.mutuo-rich-text :is(th, td) { padding: 13px 14px; }
}
