/* ForgeBase Hybrid shared visual system. */
@font-face {
	font-family: "Montserrat";
	font-style: normal;
	font-weight: 400 800;
	font-display: swap;
	src: url("../fonts/montserrat-latin-variable.woff2") format("woff2");
}

:root {
	--fb-navy: #061f3b;
	--fb-navy-deep: #03182d;
	--fb-blue: #0b5798;
	--fb-blue-hover: #08477e;
	--fb-copper: #c8752a;
	--fb-copper-text: #9a4f16;
	--fb-ink: #102033;
	--fb-muted: #5d6c7f;
	--fb-line: #d9e0e8;
	--fb-surface: #f7f8fa;
	--fb-panel: #ffffff;
	--fb-radius: 6px;
	--fb-control-radius: 4px;
	--fb-shadow: 0 14px 32px rgba(6, 31, 59, 0.07);
	--fb-shadow-hover: 0 18px 38px rgba(6, 31, 59, 0.11);
	--fb-shell: min(1360px, calc(100vw - 48px));
	--fb-type-hero: 56px;
	--fb-type-page-title: 44px;
	--fb-type-detail-title: 48px;
	--fb-type-section: 32px;
	--fb-type-subsection: 26px;
	--fb-type-panel: 20px;
	--fb-type-card: 18px;
	--fb-type-small: 13px;
}

body,
button,
input,
select,
textarea {
	font-family: "Montserrat", "Segoe UI", Arial, sans-serif;
}

body {
	color: var(--fb-ink);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.7;
}

.section-shell,
.header-shell,
.footer-shell {
	width: var(--fb-shell);
}

.industrial-hero h1 {
	font-size: var(--fb-type-hero);
	font-weight: 800;
	line-height: 1.08;
}

.archive-hero h1 {
	font-size: var(--fb-type-page-title);
	font-weight: 800;
	line-height: 1.1;
}

.about-profile-hero h1,
.contact-page-hero h1 {
	font-size: var(--fb-type-page-title);
	font-weight: 700;
	line-height: 1.16;
}

.industrial-section-heading h2,
.fb-product-section-head h2,
.fb-catalog-section-head h2 {
	font-size: var(--fb-type-section);
	font-weight: 700;
	line-height: 1.18;
}

.resource-library-layout .resource-card h2 {
	font-size: 22px;
	font-weight: 700;
	line-height: 1.35;
}

.button,
button.button,
input[type="submit"] {
	min-height: 48px;
	border-radius: var(--fb-control-radius);
	font-size: 13px;
	font-weight: 600;
}

input:not([type="checkbox"]):not([type="radio"]),
select,
textarea {
	border-color: var(--fb-line);
	border-radius: var(--fb-control-radius);
}

.product-card,
.directory-card,
.resource-card,
.capability-directory-card,
.fb-catalog-card,
.contact-card {
	border-radius: var(--fb-radius);
}

.card-kicker,
.fb-product-section-kicker,
.fb-catalog-kicker,
.resource-card__meta,
.product-card__meta-label {
	font-size: 12px;
	font-weight: 600;
}

.site-breadcrumbs {
	font-size: 13px;
}

:focus-visible {
	outline: 3px solid rgba(200, 117, 42, 0.48);
	outline-offset: 2px;
}

@media (max-width: 760px) {
	:root {
		--fb-shell: calc(100vw - 28px);
		--fb-type-hero: 36px;
		--fb-type-page-title: 32px;
		--fb-type-detail-title: 34px;
		--fb-type-section: 26px;
		--fb-type-subsection: 22px;
		--fb-type-panel: 18px;
		--fb-type-card: 17px;
	}

	.industrial-hero h1,
	.archive-hero h1,
	.about-profile-hero h1,
	.contact-page-hero h1 {
		font-size: var(--fb-type-page-title);
	}

	.fb-product-detail h1,
	.fb-catalog-detail h1 {
		font-size: var(--fb-type-detail-title);
	}

	.resource-library-layout .resource-card h2 {
		font-size: 19px;
	}
}
