/**
 * Shared typography patterns.
 *
 * @package ALW
 * @since   1.0.0
 */

.alw-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: var(--alw-font-body);
	font-size: var(--alw-font-size-eyebrow);
	font-weight: var(--alw-font-weight-eyebrow);
	line-height: 1.4;
	letter-spacing: var(--alw-letter-spacing-eyebrow);
	text-transform: uppercase;
}

.alw-eyebrow--on-dark {
	border: 1px solid var(--alw-white-30);
	border-radius: var(--alw-radius-pill);
	background-color: var(--alw-white-10);
	backdrop-filter: blur(var(--alw-blur-sm));
	-webkit-backdrop-filter: blur(var(--alw-blur-sm));
	padding: 4px 12px;
}

.alw-eyebrow__dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background-color: var(--alw-gold);
	flex-shrink: 0;
}

.alw-heading-1 {
	margin: 0;
	font-family: var(--alw-font-heading);
	font-weight: var(--alw-font-weight-heading);
	font-size: var(--alw-font-size-h1-sm);
	line-height: 1.02;
	letter-spacing: var(--alw-letter-spacing-heading);
}

@media (min-width: 640px) {
	.alw-heading-1 {
		font-size: var(--alw-font-size-h1-md);
	}
}

@media (min-width: 768px) {
	.alw-heading-1 {
		font-size: var(--alw-font-size-h1-lg);
	}
}

@media (min-width: 1024px) {
	.alw-heading-1 {
		font-size: var(--alw-font-size-h1-xl);
	}
}

.alw-lead {
	font-family: var(--alw-font-body);
	font-size: var(--alw-font-size-subtitle-sm);
	line-height: var(--alw-line-height-subtitle);
}

@media (min-width: 768px) {
	.alw-lead {
		font-size: var(--alw-font-size-subtitle);
	}
}

.alw-lead--on-dark {
	color: var(--alw-white-90);
}

.alw-label-sm {
	font-family: var(--alw-font-body);
	font-size: var(--alw-nav-font-size);
	font-weight: var(--alw-nav-font-weight);
	line-height: 16.5px;
	letter-spacing: var(--alw-nav-letter-spacing);
	text-transform: uppercase;
}

.alw-heading-2 {
	margin: 0;
	font-family: var(--alw-font-heading);
	font-weight: var(--alw-font-weight-heading);
	font-size: 30px;
	line-height: 1.15;
	letter-spacing: -0.02em;
}

@media (min-width: 768px) {
	.alw-heading-2 {
		font-size: var(--alw-font-size-h2);
		letter-spacing: -0.02em;
	}
}

.alw-heading-3 {
	margin: 0;
	font-family: var(--alw-font-heading);
	font-weight: var(--alw-font-weight-heading);
	font-size: var(--alw-font-size-h3);
	line-height: 1.55;
}

.alw-text-muted {
	color: var(--alw-muted-foreground);
}

.alw-text-sm {
	font-size: 14px;
	line-height: 1.625;
}

.alw-eyebrow-label {
	display: block;
	font-family: var(--alw-font-body);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--alw-primary);
}

.alw-heading-3-lg {
	margin: 0;
	font-family: var(--alw-font-heading);
	font-weight: var(--alw-font-weight-heading);
	font-size: 20px;
	line-height: 1.4;
}

.alw-body-relaxed {
	font-family: var(--alw-font-body);
	font-size: var(--alw-font-size-body);
	line-height: 1.625;
}
