.zr_title {
	--zrs-highlight-start: currentColor;
	--zrs-highlight-end: currentColor;
	--zrs-highlight-angle: 90deg;
	max-width: 100%;
}

.zr_title_row {
	width: 100%;
	max-width: 100%;
}

.zr_title_subtitle_row {
	margin-bottom: 10px;
}

.zr_title_title_row {
	margin-bottom: 0;
}

.zr_title_description_row {
	margin-top: var(--zr-title-description-top-gap, 10px);
	margin-bottom: 0;
}

.zr_title > .zr_title_description_row:first-child,
.zr_title > .zr_title_subtitle_row + .zr_title_description_row {
	margin-top: 0;
}

.zr_title_title,
.zr_title_description {
	display: inline-block;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	vertical-align: top;
	text-align: inherit;
}

.zr_title_title {
	margin: 0;
	padding: 0;
}


.zr_title_description p {
	margin-top: 0;
	margin-bottom: 1em;
}

.zr_title_description p:last-child {
	margin-bottom: 0;
}

.zr_title_subtitle {
	--zrs-media-before: inline-flex;
	--zrs-media-after: none;
	display: inline-flex;
	width: fit-content;
	max-width: 100%;
	align-items: center;
	gap: 8px;
	vertical-align: top;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

.zr_title_subtitle_media {
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	line-height: 1;
}

.zr_title_subtitle_media_before {
	display: var(--zrs-media-before);
}

.zr_title_subtitle_media_after {
	display: var(--zrs-media-after);
}

.zr_title_subtitle_text {
	min-width: 0;
}

.zr_title_subtitle_media_icon i,
.zr_title_subtitle_media_icon svg {
	display: block;
	width: 1em;
	height: 1em;
	line-height: 1;
}

.zr_title_subtitle_media_icon svg {
	fill: currentColor;
}

.zr_title_subtitle_media_image {
	max-width: 100%;
}

.zr_title_subtitle_media_divider {
	align-self: stretch;
	line-height: 0;
}

.zr_title_subtitle_divider {
	display: block;
	width: 40px;
	border-top: 1px solid currentColor;
}

.zr_title_subtitle_image {
	display: block;
	width: 100%;
	height: auto;
}

.zr_title_highlight_gradient .zr_title_title span {
	display: inline;
	background-image: linear-gradient(
		var(--zrs-highlight-angle),
		var(--zrs-highlight-start),
		var(--zrs-highlight-end)
	);
	background-clip: text;
	-webkit-background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}


.zr_title { position: relative; }
.zr_title_button_row { margin-top: 0; text-align: inherit; }
.zr_title > .zr_title_button_row:not(:first-child) { margin-top: var(--zr-title-button-flow-gap, var(--zr-title-button-top-gap, 10px)); }
.zr_title > .zr_title_subtitle_row + .zr_title_button_row { margin-top: 0; }
.zr_title_button { vertical-align: middle; cursor: pointer; }
