/* Row: paragraph left, + icon top-right. */
.content-hover-paragraph {
	display: block;
	margin: 0;
}

.content-hover-paragraph__row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

.content-hover-paragraph__body {
	flex: 1 1 auto;
	min-width: 0;
	touch-action: manipulation;
}

.content-hover-paragraph .content-show,
.content-hover-paragraph .content-hide {
	margin: 0;
}

.content-hover-paragraph .content-show > :first-child {
	margin-top: 0;
}

.content-hover-paragraph .content-show > :last-child {
	margin-bottom: 0;
}

.content-show {
	cursor: default;
}

/* Inline continuation: one continuous paragraph when open. */
.content-hover-paragraph--inline-hide.is-open .content-show,
.content-hover-paragraph--inline-hide.is-open .content-hide {
	display: inline;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

.content-hover-paragraph--inline-hide.is-open .content-show > p,
.content-hover-paragraph--inline-hide.is-open .content-hide > p,
.content-hover-paragraph--inline-hide.is-open .content-show > span,
.content-hover-paragraph--inline-hide.is-open .content-hide > span {
	display: inline;
	margin: 0;
	padding: 0;
}

.content-hover-paragraph--inline-hide.is-open .content-show > p:not(:last-child)::after,
.content-hover-paragraph--inline-hide.is-open .content-hide > p:not(:last-child)::after {
	content: ' ';
}

.content-hover-paragraph--inline-hide.is-open .content-hide > p:first-child::before {
	content: ' ';
}

.content-hover-icon {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: flex-start;
	justify-content: center;
	min-width: 1.25rem;
	user-select: none;
	cursor: default;
}

.content-hover-icon::before {
	content: '+';
}

.content-hover-paragraph.is-open .content-hover-icon::before {
	content: '−';
}

@media (max-width: 767px) {
	.content-hover-paragraph:not(.content-hover-paragraph--editor) .content-show,
	.content-hover-paragraph:not(.content-hover-paragraph--editor) .content-hover-icon {
		cursor: pointer;
		touch-action: manipulation;
		-webkit-tap-highlight-color: transparent;
	}

	.content-hover-paragraph:not(.content-hover-paragraph--editor) .content-hover-icon {
		min-width: 2.75rem;
		min-height: 2.75rem;
	}

	.content-hover-paragraph.is-open:not(.content-hover-paragraph--editor) .content-hide {
		cursor: pointer;
		touch-action: manipulation;
		-webkit-tap-highlight-color: transparent;
	}
}

/* Hidden segment: collapsed until hover / tap. */
.content-hover-paragraph:not(.content-hover-paragraph--editor):not(.is-open) .content-hide {
	display: none;
}

.content-hover-paragraph--block-hide:not(.content-hover-paragraph--editor).is-open .content-hide {
	display: block;
}

.content-hover-paragraph--inline-hide:not(.content-hover-paragraph--editor).is-open .content-hide {
	display: inline;
}

/* Block HTML in hidden content (lists, paragraphs, etc.). */
.content-hover-paragraph--block-hide.is-open .content-hide p {
	margin: 0 0 0.75em;
}

.content-hover-paragraph--block-hide.is-open .content-hide p:last-child {
	margin-bottom: 0;
}

.content-hover-paragraph--block-hide.is-open .content-hide ul,
.content-hover-paragraph--block-hide.is-open .content-hide ol {
	display: block;
	margin: 0.85em 0 0;
	padding-left: 1.15em;
}

.content-hover-paragraph--block-hide.is-open .content-hide li {
	display: list-item;
	margin: 0 0 0.65em;
}

.content-hover-paragraph--block-hide.is-open .content-hide li:last-child {
	margin-bottom: 0;
}

/* Elementor editor: always show full copy for editing. */
.content-hover-paragraph--editor .content-hide {
	display: block;
}

.content-hover-paragraph--editor .content-hide::before {
	content: ' [hidden: ';
	color: #8f6d4f;
	font-size: 0.85em;
	font-style: italic;
}

.content-hover-paragraph--editor .content-hide::after {
	content: '] ';
	color: #8f6d4f;
	font-size: 0.85em;
	font-style: italic;
}
