/* Performa Heading */
.pf-heading { margin-bottom: 1.5em; }
.pf-heading--center { text-align: center; }
.pf-heading--right { text-align: right; }
.pf-heading__title {
	max-width: var(--pf-hd-max, none);
	margin-bottom: 0;
	color: var(--pf-hd-color, var(--pf-heading));
}
.pf-heading--center .pf-heading__title, .pf-heading--center .pf-heading__sub { margin-inline: auto; }
.pf-heading--right .pf-heading__title, .pf-heading--right .pf-heading__sub { margin-left: auto; }
.pf-heading--custom-size .pf-heading__title { font-size: var(--pf-hd-size); line-height: 1.05; }
.pf-heading--gradient .pf-heading__title { background: var(--pf-gradient); -webkit-background-clip: text; background-clip: text; color: transparent; }
.pf-heading__sub {
	max-width: var(--pf-hd-max, 640px);
	margin: 1.1em 0 0;
	color: var(--pf-muted);
	font-size: 1.125em;
}

/* Highlights */
.pf-hl { color: var(--pf-hl-color, var(--pf-accent)); }
.pf-heading--hl-gradient .pf-hl {
	background: var(--pf-gradient);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}
.pf-heading--hl-outline .pf-hl {
	color: transparent;
	-webkit-text-stroke: max(1px, .025em) var(--pf-hl-color, var(--pf-accent));
}
.pf-heading--hl-serif .pf-hl {
	font-family: "Instrument Serif", "Playfair Display", Georgia, serif;
	font-style: italic;
	font-weight: 400;
	letter-spacing: -.01em;
}
.pf-heading--hl-marker .pf-hl,
.pf-heading--hl-underline .pf-hl {
	color: inherit;
	background-repeat: no-repeat;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	transition: background-size 1s var(--pf-ease) .35s;
}
.pf-heading--hl-marker .pf-hl {
	background-image: linear-gradient(color-mix(in srgb, var(--pf-hl-color, var(--pf-accent)) 35%, transparent), color-mix(in srgb, var(--pf-hl-color, var(--pf-accent)) 35%, transparent));
	background-position: 0 88%;
	background-size: 100% .38em;
	padding-inline: .06em;
}
.pf-heading--hl-underline .pf-hl {
	background-image: linear-gradient(var(--pf-hl-color, var(--pf-accent)), var(--pf-hl-color, var(--pf-accent)));
	background-position: 0 96%;
	background-size: 100% max(3px, .07em);
}
/* Draw-in when the motion engine reveals the title. */
.pf-motion .pf-heading--hl-marker [data-pf-anim]:not(.pf-in) .pf-hl,
.pf-motion .pf-heading--hl-underline [data-pf-anim]:not(.pf-in) .pf-hl { background-size: 0% .38em; }
.pf-motion .pf-heading--hl-underline [data-pf-anim]:not(.pf-in) .pf-hl { background-size: 0% max(3px, .07em); }

/* SplitText masks keep descenders visible. */
.pf-heading__title [class*="-mask"] { padding-bottom: .08em; margin-bottom: -.08em; }
