/**
 * Secondary typography foundation.
 *
 * Resources, News, Products, Manufacturing, About, and Contact consume these
 * shared roles. Other approved secondary families remain dormant until their
 * later phases.
 */

.xinan-secondary-type-scope {
	--secondary-heading-family: Georgia, "Times New Roman", serif;
	--secondary-body-family: Arial, Helvetica, system-ui, sans-serif;
	--secondary-page-h1: 2rem;
	--secondary-page-h2: 1.75rem;
	--secondary-page-h3: 1.25rem;
	--secondary-article-title: 1.75rem;
	--secondary-feature-title: 1.25rem;
	--secondary-large-feature-title: 1.375rem;
	--secondary-card-title: 1.25rem;
	--secondary-prose-h2: 1.5rem;
	--secondary-body: 1rem;
	--secondary-lead: 1rem;
	--secondary-prose: 1rem;
	--secondary-label: 0.875rem;
	--secondary-meta: 0.875rem;
	--secondary-page-h1-line-height: 1.06;
	--secondary-page-h2-line-height: 1.12;
	--secondary-page-h3-line-height: 1.25;
	--secondary-article-title-line-height: 1.12;
	--secondary-feature-title-line-height: 1.15;
	--secondary-card-title-line-height: 1.3;
	--secondary-prose-h2-line-height: 1.2;
	--secondary-body-line-height: 1.65;
	--secondary-lead-line-height: 1.6;
	--secondary-prose-line-height: 1.7;
	--secondary-label-line-height: 1.4;
	--secondary-meta-line-height: 1.5;
	--secondary-page-h1-letter-spacing: -0.03em;
	--secondary-page-h2-letter-spacing: -0.02em;
	--secondary-feature-title-letter-spacing: -0.015em;
	--secondary-card-title-letter-spacing: -0.01em;
}

@media (min-width: 480px) {
	.xinan-secondary-type-scope {
		--secondary-page-h1: 2.125rem;
		--secondary-page-h2: 1.875rem;
		--secondary-article-title: 1.875rem;
		--secondary-feature-title: 1.375rem;
		--secondary-large-feature-title: 1.5rem;
		--secondary-prose-h2: 1.625rem;
		--secondary-lead: 1rem;
		--secondary-prose: 1rem;
	}
}

@media (min-width: 768px) {
	.xinan-secondary-type-scope {
		--secondary-page-h1: 2.625rem;
		--secondary-page-h2: 2.125rem;
		--secondary-article-title: 2.125rem;
		--secondary-feature-title: 1.5rem;
		--secondary-large-feature-title: 1.625rem;
		--secondary-prose-h2: 1.75rem;
		--secondary-lead: 1.0625rem;
		--secondary-prose: 1.0625rem;
	}
}

@media (min-width: 1200px) {
	.xinan-secondary-type-scope {
		--secondary-page-h1: 3.25rem;
		--secondary-page-h2: 2.5rem;
		--secondary-article-title: 2.5rem;
		--secondary-feature-title: 1.5rem;
		--secondary-large-feature-title: 1.75rem;
		--secondary-prose-h2: 2rem;
		--secondary-lead: 1.125rem;
		--secondary-prose: 1.0625rem;
	}
}

.xinan-secondary-type-scope .secondary-type-page-title {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-page-h1);
	font-weight: 400;
	letter-spacing: var(--secondary-page-h1-letter-spacing);
	line-height: var(--secondary-page-h1-line-height);
}

.xinan-secondary-type-scope .secondary-type-section-title {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-page-h2);
	font-weight: 400;
	letter-spacing: var(--secondary-page-h2-letter-spacing);
	line-height: var(--secondary-page-h2-line-height);
}

.xinan-secondary-type-scope .secondary-type-component-title {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-page-h3);
	font-weight: 700;
	letter-spacing: var(--secondary-card-title-letter-spacing);
	line-height: var(--secondary-page-h3-line-height);
}

.xinan-secondary-type-scope .secondary-type-lead {
	font-family: var(--secondary-body-family);
	font-size: var(--secondary-lead);
	line-height: var(--secondary-lead-line-height);
}

.xinan-secondary-type-scope .secondary-type-body {
	font-family: var(--secondary-body-family);
	font-size: var(--secondary-body);
	line-height: var(--secondary-body-line-height);
}

.xinan-secondary-type-scope .secondary-type-prose {
	font-family: var(--secondary-body-family);
	font-size: var(--secondary-prose);
	line-height: var(--secondary-prose-line-height);
}

.xinan-secondary-type-scope .secondary-type-label {
	font-family: var(--secondary-body-family);
	font-size: var(--secondary-label);
	line-height: var(--secondary-label-line-height);
}

.xinan-secondary-type-scope .secondary-type-meta {
	font-family: var(--secondary-body-family);
	font-size: var(--secondary-meta);
	line-height: var(--secondary-meta-line-height);
}

.xinan-secondary-type-scope .secondary-type-article-title {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-article-title);
	font-weight: 400;
	letter-spacing: var(--secondary-page-h2-letter-spacing);
	line-height: var(--secondary-article-title-line-height);
}

.xinan-secondary-type-scope .secondary-type-feature-title {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-feature-title);
	font-weight: 400;
	letter-spacing: var(--secondary-feature-title-letter-spacing);
	line-height: var(--secondary-feature-title-line-height);
}

.xinan-secondary-type-scope .secondary-type-card-title {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-card-title);
	font-weight: 700;
	letter-spacing: var(--secondary-card-title-letter-spacing);
	line-height: var(--secondary-card-title-line-height);
}

.xinan-secondary-type-scope #main :where(.xinan-resources, .xinan-news) {
	font-family: var(--secondary-body-family);
}

.xinan-secondary-type-scope #main :where(
	.xinan-resource-hero,
	.xinan-resource-category__header,
	.xinan-resource-article__header,
	.xinan-news-hero
) h1 {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-page-h1);
	font-weight: 400;
	letter-spacing: var(--secondary-page-h1-letter-spacing);
	line-height: var(--secondary-page-h1-line-height);
}

.xinan-secondary-type-scope #main .xinan-news-article__header h1 {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-article-title);
	font-weight: 400;
	letter-spacing: var(--secondary-page-h2-letter-spacing);
	line-height: var(--secondary-article-title-line-height);
}

.xinan-secondary-type-scope #main :where(
	.xinan-resource-section-heading,
	.xinan-news-section-heading
) h2 {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-page-h2);
	font-weight: 400;
	letter-spacing: var(--secondary-page-h2-letter-spacing);
	line-height: var(--secondary-page-h2-line-height);
}

.xinan-secondary-type-scope #main :where(
	.xinan-resource-card,
	.xinan-news-card
) :where(h2, h3),
.xinan-secondary-type-scope #main :where(
	.xinan-resource-download h2,
	.xinan-resource-bridge strong,
	.xinan-news-related-card h3,
	.xinan-news-video__details h3
) {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-card-title);
	font-weight: 700;
	letter-spacing: var(--secondary-card-title-letter-spacing);
	line-height: var(--secondary-card-title-line-height);
}

.xinan-secondary-type-scope #main .xinan-resource-feature__body h3 {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-large-feature-title);
	font-weight: 400;
	letter-spacing: var(--secondary-feature-title-letter-spacing);
	line-height: var(--secondary-feature-title-line-height);
}

.xinan-secondary-type-scope #main .xinan-news-card--feature :where(h2, h3) {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-feature-title);
	font-weight: 400;
	letter-spacing: var(--secondary-feature-title-letter-spacing);
	line-height: var(--secondary-feature-title-line-height);
}

.xinan-secondary-type-scope #main :where(
	.xinan-resource-prose,
	.xinan-news-prose
) {
	font-family: var(--secondary-body-family);
	font-size: var(--secondary-prose);
	line-height: var(--secondary-prose-line-height);
}

.xinan-secondary-type-scope #main :where(
	.xinan-resource-prose,
	.xinan-news-prose
) h2 {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-prose-h2);
	font-weight: 400;
	letter-spacing: var(--secondary-page-h2-letter-spacing);
	line-height: var(--secondary-prose-h2-line-height);
}

.xinan-secondary-type-scope #main :where(
	.xinan-resource-prose,
	.xinan-news-prose
) h3 {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-page-h3);
	font-weight: 700;
	letter-spacing: var(--secondary-card-title-letter-spacing);
	line-height: var(--secondary-page-h3-line-height);
}

.xinan-secondary-type-scope #main :where(
	.xinan-resource-hero header > p:last-child,
	.xinan-resource-category__header p:last-child,
	.xinan-resource-article__header > .xinan-container > p,
	.xinan-news-hero__grid > div:first-child > p:last-child,
	.xinan-news-article__header > .xinan-container > p
) {
	font-family: var(--secondary-body-family);
	font-size: var(--secondary-lead);
	line-height: var(--secondary-lead-line-height);
}

.xinan-secondary-type-scope #main :where(
	.xinan-resource-label,
	.xinan-news-eyebrow
) {
	font-family: var(--secondary-body-family);
	font-size: var(--secondary-label);
	line-height: var(--secondary-label-line-height);
}

.xinan-secondary-type-scope #main :where(
	.xinan-resource-card__meta,
	.xinan-resource-article__meta,
	.xinan-resource-breadcrumb,
	.xinan-resource-topics small,
	.xinan-resource-bridge > span:first-child,
	.xinan-news-card__meta,
	.xinan-news-article__meta,
	.xinan-news-breadcrumb,
	.xinan-news-facts dt,
	.xinan-news-gallery figcaption,
	.xinan-news-related-card__body > span:first-child
) {
	font-family: var(--secondary-body-family);
	font-size: var(--secondary-meta);
	line-height: var(--secondary-meta-line-height);
}

/* Products and Manufacturing */
.xinan-secondary-type-scope #main .xinan-secondary {
	font-family: var(--secondary-body-family);
	font-size: var(--secondary-body);
	line-height: var(--secondary-body-line-height);
}

.xinan-secondary-type-scope #main .xinan-secondary h1 {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-page-h1);
	font-weight: 400;
	letter-spacing: var(--secondary-page-h1-letter-spacing);
	line-height: var(--secondary-page-h1-line-height);
}

.xinan-secondary-type-scope #main .xinan-secondary h2 {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-page-h2);
	font-weight: 400;
	letter-spacing: var(--secondary-page-h2-letter-spacing);
	line-height: var(--secondary-page-h2-line-height);
}

.xinan-secondary-type-scope #main .xinan-secondary h3 {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-card-title);
	font-weight: 700;
	letter-spacing: var(--secondary-card-title-letter-spacing);
	line-height: var(--secondary-card-title-line-height);
}

.xinan-secondary-type-scope #main .xinan-secondary__intro {
	font-family: var(--secondary-body-family);
	font-size: var(--secondary-lead);
	line-height: var(--secondary-lead-line-height);
}

.xinan-secondary-type-scope #main :where(
	.xinan-product-detail__content .xinan-prose,
	.xinan-prepress__managed-content
) {
	font-family: var(--secondary-body-family);
	font-size: var(--secondary-prose);
	line-height: var(--secondary-prose-line-height);
}

.xinan-secondary-type-scope #main :where(
	.xinan-secondary__eyebrow,
	.xinan-product-filters label,
	.xinan-product-card__meta,
	.xinan-breadcrumb,
	.xinan-prepress__workflow li > span,
	.xinan-manufacturing-flow li > span,
	.xinan-equipment-category-nav li > a > span,
	.xinan-shipping-flow li span,
	.xinan-quality-controls li > span,
	.xinan-equipment-card__body dt,
	.xinan-binding-routes li > span,
	.xinan-binding-quote-inputs li > span
) {
	font-family: var(--secondary-body-family);
	font-size: var(--secondary-label);
	line-height: var(--secondary-label-line-height);
}

.xinan-secondary-type-scope #main .xinan-binding-quality .xinan-secondary__intro {
	font-size: var(--secondary-body);
	line-height: var(--secondary-body-line-height);
}

/* About and Contact */
.xinan-secondary-type-scope #main :where(.xinan-about, .xinan-contact) {
	font-family: var(--secondary-body-family);
	font-size: var(--secondary-body);
	line-height: var(--secondary-body-line-height);
}

.xinan-secondary-type-scope #main :where(.xinan-about, .xinan-contact) h1 {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-page-h1);
	font-weight: 400;
	letter-spacing: var(--secondary-page-h1-letter-spacing);
	line-height: var(--secondary-page-h1-line-height);
}

.xinan-secondary-type-scope #main :where(.xinan-about, .xinan-contact) h2 {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-page-h2);
	font-weight: 400;
	letter-spacing: var(--secondary-page-h2-letter-spacing);
	line-height: var(--secondary-page-h2-line-height);
}

.xinan-secondary-type-scope #main :where(.xinan-about, .xinan-contact) h3 {
	font-family: var(--secondary-heading-family);
	font-size: var(--secondary-card-title);
	font-weight: 700;
	letter-spacing: var(--secondary-card-title-letter-spacing);
	line-height: var(--secondary-card-title-line-height);
}

.xinan-secondary-type-scope #main :where(
	.xinan-about__lead,
	.xinan-contact__intro
) {
	font-family: var(--secondary-body-family);
	font-size: var(--secondary-lead);
	line-height: var(--secondary-lead-line-height);
}

.xinan-secondary-type-scope #main :where(
	.xinan-about__prose,
	.xinan-about__section-intro
) {
	font-family: var(--secondary-body-family);
	font-size: var(--secondary-prose);
	line-height: var(--secondary-prose-line-height);
}

.xinan-secondary-type-scope #main :where(
	.xinan-about__subnav a,
	.xinan-about__eyebrow,
	.xinan-about__flow li::before,
	.xinan-contact__eyebrow,
	.xinan-contact__panel-label,
	.xinan-rfq__step-label,
	.xinan-contact__next-card > span,
	.xinan-rfq__field label,
	.xinan-rfq__consent,
	.xinan-rfq__help,
	.xinan-contact__privacy-link
) {
	font-family: var(--secondary-body-family);
	font-size: var(--secondary-label);
	line-height: var(--secondary-label-line-height);
}

.xinan-secondary-type-scope #main .xinan-contact__panel h2 {
	font-size: var(--secondary-card-title);
	font-weight: 700;
	letter-spacing: var(--secondary-card-title-letter-spacing);
	line-height: var(--secondary-card-title-line-height);
}

.xinan-secondary-type-scope #main .xinan-rfq__field :where(input, select, textarea),
.xinan-secondary-type-scope #main .xinan-rfq__submit {
	font-family: var(--secondary-body-family);
	font-size: var(--secondary-body);
	line-height: var(--secondary-meta-line-height);
}
