/* Restores typography for CMS policy HTML — global.css zeros margins on semantic tags */

.policy-rich-text :where(article, section, aside, nav, main, footer, header) {
	display: block;
}

.policy-rich-text :where(article, section, aside, nav, main, footer) {
	margin-bottom: var(--spacing-m);
}

.policy-rich-text :where(article, section, aside, nav, main, footer):last-child {
	margin-bottom: 0;
}

.policy-rich-text header {
	margin-bottom: var(--spacing-m);
}

.policy-rich-text footer {
	margin-top: var(--spacing-m);
}

.policy-rich-text figure {
	display: block;
	margin: 0 0 var(--spacing-m) 0;
	max-width: 100%;
}

.policy-rich-text figcaption {
	display: block;
	margin-top: var(--spacing-xs);
	font-size: var(--font-size-xs);
	color: var(--text-regular-secondary);
	line-height: var(--line-height-body);
}

.policy-rich-text time {
	display: inline;
	font-size: var(--font-size-xs);
	color: var(--text-regular-secondary);
	font-weight: 500;
}

.policy-rich-text :where(h1, h2, h3, h4, h5, h6) {
	font-weight: 700;
	color: var(--text-regular-default);
	line-height: var(--line-height-normal);
}

.policy-rich-text h1 {
	font-size: var(--font-size-2xl);
	margin: 0 0 var(--spacing-m) 0;
}

.policy-rich-text h2 {
	font-size: var(--font-size-xl);
	margin: var(--spacing-lg) 0 var(--spacing-s) 0;
}

.policy-rich-text h3 {
	font-size: var(--font-size-lg);
	margin: var(--spacing-m) 0 var(--spacing-xs) 0;
}

.policy-rich-text h4 {
	font-size: var(--font-size-md);
	margin: var(--spacing-m) 0 var(--spacing-xs) 0;
}

.policy-rich-text h5 {
	font-size: var(--font-size-body);
	margin: var(--spacing-s) 0 var(--spacing-xxs-2) 0;
}

.policy-rich-text h6 {
	font-size: var(--font-size-xs);
	margin: var(--spacing-s) 0 var(--spacing-xxs-2) 0;
	text-transform: none;
	letter-spacing: normal;
}

.policy-rich-text :where(h1, h2, h3, h4, h5, h6):first-child {
	margin-top: 0;
}

.policy-rich-text dl {
	margin: 0 0 var(--spacing-m) 0;
}

.policy-rich-text dt {
	font-weight: 600;
	margin: var(--spacing-s) 0 var(--spacing-xxs-2) 0;
	color: var(--text-regular-default);
}

.policy-rich-text dt:first-child {
	margin-top: 0;
}

.policy-rich-text dd {
	margin: 0 0 var(--spacing-xs) var(--spacing-m);
	padding: 0;
}

.policy-rich-text dd:last-child {
	margin-bottom: 0;
}

.policy-rich-text p {
	margin: 0 0 var(--spacing-m) 0;
}

.policy-rich-text p:last-child {
	margin-bottom: 0;
}

.policy-rich-text strong {
	font-weight: 600;
}

.policy-rich-text :where(ul, ol) {
	margin: 0 0 var(--spacing-s) 0;
	padding-left: var(--spacing-xl);
}

.policy-rich-text ul {
	list-style-type: disc;
}

.policy-rich-text ol {
	list-style-type: decimal;
}

.policy-rich-text li {
	margin-bottom: var(--spacing-xxs-1);
}

.policy-rich-text li:last-child {
	margin-bottom: 0;
}

.policy-rich-text nav ul,
.policy-rich-text nav ol {
	margin: var(--spacing-xs) 0;
	padding-left: var(--spacing-m);
}

.policy-rich-text a {
	color: var(--primary-color);
	text-decoration: underline;
	cursor: pointer;
}
