body {
	font-family: var(--font-body);
	font-size: 16px;
	line-height: 1.65;
	font-weight: 400;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--font-heading);
	font-weight: 800;
	line-height: 1.15;
	letter-spacing: -0.015em;
	margin: 0 0 0.6em;
	color: var(--color-charcoal);
}

h1 { font-size: clamp(2.2rem, 1.7rem + 2.2vw, 3.4rem); }
h2 { font-size: clamp(1.7rem, 1.45rem + 1.1vw, 2.4rem); }
h3 { font-size: 1.25rem; letter-spacing: -0.01em; }
h4 { font-size: 1.05rem; letter-spacing: -0.005em; }

p {
	margin: 0 0 1em;
	color: var(--color-text);
}

.page-title {
	margin-top: 0.5rem;
}

.section-heading {
	margin-bottom: 2.5rem;
	text-align: center;
}

.section-heading--split {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	text-align: left;
	gap: 1.5rem;
	flex-wrap: wrap;
}

.section-heading__eyebrow {
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-size: 0.8rem;
	font-weight: 700;
	color: var(--color-orange);
	margin-bottom: 0.5rem;
}

.link-arrow {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-weight: 600;
	color: var(--color-charcoal);
	border-bottom: 2px solid transparent;
	transition: border-color var(--transition-fast), color var(--transition-fast);
}

.link-arrow:hover {
	color: var(--color-orange);
	border-color: var(--color-orange);
}
