:root {
	--xhx-color-primary-700: #123b66;
	--xhx-color-primary-600: #184b80;
	--xhx-color-primary-500: #2563a6;
	--xhx-color-deep: #0e1722;
	--xhx-color-steel-700: #445468;
	--xhx-color-steel-500: #8694a5;
	--xhx-color-mist-200: #e7ecf1;
	--xhx-color-mist-100: #f4f7fa;
	--xhx-color-surface: #ffffff;
	--xhx-color-accent-600: #f47c20;
	--xhx-color-accent-100: #fff1e6;
	--xhx-color-success: #2e8b67;
	--xhx-shadow-soft: 0 16px 40px rgba(18, 59, 102, 0.08);
	--xhx-shadow-medium: 0 22px 60px rgba(14, 23, 34, 0.14);
	--xhx-radius-card: 24px;
	--xhx-radius-panel: 28px;
	--xhx-radius-pill: 999px;
	--xhx-content-max: 1320px;
	--xhx-content-standard: 1220px;
	--xhx-pad-desktop: 2rem;
	--xhx-pad-tablet: 1.5rem;
	--xhx-pad-mobile: 1.125rem;
	--xhx-transition-fast: 160ms ease;
	--xhx-transition-base: 220ms ease;
	--xhx-font-heading: "Space Grotesk", "Inter", "Segoe UI", "PingFang SC", "Microsoft YaHei", Arial, sans-serif;
	--xhx-font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", Helvetica, Arial, sans-serif;
	--xhx-text-xs: 0.75rem;
	--xhx-text-sm: 0.9375rem;
	--xhx-text-base: 1.0625rem;
	--xhx-text-lg: 1.1875rem;
	--xhx-text-xl: 1.5rem;
	--xhx-heading-h1: clamp(3rem, 4.4vw, 4rem);
	--xhx-heading-h2: clamp(2.375rem, 3.2vw, 3.25rem);
	--xhx-heading-h3: clamp(1.375rem, 1.65vw, 1.75rem);
	--xhx-line-height-tight: 1.08;
	--xhx-line-height-body: 1.62;
	--xhx-tracking-heading: -0.025em;
	--xhx-tracking-eyebrow: 0.14em;
	/* Theme aliases keep typography tokens easy to reuse in future blocks. */
	--font-heading: var(--xhx-font-heading);
	--font-body: var(--xhx-font-body);
	--text-xs: var(--xhx-text-xs);
	--text-sm: var(--xhx-text-sm);
	--text-base: var(--xhx-text-base);
	--text-lg: var(--xhx-text-lg);
	--text-xl: var(--xhx-text-xl);
	--heading-h1: var(--xhx-heading-h1);
	--heading-h2: var(--xhx-heading-h2);
	--heading-h3: var(--xhx-heading-h3);
	--line-height-tight: var(--xhx-line-height-tight);
	--line-height-body: var(--xhx-line-height-body);
	--tracking-heading: var(--xhx-tracking-heading);
	--tracking-eyebrow: var(--xhx-tracking-eyebrow);
	/*
	 * Homepage section spacing tokens:
	 * - `heavy`: hero/gallery/CTA-led sections.
	 * - `standard`: most homepage content sections.
	 * - `compact`: tighter transitions, especially near the final CTA and footer.
	 */
	--xhx-home-section-space-heavy: clamp(6rem, 6.8vw, 6.75rem);
	--xhx-home-section-space-standard: clamp(5rem, 5.9vw, 5.75rem);
	--xhx-home-section-space-compact: clamp(4rem, 4.8vw, 4.75rem);
	--xhx-home-intro-gap: clamp(2.75rem, 3.8vw, 3.25rem);
	--xhx-home-grid-gap: clamp(1.35rem, 2vw, 1.85rem);
	--xhx-home-cta-gap: clamp(2rem, 2.8vw, 2.5rem);
	--xhx-section-space-lg: var(--xhx-home-section-space-heavy);
	--xhx-section-space-md: var(--xhx-home-section-space-standard);
	--xhx-section-space-sm: var(--xhx-home-section-space-compact);
	--xhx-section-gap: var(--xhx-section-space-md);
	--xhx-section-eyebrow-gap: clamp(1.15rem, 1.5vw, 1.4rem);
	--xhx-section-heading-gap: clamp(1.3rem, 1.8vw, 1.65rem);
	--xhx-section-intro-gap: var(--xhx-home-intro-gap);
	--xhx-section-grid-gap: var(--xhx-home-grid-gap);
	--xhx-section-cta-gap: var(--xhx-home-cta-gap);
	--xhx-text-measure: 61ch;
}

/* Chinese content needs a CJK-capable stack rather than the Latin display font. */
html[lang^="zh"] body,
html[lang^="zh"] .wp-site-blocks,
html[lang^="zh"] .wp-block-button__link,
html[lang^="zh"] input,
html[lang^="zh"] textarea,
html[lang^="zh"] select {
	font-family: "PingFang SC", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;
}

html[lang^="zh"] .wp-block-heading {
	letter-spacing: 0;
	line-height: 1.24;
}

html[lang^="zh"] .xhx-eyebrow,
html[lang^="zh"] .xhx-site-header .wp-block-navigation-item__label {
	letter-spacing: 0.08em;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	color: var(--xhx-color-deep);
	background: var(--xhx-color-surface);
	font-family: var(--xhx-font-body);
	font-size: var(--xhx-text-base);
	line-height: var(--xhx-line-height-body);
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
}

h1,
h2,
h3,
h4,
h5,
h6,
.wp-block-heading {
	font-family: var(--xhx-font-heading);
	font-weight: 700;
	letter-spacing: var(--xhx-tracking-heading);
}

p,
li,
input,
textarea,
select,
button {
	font-family: var(--xhx-font-body);
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}

a {
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.18em;
}

a,
button,
.wp-element-button,
summary {
	transition:
		color var(--xhx-transition-fast),
		background-color var(--xhx-transition-fast),
		border-color var(--xhx-transition-fast),
		box-shadow var(--xhx-transition-fast),
		transform var(--xhx-transition-fast);
}

:focus-visible {
	outline: 3px solid rgba(244, 124, 32, 0.5);
	outline-offset: 3px;
}

.screen-reader-text:focus {
	outline-offset: 4px;
}

.wp-site-blocks {
	min-height: 100vh;
	background:
		radial-gradient(circle at top right, rgba(244, 124, 32, 0.12), transparent 26%),
		radial-gradient(circle at left 18%, rgba(18, 59, 102, 0.045), transparent 20%),
		linear-gradient(180deg, rgba(244, 247, 250, 0.72), rgba(255, 255, 255, 0) 18rem);
}

.wp-block-group {
	min-width: 0;
}

.xhx-main {
	padding-bottom: 0;
}

.xhx-page-shell,
.xhx-query-shell,
.xhx-page-hero,
.xhx-archive-hero {
	width: 100%;
	max-width: calc(var(--xhx-content-standard) + (var(--xhx-pad-desktop) * 2));
	margin-inline: auto;
	padding-inline: var(--xhx-pad-desktop);
}

.xhx-page-hero,
.xhx-archive-hero {
	padding-top: clamp(2rem, 6vw, 5rem);
	padding-bottom: clamp(1.5rem, 3vw, 2.5rem);
}

.xhx-page-hero .wp-block-post-title,
.xhx-archive-hero .wp-block-query-title,
.xhx-section-heading .wp-block-heading {
	max-width: 18ch;
	letter-spacing: -0.03em;
	line-height: 1.02;
}

.xhx-page-hero .wp-block-post-excerpt,
.xhx-page-hero .xhx-page-intro,
.xhx-archive-hero .wp-block-term-description,
.xhx-section-heading {
	max-width: 52rem;
}

.xhx-page-intro {
	margin: 1rem 0 0;
	color: var(--xhx-color-steel-700);
	font-size: clamp(1rem, 1.4vw, 1.15rem);
	line-height: 1.58;
}

.xhx-archive-hero--products .wp-block-heading,
.xhx-page-hero--product .wp-block-post-title {
	max-width: 13ch;
}

.xhx-archive-hero--products .has-lg-font-size,
.xhx-page-hero--product .wp-block-post-excerpt,
.xhx-page-hero--product .xhx-product-summary {
	max-width: 44rem;
	font-size: clamp(1.05rem, 1.7vw, 1.2rem);
	line-height: 1.7;
	color: var(--xhx-color-steel-700);
}

.xhx-eyebrow {
	margin: 0;
	color: var(--xhx-color-primary-600);
	font-weight: 700;
	letter-spacing: var(--xhx-tracking-eyebrow);
	text-transform: uppercase;
}

.xhx-button-row {
	gap: 0.95rem;
}

.wp-block-button .wp-element-button {
	border: 1px solid transparent;
	padding: 0.9rem 1.35rem;
	border-radius: 999px;
	font-weight: 700;
	letter-spacing: -0.01em;
}

.wp-block-button.is-style-outline .wp-element-button {
	border-color: rgba(18, 59, 102, 0.14);
	background: rgba(255, 255, 255, 0.88);
	color: var(--xhx-color-primary-700);
}

.wp-block-button .wp-element-button:hover,
.wp-block-button .wp-element-button:focus-visible {
	transform: translateY(-2px);
	box-shadow: 0 18px 34px rgba(18, 59, 102, 0.16);
}

.wp-block-button:not(.is-style-outline) .wp-element-button {
	background: linear-gradient(135deg, #f58c32, #f47c20);
	box-shadow: 0 16px 34px rgba(244, 124, 32, 0.24);
}

.xhx-site-header {
	position: sticky;
	top: 0;
	z-index: 100;
	padding: 0.6rem var(--xhx-pad-desktop);
	overflow-x: clip;
	border-bottom: 1px solid rgba(68, 84, 104, 0.08);
	backdrop-filter: blur(18px);
	background: rgba(255, 255, 255, 0.94);
}

.xhx-site-header.is-scrolled {
	box-shadow: 0 18px 32px rgba(14, 23, 34, 0.08);
}

.xhx-site-header__inner {
	display: grid !important;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	width: 100%;
	max-width: 108rem;
	margin-inline: auto;
	gap: clamp(1rem, 1.7vw, 1.8rem);
	min-height: 3.75rem;
}

.xhx-site-brand {
	gap: 0.8rem;
	min-width: 0;
}

.xhx-site-brand__link {
	display: inline-flex;
	align-items: center;
	color: inherit;
	text-decoration: none;
	border-radius: 0.5rem;
}

.xhx-site-brand__link:hover {
	text-decoration: none;
}

.xhx-site-brand__link:focus-visible {
	outline: 2px solid var(--xhx-color-accent-500);
	outline-offset: 4px;
}

.xhx-site-brand__text {
	gap: 0.15rem;
}

.xhx-site-brand__wordmark {
	display: inline-flex;
	align-items: baseline;
	gap: 0.38rem;
	margin: 0;
	color: var(--xhx-color-primary-700);
	font-size: clamp(1.35rem, 1vw + 1rem, 1.6rem);
	line-height: 1;
	letter-spacing: -0.035em;
	text-decoration: none;
	white-space: nowrap;
}

.xhx-site-brand__wordmark-strong {
	font-weight: 800;
}

.xhx-site-brand__wordmark-lite {
	font-weight: 600;
	color: var(--xhx-color-steel-700);
	letter-spacing: -0.02em;
}

.xhx-site-brand__title {
	margin: 0;
	font-size: 1.2rem;
	font-weight: 700;
	letter-spacing: -0.02em;
}

.xhx-site-brand__tagline {
	margin: 0;
	color: var(--xhx-color-steel-700);
}

.xhx-site-header__nav-wrap {
	display: flex;
	justify-content: flex-start;
	min-width: 0;
	padding-left: clamp(0.25rem, 1.25vw, 1.25rem);
}

.xhx-site-header__controls {
	display: flex;
	align-items: center;
	gap: clamp(0.55rem, 1vw, 1rem);
	white-space: nowrap;
}

.xhx-primary-navigation {
	align-items: center;
	min-width: 0;
}

@media (min-width: 1161px) {
	.xhx-primary-navigation .wp-block-navigation__container {
		flex-wrap: nowrap;
		gap: clamp(0.65rem, 1.45vw, 1.8rem);
	}

	.xhx-primary-navigation .wp-block-navigation-item__content,
	.xhx-primary-navigation .wp-block-navigation-item__label {
		white-space: nowrap;
	}

	.xhx-site-header__actions .wp-block-button__link {
		padding-inline: clamp(0.78rem, 1.05vw, 1.1rem);
	}
}

.xhx-primary-navigation .xhx-nav-rfq-mobile {
	display: none;
}

.xhx-primary-navigation .wp-block-navigation-item {
	position: relative;
}

.xhx-primary-navigation .wp-block-navigation-item__content {
	position: relative;
	padding: 0.6rem 0.28rem;
	color: var(--xhx-color-deep);
	font-weight: 600;
	font-size: 0.97rem;
}

.xhx-primary-navigation .wp-block-navigation-item__content:hover,
.xhx-primary-navigation .wp-block-navigation-item__content:focus-visible,
.xhx-primary-navigation .current-menu-item > .wp-block-navigation-item__content,
.xhx-primary-navigation .current-menu-parent > .wp-block-navigation-item__content,
.xhx-primary-navigation .current-menu-ancestor > .wp-block-navigation-item__content,
.xhx-primary-navigation .wp-block-navigation-item__content[aria-current="page"] {
	color: var(--xhx-color-primary-600);
}

body.xhx-nav-section-products .xhx-primary-navigation .xhx-products-menu > .wp-block-navigation-item__content,
body.xhx-nav-section-capabilities .xhx-primary-navigation .xhx-capabilities-menu > .wp-block-navigation-item__content,
body.xhx-nav-section-industries .xhx-primary-navigation .xhx-industries-menu > .wp-block-navigation-item__content,
body.xhx-nav-section-case-studies .xhx-primary-navigation .xhx-nav-case-studies > .wp-block-navigation-item__content,
body.xhx-nav-section-resources .xhx-primary-navigation .xhx-resources-menu > .wp-block-navigation-item__content,
body.xhx-nav-section-about .xhx-primary-navigation .xhx-about-menu > .wp-block-navigation-item__content,
body.xhx-nav-section-contact .xhx-primary-navigation .xhx-nav-contact > .wp-block-navigation-item__content,
body.xhx-nav-section-rfq .xhx-primary-navigation .xhx-nav-rfq-mobile > .wp-block-navigation-item__content {
	color: var(--xhx-color-primary-600);
}

@media (min-width: 1161px) {
	nav.xhx-primary-navigation .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content::after {
		pointer-events: none;
		position: absolute;
		bottom: -0.42rem;
		left: 50%;
		width: calc(100% - 0.45rem);
		height: 2px;
		border-radius: 999px;
		background: var(--xhx-color-accent-600);
		content: "";
		transform: translateX(-50%) scaleX(0);
		transform-origin: center;
		transition: transform 210ms ease-out;
	}

	nav.xhx-primary-navigation .wp-block-navigation__container > .wp-block-navigation-item:hover > .wp-block-navigation-item__content::after,
	nav.xhx-primary-navigation .wp-block-navigation__container > .wp-block-navigation-item:focus-within > .wp-block-navigation-item__content::after,
	nav.xhx-primary-navigation .wp-block-navigation__container > .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content::after,
	nav.xhx-primary-navigation .wp-block-navigation__container > .wp-block-navigation-item.current-menu-parent > .wp-block-navigation-item__content::after,
	nav.xhx-primary-navigation .wp-block-navigation__container > .wp-block-navigation-item.current-menu-ancestor > .wp-block-navigation-item__content::after,
	nav.xhx-primary-navigation .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content[aria-current="page"]::after,
	nav.xhx-primary-navigation .wp-block-navigation__container > .wp-block-navigation-item:has(> .wp-block-navigation-submenu__toggle[aria-expanded="true"]) > .wp-block-navigation-item__content::after,
	body.xhx-nav-section-products .xhx-primary-navigation .xhx-products-menu > .wp-block-navigation-item__content::after,
	body.xhx-nav-section-capabilities .xhx-primary-navigation .xhx-capabilities-menu > .wp-block-navigation-item__content::after,
	body.xhx-nav-section-industries .xhx-primary-navigation .xhx-industries-menu > .wp-block-navigation-item__content::after,
	body.xhx-nav-section-case-studies .xhx-primary-navigation .xhx-nav-case-studies > .wp-block-navigation-item__content::after,
body.xhx-nav-section-resources .xhx-primary-navigation .xhx-resources-menu > .wp-block-navigation-item__content::after,
body.xhx-nav-section-about .xhx-primary-navigation .xhx-about-menu > .wp-block-navigation-item__content::after,
body.xhx-nav-section-contact .xhx-primary-navigation .xhx-nav-contact > .wp-block-navigation-item__content::after,
body.xhx-nav-section-rfq .xhx-primary-navigation .xhx-nav-rfq-mobile > .wp-block-navigation-item__content::after {
		transform: translateX(-50%) scaleX(1);
	}

	.xhx-primary-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
	.xhx-primary-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content:focus-visible {
		color: var(--xhx-color-accent-600);
		background: rgba(244, 124, 32, 0.06);
	}
}

@media (prefers-reduced-motion: reduce) {
	nav.xhx-primary-navigation .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content::after {
		transition-duration: 1ms;
	}
}

.xhx-primary-navigation .wp-block-navigation__submenu-container {
	padding: 1rem;
	border: 1px solid rgba(68, 84, 104, 0.12);
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.98);
	box-shadow: var(--xhx-shadow-medium);
	min-width: min(90vw, 26rem);
	max-width: min(90vw, 32rem);
}

.xhx-primary-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding: 0.55rem 0;
}

.xhx-primary-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content,
.xhx-archive-anchor-target {
	scroll-margin-top: 6.5rem;
}

/* Keep the three catalog menus inside the left edge of the desktop viewport. */
@media (min-width: 1161px) {
	.xhx-primary-navigation.items-justified-right .wp-block-navigation__container > li.xhx-products-menu > .wp-block-navigation__submenu-container,
	.xhx-primary-navigation.items-justified-right .wp-block-navigation__container > li.xhx-capabilities-menu > .wp-block-navigation__submenu-container,
	.xhx-primary-navigation.items-justified-right .wp-block-navigation__container > li.xhx-industries-menu > .wp-block-navigation__submenu-container {
		left: 0 !important;
		right: auto !important;
	}
}

.xhx-language-switcher {
	display: flex;
	align-items: center;
}

.xhx-language-switcher__details {
	position: relative;
}

.xhx-language-switcher__summary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 3.45rem;
	padding: 0.48rem 0.62rem;
	border: 1px solid rgba(68, 84, 104, 0.16);
	border-radius: 0.55rem;
	color: var(--xhx-color-primary-700);
	background: rgba(255, 255, 255, 0.96);
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	cursor: pointer;
	list-style: none;
}

.xhx-language-switcher__summary::-webkit-details-marker {
	display: none;
}

.xhx-language-switcher__summary::after {
	width: 0.42rem;
	height: 0.42rem;
	margin-left: 0.42rem;
	border-right: 1px solid currentColor;
	border-bottom: 1px solid currentColor;
	content: '';
	transform: translateY(-0.12rem) rotate(45deg);
}

.xhx-language-switcher__details[open] .xhx-language-switcher__summary::after {
	transform: translateY(0.12rem) rotate(225deg);
}

.xhx-language-switcher__list {
	position: absolute;
	top: calc(100% + 0.5rem);
	right: 0;
	display: grid;
	min-width: 9.4rem;
	gap: 0.15rem;
	list-style: none;
	padding: 0.35rem;
	margin: 0;
	border: 1px solid rgba(68, 84, 104, 0.12);
	border-radius: 0.6rem;
	background: rgba(255, 255, 255, 0.99);
	box-shadow: 0 12px 28px rgba(18, 59, 102, 0.14);
	z-index: 1100;
}

.xhx-language-switcher__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 0.48rem 0.58rem;
	border-radius: 0.42rem;
	color: var(--xhx-color-steel-700);
	font-size: 0.85rem;
	font-weight: 700;
	text-decoration: none;
}

.xhx-language-switcher__link.is-current {
	background: rgba(255, 255, 255, 0.94);
	color: var(--xhx-color-primary-700);
	box-shadow: inset 0 0 0 1px rgba(18, 59, 102, 0.1);
}

.xhx-language-switcher__summary:hover,
.xhx-language-switcher__summary:focus-visible,
.xhx-language-switcher__link:hover,
.xhx-language-switcher__link:focus-visible {
	outline: none;
	color: var(--xhx-color-primary-800);
	background: rgba(229, 238, 247, 0.86);
}

.xhx-language-switcher-block--mobile {
	display: none;
}

.xhx-language-switcher__mobile-label {
	display: none;
}

.xhx-section {
	width: 100%;
	max-width: calc(var(--xhx-content-max) + (var(--xhx-pad-desktop) * 2));
	margin-inline: auto;
	margin-block: 0;
	padding-inline: var(--xhx-pad-desktop);
	padding-block: var(--xhx-section-gap);
}

.xhx-section > :first-child {
	margin-block-start: 0;
}

.xhx-section > :last-child {
	margin-block-end: 0;
}

.xhx-section-heading {
	margin-bottom: var(--xhx-section-intro-gap);
	max-width: 60rem;
}

.xhx-section-heading > .xhx-eyebrow,
.xhx-faq-layout__intro > .xhx-eyebrow {
	margin-bottom: var(--xhx-section-eyebrow-gap);
}

.xhx-section-heading > .wp-block-heading,
.xhx-faq-layout__intro > .wp-block-heading {
	margin-bottom: var(--xhx-section-heading-gap);
}

.xhx-section-heading > p:last-child,
.xhx-faq-layout__intro > p.has-lg-font-size:last-of-type {
	margin-bottom: 0;
}

.xhx-section--buyer-needs,
.xhx-section--products,
.xhx-section--capabilities,
.xhx-section--industries,
.xhx-section--advantages,
.xhx-section--quality,
.xhx-section--case-studies,
.xhx-section--testimonials,
.xhx-section--faq,
.xhx-section--resources {
	padding-block: var(--xhx-section-space-md);
}

.xhx-section--factory {
	padding-block: var(--xhx-section-space-lg);
}

.xhx-section--resources {
	padding-top: clamp(4rem, 4.9vw, 4.75rem);
	padding-bottom: clamp(2.2rem, 3vw, 2.9rem);
}

.xhx-section--rfq {
	padding-top: clamp(2.2rem, 3vw, 2.9rem);
	padding-bottom: clamp(2rem, 2.8vw, 2.6rem);
}

.xhx-section--hero {
	position: relative;
	padding-top: clamp(2rem, 3.6vw, 3rem);
	padding-bottom: clamp(2rem, 3.7vw, 3rem);
	overflow-x: clip;
}

.xhx-section--hero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background:
		repeating-linear-gradient(
			90deg,
			rgba(68, 84, 104, 0.06) 0,
			rgba(68, 84, 104, 0.06) 1px,
			transparent 1px,
			transparent 112px
		),
		repeating-linear-gradient(
			0deg,
			rgba(68, 84, 104, 0.03) 0,
			rgba(68, 84, 104, 0.03) 1px,
			transparent 1px,
			transparent 112px
		);
	opacity: 0.55;
}

.xhx-section--hero .wp-block-heading.has-4xl-font-size {
	margin-bottom: 0.95rem;
	font-size: clamp(3.125rem, 3.75vw, 3.55rem);
	line-height: 1.04;
	max-width: 12.9ch;
	letter-spacing: -0.038em;
}

.xhx-section--hero .has-lg-font-size {
	max-width: 39.5rem;
	font-size: clamp(1.05rem, 1vw, 1.16rem);
	line-height: 1.68;
	color: var(--xhx-color-steel-700);
}

.xhx-hero-grid {
	display: grid;
	grid-template-columns: minmax(680px, 55fr) minmax(0, 45fr);
	align-items: center;
	gap: clamp(2rem, 3vw, 3.2rem);
	min-height: min(61vh, 40.5rem);
}

.xhx-hero-grid__content {
	min-width: 0;
	gap: 1.15rem;
}

.xhx-hero-grid__media {
	min-width: 0;
	align-self: stretch;
}

.xhx-hero-eyebrow {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	padding: 0.48rem 0.86rem;
	border: 1px solid rgba(18, 59, 102, 0.12);
	border-radius: var(--xhx-radius-pill);
	background: rgba(255, 255, 255, 0.88);
	color: var(--xhx-color-primary-700);
	letter-spacing: 0.12em;
}

.xhx-section--hero .xhx-button-row {
	margin-top: 0.3rem;
	gap: 1rem;
}

.xhx-section--hero .wp-block-button:not(.is-style-outline) .wp-element-button {
	min-width: 12.5rem;
	padding-inline: 1.5rem;
	padding-block: 0.96rem;
}

.xhx-section--hero .wp-block-button.is-style-outline .wp-element-button {
	min-width: 12.5rem;
	border-color: rgba(18, 59, 102, 0.22);
	background: rgba(255, 255, 255, 0.72);
	padding-inline: 1.5rem;
	padding-block: 0.96rem;
}

.xhx-section-heading .wp-block-heading.has-3xl-font-size {
	font-size: clamp(2rem, 3vw, 3.25rem);
	line-height: 1.04;
}

.xhx-card .wp-block-heading.has-xl-font-size,
.xhx-card .wp-block-post-title {
	font-size: clamp(1.18rem, 1.3vw, 1.55rem);
	line-height: 1.18;
}

.xhx-section p,
.xhx-card p,
.xhx-card .wp-block-post-excerpt {
	line-height: 1.72;
}

.xhx-section:nth-of-type(even):not(.xhx-section--hero):not(.xhx-section--rfq) {
	position: relative;
}

.xhx-section:nth-of-type(even):not(.xhx-section--hero):not(.xhx-section--rfq)::before {
	content: "";
	position: absolute;
	inset: 0.85rem 0;
	z-index: -1;
	border-radius: 36px;
	background:
		linear-gradient(180deg, rgba(244, 247, 250, 0.9), rgba(255, 255, 255, 0.62)),
		radial-gradient(circle at top right, rgba(18, 59, 102, 0.05), transparent 36%);
}

.xhx-hero-grid,
.xhx-story-grid,
.xhx-quality-grid,
.xhx-split-heading,
.xhx-resource-queries {
	gap: var(--xhx-section-grid-gap);
}

.xhx-feature-grid {
	gap: clamp(1rem, 2vw, 1.4rem);
}

.xhx-hero-panel,
.xhx-side-panel,
.xhx-placeholder-panel {
	padding: clamp(1.5rem, 2.6vw, 2.2rem);
	border: 1px solid rgba(68, 84, 104, 0.12);
	border-radius: var(--xhx-radius-panel);
	background: rgba(255, 255, 255, 0.92);
	box-shadow: var(--xhx-shadow-soft);
}

.xhx-hero-panel {
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.97), rgba(244, 247, 250, 0.98)),
		linear-gradient(135deg, rgba(244, 124, 32, 0.08), transparent 45%);
}

.xhx-trust-row {
	gap: 0.85rem 1.1rem;
}

.xhx-trust-row p {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	padding: 0.45rem 0.75rem;
	margin: 0;
	border-radius: var(--xhx-radius-pill);
	background: rgba(244, 247, 250, 0.9);
	color: var(--xhx-color-steel-700);
}

.xhx-trust-row p::before {
	content: "";
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
	background: var(--xhx-color-accent-600);
}

.xhx-proof-strip,
.xhx-card__actions,
.xhx-testimonial-grid {
	gap: 0.85rem;
}

.xhx-section--hero .xhx-proof-strip {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.75rem 0.85rem;
	max-width: 41rem;
	margin-top: 0.2rem;
}

.xhx-proof-strip p {
	display: inline-flex;
	align-items: center;
	margin: 0;
	padding: 0.68rem 0.88rem;
	border: 1px solid rgba(68, 84, 104, 0.12);
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.94);
	color: var(--xhx-color-steel-700);
	font-weight: 600;
	box-shadow: 0 6px 18px rgba(18, 59, 102, 0.04);
}

.xhx-proof-strip--checks p {
	justify-content: flex-start;
	padding-left: 0.88rem;
}

.xhx-proof-strip--checks p::before {
	content: "✓";
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.15rem;
	height: 1.15rem;
	margin-right: 0.6rem;
	border-radius: 999px;
	background: rgba(46, 139, 103, 0.1);
	color: var(--xhx-color-success);
	font-size: 0.78rem;
	font-weight: 800;
	line-height: 1;
}

.xhx-hero-media {
	height: 100%;
	min-height: clamp(27rem, 34vw, 31rem);
	aspect-ratio: 5 / 4;
	border: 1px solid rgba(68, 84, 104, 0.14);
	border-radius: 28px;
	overflow: hidden;
	background:
		linear-gradient(180deg, rgba(244, 247, 250, 0.96), rgba(231, 236, 241, 0.96)),
		repeating-linear-gradient(
			135deg,
			rgba(68, 84, 104, 0.08) 0,
			rgba(68, 84, 104, 0.08) 1px,
			transparent 1px,
			transparent 22px
		);
	box-shadow: 0 22px 56px rgba(14, 23, 34, 0.1);
}

.xhx-hero-media .wp-block-cover__image-background,
.xhx-hero-media img {
	object-fit: cover;
}

.xhx-hero-media__placeholder {
	display: flex;
	align-items: flex-end;
	justify-content: flex-start;
	min-height: 100%;
	padding: clamp(1.1rem, 2vw, 1.5rem);
}

.xhx-hero-media__label {
	display: inline-flex;
	align-items: center;
	max-width: 19rem;
	padding: 0.8rem 0.95rem;
	margin: 0;
	border: 1px solid rgba(68, 84, 104, 0.1);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.88);
	color: var(--xhx-color-primary-700);
	text-transform: uppercase;
	letter-spacing: 0.12em;
	line-height: 1.55;
}

.xhx-inline-link {
	margin: 0;
	font-weight: 700;
}

.xhx-inline-link a {
	color: var(--xhx-color-primary-700);
	text-decoration: none;
}

.xhx-read-more {
	display: inline-flex;
	align-items: center;
	font-weight: 700;
	color: var(--xhx-color-primary-700);
	text-decoration: none;
}

.xhx-read-more::after,
.xhx-inline-link a::after {
	content: "->";
	margin-left: 0.45rem;
	font-size: 0.92em;
}

.xhx-feature-grid,
.xhx-gallery-placeholders,
.xhx-resource-panels,
.xhx-resource-queries {
	gap: clamp(1rem, 2vw, 1.5rem);
}

.xhx-resource-panels {
	flex-wrap: wrap !important;
}

.xhx-resource-panels > .wp-block-column {
	flex-basis: calc(33.333% - 1rem) !important;
}

.xhx-manual-grid,
.xhx-testimonial-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1rem, 2vw, 1.5rem);
}

.xhx-manual-grid--capabilities,
.xhx-manual-grid--industries {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.xhx-card__icon,
.xhx-card__kicker {
	display: inline-flex;
	align-items: center;
	padding: 0.35rem 0.7rem;
	margin: 0 0 0.85rem;
	border-radius: var(--xhx-radius-pill);
	background: var(--xhx-color-mist-100);
	color: var(--xhx-color-primary-700);
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.03em;
}

.xhx-card__actions {
	margin-top: 1.1rem;
	align-items: flex-end;
}

.xhx-card--placeholder {
	border-style: dashed;
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(244, 247, 250, 0.98)),
		linear-gradient(135deg, rgba(18, 59, 102, 0.04), transparent 40%);
}

.xhx-card--feature,
.xhx-card--stat,
.xhx-card--quality,
.xhx-card--resource {
	min-height: 100%;
}

.xhx-faq-layout {
	display: grid;
	grid-template-columns: minmax(17rem, 0.36fr) minmax(0, 0.64fr);
	gap: clamp(1.4rem, 3vw, 3rem);
	align-items: start;
}

.xhx-faq-layout__intro {
	max-width: 23rem;
}

.xhx-faq-layout__intro .has-lg-font-size {
	max-width: 22rem;
	color: var(--xhx-color-steel-700);
}

.xhx-faq-layout__link {
	margin-top: 1.1rem;
}

.xhx-faq-accordion {
	display: grid;
	gap: 0.9rem;
}

.xhx-faq-accordion > * {
	margin-block-start: 0 !important;
}

.xhx-resources__intro {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin-inline: auto !important;
	margin-bottom: clamp(2.75rem, 3.8vw, 3.25rem);
	max-width: min(100%, 68.5rem);
}

.xhx-resources__intro > * {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.xhx-resources__intro .wp-block-heading.has-3xl-font-size {
	max-width: none;
	font-size: clamp(2.95rem, 3.35vw, 3.25rem);
	line-height: 1.1;
	letter-spacing: -0.032em;
}

.xhx-resources__intro > p.has-lg-font-size {
	max-width: 61rem;
	font-size: clamp(1.15rem, 1.3vw, 1.1875rem);
	line-height: 1.62;
	color: var(--xhx-color-steel-700);
}

.xhx-manual-grid--resources {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.xhx-manual-grid--resources > * {
	margin-block-start: 0 !important;
}

.xhx-resource-grid {
	margin-top: 0;
}

.xhx-placeholder-panel--hero-media {
	aspect-ratio: 4 / 5;
	min-height: 0;
}

.xhx-placeholder-panel--factory-photo {
	aspect-ratio: 16 / 11;
	min-height: 0;
}

.xhx-placeholder-panel--small {
	aspect-ratio: 4 / 3;
	min-height: 0;
}

.xhx-process-rail {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.85rem;
	margin: 1.5rem 0 1.75rem;
}

.xhx-process-step {
	position: relative;
	margin: 0;
	padding: 1rem 1rem 1rem 1.15rem;
	border: 1px solid rgba(68, 84, 104, 0.12);
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.92);
	color: var(--xhx-color-deep);
	font-weight: 600;
}

.xhx-process-step::before {
	content: "";
	position: absolute;
	inset-block: 1rem;
	left: 0.55rem;
	width: 0.2rem;
	border-radius: 999px;
	background: var(--xhx-color-accent-600);
}

.xhx-editor-note {
	padding: 1rem 1.1rem;
	margin-top: 1rem;
	border: 1px dashed rgba(37, 99, 166, 0.35);
	border-radius: 18px;
	background: rgba(231, 236, 241, 0.75);
}

.xhx-editor-note__title {
	margin: 0 0 0.35rem;
	font-weight: 700;
	color: var(--xhx-color-primary-700);
}

.xhx-editor-note__message {
	margin: 0;
	color: var(--xhx-color-steel-700);
}

.xhx-form-placeholder {
	gap: 1rem;
}

.xhx-form-placeholder ul {
	margin: 0;
	padding-left: 1.15rem;
}

.xhx-query-grid .wp-block-post-template,
.xhx-query-shell .wp-block-post-template {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1rem, 2vw, 1.5rem);
	list-style: none;
	padding: 0;
	margin: 0;
}

.xhx-section--capabilities .wp-block-post-template,
.xhx-section--industries .wp-block-post-template {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

/* Query Loop adds percentage widths for its legacy flex layouts. Clear them
 * when these homepage loops are rendered as CSS grids. */
.xhx-query-grid--capabilities .wp-block-post-template.is-flex-container.columns-4 > .wp-block-post,
.xhx-query-grid--industries .wp-block-post-template.is-flex-container.columns-4 > .wp-block-post {
	width: 100%;
	min-width: 0;
}

.xhx-section--buyer-needs .wp-block-columns,
.xhx-section--quality .wp-block-columns {
	align-items: stretch;
}

.xhx-section-heading--centered,
.xhx-buyer-needs__intro {
	margin-inline: auto;
	text-align: center;
}

.xhx-buyer-needs__intro .has-lg-font-size {
	max-width: 42rem;
	margin-inline: auto;
	color: var(--xhx-color-steel-700);
}

.xhx-card {
	height: 100%;
	display: flex;
	flex-direction: column;
	padding: clamp(1.35rem, 2.3vw, 1.75rem);
	border: 1px solid rgba(68, 84, 104, 0.12);
	border-radius: var(--xhx-radius-card);
	background: rgba(255, 255, 255, 0.95);
	box-shadow: var(--xhx-shadow-soft);
}

.xhx-buyer-needs-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(1rem, 2vw, 1.4rem);
	align-items: stretch;
}

.xhx-buyer-needs-card {
	position: relative;
	gap: 0.9rem;
	padding: clamp(1.35rem, 2vw, 1.7rem);
	border-radius: 14px;
	box-shadow: 0 14px 34px rgba(18, 59, 102, 0.07);
}

.xhx-buyer-needs-card::before {
	content: "";
	position: absolute;
	inset: 0 auto 0 0;
	width: 3px;
	border-radius: 14px 0 0 14px;
	background: linear-gradient(180deg, var(--xhx-color-primary-500), rgba(244, 124, 32, 0.72));
	opacity: 0.9;
}

.xhx-buyer-needs-card:hover,
.xhx-buyer-needs-card:focus-within {
	transform: translateY(-4px);
	box-shadow: 0 18px 40px rgba(14, 23, 34, 0.1);
}

.xhx-buyer-needs-card__meta {
	gap: 0.8rem;
	margin-bottom: 0.15rem;
}

.xhx-buyer-needs-card__step,
.xhx-buyer-needs-card__symbol {
	margin: 0;
}

.xhx-buyer-needs-card__step {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.2rem;
	min-height: 2.2rem;
	padding: 0.35rem;
	border: 1px solid rgba(37, 99, 166, 0.16);
	border-radius: 12px;
	background: rgba(244, 247, 250, 0.9);
	color: var(--xhx-color-primary-700);
	font-weight: 800;
	letter-spacing: 0.02em;
}

.xhx-buyer-needs-card__symbol {
	display: inline-flex;
	align-items: center;
	padding: 0.38rem 0.7rem;
	border: 1px solid rgba(68, 84, 104, 0.12);
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.88);
	color: var(--xhx-color-steel-700);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.xhx-buyer-needs-card .wp-block-heading {
	margin-bottom: 0.4rem;
}

.xhx-buyer-needs-card p:last-child {
	line-height: 1.68;
}

.xhx-products__intro {
	max-width: 52rem;
}

.xhx-products__intro .has-lg-font-size {
	max-width: 43rem;
	color: var(--xhx-color-steel-700);
}

.xhx-card:hover,
.xhx-card:focus-within {
	transform: translateY(-6px);
	border-color: rgba(37, 99, 166, 0.22);
	box-shadow: 0 26px 60px rgba(14, 23, 34, 0.12);
}

.xhx-card__media {
	margin-bottom: 1rem;
	overflow: hidden;
	border-radius: 18px;
	background:
		linear-gradient(180deg, rgba(231, 236, 241, 0.88), rgba(244, 247, 250, 0.92)),
		linear-gradient(135deg, rgba(18, 59, 102, 0.06), transparent 48%);
}

.xhx-card__media img {
	aspect-ratio: 4 / 3;
	object-fit: cover;
	transition: transform var(--xhx-transition-base);
}

.xhx-card:hover .xhx-card__media img,
.xhx-card:focus-within .xhx-card__media img {
	transform: scale(1.03);
}

.xhx-card .wp-block-post-title,
.xhx-card .wp-block-heading {
	margin-top: 0;
	margin-bottom: 0.75rem;
}

.xhx-card .wp-block-post-title a {
	color: inherit;
	text-decoration: none;
}

.xhx-card .wp-block-post-title a:hover,
.xhx-card .wp-block-post-title a:focus-visible {
	color: var(--xhx-color-primary-600);
}

.xhx-card .wp-block-post-excerpt,
.xhx-card .wp-block-post-content,
.xhx-card p {
	margin-bottom: 0;
	color: var(--xhx-color-steel-700);
}

.xhx-card > :last-child {
	margin-top: auto;
}

.xhx-card--testimonial {
	background: linear-gradient(180deg, rgba(255, 255, 255, 1), rgba(255, 241, 230, 0.5));
}

.xhx-card--testimonial .wp-block-post-content p:first-child {
	font-size: 1.02rem;
	line-height: 1.75;
	color: var(--xhx-color-deep);
}

.xhx-card__quote > :first-child {
	margin-top: 0;
}

.xhx-card__quote > :last-child {
	margin-bottom: 1rem;
}

.xhx-card__meta {
	margin: 0;
	color: var(--xhx-color-steel-700);
	font-size: 0.95rem;
}

.xhx-card--download {
	border-style: dashed;
}

.xhx-card--stat,
.xhx-card--quality {
	min-height: 100%;
}

.xhx-quality-process-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1rem, 2vw, 1.4rem);
	margin-top: var(--xhx-section-intro-gap);
}

.xhx-quality-process-grid > * {
	margin-block-start: 0 !important;
}

.xhx-quality-stage {
	display: grid;
	grid-template-rows: auto minmax(3rem, auto) 1fr;
	gap: 0;
	padding: clamp(1.35rem, 2vw, 1.6rem);
	border-radius: 14px;
	border: 1px solid rgba(68, 84, 104, 0.14);
	box-shadow: 0 10px 24px rgba(14, 23, 34, 0.04);
}

.xhx-quality-stage__meta {
	align-items: center;
	gap: 0.8rem;
	padding-top: 0.15rem;
	margin-bottom: 1rem;
}

.xhx-quality-stage__meta > * {
	margin-block-start: 0 !important;
}

.xhx-quality-stage__step {
	margin: 0;
	color: var(--xhx-color-primary-700);
	font-size: 0.83rem;
	font-weight: 800;
	letter-spacing: 0.12em;
}

.xhx-card__icon--quality {
	padding: 0;
	margin: 0;
	border-radius: 0;
	background: transparent;
	color: var(--xhx-color-steel-700);
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.xhx-quality-stage .wp-block-heading {
	min-height: 3rem;
	margin: 0 0 0.8rem;
	line-height: 1.24;
}

.xhx-quality-stage p:not(.xhx-quality-stage__step):not(.xhx-card__icon--quality) {
	margin: 0;
	color: var(--xhx-color-steel-700);
	line-height: 1.7;
}

.xhx-quality-trust {
	margin: clamp(1.45rem, 3vw, 1.85rem) auto 0;
	padding: 1rem 1.2rem;
	border-top: 1px solid rgba(68, 84, 104, 0.16);
	text-align: center;
}

.xhx-quality-trust__title {
	margin: 0 0 0.35rem;
	color: var(--xhx-color-primary-700);
	font-weight: 700;
}

.xhx-quality-trust p:last-child {
	margin: 0;
	color: var(--xhx-color-steel-700);
}

.xhx-quality__cta {
	margin-top: 1.5rem;
}

.xhx-card--product,
.xhx-product-card {
	gap: 0.95rem;
	border-radius: 14px;
	box-shadow: 0 14px 34px rgba(18, 59, 102, 0.07);
}

.xhx-product-card__media-link {
	display: block;
	color: inherit;
	text-decoration: none;
}

.xhx-product-card:hover,
.xhx-product-card:focus-within {
	transform: translateY(-3px);
	border-color: rgba(37, 99, 166, 0.18);
	box-shadow: 0 18px 40px rgba(14, 23, 34, 0.1);
}

.xhx-product-card .wp-block-post-excerpt,
.xhx-product-card p {
	line-height: 1.68;
}

.xhx-product-card__media {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-width: 100%;
	margin-bottom: 1.05rem;
	padding: 1rem;
	border: 1px solid rgba(68, 84, 104, 0.12);
	border-radius: 14px;
	overflow: hidden;
	aspect-ratio: 4 / 3;
	background: #f3f6f9;
	box-sizing: border-box;
	align-self: stretch;
}

.xhx-product-card__media > a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.xhx-product-card__media img {
	width: 100%;
	height: 100%;
	aspect-ratio: auto;
	object-fit: contain;
	object-position: center center;
	transition: transform var(--xhx-transition-base);
}

.xhx-product-card:hover .xhx-product-card__media img,
.xhx-product-card:focus-within .xhx-product-card__media img {
	transform: scale(1.025);
}

.xhx-product-card__media--electrical img {
	transform: scale(1.08);
}

.xhx-product-card__media--control img {
	transform: scale(1.12);
}

.xhx-product-card__media--oem img {
	transform: scale(0.94);
}

.xhx-product-card__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 0.7rem;
	min-height: auto;
	padding: 1rem;
	background: #f3f6f9;
}

.xhx-product-card__placeholder::before {
	content: "";
	width: 3.1rem;
	height: 2.4rem;
	border: 1.5px solid rgba(68, 84, 104, 0.18);
	border-radius: 0.75rem;
	background:
		radial-gradient(circle at 74% 34%, rgba(134, 148, 165, 0.5) 0 0.18rem, transparent 0.2rem),
		linear-gradient(140deg, transparent 52%, rgba(134, 148, 165, 0.32) 53% 61%, transparent 62%),
		linear-gradient(36deg, transparent 40%, rgba(134, 148, 165, 0.28) 41% 48%, transparent 49%);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.72);
}

.xhx-product-card .wp-block-post-title a,
.xhx-product-card .wp-block-heading a {
	color: inherit;
	text-decoration: none;
}

.xhx-product-card .wp-block-post-title a:hover,
.xhx-product-card .wp-block-post-title a:focus-visible,
.xhx-product-card .wp-block-heading a:hover,
.xhx-product-card .wp-block-heading a:focus-visible {
	color: var(--xhx-color-primary-600);
}

.xhx-product-card .wp-block-heading {
	min-height: 3.2rem;
	margin-bottom: 0.45rem;
}

.xhx-manual-grid--products > *,
.xhx-query-grid--products .wp-block-post-template > * {
	margin-block-start: 0 !important;
}

.xhx-product-card__link {
	margin-top: auto;
	padding-top: 0.9rem;
}

.xhx-product-card__applications {
	margin: -0.1rem 0 0;
	color: var(--xhx-color-primary-600) !important;
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.xhx-product-card__link a {
	color: var(--xhx-color-primary-700);
	font-weight: 700;
	text-decoration: none;
}

.xhx-product-card .xhx-placeholder-panel__label {
	justify-content: center;
	text-align: center;
	padding: 0;
	border-radius: 0;
	background: transparent;
	color: var(--xhx-color-steel-700);
	font-size: 0.78rem;
	font-weight: 600;
	letter-spacing: 0.03em;
}

.xhx-products__cta {
	margin-top: var(--xhx-section-cta-gap);
}

.xhx-product-hero-grid {
	align-items: center;
	gap: clamp(1.5rem, 3vw, 3rem);
}

.xhx-product-hero-grid .xhx-button-row {
	margin-top: 1.65rem;
}

.xhx-product-hero-grid .wp-block-post-terms {
	margin-bottom: 0.85rem;
}

.xhx-product-hero-grid__content > *:last-child {
	margin-bottom: 0;
}

.xhx-product-hero-media-block,
.xhx-product-hero-media {
	width: 100%;
}

.xhx-product-hero-media {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: clamp(21rem, 34vw, 29rem);
	margin: 0;
	padding: clamp(1rem, 1.9vw, 1.25rem);
	border: 1px solid rgba(68, 84, 104, 0.12);
	border-radius: 18px;
	background: #f3f6f9;
	overflow: hidden;
	box-sizing: border-box;
	aspect-ratio: 5 / 4;
}

.xhx-product-hero-media img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}

.xhx-side-panel > .wp-block-heading:not(:first-child) {
	margin-top: 1.45rem;
}

.xhx-side-panel .xhx-side-panel--cta {
	margin-top: 1.65rem;
}

.xhx-side-panel--cta .wp-block-heading.has-xl-font-size {
	max-width: 11ch;
}

.xhx-case-studies__intro {
	max-width: 46rem;
}

.xhx-case-studies__intro .has-lg-font-size {
	max-width: 41rem;
	color: var(--xhx-color-steel-700);
}

.xhx-card--case,
.xhx-case-card {
	gap: 0.95rem;
	border-radius: 14px;
	box-shadow: 0 12px 28px rgba(18, 59, 102, 0.055);
}

.xhx-case-card .wp-block-post-title a,
.xhx-case-card .wp-block-heading a,
.xhx-case-card .wp-block-post-terms a {
	color: inherit;
	text-decoration: none;
}

.xhx-case-card .wp-block-post-title a:hover,
.xhx-case-card .wp-block-post-title a:focus-visible,
.xhx-case-card .wp-block-heading a:hover,
.xhx-case-card .wp-block-heading a:focus-visible {
	color: var(--xhx-color-primary-600);
}

.xhx-case-card__media {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-width: 100%;
	margin-bottom: 1rem;
	padding: 1rem;
	border: 1px solid rgba(68, 84, 104, 0.12);
	border-radius: 14px;
	overflow: hidden;
	aspect-ratio: 4 / 3;
	background: #f3f6f9;
	box-sizing: border-box;
	align-self: stretch;
}

.xhx-case-card__media > a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.xhx-case-card__media img {
	width: 100%;
	height: 100%;
	aspect-ratio: auto;
	object-position: center center;
	transition: transform var(--xhx-transition-base);
}

.xhx-case-card__media--enclosure img,
.xhx-case-card__media--chassis img {
	object-fit: contain;
}

.xhx-case-card__media--enclosure img {
	transform: scale(1.06);
}

.xhx-case-card__media--chassis img {
	transform: scale(0.92);
}

.xhx-case-card:hover .xhx-case-card__media img,
.xhx-case-card:focus-within .xhx-case-card__media img {
	transform: scale(1.02);
}

.xhx-case-card:hover .xhx-case-card__media--enclosure img,
.xhx-case-card:focus-within .xhx-case-card__media--enclosure img {
	transform: scale(1.08);
}

.xhx-case-card:hover .xhx-case-card__media--chassis img,
.xhx-case-card:focus-within .xhx-case-card__media--chassis img {
	transform: scale(0.95);
}

.xhx-case-card__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 0.7rem;
	padding: 1rem;
	background: #f3f6f9;
}

.xhx-case-card__placeholder::before {
	content: "";
	width: 3rem;
	height: 2.35rem;
	border: 1.5px solid rgba(68, 84, 104, 0.18);
	border-radius: 0.7rem;
	background:
		radial-gradient(circle at 74% 34%, rgba(134, 148, 165, 0.5) 0 0.18rem, transparent 0.2rem),
		linear-gradient(140deg, transparent 52%, rgba(134, 148, 165, 0.32) 53% 61%, transparent 62%),
		linear-gradient(36deg, transparent 40%, rgba(134, 148, 165, 0.28) 41% 48%, transparent 49%);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.72);
}

.xhx-case-card__category,
.xhx-case-card .wp-block-post-terms {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin: 0;
	min-height: 2.45rem;
	color: var(--xhx-color-primary-700);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	align-items: flex-end;
}

.xhx-case-card .wp-block-heading,
.xhx-case-card .wp-block-post-title {
	min-height: 4.6rem;
	margin-bottom: 0.2rem;
	line-height: 1.24;
}

.xhx-case-card__section {
	display: grid;
	grid-template-rows: auto 1fr;
	gap: 0.45rem;
	margin-block-start: 0 !important;
}

.xhx-case-card__section:nth-of-type(1) {
	min-height: 6.8rem;
}

.xhx-case-card__section:nth-of-type(2) {
	min-height: 7rem;
}

.xhx-case-card__section:nth-of-type(3) {
	min-height: 6.35rem;
}

.xhx-case-card__label {
	margin: 0;
	color: var(--xhx-color-steel-700);
	font-size: 0.77rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.xhx-case-card__section p:last-child,
.xhx-case-card .wp-block-post-excerpt,
.xhx-case-card .wp-block-post-excerpt p {
	margin: 0;
	color: var(--xhx-color-steel-700);
	line-height: 1.66;
}

.xhx-case-card__link,
.xhx-case-card .wp-block-read-more {
	margin-top: auto;
	padding-top: 0.95rem;
}

.xhx-case-card__link a,
.xhx-case-card .wp-block-read-more {
	color: var(--xhx-color-primary-700);
	font-weight: 700;
	text-decoration: none;
}

.xhx-case-card .xhx-placeholder-panel__label {
	justify-content: center;
	text-align: center;
	padding: 0;
	border-radius: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
	color: var(--xhx-color-steel-700);
	font-size: 0.78rem;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: none;
}

.xhx-query-grid--cases .wp-block-post-template,
.xhx-manual-grid--cases {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1rem, 2vw, 1.5rem);
}

.xhx-query-grid--cases .wp-block-post-template > *,
.xhx-manual-grid--cases > * {
	margin-block-start: 0 !important;
}

.xhx-case-studies__cta {
	margin-top: var(--xhx-section-cta-gap);
}


@media (max-width: 1100px) {
	.xhx-query-grid--cases .wp-block-post-template,
	.xhx-manual-grid--cases {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xhx-site-footer__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.xhx-site-footer__col--brand {
		grid-column: span 3;
	}

	.xhx-site-footer__col--project {
		grid-column: auto;
	}

	.xhx-hero-grid {
		display: flex;
		flex-wrap: nowrap;
		gap: 1.75rem;
		min-height: auto;
	}

	.xhx-hero-grid__content {
		flex: 1 1 54% !important;
		min-width: 0;
	}

	.xhx-hero-grid__media {
		flex: 1 1 46% !important;
		min-width: 0;
	}

	.xhx-section--hero .wp-block-heading.has-4xl-font-size {
		max-width: 11.6ch;
	}

	.xhx-hero-media {
		width: 100%;
		min-height: 27.5rem;
	}

	.xhx-primary-navigation .wp-block-navigation__submenu-container {
		right: 0;
		left: auto;
		min-width: min(23rem, calc(100vw - 3rem));
	}
}

.xhx-section--factory {
	position: relative;
}

.xhx-section--factory::before {
	content: "";
	position: absolute;
	inset: 1rem 0;
	z-index: -1;
	border-radius: 30px;
	background:
		linear-gradient(180deg, rgba(249, 251, 253, 0.96), rgba(255, 255, 255, 0.82)),
		radial-gradient(circle at top right, rgba(18, 59, 102, 0.045), transparent 34%);
}

.xhx-factory__intro {
	max-width: 46rem;
}

.xhx-factory__intro .has-lg-font-size {
	max-width: 40rem;
	color: var(--xhx-color-steel-700);
}

.xhx-factory-gallery {
	margin-top: clamp(1.5rem, 2.4vw, 2rem);
	gap: clamp(1rem, 2vw, 1.4rem);
	align-items: stretch;
}

.xhx-factory-gallery__featured,
.xhx-factory-gallery__stack {
	display: flex;
	flex-direction: column;
}

.xhx-factory-gallery__stack {
	gap: clamp(1rem, 2vw, 1.4rem);
}

.xhx-factory-media {
	margin: 0;
	width: 100%;
	overflow: hidden;
	border: 1px solid rgba(68, 84, 104, 0.1);
	border-radius: 14px;
	background: #f3f6f9;
	box-shadow: 0 8px 24px rgba(18, 59, 102, 0.04);
}

.xhx-factory-media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.xhx-factory-media--featured {
	height: 100%;
	min-height: 33rem;
}

.xhx-factory-media--stacked {
	flex: 1 1 0;
	min-height: 15.8rem;
}

.xhx-factory-process-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	align-items: stretch;
	gap: 1rem;
	margin-top: clamp(1.5rem, 2.4vw, 2rem);
}

.xhx-factory-process-grid > * {
	margin-block-start: 0 !important;
}

.xhx-factory-process {
	display: grid;
	grid-template-rows: auto auto minmax(2.4rem, auto) 1fr;
	align-content: start;
	row-gap: 0;
	height: 100%;
	padding-top: 1.55rem;
	border-top: 1px solid rgba(68, 84, 104, 0.12);
}

.xhx-factory-process__step,
.xhx-factory-process .wp-block-heading,
.xhx-factory-process p {
	margin: 0;
}

.xhx-factory-process__step {
	display: inline-flex;
	align-items: center;
	color: var(--xhx-color-accent-600);
	font-weight: 800;
	letter-spacing: 0.08em;
	margin-bottom: 0.9rem;
}

.xhx-factory-process .wp-block-heading {
	display: flex;
	align-items: flex-start;
	margin-bottom: 0.75rem;
	line-height: 1.15;
}

.xhx-factory-process p {
	line-height: 1.58;
	color: var(--xhx-color-steel-700);
}

.xhx-factory__cta {
	display: flex;
	justify-content: center;
	margin-top: var(--xhx-section-cta-gap);
}

.xhx-section--advantages {
	position: relative;
}

.xhx-section--advantages::before {
	content: "";
	position: absolute;
	inset: 1rem 0;
	z-index: -1;
	border-radius: 30px;
	background:
		linear-gradient(180deg, rgba(249, 251, 253, 0.96), rgba(255, 255, 255, 0.78)),
		radial-gradient(circle at top left, rgba(18, 59, 102, 0.045), transparent 34%);
}

.xhx-advantages-layout {
	gap: clamp(1.35rem, 3vw, 2.35rem);
	align-items: start;
}

.xhx-advantages__intro {
	max-width: 30rem;
}

.xhx-advantages__intro .has-lg-font-size {
	max-width: 28rem;
	color: var(--xhx-color-steel-700);
}

.xhx-facts-grid.wp-block-group {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	grid-auto-rows: minmax(7.25rem, auto);
	align-items: stretch;
	width: 100%;
	max-width: none !important;
	gap: 0.85rem;
	margin-top: 1.5rem;
}

/* Override the core constrained-layout rule so every fact fills its grid cell. */
.xhx-facts-grid.wp-block-group.wp-block-group-is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	max-width: none !important;
	margin: 0 !important;
}

.xhx-facts-grid > .wp-block-group.xhx-fact-card,
.xhx-facts-grid > .xhx-fact-card,
.xhx-advantage-grid > .xhx-advantage-card {
	width: 100%;
	max-width: none !important;
	min-width: 0;
	margin-block-start: 0 !important;
	margin-inline: 0 !important;
}

.xhx-facts-grid > .wp-block-group.xhx-fact-card {
	align-self: stretch;
	justify-self: stretch;
	inline-size: 100% !important;
	block-size: 100%;
}

.xhx-fact-card {
	display: flex;
	box-sizing: border-box;
	height: 100%;
	min-height: 7.25rem;
	padding: 1rem 1rem 1.05rem;
	border: 1px solid rgba(68, 84, 104, 0.12);
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.94);
}

.xhx-fact-card__content {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	justify-content: center;
	min-width: 0;
	width: 100%;
	max-width: none !important;
	padding: 0 !important;
}

.xhx-fact-card__label,
.xhx-fact-card__value {
	margin: 0;
}

.xhx-fact-card__label {
	color: var(--xhx-color-steel-700);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.xhx-fact-card__value {
	margin-top: 0.45rem;
	color: var(--xhx-color-deep);
	font-weight: 800;
	line-height: 1.18;
}

.xhx-advantages__cta {
	margin-top: 1.45rem;
}

.xhx-advantage-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	grid-auto-rows: 1fr;
	align-items: stretch;
	gap: 1rem;
}

.xhx-advantage-grid > * {
	margin-block-start: 0 !important;
}

.xhx-advantage-card {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	box-sizing: border-box;
	height: 100%;
	min-height: 13.5rem;
	padding: 1.15rem 1.15rem 1.2rem;
	border-radius: 12px;
	border-color: rgba(68, 84, 104, 0.12);
	background: rgba(255, 255, 255, 0.95);
	box-shadow: 0 8px 22px rgba(18, 59, 102, 0.04);
}

.xhx-advantage-card:hover,
.xhx-advantage-card:focus-within {
	transform: translateY(-2px);
	border-color: rgba(37, 99, 166, 0.16);
	box-shadow: 0 14px 28px rgba(14, 23, 34, 0.07);
}

.xhx-advantage-card__meta {
	display: flex;
	align-items: center;
	min-height: 2rem;
	flex: 0 0 2rem;
	gap: 0.65rem;
	margin-bottom: 1rem;
}

.xhx-advantage-card__step,
.xhx-advantage-card__symbol {
	margin: 0;
}

.xhx-advantage-card__step {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2rem;
	min-height: 2rem;
	padding: 0.3rem;
	border: 1px solid rgba(37, 99, 166, 0.14);
	border-radius: 10px;
	background: rgba(244, 247, 250, 0.92);
	color: var(--xhx-color-primary-700);
	font-weight: 800;
	letter-spacing: 0.02em;
}

.xhx-advantage-card__symbol {
	display: inline-flex;
	align-items: center;
	padding: 0.34rem 0.66rem;
	border: 1px solid rgba(68, 84, 104, 0.1);
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.92);
	color: var(--xhx-color-steel-700);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}


.xhx-advantage-card__title {
	min-height: 3.7rem;
	margin: 0 0 0.7rem;
	width: 100%;
	max-width: none !important;
	padding: 0 !important;
}

.xhx-advantage-card .wp-block-heading {
	margin: 0;
	line-height: 1.16;
}


.xhx-advantage-card__description {
	flex: 1 1 auto;
	min-width: 0;
	width: 100%;
	max-width: none !important;
	padding: 0 !important;
}

.xhx-advantage-card__description p {
	margin-top: 0;
	margin-bottom: 0;
	line-height: 1.58;
	color: var(--xhx-color-steel-700);
}

.xhx-section--industries {
	position: relative;
}

.xhx-section--industries::before {
	content: "";
	position: absolute;
	inset: 1rem 0;
	z-index: -1;
	border-radius: 30px;
	background:
		linear-gradient(180deg, rgba(249, 251, 253, 0.96), rgba(255, 255, 255, 0.78)),
		radial-gradient(circle at top right, rgba(18, 59, 102, 0.045), transparent 34%);
}

.xhx-industries__intro {
	max-width: 56rem;
}

.xhx-industries__intro .has-lg-font-size {
	max-width: 45rem;
	color: var(--xhx-color-steel-700);
}

.xhx-query-grid--industries .wp-block-post-template,
.xhx-industries-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(1rem, 2vw, 1.35rem);
}

.xhx-query-grid--industries .wp-block-post-template > *,
.xhx-industries-grid > * {
	margin-block-start: 0 !important;
}

.xhx-card--industry,
.xhx-industry-card {
	display: grid;
	grid-template-rows: auto minmax(3.1rem, auto) minmax(6.35rem, 1fr) auto;
	align-content: start;
	row-gap: 0;
	padding: clamp(1.25rem, 1.8vw, 1.5rem);
	border-radius: 14px;
	border-color: rgba(68, 84, 104, 0.12);
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 250, 252, 0.95));
	box-shadow: 0 12px 28px rgba(18, 59, 102, 0.06);
}

.xhx-card--industry:hover,
.xhx-card--industry:focus-within,
.xhx-industry-card:hover,
.xhx-industry-card:focus-within {
	transform: translateY(-3px);
	border-color: rgba(37, 99, 166, 0.18);
	box-shadow: 0 18px 36px rgba(14, 23, 34, 0.08);
}

.xhx-industry-card__meta {
	gap: 0.7rem;
	margin-bottom: 1.15rem;
}

.xhx-industry-card__step,
.xhx-industry-card__symbol {
	margin: 0;
}

.xhx-industry-card__step {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.05rem;
	min-height: 2.05rem;
	padding: 0.32rem;
	border: 1px solid rgba(37, 99, 166, 0.14);
	border-radius: 11px;
	background: rgba(244, 247, 250, 0.92);
	color: var(--xhx-color-primary-700);
	font-weight: 800;
	letter-spacing: 0.02em;
}

.xhx-industry-card__symbol {
	display: inline-flex;
	align-items: center;
	padding: 0.35rem 0.68rem;
	border: 1px solid rgba(68, 84, 104, 0.1);
	border-radius: 11px;
	background: rgba(255, 255, 255, 0.92);
	color: var(--xhx-color-steel-700);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.xhx-industry-card .wp-block-heading,
.xhx-industry-card .wp-block-post-title {
	display: flex;
	align-items: flex-start;
	min-height: 3.1rem;
	margin-bottom: 1rem;
	line-height: 1.16;
}

.xhx-industry-card .wp-block-post-title a,
.xhx-industry-card .wp-block-heading a {
	color: inherit;
	text-decoration: none;
}

.xhx-industry-card .wp-block-post-title a:hover,
.xhx-industry-card .wp-block-post-title a:focus-visible,
.xhx-industry-card .wp-block-heading a:hover,
.xhx-industry-card .wp-block-heading a:focus-visible {
	color: var(--xhx-color-primary-600);
}

.xhx-industry-card .wp-block-post-excerpt,
.xhx-industry-card p {
	line-height: 1.62;
}

.xhx-industry-card > .wp-block-post-excerpt,
.xhx-industry-card > p:not(.xhx-industry-card__link) {
	min-height: 6.35rem;
	margin-bottom: 0;
	color: var(--xhx-color-steel-700);
}

.xhx-industry-card__link {
	margin-top: auto;
	padding-top: 1rem;
	align-self: end;
}

.xhx-industry-card__link a {
	color: var(--xhx-color-primary-700);
	font-weight: 700;
	text-decoration: none;
}

.xhx-industries__cta {
	margin-top: var(--xhx-section-cta-gap);
}

.xhx-section--capabilities {
	position: relative;
}

.xhx-section--capabilities::before {
	content: "";
	position: absolute;
	inset: 1.2rem 0;
	z-index: -1;
	border-radius: 30px;
	background:
		linear-gradient(180deg, rgba(244, 247, 250, 0.94), rgba(255, 255, 255, 0.72)),
		radial-gradient(circle at top left, rgba(18, 59, 102, 0.05), transparent 34%);
}

.xhx-capabilities__intro {
	max-width: 54rem;
}

.xhx-capabilities__intro .has-lg-font-size {
	max-width: 46rem;
	color: var(--xhx-color-steel-700);
}

.xhx-query-grid--capabilities .wp-block-post-template,
.xhx-capabilities-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(1rem, 2vw, 1.35rem);
}

.xhx-query-grid--capabilities .wp-block-post-template > *,
.xhx-capabilities-grid > * {
	margin-block-start: 0 !important;
}

.xhx-card--capability,
.xhx-capability-card {
	position: relative;
	display: grid;
	grid-template-rows: auto minmax(3.05rem, auto) minmax(5.9rem, 1fr) auto;
	align-content: start;
	row-gap: 0;
	padding: clamp(1.35rem, 1.9vw, 1.65rem);
	border-radius: 14px;
	border-color: rgba(68, 84, 104, 0.12);
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.95));
	box-shadow: 0 14px 30px rgba(18, 59, 102, 0.06);
}

.xhx-card--capability:hover,
.xhx-card--capability:focus-within,
.xhx-capability-card:hover,
.xhx-capability-card:focus-within {
	transform: translateY(-4px);
	border-color: rgba(37, 99, 166, 0.18);
	box-shadow: 0 18px 38px rgba(14, 23, 34, 0.09);
}

.xhx-capability-card__meta {
	gap: 0.75rem;
	margin-bottom: 1.2rem;
}

.xhx-capability-card__step,
.xhx-capability-card__symbol {
	margin: 0;
}

.xhx-capability-card__step {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.25rem;
	min-height: 2.25rem;
	padding: 0.35rem;
	border: 1px solid rgba(37, 99, 166, 0.14);
	border-radius: 12px;
	background: rgba(244, 247, 250, 0.92);
	color: var(--xhx-color-primary-700);
	font-weight: 800;
	letter-spacing: 0.02em;
}

.xhx-capability-card__symbol {
	display: inline-flex;
	align-items: center;
	padding: 0.38rem 0.72rem;
	border: 1px solid rgba(68, 84, 104, 0.1);
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.92);
	color: var(--xhx-color-steel-700);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.xhx-capability-card .wp-block-heading,
.xhx-capability-card .wp-block-post-title {
	display: flex;
	align-items: flex-start;
	min-height: 3.05rem;
	margin-bottom: 1.35rem;
	line-height: 1.16;
}

.xhx-capability-card .wp-block-post-title a,
.xhx-capability-card .wp-block-heading a {
	color: inherit;
	text-decoration: none;
}

.xhx-capability-card .wp-block-post-title a:hover,
.xhx-capability-card .wp-block-post-title a:focus-visible,
.xhx-capability-card .wp-block-heading a:hover,
.xhx-capability-card .wp-block-heading a:focus-visible {
	color: var(--xhx-color-primary-600);
}

.xhx-capability-card .wp-block-post-excerpt,
.xhx-capability-card p {
	line-height: 1.68;
}

.xhx-capability-card > .wp-block-post-excerpt,
.xhx-capability-card > p:not(.xhx-capability-card__link) {
	min-height: 5.9rem;
	margin-bottom: 0;
}

.xhx-capability-card__link {
	margin-top: auto;
	padding-top: 1.1rem;
	align-self: end;
}

.xhx-capability-card__link a {
	color: var(--xhx-color-primary-700);
	font-weight: 700;
	text-decoration: none;
}

.xhx-capabilities__cta {
	margin-top: var(--xhx-section-cta-gap);
}

@media (max-width: 781px) {
	.xhx-card--capability,
	.xhx-capability-card {
		grid-template-rows: auto minmax(3.05rem, auto) minmax(5.4rem, 1fr) auto;
	}
}

@media (max-width: 480px) {
	.xhx-card--capability,
	.xhx-capability-card {
		grid-template-rows: auto auto auto auto;
	}

	.xhx-capability-card__meta {
		margin-bottom: 1rem;
	}

	.xhx-capability-card .wp-block-heading,
	.xhx-capability-card .wp-block-post-title,
	.xhx-capability-card > .wp-block-post-excerpt,
	.xhx-capability-card > p:not(.xhx-capability-card__link) {
		min-height: 0;
	}

	.xhx-capability-card .wp-block-heading,
	.xhx-capability-card .wp-block-post-title {
		margin-bottom: 1rem;
	}

	.xhx-capability-card__link {
		padding-top: 0.9rem;
	}
}

/* Video Center: native archive cards and a click-to-load single player. */
.xhx-video-archive,
.xhx-video-single-hero,
.xhx-video-content,
.xhx-video-transcript,
.xhx-video-related {
	width: 100%;
	max-width: calc(var(--xhx-content-standard) + (var(--xhx-pad-desktop) * 2));
	margin-inline: auto;
	padding-inline: var(--xhx-pad-desktop);
	box-sizing: border-box;
}

.xhx-video-archive {
	padding-top: clamp(2.5rem, 5vw, 4.25rem);
	padding-bottom: clamp(4.5rem, 6vw, 6rem);
}

.xhx-video-archive__intro {
	max-width: 68rem;
	margin-inline: auto;
	text-align: center;
}

.xhx-video-single-hero__inner {
	max-width: 54rem;
}

.xhx-video-archive__intro > h1,
.xhx-video-single-hero h1 {
	margin: 0.9rem 0 1.3rem;
	color: var(--xhx-color-navy-900, #0d2238);
	font-size: clamp(2.625rem, 4.1vw, 4rem);
	line-height: 1.07;
	letter-spacing: -0.025em;
}

.xhx-video-archive__intro > p:last-child,
.xhx-video-single-hero__description {
	max-width: 48rem;
	margin: 0 auto;
	color: var(--xhx-color-steel-700);
	font-size: clamp(1.08rem, 1.6vw, 1.28rem);
	line-height: 1.62;
}

.xhx-video-archive__intro .xhx-breadcrumbs {
	margin-bottom: 1.1rem;
	text-align: center;
}

.xhx-video-archive__intro .xhx-breadcrumbs__list {
	justify-content: center;
}

.xhx-video-filters {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 0.7rem;
	margin: clamp(2rem, 3vw, 2.5rem) 0 clamp(1.75rem, 3vw, 2.25rem);
}

.xhx-video-filters a {
	display: inline-flex;
	min-height: 2.75rem;
	align-items: center;
	justify-content: center;
	padding: 0.62rem 1rem;
	border: 1px solid var(--xhx-color-mist-300, #dce3e8);
	border-radius: 8px;
	color: var(--xhx-color-primary-800, #174a7e);
	font-size: 0.9rem;
	font-weight: 700;
	text-decoration: none;
}

.xhx-video-filters a:hover,
.xhx-video-filters a:focus-visible,
.xhx-video-filters a.is-current {
	border-color: var(--xhx-color-primary-700, #1d5b9b);
	background: var(--xhx-color-primary-700, #1d5b9b);
	color: #fff;
}

.xhx-video-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1.25rem, 2vw, 1.75rem);
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
}

.xhx-video-card {
	display: flex;
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
	flex-direction: column;
	border: 1px solid var(--xhx-color-mist-200, #e8ecef);
	border-radius: 16px;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 7px 18px rgba(17, 38, 60, 0.05);
	transition: border-color var(--xhx-transition-fast), box-shadow var(--xhx-transition-fast), transform var(--xhx-transition-fast);
}

.xhx-video-card:hover {
	border-color: var(--xhx-color-mist-300, #dce3e8);
	box-shadow: 0 12px 26px rgba(17, 38, 60, 0.09);
	transform: translateY(-2px);
}

.xhx-video-card__media,
.xhx-video-poster,
.xhx-video-player {
	display: block;
	position: relative;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: #edf1f3;
}

.xhx-video-card__media:focus-visible,
.xhx-video-card a:focus-visible,
.xhx-video-related__item:focus-visible,
.xhx-video-player__button:focus-visible {
	outline: 3px solid var(--xhx-color-accent-600, #e76f21);
	outline-offset: 3px;
}

.xhx-video-poster {
	display: grid;
	place-items: center;
	width: 100%;
	height: 100%;
}

.xhx-video-poster img,
.xhx-video-player__media {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.xhx-video-poster.is-placeholder {
	background: #edf1f3;
	color: var(--xhx-color-steel-600, #56697b);
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.xhx-video-play {
	display: grid;
	position: absolute;
	left: 50%;
	top: 50%;
	width: 3.25rem;
	height: 3.25rem;
	place-items: center;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	background: rgba(13, 34, 56, 0.88);
}

.xhx-video-play span {
	width: 0;
	height: 0;
	margin-left: 0.18rem;
	border-top: 0.42rem solid transparent;
	border-bottom: 0.42rem solid transparent;
	border-left: 0.62rem solid #fff;
}

.xhx-video-card:hover .xhx-video-poster img {
	transform: scale(1.025);
}

.xhx-video-card__media:hover .xhx-video-play,
.xhx-video-card__media:focus-visible .xhx-video-play {
	transform: translate(-50%, -50%) scale(1.05);
}

.xhx-video-poster img {
	transition: transform 180ms ease;
}

.xhx-video-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	min-width: 0;
	padding: 1.5rem;
}

.xhx-video-card__category,
.xhx-video-card__duration {
	margin: 0;
	color: var(--xhx-color-primary-700, #1d5b9b);
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.xhx-video-card h2 {
	min-height: 2.5em;
	margin: 0.6rem 0 0;
	font-size: clamp(1.25rem, 1.7vw, 1.45rem);
	font-weight: 700;
	line-height: 1.25;
	overflow-wrap: normal;
	word-break: normal;
}

.xhx-video-card h2 a,
.xhx-video-card__link a {
	color: var(--xhx-color-navy-900, #0d2238);
	text-decoration: none;
}

.xhx-video-card__description {
	margin: 0.65rem 0 0;
	color: var(--xhx-color-steel-700);
	font-size: 0.96rem;
	line-height: 1.58;
	overflow-wrap: normal;
	word-break: normal;
}

.xhx-video-card__duration { margin-top: 0.75rem; }
.xhx-video-card__link { margin: auto 0 0; padding-top: 0.85rem; font-weight: 800; }
.xhx-video-card__link a { color: var(--xhx-color-primary-700, #1d5b9b); }
.xhx-video-card__link a::after { content: ' →'; }

.xhx-video-empty {
	max-width: 42rem;
	margin: 2.5rem auto 0;
	padding: clamp(2rem, 4vw, 3rem);
	border: 1px solid var(--xhx-color-mist-200, #e8ecef);
	border-radius: 14px;
	background: #fff;
	text-align: center;
}

.xhx-video-empty .wp-block-buttons { justify-content: center; margin-top: 1.35rem; }
.xhx-video-pagination { display: flex; justify-content: center; }
.xhx-video-archive .page-numbers { display: flex; flex-wrap: wrap; gap: 0.45rem; margin: 2rem 0 0; padding: 0; list-style: none; }
.xhx-video-archive .page-numbers a, .xhx-video-archive .page-numbers span { display: block; padding: 0.55rem 0.75rem; border: 1px solid var(--xhx-color-mist-300, #dce3e8); color: var(--xhx-color-primary-700, #1d5b9b); text-decoration: none; }

.xhx-video-single-hero { padding-top: clamp(3rem, 6vw, 5.5rem); }
.xhx-video-single-hero__inner { margin-inline: auto; }
.xhx-video-single-hero .xhx-video-card__category { margin-top: 1.75rem; }
.xhx-video-player { width: 100%; margin-top: clamp(1.8rem, 3vw, 2.5rem); border-radius: 14px; }
.xhx-video-player__button { position: absolute; inset: 0; display: grid; place-items: center; border: 0; background: transparent; color: #fff; cursor: pointer; font: inherit; font-weight: 800; }
.xhx-video-player__button > span:last-child { position: absolute; bottom: 1.15rem; left: 1.15rem; text-shadow: 0 1px 8px rgba(0,0,0,.8); }
.xhx-video-player__button .xhx-video-play { position: static; transform: none; }
.xhx-video-content { max-width: calc(920px + (var(--xhx-pad-desktop) * 2)); padding-top: clamp(2rem, 4vw, 3rem); padding-bottom: 1rem; }
.xhx-video-content .wp-block-post-content > h2 { margin-top: 2.6rem; font-size: clamp(1.5rem, 2.5vw, 2rem); }
.xhx-video-content .wp-block-post-content > p, .xhx-video-transcript p { color: var(--xhx-color-steel-700); font-size: 1.04rem; line-height: 1.72; }
.xhx-video-transcript { max-width: calc(920px + (var(--xhx-pad-desktop) * 2)); padding-top: 1rem; padding-bottom: 1rem; }
.xhx-video-transcript h2, .xhx-video-related h2 { margin: 0 0 1rem; color: var(--xhx-color-navy-900, #0d2238); font-size: clamp(1.4rem, 2vw, 1.8rem); }
.xhx-video-related { padding-top: 2rem; padding-bottom: clamp(4rem, 6vw, 5.5rem); }
.xhx-video-related__links { margin-bottom: 2.5rem; }
.xhx-video-related__links > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem; }
.xhx-video-related__item { display: flex; flex-direction: column; gap: 0.32rem; padding: 1rem 1.1rem; border: 1px solid var(--xhx-color-mist-200, #e8ecef); border-radius: 10px; color: var(--xhx-color-navy-900, #0d2238); text-decoration: none; }
.xhx-video-related__item span { color: var(--xhx-color-primary-700, #1d5b9b); font-size: .74rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }

@media (max-width: 1024px) {
	.xhx-video-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 781px) {
	.xhx-video-archive, .xhx-video-single-hero, .xhx-video-content, .xhx-video-transcript, .xhx-video-related { padding-inline: var(--xhx-pad-tablet); }
	.xhx-video-archive { padding-top: clamp(2.25rem, 6vw, 3rem); padding-bottom: clamp(3.5rem, 7vw, 4.5rem); }
}

@media (max-width: 480px) {
	.xhx-video-archive, .xhx-video-single-hero, .xhx-video-content, .xhx-video-transcript, .xhx-video-related { padding-inline: var(--xhx-pad-mobile); }
	.xhx-video-grid, .xhx-video-related__links > div { grid-template-columns: 1fr; }
	.xhx-video-card__body { min-height: 0; }
	.xhx-video-archive__intro > h1, .xhx-video-single-hero h1 { font-size: clamp(2.3rem, 11vw, 3.15rem); }
	.xhx-video-filters { gap: 0.55rem; margin-top: 1.75rem; }
	.xhx-video-filters a { flex: 1 1 auto; }
	/* Reserve room for the existing fixed contact controls on narrow screens. */
	.xhx-video-empty .wp-block-buttons { padding-right: 3.25rem; }
}

@media (min-width: 1100px) {
	.xhx-video-archive__intro > h1 { white-space: nowrap; }
}

@media (prefers-reduced-motion: reduce) {
	.xhx-video-card, .xhx-video-poster img { transition: none; }
	.xhx-video-card:hover { transform: none; }
}

/* Resources, Guides, and FAQ pages. */
.xhx-archive-hero--resources .wp-block-heading {
	max-width: 50rem;
	margin: 1rem 0 1.25rem !important;
}

.xhx-archive-hero--resources .has-lg-font-size {
	max-width: 48rem;
	margin: 0 !important;
	color: var(--xhx-color-steel-700);
}

.xhx-resource-landing-section,
.xhx-resource-grid,
.xhx-faq-accordion--resource {
	width: 100%;
	max-width: calc(var(--xhx-content-wide) + (var(--xhx-pad-desktop) * 2));
	margin-right: auto;
	margin-left: auto;
	padding-inline: var(--xhx-pad-desktop);
	box-sizing: border-box;
}

.xhx-resource-landing-section {
	margin-top: clamp(4.5rem, 6vw, 5.5rem);
}

.xhx-resource-section__heading {
	margin-bottom: clamp(2.2rem, 3vw, 3rem);
}

.xhx-resource-section__heading .xhx-eyebrow {
	margin: 0 0 0.8rem;
}

.xhx-resource-section__heading h2 {
	margin: 0;
	font-size: clamp(2rem, 3.2vw, 3rem);
}

.xhx-resource-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1.2rem, 2vw, 1.5rem);
}

.xhx-blog-archive {
	margin-top: clamp(2.5rem, 4vw, 4rem);
	margin-bottom: clamp(4rem, 6vw, 5.5rem);
}

.xhx-main--blog .xhx-archive-hero {
	padding-bottom: 0;
}

.xhx-main--blog .xhx-archive-hero .has-lg-font-size,
.xhx-blog-category-intro > p:last-child {
	max-width: 48rem;
	margin-bottom: 0;
	color: var(--xhx-color-steel-700);
}

.xhx-blog-category-intro h1 {
	margin: 0.85rem 0 1.25rem;
	font-size: clamp(2.25rem, 4vw, 3.5rem);
	line-height: 1.06;
}

.xhx-blog-category-filter {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	width: 100%;
	max-width: 1200px;
	margin: clamp(1.8rem, 3vw, 2.5rem) auto 0;
	padding-inline: var(--xhx-pad-desktop);
}

.xhx-blog-category-filter__link {
	display: inline-flex;
	align-items: center;
	min-height: 2.5rem;
	padding: 0.52rem 0.9rem;
	border: 1px solid rgba(68, 84, 104, 0.2);
	border-radius: 0.55rem;
	color: var(--xhx-color-primary-800);
	background: #fff;
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	transition: color 180ms ease, border-color 180ms ease, background-color 180ms ease, transform 180ms ease;
}

.xhx-blog-category-filter__link:hover,
.xhx-blog-category-filter__link:focus-visible {
	border-color: rgba(244, 124, 32, 0.7);
	color: var(--xhx-color-primary-900);
	background: #fff8f1;
	transform: translateY(-1px);
}

.xhx-blog-category-filter__link.is-current {
	border-color: var(--xhx-color-primary-700);
	color: #fff;
	background: var(--xhx-color-primary-700);
}

.xhx-blog-archive .xhx-resource-grid {
	padding-inline: 0;
	max-width: none;
}

.xhx-resource-pagination {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.45rem;
	margin: clamp(2rem, 3vw, 2.75rem) 0 0;
}

.xhx-resource-pagination ul.page-numbers {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.45rem;
	padding: 0;
	margin: 0;
	list-style: none;
}

.xhx-resource-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.45rem;
	min-height: 2.45rem;
	padding: 0.35rem 0.65rem;
	border: 1px solid var(--xhx-color-mist-200);
	border-radius: 0.5rem;
	color: var(--xhx-color-primary-700);
	text-decoration: none;
	font-weight: 700;
}

.xhx-resource-pagination .page-numbers.current,
.xhx-resource-pagination .page-numbers:hover,
.xhx-resource-pagination .page-numbers:focus-visible {
	border-color: var(--xhx-color-primary-700);
	background: var(--xhx-color-primary-700);
	color: #fff;
}

.xhx-resource-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	border: 1px solid var(--xhx-color-mist-200);
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 10px 24px rgba(18, 59, 102, 0.045);
	overflow: hidden;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.xhx-resource-card:hover,
.xhx-resource-card:focus-within {
	border-color: rgba(37, 99, 166, 0.24);
	box-shadow: 0 14px 28px rgba(18, 59, 102, 0.09);
	transform: translateY(-2px);
}

.xhx-resource-card__media {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 0;
	margin: 0;
	border-bottom: 1px solid var(--xhx-color-mist-200);
	background: #f5f7f8;
	aspect-ratio: 16 / 10;
	color: var(--xhx-color-steel-700);
	text-decoration: none;
}

.xhx-resource-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.xhx-resource-media-placeholder {
	flex-direction: column;
	gap: 0.65rem;
	font-size: 0.82rem;
}

.xhx-resource-media-placeholder__text {
	color: var(--xhx-color-steel-700);
	font-size: 0.78rem;
	font-weight: 650;
}

.xhx-resource-media-placeholder__icon {
	width: 2.7rem;
	height: 2.1rem;
	border: 1.5px solid rgba(68, 84, 104, 0.28);
	border-radius: 0.4rem;
}

.xhx-resource-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 1.3rem;
}

.xhx-resource-card__topic,
.xhx-resource-card__date {
	margin: 0;
	color: var(--xhx-color-primary-700);
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.xhx-resource-card__date {
	margin-top: 0.55rem;
	color: var(--xhx-color-steel-700);
	font-size: 0.76rem;
	letter-spacing: 0.04em;
}

.xhx-resource-card h2 {
	min-height: 3.1rem;
	margin: 0.7rem 0 0;
	font-size: clamp(1.25rem, 1.5vw, 1.5rem);
	line-height: 1.24;
}

.xhx-resource-card h2 a,
.xhx-resource-card__link a,
.xhx-resource-section__cta a {
	color: inherit;
	text-decoration: none;
}

.xhx-resource-card__excerpt {
	margin: 0.9rem 0 0;
	color: var(--xhx-color-steel-700);
	line-height: 1.62;
}

.xhx-resource-card__link,
.xhx-resource-section__cta {
	margin: auto 0 0;
	padding-top: 1.1rem;
	color: var(--xhx-color-primary-700);
	font-weight: 700;
}

.xhx-resource-section__cta {
	margin-top: 1.85rem;
	padding: 0;
	text-align: center;
}

.xhx-faq-accordion--resource {
	max-width: calc(920px + (var(--xhx-pad-desktop) * 2));
}

.xhx-main--faq-page .xhx-faq-accordion--resource {
	margin-top: clamp(2.7rem, 4vw, 4rem);
	margin-bottom: clamp(4.5rem, 6vw, 5.5rem);
}

@media (max-width: 1024px) {
	.xhx-resource-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 781px) {
	.xhx-resource-landing-section,
	.xhx-resource-grid,
	.xhx-faq-accordion--resource { padding-inline: var(--xhx-pad-tablet); }
	.xhx-blog-category-filter { padding-inline: var(--xhx-pad-tablet); }
	.xhx-blog-post-navigation,
	.xhx-blog-destinations,
	.xhx-blog-related { width: min(100% - (var(--xhx-pad-tablet) * 2), 1200px); }
	.xhx-blog-destinations { grid-template-columns: 1fr; }
}

@media (max-width: 480px) {
	.xhx-resource-landing-section,
	.xhx-resource-grid,
	.xhx-faq-accordion--resource { padding-inline: var(--xhx-pad-mobile); }
	.xhx-blog-category-filter { flex-wrap: nowrap; overflow-x: auto; padding-inline: var(--xhx-pad-mobile); padding-bottom: 0.2rem; }
	.xhx-blog-category-filter__link { flex: 0 0 auto; }
	.xhx-blog-post-navigation,
	.xhx-blog-destinations,
	.xhx-blog-related { width: min(100% - (var(--xhx-pad-mobile) * 2), 1200px); }
	.xhx-blog-post-navigation { grid-template-columns: 1fr; }
	.xhx-blog-post-navigation a:last-child { text-align: left; }
	.xhx-resource-grid { grid-template-columns: 1fr; }
	.xhx-resource-card h2 { min-height: 0; }
}

.xhx-placeholder-panel {
	background:
		linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(242, 246, 250, 0.98)),
		repeating-linear-gradient(
			135deg,
			rgba(18, 59, 102, 0.045) 0,
			rgba(18, 59, 102, 0.045) 16px,
			rgba(255, 255, 255, 0.1) 16px,
			rgba(255, 255, 255, 0.1) 32px
		);
	color: var(--xhx-color-deep);
	align-items: end;
	display: flex;
}

.xhx-placeholder-panel__label {
	display: inline-flex;
	align-items: center;
	padding: 0.7rem 0.9rem;
	border: 1px solid rgba(68, 84, 104, 0.1);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.82);
	color: var(--xhx-color-primary-700);
	text-transform: uppercase;
	letter-spacing: 0.16em;
	line-height: 1.5;
}

.xhx-card--resource,
.xhx-resource-card {
	gap: 0.95rem;
	border-radius: 14px;
	box-shadow: 0 10px 24px rgba(18, 59, 102, 0.05);
}

.xhx-resource-card__meta {
	margin: 0;
	color: var(--xhx-color-primary-700);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.xhx-resource-card .wp-block-heading {
	min-height: 3.2rem;
	margin-bottom: 0.15rem;
	line-height: 1.24;
}

.xhx-resource-card > p:not(.xhx-resource-card__meta):not(.xhx-resource-card__link) {
	margin: 0;
	min-height: 6rem;
	color: var(--xhx-color-steel-700);
	line-height: 1.68;
}

.xhx-resource-card__link {
	margin-top: auto;
	padding-top: 0.9rem;
}

.xhx-resource-card__link a {
	color: var(--xhx-color-primary-700);
	font-weight: 700;
	text-decoration: none;
}

.xhx-resources__cta {
	margin-top: clamp(2rem, 2.9vw, 2.4rem);
	margin-bottom: 0;
}

.xhx-featured-media {
	margin-bottom: clamp(1.5rem, 3vw, 2rem);
}

.xhx-featured-media img {
	border-radius: var(--xhx-radius-panel);
}

.xhx-main--single .xhx-page-shell > .wp-block-post-content {
	max-width: 48rem;
	margin-inline: auto;
}

.xhx-blog-post-date {
	margin: 0.7rem 0 0;
	color: var(--xhx-color-steel-700);
	font-size: 0.82rem;
	font-weight: 650;
}

.xhx-blog-post-summary {
	max-width: 44rem;
	margin: 1rem 0 0;
	color: var(--xhx-color-steel-700);
	font-size: clamp(1rem, 1.4vw, 1.15rem);
	line-height: 1.58;
}

.xhx-main--single .wp-block-post-content > :where(h2, h3) {
	margin-top: clamp(2.25rem, 4vw, 3.25rem);
}

.xhx-blog-post-navigation,
.xhx-blog-destinations,
.xhx-blog-related {
	width: min(100% - (var(--xhx-pad-desktop) * 2), 1200px);
	margin-right: auto;
	margin-left: auto;
}

.xhx-blog-post-navigation {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
	margin-top: clamp(3rem, 5vw, 4.5rem);
}

.xhx-blog-post-navigation a,
.xhx-blog-destinations a {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	padding: 1.1rem 1.2rem;
	border: 1px solid var(--xhx-color-mist-200);
	border-radius: 0.75rem;
	color: var(--xhx-color-deep);
	background: #fff;
	text-decoration: none;
}

.xhx-blog-post-navigation a:last-child {
	text-align: right;
}

.xhx-blog-post-navigation span,
.xhx-blog-destinations span {
	color: var(--xhx-color-steel-700);
	font-size: 0.82rem;
	line-height: 1.45;
}

.xhx-blog-post-navigation strong,
.xhx-blog-destinations strong {
	font-size: 1rem;
	line-height: 1.35;
}

.xhx-blog-related {
	margin-top: clamp(4rem, 6vw, 5.5rem);
}

.xhx-blog-related > h2 {
	margin-top: 0.7rem;
	margin-bottom: 1.8rem;
}

.xhx-blog-destinations {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	margin-top: clamp(3rem, 5vw, 4.5rem);
}

.xhx-blog-post-navigation a:hover,
.xhx-blog-post-navigation a:focus-visible,
.xhx-blog-destinations a:hover,
.xhx-blog-destinations a:focus-visible {
	border-color: rgba(244, 124, 32, 0.7);
	box-shadow: 0 8px 20px rgba(18, 59, 102, 0.08);
}

.xhx-page-shell--two-column .wp-block-columns {
	gap: clamp(1.25rem, 4vw, 3rem);
}

.xhx-chip-list,
.xhx-chip-list a,
.xhx-side-panel .wp-block-post-terms {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
}

.xhx-side-panel .wp-block-post-terms a {
	padding: 0.45rem 0.85rem;
	border-radius: var(--xhx-radius-pill);
	background: var(--xhx-color-mist-100);
	color: var(--xhx-color-primary-700);
	text-decoration: none;
	font-size: 0.9rem;
	font-weight: 600;
}

.xhx-side-panel--cta {
	background: linear-gradient(180deg, rgba(18, 59, 102, 0.92), rgba(14, 23, 34, 0.97));
	color: #fff;
	box-shadow: 0 28px 60px rgba(14, 23, 34, 0.18);
}

.xhx-side-panel--cta .xhx-eyebrow,
.xhx-side-panel--cta .wp-block-heading,
.xhx-side-panel--cta p {
	color: #fff;
}

.xhx-side-panel--cta .xhx-eyebrow {
	color: rgba(255, 255, 255, 0.72);
}

.xhx-side-panel--cta .wp-block-button.is-style-outline .wp-element-button {
	background: transparent;
	border-color: rgba(255, 255, 255, 0.28);
	color: #fff;
}

.xhx-faq-list .wp-block-post-template {
	display: grid;
	gap: 1rem;
	list-style: none;
	padding: 0;
	margin: 0;
}

.xhx-faq-item {
	margin: 0;
	padding: 0;
	width: 100%;
	border: 1px solid rgba(68, 84, 104, 0.12);
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: 0 10px 24px rgba(18, 59, 102, 0.05);
	overflow: hidden;
}

.xhx-faq-item summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1.15rem 1.35rem;
	list-style: none;
	cursor: pointer;
	font-weight: 700;
	color: var(--xhx-color-deep);
}

.xhx-faq-item summary::-webkit-details-marker {
	display: none;
}

.xhx-faq-item__question {
	display: block;
	line-height: 1.42;
}

.xhx-faq-item__indicator {
	position: relative;
	width: 1rem;
	height: 1rem;
	flex: 0 0 auto;
}

.xhx-faq-item__indicator::before,
.xhx-faq-item__indicator::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0.85rem;
	height: 1.5px;
	border-radius: 999px;
	background: currentColor;
	transform: translate(-50%, -50%);
	transition: transform var(--xhx-transition-base), opacity var(--xhx-transition-base);
}

.xhx-faq-item__indicator::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

.xhx-faq-item[open] {
	background: rgba(255, 255, 255, 1);
}

.xhx-faq-item[open] .xhx-faq-item__indicator::after {
	opacity: 0;
	transform: translate(-50%, -50%) rotate(90deg) scaleX(0.2);
}

.xhx-faq-item__answer {
	padding: 0 1.35rem 1.2rem;
	color: var(--xhx-color-steel-700);
}

.xhx-faq-item__answer p {
	margin: 0;
	line-height: 1.72;
}

.xhx-faq-item summary:focus-visible {
	outline: 2px solid rgba(37, 99, 166, 0.44);
	outline-offset: -2px;
}

.xhx-rfq-panel {
	--xhx-rfq-heading-size: clamp(2rem, 2.4vw, 2.15625rem);
	display: grid;
	grid-template-columns: minmax(0, 1.9fr) minmax(17.5rem, 0.65fr);
	align-items: center;
	gap: clamp(2rem, 3vw, 3rem);
	margin-block: 0;
	padding: clamp(3.25rem, 4.6vw, 4.25rem) clamp(3rem, 4vw, 3.5rem);
	border: 1px solid rgba(148, 163, 184, 0.18);
	border-radius: 16px;
	background: #0f1f31;
	color: #fff;
	box-shadow: 0 18px 40px rgba(8, 15, 26, 0.2);
}

.xhx-rfq-panel.wp-block-columns > .wp-block-column {
	/* WordPress stores percentage flex bases in the block markup; the shared grid owns sizing. */
	flex-basis: auto !important;
	width: auto;
	margin: 0;
	min-width: 0;
}

.xhx-rfq-panel .xhx-eyebrow,
.xhx-rfq-panel p,
.xhx-rfq-panel li,
.xhx-rfq-panel .wp-block-heading {
	color: #fff;
}

.xhx-rfq-panel .xhx-eyebrow {
	margin-bottom: 0.75rem;
	color: rgba(255, 255, 255, 0.72);
}

.xhx-rfq-panel .xhx-rfq-panel__content > .wp-block-heading {
	max-width: none;
	margin: 1.1rem 0 0;
	font-size: var(--xhx-rfq-heading-size);
	font-weight: 700;
	letter-spacing: -0.05em;
	line-height: 1.1;
}

.xhx-rfq-panel .xhx-rfq-panel__content > p:last-of-type {
	max-width: 45rem;
	margin: 1.25rem 0 0;
	color: rgba(255, 255, 255, 0.82);
	font-size: 1rem;
	line-height: 1.58;
}

.xhx-rfq-panel .xhx-button-row {
	gap: 0.9rem;
	margin-top: 1.8rem;
}

.xhx-rfq-panel .xhx-button-row .wp-block-button__link {
	min-height: 3.1rem;
	padding: 0.8rem 1.5rem;
	border-radius: 0.75rem;
	font-size: 1rem;
}

.xhx-rfq-panel__side {
	align-self: center;
	padding: clamp(2.25rem, 2.8vw, 2.75rem);
	border: 1px solid rgba(148, 163, 184, 0.2);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.05);
}

.xhx-rfq-panel__label {
	margin: 0 0 1.1rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.68);
}

.xhx-rfq-panel__checklist {
	display: grid;
	gap: 0.85rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.xhx-rfq-panel__checklist li {
	position: relative;
	padding-left: 1.25rem;
	line-height: 1.45;
	color: rgba(255, 255, 255, 0.88);
}

.xhx-rfq-panel__checklist li::before {
	content: "";
	position: absolute;
	top: 0.5rem;
	left: 0;
	width: 0.52rem;
	height: 0.52rem;
	border-radius: 50%;
	background: var(--xhx-color-accent-600);
	box-shadow: 0 0 0 4px rgba(244, 124, 32, 0.16);
}

@media (max-width: 1300px) and (min-width: 782px) {
	.xhx-rfq-panel {
		--xhx-rfq-heading-size: 1.95rem;
		grid-template-columns: minmax(0, 1.85fr) minmax(16.5rem, 0.65fr);
		gap: 2rem;
		padding-inline: 3rem;
	}
}

.xhx-site-footer {
	--xhx-footer-heading-size: 1rem;
	--xhx-footer-link-size: 0.875rem;
	--xhx-footer-link-leading: 1.45;
	--xhx-footer-link-gap: 0.5rem;
	--xhx-footer-heading-gap: 0.875rem;
	--xhx-footer-icon-size: 2.625rem;
	--xhx-footer-icon-glyph-size: 1.1875rem;
	--xhx-footer-icon-radius: 0.625rem;
	margin-top: 0;
	padding-inline: clamp(1.125rem, 2.7vw, 2rem);
	color: rgba(226, 232, 240, 0.88);
	background: #0b1726;
}

.xhx-site-footer .wp-block-heading,
.xhx-site-footer .xhx-eyebrow,
.xhx-site-footer a {
	color: rgba(248, 250, 252, 0.98);
}

.xhx-site-footer p {
	margin-block: 0;
	color: rgba(203, 213, 225, 0.9);
}

.xhx-site-footer__top {
	padding-inline: 0;
}

.xhx-site-footer__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) repeat(5, minmax(0, 0.82fr));
	align-items: start;
	gap: clamp(1rem, 1.3vw, 1.4rem);
}

.xhx-site-footer__grid > .wp-block-column {
	margin: 0;
	min-width: 0;
}

.xhx-site-footer__col {
	display: flex;
	flex-direction: column;
	align-self: start;
}

.xhx-site-footer__grid .wp-block-heading {
	margin-bottom: var(--xhx-footer-heading-gap);
	font-size: var(--xhx-footer-heading-size);
	font-weight: 650;
	line-height: 1.2;
}

.xhx-site-footer__col--brand .wp-block-heading {
	font-size: 1.25rem;
	font-weight: 700;
}

.xhx-site-footer__col--brand > p:not(.xhx-site-footer__location) {
	max-width: 18.5rem;
	font-size: 0.875rem;
	line-height: 1.5;
}

.xhx-site-footer .wp-block-separator {
	margin-block: clamp(2rem, 2.4vw, 2.75rem) clamp(1.125rem, 1.6vw, 1.5rem);
	opacity: 0.28;
}

.xhx-site-footer .xhx-footer-nav,
.xhx-site-footer .xhx-footer-nav .wp-block-navigation__container {
	gap: var(--xhx-footer-link-gap);
	margin-top: 0;
}

.xhx-footer-nav .wp-block-navigation-item__content,
.xhx-site-footer .wp-block-navigation .wp-block-navigation-item__content,
.xhx-site-footer .wp-block-navigation .wp-block-navigation-item__content:link,
.xhx-site-footer .wp-block-navigation .wp-block-navigation-item__content:visited,
.xhx-footer-nav a {
	padding: 0;
	color: rgba(226, 232, 240, 0.88) !important;
	font-size: var(--xhx-footer-link-size);
	line-height: var(--xhx-footer-link-leading);
	text-decoration: none;
}

.xhx-footer-nav .wp-block-navigation-item__content:hover,
.xhx-footer-nav .wp-block-navigation-item__content:focus-visible,
.xhx-site-footer .wp-block-navigation .wp-block-navigation-item__content:hover,
.xhx-site-footer .wp-block-navigation .wp-block-navigation-item__content:focus-visible,
.xhx-footer-nav a:hover,
.xhx-footer-nav a:focus-visible {
	color: rgba(255, 255, 255, 1) !important;
	text-decoration: underline;
	text-underline-offset: 0.24em;
}

.xhx-footer-nav .wp-block-navigation-item__content:focus-visible,
.xhx-footer-nav a:focus-visible {
	outline: 2px solid rgba(244, 124, 32, 0.88);
	outline-offset: 3px;
	border-radius: 4px;
}

.xhx-site-footer__location {
	margin-top: 0.75rem;
	font-size: 0.875rem;
	line-height: 1.5;
	color: rgba(226, 232, 240, 0.88);
}

.xhx-footer-social {
	display: flex;
	flex-wrap: wrap;
	gap: 0.625rem;
	margin-top: 1.125rem;
}

.xhx-footer-social__link,
.xhx-floating-contact__action {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--xhx-footer-icon-size);
	height: var(--xhx-footer-icon-size);
	border: 1px solid rgba(203, 213, 225, 0.56);
	border-radius: var(--xhx-footer-icon-radius);
	color: rgba(248, 250, 252, 0.98);
	background: rgba(37, 61, 90, 0.95);
	transition: color 180ms ease, border-color 180ms ease, background-color 180ms ease, transform 180ms ease;
}

.xhx-footer-social__link svg,
.xhx-floating-contact__action svg {
	width: var(--xhx-footer-icon-glyph-size);
	height: var(--xhx-footer-icon-glyph-size);
}

.xhx-footer-social__link {
	position: relative;
}

.xhx-footer-social__link::after {
	position: absolute;
	bottom: calc(100% + 0.55rem);
	left: 50%;
	padding: 0.38rem 0.55rem;
	border-radius: 0.35rem;
	color: #fff;
	background: var(--xhx-color-primary-900);
	content: attr(data-tooltip);
	font-size: 0.75rem;
	font-weight: 650;
	line-height: 1.1;
	white-space: nowrap;
	opacity: 0;
	pointer-events: none;
	transform: translate(-50%, 0.2rem);
	transition: opacity var(--xhx-transition-base), transform var(--xhx-transition-base);
}

.xhx-footer-social__link:hover::after,
.xhx-footer-social__link:focus::after,
.xhx-footer-social__link:focus-visible::after {
	opacity: 1;
	transform: translate(-50%, 0);
}

.xhx-footer-social__link:hover,
.xhx-footer-social__link:focus-visible {
	border-color: rgba(244, 124, 32, 0.9);
	color: #fff;
	background: rgba(244, 124, 32, 0.34);
	transform: translateY(-1px);
}

.xhx-footer-social__link.is-unconfigured,
.xhx-floating-contact__action.is-unconfigured {
	cursor: default;
	opacity: 0.86;
}

.xhx-footer-social__link.is-unconfigured:hover,
.xhx-footer-social__link.is-unconfigured:focus-visible {
	border-color: rgba(226, 232, 240, 0.82);
	color: #fff;
	background: rgba(37, 61, 90, 1);
}

.xhx-footer-social__link:focus-visible,
.xhx-floating-contact__action:focus-visible {
	outline: 2px solid var(--xhx-color-accent-500);
	outline-offset: 3px;
}

.xhx-floating-contact {
	position: fixed;
	z-index: 50;
	right: max(1rem, env(safe-area-inset-right));
	top: 60vh;
	display: grid;
	gap: 0.55rem;
	transition: opacity 180ms ease, visibility 180ms ease;
}

.xhx-floating-contact.is-footer-visible,
.xhx-floating-contact.is-contact-form-visible {
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
}

.xhx-floating-contact__action {
	position: relative;
	width: 3rem;
	height: 3rem;
	border-color: rgba(18, 59, 102, 0.34);
	border-radius: var(--xhx-footer-icon-radius);
	color: var(--xhx-color-primary-800);
	background: #fff;
	box-shadow: 0 7px 18px rgba(14, 23, 34, 0.14);
}

.xhx-floating-contact__action svg {
	width: 1.25rem;
	height: 1.25rem;
}

.xhx-floating-contact__action--email:hover,
.xhx-floating-contact__action--email:focus-visible {
	border-color: var(--xhx-color-accent-600);
	color: var(--xhx-color-accent-700);
	background: #fff8f1;
}

.xhx-floating-contact__action--whatsapp {
	border-color: rgba(22, 163, 74, 0.38);
	color: #15803d;
}

.xhx-floating-contact__action--whatsapp:hover,
.xhx-floating-contact__action--whatsapp:focus-visible {
	border-color: #15803d;
	color: #fff;
	background: #16a34a;
}

.xhx-floating-contact__action::after {
	position: absolute;
	right: calc(100% + 0.6rem);
	padding: 0.38rem 0.55rem;
	border-radius: 0.35rem;
	color: #fff;
	background: var(--xhx-color-primary-900);
	content: attr(data-tooltip);
	font-size: 0.78rem;
	font-weight: 650;
	line-height: 1.1;
	white-space: nowrap;
	opacity: 0;
	pointer-events: none;
	transform: translateX(0.25rem);
	transition: opacity var(--xhx-transition-base), transform var(--xhx-transition-base);
}

.xhx-floating-contact__action:hover::after,
.xhx-floating-contact__action:focus-visible::after {
	opacity: 1;
	transform: translateX(0);
}

@media (max-width: 781px) {
	.xhx-floating-contact {
		top: auto;
		right: max(0.85rem, env(safe-area-inset-right));
		bottom: max(1rem, env(safe-area-inset-bottom));
		display: flex;
		gap: 0.45rem;
	}

	.xhx-floating-contact__action {
		width: 2.9rem;
		height: 2.9rem;
	}

	.xhx-floating-contact__action::after {
		display: none;
	}

}

@media (max-width: 480px) {
	.xhx-rfq-page .xhx-floating-contact.is-production-mode {
		display: none;
	}
}

.xhx-site-footer__bottom {
	gap: 0.7rem 1.2rem;
	align-items: center;
	padding-bottom: 0.125rem;
}

.xhx-site-footer__bottom p {
	margin: 0;
	color: rgba(203, 213, 225, 0.78);
	font-size: 0.75rem;
	line-height: 1.35;
}

.xhx-site-footer__bottom-links {
	gap: 0.9rem 1.25rem;
}

.xhx-site-footer__bottom .xhx-footer-nav--inline {
	flex: 0 1 auto;
}

.xhx-site-footer__bottom .xhx-language-switcher-block {
	margin-left: auto;
}

.xhx-site-footer .xhx-language-switcher {
	display: flex;
}

.xhx-site-footer__bottom .xhx-language-switcher__list {
	gap: 0.2rem;
}

.xhx-site-footer__bottom .xhx-language-switcher__summary,
.xhx-site-footer__bottom .xhx-language-switcher__link {
	border-color: rgba(148, 163, 184, 0.28);
	background: transparent;
	color: rgba(255, 255, 255, 0.82);
}

.xhx-site-footer__bottom .xhx-language-switcher__link:hover,
.xhx-site-footer__bottom .xhx-language-switcher__link:focus-visible,
.xhx-site-footer__bottom .xhx-language-switcher__summary:hover,
.xhx-site-footer__bottom .xhx-language-switcher__summary:focus-visible,
.xhx-site-footer__bottom .xhx-language-switcher__link.is-current {
	color: #fff;
	border-color: rgba(244, 124, 32, 0.52);
	background: rgba(244, 124, 32, 0.08);
}

.xhx-footer-nav--inline .wp-block-navigation-item__content,
.xhx-footer-nav--inline a {
	padding: 0;
}

.xhx-company-image-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 15rem;
	margin-block: 1rem 1.5rem;
	border: 1px dashed rgba(68, 84, 104, 0.24);
	border-radius: 14px;
	color: var(--xhx-color-steel-700);
	background: #f3f6f8;
}

.xhx-company-image-placeholder p {
	margin: 0;
	font-weight: 650;
}

.xhx-page-shell .fluentform {
	margin-block: 1.5rem 2.5rem;
	padding: clamp(1rem, 2vw, 1.5rem);
	border: 1px solid rgba(68, 84, 104, 0.14);
	border-radius: 14px;
	background: #fff;
}

.xhx-page-shell .fluentform .ff-el-group {
	margin-bottom: 1.1rem;
}

.xhx-page-shell .fluentform .ff-el-form-control,
.xhx-page-shell .fluentform select,
.xhx-page-shell .fluentform textarea {
	border-color: rgba(68, 84, 104, 0.25);
	border-radius: 8px;
}

.xhx-page-shell .fluentform .ff-btn-submit {
	border-radius: 999px;
	background: var(--xhx-color-accent-600);
	font-weight: 700;
}

/* Contact Form 7 uses the same restrained form treatment as the theme. */
.xhx-page-shell .wpcf7 {
	margin-block: 1.5rem 2.5rem;
	padding: clamp(1rem, 2vw, 1.5rem);
	border: 1px solid rgba(68, 84, 104, 0.14);
	border-radius: 14px;
	background: #fff;
}

.xhx-page-shell .wpcf7-form p {
	margin: 0 0 1.1rem;
}

/* Native RFQ form: public controls, private server-side file handling. */
.xhx-rfq-native-form { margin-top: 2rem; }
.xhx-rfq-native-form form { display: grid; gap: 1.25rem; }
.xhx-rfq-native-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.1rem 1.25rem; }
.xhx-rfq-native-form label { display: grid; gap: .45rem; color: var(--xhx-color-primary-900, #0c2540); font-weight: 700; }
.xhx-rfq-native-form input, .xhx-rfq-native-form textarea { width: 100%; box-sizing: border-box; border: 1px solid var(--xhx-color-neutral-300, #cbd5df); border-radius: 8px; padding: .82rem .9rem; background: #fff; color: var(--xhx-color-primary-900, #0c2540); font: inherit; }
.xhx-rfq-native-form input:focus-visible, .xhx-rfq-native-form textarea:focus-visible { outline: 3px solid rgba(229, 110, 43, .32); outline-offset: 2px; border-color: var(--xhx-color-accent-600, #e56e2b); }
.xhx-rfq-native-form__upload { padding: 1rem; border: 1px dashed var(--xhx-color-neutral-400, #93a4b5); border-radius: 10px; background: var(--xhx-color-neutral-50, #f6f8fa); }
.xhx-rfq-native-form__upload span { color: var(--xhx-color-neutral-600, #526579); font-size: .9rem; font-weight: 500; }
.xhx-rfq-native-form__honeypot { position: absolute !important; left: -9999px !important; }
.xhx-rfq-native-form__notice { margin: 0 0 1.25rem; padding: .9rem 1rem; border-radius: 8px; font-weight: 650; }
.xhx-rfq-native-form__notice.is-success { border: 1px solid #7ab38c; background: #eef8f0; color: #1d5b32; }
.xhx-rfq-native-form__notice.is-error { border: 1px solid #cf8b78; background: #fff3ef; color: #8a2f1d; }
@media (max-width: 640px) { .xhx-rfq-native-form__grid { grid-template-columns: 1fr; } }

.xhx-page-shell .wpcf7 label {
	display: block;
	font-weight: 650;
	color: var(--xhx-color-primary-900);
}

.xhx-page-shell .wpcf7 input:not([type="checkbox"]),
.xhx-page-shell .wpcf7 select,
.xhx-page-shell .wpcf7 textarea {
	box-sizing: border-box;
	width: 100%;
	margin-top: 0.4rem;
	border: 1px solid rgba(68, 84, 104, 0.25);
	border-radius: 8px;
	padding: 0.72rem 0.8rem;
	font: inherit;
	color: var(--xhx-color-primary-900);
}

.xhx-contact-layout .xhx-file-upload {
	position: relative;
}

.xhx-contact-layout .xhx-file-upload .wpcf7-form-control-wrap {
	display: block;
	margin-top: 0.4rem;
}

.xhx-contact-layout .xhx-file-upload .wpcf7-file {
	position: absolute;
	inline-size: 1px;
	block-size: 1px;
	opacity: 0;
}

.xhx-contact-layout .xhx-file-upload .wpcf7-form-control-wrap::before {
	display: block;
	padding: 0.72rem 0.8rem;
	border: 1px solid rgba(68, 84, 104, 0.25);
	border-radius: 8px;
	color: var(--xhx-color-primary-700);
	background: #f8fafc;
	content: "Choose a drawing file";
	font-size: 0.94rem;
	font-weight: 650;
	line-height: 1.2;
}

.xhx-contact-layout .xhx-file-upload .wpcf7-form-control-wrap:focus-within::before {
	border-color: var(--xhx-color-accent-600);
	box-shadow: 0 0 0 3px rgba(244, 124, 32, 0.16);
}

.xhx-file-upload__status {
	display: block;
	margin-top: 0.45rem;
	color: var(--xhx-color-steel-700);
	font-size: 0.82rem;
	font-weight: 500;
	line-height: 1.4;
}

.xhx-page-shell .wpcf7 input[type="submit"] {
	border: 0;
	border-radius: 999px;
	padding: 0.8rem 1.2rem;
	background: var(--xhx-color-accent-600);
	color: #fff;
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}

.xhx-page-shell .wpcf7 input[type="submit"]:hover,
.xhx-page-shell .wpcf7 input[type="submit"]:focus-visible {
	background: var(--xhx-color-accent-700);
}

.xhx-page-shell .wpcf7-not-valid-tip,
.xhx-page-shell .wpcf7-response-output {
	margin: 0.45rem 0 0;
	font-size: 0.9rem;
}

.xhx-contact-layout {
	align-items: flex-start;
	gap: clamp(1.5rem, 4vw, 3rem);
	margin: 0;
}

.xhx-contact-layout__form > h2,
.xhx-contact-layout__side > .xhx-contact-info h2,
.xhx-contact-checklist h2,
.xhx-contact-trust > h2,
.xhx-contact-faq > h2,
.xhx-contact-links > h2 {
	margin-top: 0;
	font-size: clamp(1.55rem, 2.2vw, 2rem);
	line-height: 1.14;
}

.xhx-contact-layout__form > p {
	max-width: 42rem;
	margin-top: 0.8rem;
	color: var(--xhx-color-steel-700);
}

.xhx-contact-layout .wpcf7 {
	margin: 1.4rem 0 0;
	padding: clamp(1.15rem, 2.3vw, 1.6rem);
	box-shadow: 0 12px 30px rgba(18, 59, 102, 0.06);
}

.xhx-contact-layout .wpcf7-form p {
	margin-bottom: 1rem;
}

.xhx-contact-layout .wpcf7-acceptance .wpcf7-list-item {
	margin-left: 0;
}

.xhx-contact-layout .wpcf7-acceptance label {
	display: flex;
	align-items: flex-start;
	gap: 0.6rem;
	font-size: 0.9rem;
	font-weight: 500;
	line-height: 1.45;
}

.xhx-contact-layout .wpcf7-acceptance input {
	flex: 0 0 auto;
	margin: 0.2rem 0 0;
}

.xhx-contact-info,
.xhx-contact-checklist {
	border: 1px solid rgba(68, 84, 104, 0.16);
	border-radius: var(--xhx-radius-panel);
	background: #fff;
}

.xhx-contact-info {
	overflow: hidden;
}

.xhx-contact-info__header,
.xhx-contact-checklist {
	padding: clamp(1.15rem, 2.2vw, 1.5rem);
}

.xhx-contact-info__header {
	border-bottom: 1px solid rgba(68, 84, 104, 0.12);
	background: rgba(243, 246, 248, 0.72);
}

.xhx-contact-info__header .xhx-eyebrow,
.xhx-contact-checklist .xhx-eyebrow,
.xhx-contact-trust .xhx-eyebrow,
.xhx-contact-faq .xhx-eyebrow {
	margin: 0 0 0.65rem;
}

.xhx-contact-info__row {
	display: grid;
	grid-template-columns: 2.25rem minmax(0, 1fr);
	gap: 0.8rem;
	padding: 1rem clamp(1.15rem, 2.2vw, 1.5rem);
	border-bottom: 1px solid rgba(68, 84, 104, 0.1);
}

.xhx-contact-info__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 0.6rem;
	color: var(--xhx-color-primary-700);
	background: var(--xhx-color-mist-100);
}

.xhx-contact-info__icon svg {
	width: 1.1rem;
	height: 1.1rem;
}

.xhx-contact-info__row h3,
.xhx-contact-info__row p {
	margin: 0;
}

.xhx-contact-info__row h3,
.xhx-contact-location-card__label {
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.3;
	text-transform: uppercase;
}

.xhx-contact-info__row p,
.xhx-contact-location-card p {
	margin-top: 0.3rem;
	color: var(--xhx-color-steel-700);
	font-size: 0.94rem;
	line-height: 1.5;
}

.xhx-contact-info__row.is-unconfigured p {
	font-style: italic;
	color: var(--xhx-color-steel-600);
}

.xhx-contact-info__row a,
.xhx-contact-location-card a,
.xhx-contact-links a {
	color: var(--xhx-color-primary-700);
	font-weight: 650;
}

.xhx-contact-location-card {
	padding: 1rem clamp(1.15rem, 2.2vw, 1.5rem) 1.2rem;
	background: rgba(243, 246, 248, 0.55);
}

.xhx-contact-location-card p {
	margin-bottom: 0;
}

.xhx-contact-location-card a {
	display: inline-block;
	margin-top: 0.65rem;
}

.xhx-contact-checklist {
	margin-top: 1rem;
}

.xhx-contact-checklist ul {
	display: grid;
	gap: 0.5rem;
	margin: 1rem 0 0;
	padding: 0;
	list-style: none;
}

.xhx-contact-checklist li {
	position: relative;
	padding-left: 1.1rem;
	color: var(--xhx-color-steel-700);
	font-size: 0.93rem;
	line-height: 1.45;
}

.xhx-contact-checklist li::before {
	position: absolute;
	top: 0.45rem;
	left: 0;
	width: 0.38rem;
	height: 0.38rem;
	border-radius: 50%;
	background: var(--xhx-color-accent-600);
	content: "";
}

.xhx-contact-trust,
.xhx-contact-faq,
.xhx-contact-links {
	margin-top: clamp(3rem, 6vw, 4.5rem);
}

.xhx-contact-trust-grid {
	gap: 1rem;
	margin-top: 1.5rem;
}

.xhx-contact-trust-grid > .wp-block-column {
	margin: 0;
	padding: 1.25rem;
	border: 1px solid rgba(68, 84, 104, 0.14);
	border-radius: 0.75rem;
	background: #fff;
}

.xhx-contact-trust-grid h3 {
	margin-top: 0;
	min-height: 2.6em;
	font-size: 1.05rem;
	line-height: 1.28;
}

.xhx-contact-trust-grid p {
	margin-bottom: 0;
	color: var(--xhx-color-steel-700);
	font-size: 0.94rem;
	line-height: 1.5;
}

.xhx-contact-faq {
	max-width: 54rem;
}

.xhx-contact-faq details {
	border-top: 1px solid rgba(68, 84, 104, 0.16);
}

.xhx-contact-faq details:last-of-type {
	border-bottom: 1px solid rgba(68, 84, 104, 0.16);
}

.xhx-contact-faq summary {
	padding: 1rem 2rem 1rem 0;
	color: var(--xhx-color-primary-900);
	font-weight: 700;
	cursor: pointer;
	list-style: none;
}

.xhx-contact-faq summary::-webkit-details-marker {
	display: none;
}

.xhx-contact-faq summary::after {
	float: right;
	margin-right: -1.5rem;
	color: var(--xhx-color-accent-600);
	content: "+";
	font-size: 1.25rem;
	line-height: 1;
}

.xhx-contact-faq details[open] summary::after {
	content: "−";
}

.xhx-contact-faq details p {
	margin: -0.1rem 0 1rem;
	color: var(--xhx-color-steel-700);
	line-height: 1.58;
}

.xhx-contact-links {
	padding: clamp(1.25rem, 3vw, 2rem);
	border: 1px solid rgba(68, 84, 104, 0.14);
	border-radius: var(--xhx-radius-panel);
	background: var(--xhx-color-mist-100);
}

.xhx-contact-links .wp-block-buttons {
	margin: 1.2rem 0;
}

.xhx-contact-links > p {
	margin-bottom: 0;
	color: var(--xhx-color-steel-700);
}

/* Dedicated Contact template: editor-owned content with a settings-driven contact stack. */
.xhx-main--contact {
	background: #fff;
}

.xhx-contact-page {
	padding-bottom: clamp(3.5rem, 7vw, 6.5rem);
}

.xhx-contact-hero {
	width: 100%;
	max-width: none;
	margin: 0 calc(50% - 50vw) clamp(3.25rem, 6vw, 5.25rem);
	padding: clamp(3.75rem, 7vw, 6.25rem) max(var(--xhx-pad-mobile), calc((100vw - var(--xhx-content-wide)) / 2));
	box-sizing: border-box;
	background: #f5f1e9;
	overflow: hidden;
}

.xhx-contact-hero__grid {
	width: min(100%, var(--xhx-content-wide));
	margin: 0 auto;
	gap: clamp(2.5rem, 6vw, 6rem);
}

.xhx-contact-hero__grid > .wp-block-column {
	min-width: 0;
}

.xhx-contact-hero__content .xhx-breadcrumbs {
	margin-bottom: 1.6rem;
}

.xhx-contact-hero__content .xhx-eyebrow {
	margin: 0 0 1.15rem;
}

.xhx-contact-hero__content h1 {
	max-width: 13ch;
	margin: 0;
	color: var(--xhx-color-deep);
	font-size: clamp(2.7rem, 4.7vw, 4.25rem);
	letter-spacing: -0.035em;
	line-height: 0.99;
}

.xhx-contact-hero__intro {
	max-width: 42rem;
	margin: 1.55rem 0 0;
	color: var(--xhx-color-steel-700);
	font-size: clamp(1.05rem, 1.65vw, 1.2rem);
	line-height: 1.65;
}

.xhx-contact-hero__media {
	display: grid;
	place-items: center;
	width: 100%;
	min-height: 21rem;
	margin: 0;
	border: 1px solid rgba(30, 61, 91, 0.16);
	border-radius: 1.5rem;
	background: #fbfaf6;
	box-shadow: 0 20px 45px rgba(32, 49, 66, 0.08);
	overflow: hidden;
	aspect-ratio: 1.28 / 1;
}

.xhx-contact-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.xhx-contact-hero__media--drawing {
	position: relative;
	padding: clamp(1.5rem, 4vw, 3.5rem);
	color: var(--xhx-color-primary-700);
	background-color: #fbfaf6;
	background-image: linear-gradient(rgba(30, 61, 91, 0.055) 1px, transparent 1px), linear-gradient(90deg, rgba(30, 61, 91, 0.055) 1px, transparent 1px);
	background-size: 1.65rem 1.65rem;
}

.xhx-contact-hero__media--drawing::before {
	position: absolute;
	inset: 1rem;
	border: 1px solid rgba(30, 61, 91, 0.1);
	border-radius: 1rem;
	content: "";
}

.xhx-contact-hero__media svg {
	position: relative;
	width: min(100%, 37rem);
	height: auto;
}

.xhx-contact-main-grid {
	width: min(100%, var(--xhx-content-wide));
	margin: 0 auto;
	gap: clamp(1.5rem, 3vw, 2.5rem);
}

.xhx-contact-main-grid > .wp-block-column {
	min-width: 0;
}

.xhx-contact-form-card,
.xhx-contact-info,
.xhx-contact-quote-card {
	border: 1px solid rgba(43, 62, 82, 0.14);
	border-radius: 1.25rem;
	background: #fff;
	box-shadow: 0 14px 32px rgba(26, 42, 57, 0.055);
}

.xhx-contact-form-card {
	padding: clamp(1.5rem, 3vw, 2.5rem);
}

.xhx-contact-form-card .xhx-eyebrow {
	margin: 0 0 0.85rem;
}

.xhx-contact-form-card > h2,
.xhx-contact-quote-card > h2,
.xhx-contact-faq--rebuilt > h2 {
	margin: 0;
	color: var(--xhx-color-deep);
	font-size: clamp(1.65rem, 2.5vw, 2.25rem);
	letter-spacing: -0.035em;
	line-height: 1.1;
}

.xhx-contact-form-card > h2 + p {
	max-width: 38rem;
	margin: 0.85rem 0 0;
	color: var(--xhx-color-steel-700);
	line-height: 1.58;
}

.xhx-contact-form-card .wpcf7 {
	margin: 1.65rem 0 0;
}

.xhx-contact-form-card .wpcf7-form {
	display: block;
}

.xhx-contact-form-card .wpcf7-form > p {
	margin: 0 0 1rem;
}

.xhx-contact-form-card .wpcf7 label {
	display: block;
	color: var(--xhx-color-deep);
	font-size: 0.9375rem;
	font-weight: 720;
	line-height: 1.35;
}

.xhx-contact-form-card .wpcf7 input:not([type="checkbox"]),
.xhx-contact-form-card .wpcf7 select,
.xhx-contact-form-card .wpcf7 textarea {
	box-sizing: border-box;
	width: 100%;
	margin-top: 0.45rem;
	border: 1px solid rgba(43, 62, 82, 0.22);
	border-radius: 0.65rem;
	padding: 0.78rem 0.85rem;
	background: #fff;
	color: var(--xhx-color-deep);
	font: inherit;
}

.xhx-contact-form-card .wpcf7 textarea {
	min-height: 9.25rem;
	resize: vertical;
}

.xhx-contact-form-card .wpcf7 input:focus-visible,
.xhx-contact-form-card .wpcf7 select:focus-visible,
.xhx-contact-form-card .wpcf7 textarea:focus-visible {
	border-color: var(--xhx-color-accent-600);
	box-shadow: 0 0 0 3px rgba(244, 124, 32, 0.15);
	outline: 0;
}

.xhx-contact-form-card .xhx-file-upload {
	position: relative;
	display: block;
	padding: 1rem 1.1rem;
	border: 1px dashed rgba(43, 62, 82, 0.34);
	border-radius: 0.85rem;
	background: #f8fafb;
}

.xhx-contact-form-card .xhx-file-upload::before {
	display: inline-grid;
	width: 2rem;
	height: 2rem;
	margin-right: 0.65rem;
	border-radius: 50%;
	place-items: center;
	color: var(--xhx-color-primary-700);
	background: rgba(30, 77, 122, 0.1);
	content: "↑";
	font-size: 1.1rem;
}

.xhx-contact-form-card .xhx-file-upload__helper {
	display: block;
	margin: 0.4rem 0 0 2.65rem;
	color: var(--xhx-color-steel-700);
	font-size: 0.82rem;
	font-weight: 500;
	line-height: 1.45;
}

.xhx-contact-form-card .xhx-file-upload .wpcf7-form-control-wrap {
	position: absolute;
	inset: 0;
	display: block;
	margin: 0;
}

.xhx-contact-form-card .xhx-file-upload .wpcf7-file {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	cursor: pointer;
	opacity: 0;
}

.xhx-contact-form-card .xhx-file-upload__status {
	display: block;
	margin: 0.85rem 0 0;
	color: var(--xhx-color-steel-700);
	font-size: 0.82rem;
	font-weight: 500;
}

.xhx-contact-form__nda {
	margin: 0;
	padding: 0.85rem 1rem;
	border-left: 3px solid var(--xhx-color-accent-600);
	border-radius: 0 0.5rem 0.5rem 0;
	background: #fff8f0;
	color: var(--xhx-color-steel-700);
	font-size: 0.88rem;
	line-height: 1.5;
}

.xhx-contact-form-card .wpcf7-acceptance .wpcf7-list-item {
	margin-left: 0;
}

.xhx-contact-form-card .wpcf7-acceptance label {
	display: flex;
	gap: 0.65rem;
	align-items: flex-start;
	color: var(--xhx-color-steel-700);
	font-size: 0.87rem;
	font-weight: 500;
}

.xhx-contact-form-card .wpcf7-acceptance input {
	flex: 0 0 auto;
	margin: 0.2rem 0 0;
}

.xhx-contact-form-card .wpcf7 input[type="submit"] {
	min-height: 3.1rem;
	border: 0;
	border-radius: 0.7rem;
	padding: 0.8rem 1.45rem;
	background: var(--xhx-color-accent-600);
	color: #fff;
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}

.xhx-contact-form-card .wpcf7 input[type="submit"]:hover,
.xhx-contact-form-card .wpcf7 input[type="submit"]:focus-visible {
	background: var(--xhx-color-accent-700);
	outline: 2px solid var(--xhx-color-accent-700);
	outline-offset: 3px;
}

.xhx-contact-form-card__trust {
	gap: 0.65rem 1.15rem;
	margin-top: 1.4rem;
	padding-top: 1.2rem;
	border-top: 1px solid rgba(43, 62, 82, 0.12);
}

.xhx-contact-form-card__trust p {
	position: relative;
	margin: 0;
	padding-left: 1.05rem;
	color: var(--xhx-color-steel-700);
	font-size: 0.82rem;
	font-weight: 650;
}

.xhx-contact-form-card__trust p::before,
.xhx-contact-quote-card li::before {
	position: absolute;
	left: 0;
	color: var(--xhx-color-accent-600);
	content: "✓";
	font-weight: 800;
}

.xhx-contact-main-grid__side {
	display: grid;
	align-content: start;
	gap: 1rem;
}

.xhx-contact-info {
	overflow: hidden;
}

.xhx-contact-info__header {
	padding: 1.4rem 1.45rem 1.2rem;
	border-bottom: 1px solid rgba(43, 62, 82, 0.12);
	background: #fff;
}

.xhx-contact-info__header .xhx-eyebrow {
	margin: 0 0 0.7rem;
}

.xhx-contact-info__header h2 {
	margin: 0;
	color: var(--xhx-color-deep);
	font-size: 1.35rem;
	line-height: 1.2;
}

.xhx-contact-info__row {
	display: grid;
	grid-template-columns: 2.6rem minmax(0, 1fr);
	gap: 0.85rem;
	padding: 1.05rem 1.45rem;
	border-bottom: 1px solid rgba(43, 62, 82, 0.1);
}

.xhx-contact-info__icon,
.xhx-contact-location-card__pin {
	display: inline-grid;
	width: 2.45rem;
	height: 2.45rem;
	border-radius: 0.7rem;
	place-items: center;
	color: var(--xhx-color-primary-700);
	background: #eef3f6;
}

.xhx-contact-info__icon svg,
.xhx-contact-location-card__pin svg {
	width: 1.16rem;
	height: 1.16rem;
}

.xhx-contact-info__row h3,
.xhx-contact-info__row p,
.xhx-contact-location-card p {
	margin: 0;
}

.xhx-contact-info__row h3,
.xhx-contact-location-card__label {
	color: var(--xhx-color-deep);
	font-size: 0.76rem;
	font-weight: 750;
	letter-spacing: 0.08em;
	line-height: 1.3;
	text-transform: uppercase;
}

.xhx-contact-info__row p,
.xhx-contact-location-card p:not(.xhx-contact-location-card__label) {
	margin-top: 0.33rem;
	color: var(--xhx-color-steel-700);
	font-size: 0.92rem;
	line-height: 1.45;
}

.xhx-contact-info__row a,
.xhx-contact-location-card a {
	color: var(--xhx-color-primary-700);
	font-weight: 700;
	text-decoration: none;
}

.xhx-contact-info__row a:hover,
.xhx-contact-info__row a:focus-visible,
.xhx-contact-location-card a:hover,
.xhx-contact-location-card a:focus-visible {
	color: var(--xhx-color-accent-700);
	text-decoration: underline;
}

.xhx-contact-info__whatsapp {
	display: inline-block;
	margin-left: 0.7rem;
	font-size: 0.8rem;
}

.xhx-contact-location-card {
	display: grid;
	grid-template-columns: 2.45rem minmax(0, 1fr);
	gap: 0.85rem;
	margin: 1rem;
	padding: 1rem;
	border: 1px solid rgba(43, 62, 82, 0.12);
	border-radius: 0.9rem;
	background: #f6f8f9;
}

.xhx-contact-location-card a {
	display: inline-block;
	margin-top: 0.5rem;
	font-size: 0.86rem;
}

.xhx-contact-quote-card {
	padding: 1.45rem;
}

.xhx-contact-quote-card > h2 {
	font-size: 1.35rem;
}

.xhx-contact-quote-card ul {
	display: grid;
	gap: 0.72rem;
	margin: 1.25rem 0 0;
	padding: 0;
	list-style: none;
}

.xhx-contact-quote-card li {
	position: relative;
	padding-left: 1.4rem;
	color: var(--xhx-color-steel-700);
	font-size: 0.9rem;
	line-height: 1.45;
}

.xhx-contact-quote-card li::before {
	top: 0;
}

.xhx-contact-support {
	width: min(100%, var(--xhx-content-wide));
	margin: clamp(3.25rem, 6vw, 5.5rem) auto 0;
}

.xhx-contact-support__grid {
	gap: 1rem;
}

.xhx-contact-support__grid > .wp-block-column {
	display: flex;
	margin: 0;
}

.xhx-contact-support-card {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 0 1rem;
	width: 100%;
	padding: 1.35rem;
	border: 1px solid rgba(43, 62, 82, 0.14);
	border-radius: 1rem;
	background: #fff;
}

.xhx-contact-support-card__icon {
	grid-row: span 2;
	margin: 0;
	color: var(--xhx-color-accent-600);
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.08em;
}

.xhx-contact-support-card h3 {
	margin: 0;
	color: var(--xhx-color-deep);
	font-size: 1rem;
	line-height: 1.3;
}

.xhx-contact-support-card p:not(.xhx-contact-support-card__icon) {
	margin: 0.5rem 0 0;
	color: var(--xhx-color-steel-700);
	font-size: 0.9rem;
	line-height: 1.5;
}

.xhx-contact-faq--rebuilt {
	width: min(100%, 52rem);
	margin: clamp(3.75rem, 7vw, 6.5rem) auto 0;
	box-sizing: border-box;
}

.xhx-contact-faq--rebuilt > h2 {
	margin-bottom: 1.4rem;
}

.xhx-contact-faq--rebuilt .wp-block-details {
	border-top: 1px solid rgba(43, 62, 82, 0.18);
}

.xhx-contact-faq--rebuilt .wp-block-details:last-child {
	border-bottom: 1px solid rgba(43, 62, 82, 0.18);
}

.xhx-contact-faq--rebuilt summary {
	position: relative;
	padding: 1.05rem 2rem 1.05rem 0;
	color: var(--xhx-color-deep);
	font-weight: 720;
	cursor: pointer;
	list-style: none;
}

.xhx-contact-faq--rebuilt summary::-webkit-details-marker {
	display: none;
}

.xhx-contact-faq--rebuilt summary::after {
	position: absolute;
	right: 0;
	float: none;
	margin-right: 0;
	color: var(--xhx-color-accent-600);
	content: "+";
	font-size: 1.35rem;
	line-height: 1;
}

.xhx-contact-faq--rebuilt details[open] summary::after {
	content: "−";
}

.xhx-contact-faq--rebuilt .wp-block-details p {
	margin: -0.1rem 0 1.1rem;
	color: var(--xhx-color-steel-700);
	line-height: 1.6;
}

@media (max-width: 1024px) {
	.xhx-contact-hero__grid {
		gap: 2.25rem;
	}

	.xhx-contact-hero__content h1 {
		font-size: clamp(2.6rem, 5.5vw, 3.65rem);
	}

	.xhx-contact-main-grid {
		gap: 1.5rem;
	}
}

@media (max-width: 781px) {
	.xhx-contact-hero {
		margin-bottom: 2.75rem;
		padding-block: 3.25rem;
	}

	.xhx-contact-hero__grid,
	.xhx-contact-main-grid {
		flex-direction: column;
	}

	.xhx-contact-hero__grid > .wp-block-column,
	.xhx-contact-main-grid > .wp-block-column {
		flex-basis: 100% !important;
		width: 100%;
	}

	.xhx-contact-hero__content h1 {
		max-width: 12ch;
	}

	.xhx-contact-hero__media {
		min-height: 18rem;
		aspect-ratio: 4 / 3;
	}

	.xhx-contact-support__grid {
		flex-direction: column;
	}

	.xhx-contact-support__grid > .wp-block-column {
		width: 100%;
	}
}

@media (max-width: 480px) {
	.xhx-contact-page {
		padding-bottom: 3.5rem;
	}

	.xhx-contact-hero {
		padding: 2.75rem var(--xhx-pad-mobile);
	}

	.xhx-contact-hero__content .xhx-breadcrumbs {
		margin-bottom: 1.25rem;
	}

	.xhx-contact-hero__content h1 {
		font-size: clamp(2.3rem, 10.5vw, 2.85rem);
	}

	.xhx-contact-hero__media {
		min-height: 14.5rem;
		border-radius: 1.1rem;
	}

	.xhx-contact-form-card,
	.xhx-contact-quote-card {
		padding: 1.25rem;
		border-radius: 1rem;
	}

	.xhx-contact-form-card__trust {
		flex-direction: column;
		align-items: flex-start;
	}

	.xhx-contact-info__row,
	.xhx-contact-location-card {
		padding-inline: 1.1rem;
	}

	.xhx-contact-location-card {
		margin: 0.75rem;
	}
}

.xhx-honeypot {
	position: absolute !important;
	left: -10000px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

.xhx-breadcrumbs,
.rank-math-breadcrumb {
	margin-bottom: 1rem;
	font-size: 0.875rem;
	color: var(--xhx-color-steel-700);
}

.xhx-breadcrumbs__list,
.rank-math-breadcrumb p {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem 0.65rem;
	list-style: none;
	padding: 0;
	margin: 0;
}

.xhx-breadcrumbs__item + .xhx-breadcrumbs__item::before {
	content: "/";
	margin-right: 0.35rem;
	color: var(--xhx-color-steel-500);
}

.xhx-breadcrumbs__item {
	display: inline-flex;
	align-items: center;
	color: var(--xhx-color-steel-700);
}

.xhx-breadcrumbs__link {
	color: var(--xhx-color-primary-700);
	text-decoration: none;
	text-underline-offset: 0.18em;
}

.xhx-breadcrumbs__link:hover {
	color: var(--xhx-color-primary-600);
	text-decoration: underline;
}

.xhx-breadcrumbs__link:focus-visible {
	border-radius: 0.2rem;
	outline: 2px solid var(--xhx-color-accent-500);
	outline-offset: 3px;
}

.xhx-breadcrumbs__current {
	color: var(--xhx-color-deep);
}

.xhx-pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	margin-top: clamp(1.5rem, 3vw, 2rem);
}

.xhx-pagination a,
.xhx-pagination span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.7rem;
	min-height: 2.7rem;
	padding: 0.4rem 0.8rem;
	border: 1px solid rgba(68, 84, 104, 0.12);
	border-radius: 999px;
	background: #fff;
	color: var(--xhx-color-primary-700);
	text-decoration: none;
}

.xhx-pagination .current {
	background: var(--xhx-color-primary-700);
	color: #fff;
	border-color: var(--xhx-color-primary-700);
}

.xhx-search-form {
	margin-bottom: 1.5rem;
}

.xhx-search-form .wp-block-search__inside-wrapper {
	padding: 0.45rem;
	border: 1px solid rgba(68, 84, 104, 0.14);
	border-radius: var(--xhx-radius-pill);
	background: #fff;
}

.xhx-search-form .wp-block-search__input {
	border: 0;
}

.xhx-search-form .wp-block-search__button {
	border-radius: var(--xhx-radius-pill);
	background: var(--xhx-color-primary-700);
}

.xhx-main--404 {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 60vh;
}

.wp-block-post-terms {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem 0.65rem;
	color: var(--xhx-color-steel-700);
}

.wp-block-post-terms a {
	color: inherit;
	text-decoration: none;
}

.wp-block-navigation__responsive-container-open,
.wp-block-navigation__responsive-container-close {
	color: var(--xhx-color-deep);
}

.wp-block-navigation__responsive-container.is-menu-open {
	padding: 1.25rem;
	height: 100vh;
	align-items: flex-start;
	background: rgba(255, 255, 255, 0.98);
	z-index: 1000;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog {
	padding-top: 1rem;
	min-height: 100vh;
	background: rgba(255, 255, 255, 0.98);
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	padding-block: 0.65rem;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	position: relative;
	z-index: 2;
	background: rgba(255, 255, 255, 0.98);
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	max-height: min(60vh, 30rem);
	overflow-y: auto;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 0.15rem;
	width: 100%;
	min-width: 0;
	padding: 0.4rem 0 0.7rem 1rem;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	padding: 0.45rem 0;
}

.wp-block-post-content > :where(h2, h3, h4) {
	margin-top: clamp(2rem, 5vw, 3rem);
}

.wp-block-post-content > :where(p, ul, ol, figure, table, blockquote) {
	max-width: 100%;
}

.wp-block-post-content table {
	width: 100%;
	border-collapse: collapse;
}

.wp-block-post-content td,
.wp-block-post-content th {
	padding: 0.75rem 1rem;
	border: 1px solid var(--xhx-color-mist-200);
}

@media (min-width: 1000px) {
	.xhx-section--buyer-needs .xhx-feature-grid,
	.xhx-section--quality .xhx-metric-grid,
	.xhx-section--resources .xhx-resource-panels,
	.xhx-section--resources .xhx-resource-queries {
		align-items: stretch;
	}

	.xhx-section--products .xhx-section-heading,
	.xhx-section--advantages .xhx-section-heading,
	.xhx-section--case-studies .xhx-section-heading {
		margin-left: auto;
	}

	.xhx-primary-navigation .wp-block-navigation__submenu-container {
		display: grid;
		grid-template-columns: repeat(2, minmax(10rem, 1fr));
		gap: 0.65rem 1.5rem;
	}

	.xhx-primary-navigation .xhx-products-menu > .wp-block-navigation__submenu-container {
		grid-template-columns: minmax(14rem, 1fr);
	}

	.xhx-site-header__actions {
		display: flex;
	}
}

@media (min-width: 1000px) and (max-width: 1320px) {
	.xhx-site-header__nav-wrap {
		gap: 0.72rem;
	}

	.xhx-primary-navigation .wp-block-navigation__container {
		gap: clamp(0.55rem, 1.1vw, 0.85rem);
		flex-wrap: nowrap;
	}

	.xhx-primary-navigation .wp-block-navigation-item__content {
		padding-inline: 0.2rem;
		font-size: clamp(0.82rem, 1vw, 0.91rem);
	}

	.xhx-language-switcher__link {
		padding-inline: 0.62rem;
	}
}

/* The seven-item primary navigation remains a desktop menu only while it has
 * enough horizontal room. Below this threshold, use WordPress's accessible
 * overlay instead of allowing a cramped or wrapped header. */
@media (max-width: 1160px) {
	.xhx-site-header {
		padding-inline: var(--xhx-pad-tablet);
	}

	.xhx-site-header__inner {
		grid-template-columns: auto minmax(0, 1fr);
	}

	.xhx-site-header__nav-wrap {
		justify-content: flex-end;
	}

	.xhx-site-header__actions,
	.xhx-language-switcher-block--desktop {
		display: none;
	}

	.xhx-site-header__controls {
		display: flex;
		justify-content: flex-end;
		gap: 0;
	}

	.xhx-site-header__controls .xhx-language-switcher-block--mobile {
		display: block;
	}

	.js-enabled .xhx-site-header__controls .xhx-language-switcher-block--mobile {
		display: none;
	}

	.js-enabled .xhx-site-header__controls {
		display: none;
	}

	.xhx-primary-navigation .wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: flex;
	}

	.xhx-primary-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: none;
	}

	.xhx-primary-navigation .wp-block-navigation__responsive-container.is-menu-open {
		position: fixed;
		inset: 0;
		z-index: 1000;
		display: block !important;
		width: 100vw;
		height: 100dvh;
		min-height: 100vh;
		padding: 4.5rem var(--xhx-pad-tablet) 2rem;
		overflow-y: auto;
		background: var(--xhx-color-surface);
		opacity: 1 !important;
		transform: none !important;
	}

	.xhx-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
		display: block;
		width: 100%;
	}

	.xhx-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
		display: flex;
		flex-direction: column;
		align-items: stretch !important;
		justify-content: flex-start;
		width: 100%;
		gap: 0;
	}

	.xhx-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
		width: 100%;
		text-align: left;
	}

	.xhx-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item:not(.has-child) {
		display: flex;
		justify-content: flex-start !important;
	}

	.xhx-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
		display: flex;
		justify-content: flex-start !important;
		width: 100%;
		text-align: left;
		padding: 0.82rem 0;
		font-size: 1rem;
	}

	.xhx-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .current-menu-item > .wp-block-navigation-item__content,
	.xhx-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .current-menu-parent > .wp-block-navigation-item__content,
	.xhx-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .current-menu-ancestor > .wp-block-navigation-item__content,
	.xhx-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content[aria-current="page"],
	body.xhx-nav-section-products .xhx-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .xhx-products-menu > .wp-block-navigation-item__content,
	body.xhx-nav-section-capabilities .xhx-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .xhx-capabilities-menu > .wp-block-navigation-item__content,
	body.xhx-nav-section-industries .xhx-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .xhx-industries-menu > .wp-block-navigation-item__content,
	body.xhx-nav-section-case-studies .xhx-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .xhx-nav-case-studies > .wp-block-navigation-item__content,
	body.xhx-nav-section-resources .xhx-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .xhx-resources-menu > .wp-block-navigation-item__content,
	body.xhx-nav-section-about .xhx-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .xhx-about-menu > .wp-block-navigation-item__content,
	body.xhx-nav-section-contact .xhx-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .xhx-nav-contact > .wp-block-navigation-item__content,
	body.xhx-nav-section-rfq .xhx-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .xhx-nav-rfq-mobile > .wp-block-navigation-item__content {
		box-shadow: inset 3px 0 0 var(--xhx-color-accent-600);
		color: var(--xhx-color-primary-700);
	}

	.xhx-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
		position: absolute;
		top: 1.1rem;
		right: var(--xhx-pad-tablet);
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 2.75rem;
		height: 2.75rem;
		padding: 0;
		border: 1px solid rgba(68, 84, 104, 0.16);
		border-radius: 0.55rem;
		background: var(--xhx-color-surface);
		color: var(--xhx-color-deep);
	}

	.wp-block-navigation__responsive-container.is-menu-open .xhx-language-switcher-block--mobile {
		display: block;
		margin-top: 1rem;
		padding-top: 1rem;
		border-top: 1px solid rgba(68, 84, 104, 0.16);
	}

	.wp-block-navigation__responsive-container.is-menu-open .xhx-language-switcher__mobile-label {
		display: block;
		margin-bottom: 0.45rem;
		color: var(--xhx-color-steel-700);
		font-size: 0.78rem;
		font-weight: 800;
		letter-spacing: 0.08em;
		text-transform: uppercase;
	}

	.wp-block-navigation__responsive-container.is-menu-open .xhx-language-switcher__list {
		position: static;
		display: grid !important;
		width: 100%;
		min-width: 0;
		padding: 0;
		border: 0;
		border-radius: 0;
		box-shadow: none;
		background: transparent;
	}

	.wp-block-navigation__responsive-container.is-menu-open .xhx-language-switcher__summary {
		display: none;
	}

	.wp-block-navigation__responsive-container.is-menu-open .xhx-language-switcher__link {
		justify-content: flex-start;
		min-height: 2.75rem;
		padding-inline: 0;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu {
		display: block !important;
		position: relative;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu > .wp-block-navigation-item__content {
		width: 100% !important;
		margin: 0 !important;
		padding-right: 3rem;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu__toggle {
		position: absolute !important;
		z-index: 2;
		top: 0.38rem;
		right: 0;
		margin: 0 !important;
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		width: 2.5rem;
		height: 2.5rem;
		padding: 0;
		border: 1px solid rgba(68, 84, 104, 0.18);
		border-radius: 0.5rem;
		background: transparent;
		color: var(--xhx-color-primary-700);
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu__toggle svg path {
		stroke: currentColor !important;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu > .wp-block-navigation__submenu-container {
		width: 100%;
		display: none !important;
		position: static;
		width: 100%;
		min-width: 0;
		margin: 0.2rem 0 0;
		padding: 0.3rem 0 0.45rem 0.8rem;
		border: 0;
		border-left: 1px solid rgba(68, 84, 104, 0.16);
		border-radius: 0;
		box-shadow: none;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu > .wp-block-navigation-submenu__toggle[aria-expanded="true"] + .wp-block-navigation__submenu-container {
		display: flex !important;
	}
}

@media (max-width: 999px) {
	.xhx-page-shell,
	.xhx-query-shell,
	.xhx-page-hero,
	.xhx-archive-hero,
	.xhx-section {
		padding-inline: var(--xhx-pad-tablet);
	}

	.xhx-site-header {
		padding-inline: var(--xhx-pad-tablet);
	}

	.xhx-site-header__nav-wrap {
		flex: 1 1 auto;
		justify-content: flex-end;
	}

	.xhx-site-header__actions {
		display: none;
	}

	.wp-block-navigation__responsive-container.is-menu-open .xhx-nav-rfq-mobile {
		display: block;
		margin-top: 0.65rem;
	}

	.wp-block-navigation__responsive-container.is-menu-open .xhx-nav-rfq-mobile > .wp-block-navigation-item__content {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 2.75rem;
		padding: 0.68rem 1rem;
		border-radius: 999px;
		color: #fff;
		background: var(--xhx-color-accent-600);
		font-weight: 700;
	}

	.xhx-query-grid .wp-block-post-template,
	.xhx-query-shell .wp-block-post-template,
	.xhx-manual-grid,
	.xhx-testimonial-grid,
	.xhx-process-rail {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xhx-section--capabilities .wp-block-post-template,
	.xhx-section--industries .wp-block-post-template {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xhx-query-grid--capabilities .wp-block-post-template,
	.xhx-capabilities-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xhx-query-grid--products .wp-block-post-template,
	.xhx-manual-grid--products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xhx-query-grid--cases .wp-block-post-template,
	.xhx-manual-grid--cases {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xhx-manual-grid--resources {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xhx-quality-process-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xhx-faq-layout {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}

	.xhx-faq-layout__intro {
		max-width: none;
	}

	.xhx-faq-layout__intro .has-lg-font-size {
		max-width: 40rem;
	}

	.xhx-advantages-layout {
		flex-direction: column;
	}

	.xhx-advantages-layout > .wp-block-column {
		flex-basis: 100% !important;
	}

	.xhx-advantages__intro,
	.xhx-advantages__intro .has-lg-font-size {
		max-width: none;
	}

	.xhx-advantage-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xhx-factory-gallery {
		flex-direction: column;
	}

	.xhx-factory-gallery > .wp-block-column {
		flex-basis: 100% !important;
	}

	.xhx-factory-media--featured {
		min-height: 25rem;
	}

	.xhx-factory-gallery__stack {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xhx-factory-media--stacked {
		min-height: 14rem;
	}

	.xhx-factory-process-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xhx-factory__cta {
		justify-content: center;
	}

	.xhx-query-grid--industries .wp-block-post-template,
	.xhx-industries-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xhx-buyer-needs-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xhx-resource-panels > .wp-block-column {
		flex-basis: calc(50% - 0.75rem) !important;
	}

	.xhx-section {
		--xhx-home-section-space-heavy: clamp(5.3rem, 5.8vw, 5.9rem);
		--xhx-home-section-space-standard: clamp(4.6rem, 5vw, 5.15rem);
		--xhx-home-section-space-compact: clamp(3.7rem, 4.2vw, 4.25rem);
		--xhx-home-intro-gap: clamp(2.3rem, 3vw, 2.75rem);
		--xhx-home-grid-gap: clamp(1.2rem, 1.8vw, 1.6rem);
		--xhx-home-cta-gap: clamp(1.9rem, 2.5vw, 2.2rem);
		--xhx-section-space-lg: var(--xhx-home-section-space-heavy);
		--xhx-section-space-md: var(--xhx-home-section-space-standard);
		--xhx-section-space-sm: var(--xhx-home-section-space-compact);
		--xhx-section-gap: var(--xhx-section-space-md);
		--xhx-section-intro-gap: var(--xhx-home-intro-gap);
		--xhx-section-grid-gap: var(--xhx-home-grid-gap);
		--xhx-section-cta-gap: var(--xhx-home-cta-gap);
		padding-block: var(--xhx-section-gap);
	}

	.xhx-section--hero .wp-block-heading.has-4xl-font-size {
		font-size: clamp(2.9rem, 4.9vw, 3.28rem);
	}

	.xhx-hero-grid {
		grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
		min-height: auto;
	}

	.xhx-hero-media {
		min-height: 24rem;
	}

	.xhx-product-hero-media {
		min-height: 20rem;
	}
}

@media (max-width: 781px) {
	.xhx-site-header {
		padding-block: 0.75rem;
	}

	.xhx-site-header__inner,
	.xhx-site-brand {
		gap: 0.75rem;
	}

	.xhx-site-brand__wordmark {
		font-size: 1.28rem;
	}

	.xhx-site-footer__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.5rem 1.25rem;
	}

	/* WordPress Columns switches every child to a full flex basis on mobile.
	 * This footer is a CSS grid, so retain its intended two-column grouping. */
	.xhx-site-footer__grid.wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
		flex-basis: auto !important;
		width: auto !important;
	}

	.xhx-site-footer__col--brand {
		grid-column: span 2;
	}

	.xhx-site-footer__col--project {
		grid-column: auto;
	}

	.xhx-site-footer__bottom .xhx-language-switcher-block {
		margin-left: 0;
	}

	.xhx-query-grid .wp-block-post-template,
	.xhx-query-shell .wp-block-post-template,
	.xhx-manual-grid,
	.xhx-testimonial-grid,
	.xhx-process-rail {
		grid-template-columns: 1fr;
	}

	.xhx-section--capabilities .wp-block-post-template,
	.xhx-section--industries .wp-block-post-template {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xhx-query-grid--capabilities .wp-block-post-template,
	.xhx-capabilities-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xhx-query-grid--products .wp-block-post-template,
	.xhx-manual-grid--products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xhx-query-grid--cases .wp-block-post-template,
	.xhx-manual-grid--cases {
		grid-template-columns: 1fr;
	}

	.xhx-manual-grid--resources {
		grid-template-columns: 1fr;
	}

	.xhx-case-card__category,
	.xhx-case-card .wp-block-post-terms,
	.xhx-case-card .wp-block-heading,
	.xhx-case-card .wp-block-post-title {
		min-height: 0;
	}

	.xhx-case-card__section:nth-of-type(1),
	.xhx-case-card__section:nth-of-type(2),
	.xhx-case-card__section:nth-of-type(3) {
		min-height: 0;
	}

	.xhx-quality-process-grid {
		grid-template-columns: 1fr;
	}

	.xhx-quality-stage .wp-block-heading {
		min-height: 0;
	}

	.xhx-faq-layout {
		grid-template-columns: 1fr;
	}

	.xhx-faq-item summary {
		padding: 1rem 1.1rem;
	}

	.xhx-faq-item__answer {
		padding: 0 1.1rem 1rem;
	}

	.xhx-resource-card .wp-block-heading,
	.xhx-resource-card > p:not(.xhx-resource-card__meta):not(.xhx-resource-card__link) {
		min-height: 0;
	}

	.xhx-query-grid--industries .wp-block-post-template,
	.xhx-industries-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xhx-buyer-needs-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xhx-page-shell--two-column .wp-block-columns,
	.xhx-contact-layout,
	.xhx-hero-grid,
	.xhx-product-hero-grid,
	.xhx-story-grid,
	.xhx-quality-grid,
	.xhx-rfq-panel,
	.xhx-split-heading,
	.xhx-resource-queries,
	.xhx-resource-panels {
		flex-direction: column;
	}

	.xhx-hero-grid {
		display: flex;
	}

	.xhx-contact-layout {
		gap: 1.5rem;
	}

	.xhx-contact-trust-grid {
		gap: 1rem;
	}

	.xhx-product-hero-grid {
		display: flex;
	}

	.xhx-breadcrumbs__list,
	.rank-math-breadcrumb p,
	.xhx-site-footer__bottom {
		flex-direction: column;
		align-items: flex-start;
	}

	.xhx-site-footer__bottom-links {
		width: 100%;
		justify-content: flex-start;
	}

	.xhx-site-footer .xhx-language-switcher {
		display: flex;
	}

	.xhx-rfq-panel__side {
		margin-top: 0.2rem;
	}

	.xhx-rfq-panel {
		grid-template-columns: 1fr;
		gap: 1.5rem;
		padding: clamp(2rem, 6vw, 2.75rem) clamp(1.4rem, 4vw, 2rem);
	}

	.xhx-rfq-panel .xhx-rfq-panel__content > .wp-block-heading {
		font-size: clamp(1.85rem, 5.6vw, 2.25rem);
		letter-spacing: -0.04em;
	}

	.xhx-rfq-panel__side {
		padding: clamp(1.4rem, 4vw, 1.8rem);
	}

	.xhx-section {
		--xhx-home-section-space-heavy: clamp(4.4rem, 7vw, 4.9rem);
		--xhx-home-section-space-standard: clamp(3.8rem, 6vw, 4.25rem);
		--xhx-home-section-space-compact: clamp(3.2rem, 5.2vw, 3.65rem);
		--xhx-home-intro-gap: clamp(2rem, 3.8vw, 2.3rem);
		--xhx-home-grid-gap: clamp(1.1rem, 1.7vw, 1.45rem);
		--xhx-home-cta-gap: clamp(1.6rem, 3vw, 1.95rem);
		--xhx-section-space-lg: var(--xhx-home-section-space-heavy);
		--xhx-section-space-md: var(--xhx-home-section-space-standard);
		--xhx-section-space-sm: var(--xhx-home-section-space-compact);
		--xhx-section-gap: var(--xhx-section-space-md);
		--xhx-section-intro-gap: var(--xhx-home-intro-gap);
		--xhx-section-grid-gap: var(--xhx-home-grid-gap);
		--xhx-section-cta-gap: var(--xhx-home-cta-gap);
		padding-block: var(--xhx-section-gap);
	}

	.xhx-section--resources {
		padding-bottom: clamp(1.6rem, 3.8vw, 2rem);
	}

	.xhx-resources__intro {
		margin-bottom: clamp(2.2rem, 4vw, 2.7rem);
		max-width: min(100%, 58rem);
	}

	.xhx-resources__intro .wp-block-heading.has-3xl-font-size {
		max-width: 14ch;
		font-size: clamp(2.35rem, 4.7vw, 2.9rem);
	}

	.xhx-resources__intro > p.has-lg-font-size {
		max-width: 46rem;
		font-size: clamp(1.05rem, 1.9vw, 1.125rem);
	}

	.xhx-section--rfq {
		padding-top: clamp(1.6rem, 3.8vw, 2rem);
		padding-bottom: clamp(1.6rem, 3.8vw, 2rem);
	}

	.xhx-placeholder-panel {
		min-height: 0;
	}

	.xhx-placeholder-panel--hero-media,
	.xhx-placeholder-panel--factory-photo {
		aspect-ratio: 4 / 3;
	}

	.xhx-hero-grid {
		min-height: auto;
	}

	.xhx-hero-grid__content,
	.xhx-hero-grid__media {
		flex-basis: 100% !important;
	}

	.xhx-section--hero .xhx-proof-strip {
		grid-template-columns: 1fr;
		max-width: none;
	}

	.xhx-hero-media {
		min-height: 19rem;
		aspect-ratio: 4 / 3;
	}

	.xhx-product-hero-media {
		min-height: 18rem;
	}

	.xhx-resource-panels > .wp-block-column {
		flex-basis: 100% !important;
	}

	.xhx-proof-strip p {
		width: 100%;
		justify-content: center;
	}

	.xhx-proof-strip--checks p {
		justify-content: flex-start;
	}

	.xhx-card__actions {
		align-items: stretch;
	}

	.xhx-card--industry,
	.xhx-industry-card {
		grid-template-rows: auto minmax(3rem, auto) minmax(6rem, 1fr) auto;
	}

	.xhx-facts-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.xhx-factory-gallery__stack,
	.xhx-factory-process-grid {
		grid-template-columns: 1fr;
	}

	.xhx-factory-media--featured,
	.xhx-factory-media--stacked {
		min-height: 0;
	}

	.xhx-factory-process {
		grid-template-rows: auto auto auto auto;
	}

	.xhx-factory__cta {
		justify-content: center;
		margin-top: 2rem;
	}

	.xhx-advantage-grid,
	.xhx-facts-grid {
		grid-template-columns: 1fr;
	}

	.xhx-facts-grid.wp-block-group {
		grid-template-columns: 1fr !important;
		grid-auto-rows: auto;
	}

	.xhx-advantage-grid {
		grid-auto-rows: auto;
	}

	.xhx-query-grid--industries .wp-block-post-template,
	.xhx-industries-grid {
		grid-template-columns: 1fr;
	}

	.xhx-card--industry,
	.xhx-industry-card {
		grid-template-rows: auto auto auto auto;
	}

	.xhx-industry-card .wp-block-heading,
	.xhx-industry-card .wp-block-post-title,
	.xhx-industry-card > .wp-block-post-excerpt,
	.xhx-industry-card > p:not(.xhx-industry-card__link) {
		min-height: 0;
	}

	.xhx-advantage-card {
		min-height: 0;
	}

	.xhx-advantage-card .wp-block-heading {
		min-height: 0;
	}

	.xhx-advantage-card__title {
		min-height: 0;
	}
}

@media (max-width: 480px) {
	:root {
		--xhx-home-section-space-heavy: clamp(3.5rem, 9.5vw, 4rem);
		--xhx-home-section-space-standard: clamp(3rem, 8.5vw, 3.45rem);
		--xhx-home-section-space-compact: clamp(2.75rem, 7.5vw, 3.1rem);
		--xhx-home-intro-gap: clamp(1.8rem, 5.5vw, 2.1rem);
		--xhx-home-grid-gap: clamp(1rem, 4vw, 1.25rem);
		--xhx-home-cta-gap: clamp(1.4rem, 4.5vw, 1.75rem);
		--xhx-section-space-lg: var(--xhx-home-section-space-heavy);
		--xhx-section-space-md: var(--xhx-home-section-space-standard);
		--xhx-section-space-sm: var(--xhx-home-section-space-compact);
		--xhx-section-gap: var(--xhx-section-space-md);
		--xhx-section-intro-gap: var(--xhx-home-intro-gap);
		--xhx-section-grid-gap: var(--xhx-home-grid-gap);
		--xhx-section-cta-gap: var(--xhx-home-cta-gap);
	}

	.xhx-site-header {
		padding-inline: var(--xhx-pad-mobile);
	}

	.xhx-site-footer__grid {
		grid-template-columns: 1fr;
		gap: 1.75rem;
	}

	.xhx-site-footer__col--brand {
		grid-column: auto;
	}

	.xhx-site-footer {
		padding-inline: var(--xhx-pad-mobile);
	}

	.xhx-site-footer .wp-block-separator {
		margin-block: 1.8rem 1.125rem;
	}

	.xhx-site-footer__bottom {
		gap: 0.6rem;
		padding-bottom: 0.125rem;
	}

	.xhx-section,
	.xhx-page-shell,
	.xhx-query-shell,
	.xhx-page-hero,
	.xhx-archive-hero {
		padding-inline: var(--xhx-pad-mobile);
	}

	.xhx-section--hero .wp-block-heading.has-4xl-font-size {
		font-size: clamp(2.15rem, 8.2vw, 2.5rem);
	}

	.xhx-section--resources {
		padding-bottom: 1.5rem;
	}

	.xhx-resources__intro {
		margin-bottom: 2rem;
	}

	.xhx-resources__intro .wp-block-heading.has-3xl-font-size {
		max-width: 12.5ch;
		font-size: clamp(2rem, 8vw, 2.35rem);
		line-height: 1.1;
	}

	.xhx-resources__intro > p.has-lg-font-size {
		max-width: 100%;
		font-size: 1rem;
		line-height: 1.58;
	}

	.xhx-section--rfq {
		padding-top: 1.5rem;
		padding-bottom: 1.5rem;
	}

	.xhx-section--capabilities .wp-block-post-template,
	.xhx-section--industries .wp-block-post-template {
		grid-template-columns: 1fr;
	}

	.xhx-query-grid--capabilities .wp-block-post-template,
	.xhx-capabilities-grid {
		grid-template-columns: 1fr;
	}

	.xhx-query-grid--products .wp-block-post-template,
	.xhx-manual-grid--products {
		grid-template-columns: 1fr;
	}

	.xhx-query-grid--industries .wp-block-post-template,
	.xhx-industries-grid {
		grid-template-columns: 1fr;
	}

	.xhx-buyer-needs-grid {
		grid-template-columns: 1fr;
	}

	.xhx-buyer-needs-card {
		border-radius: 14px;
	}

	.xhx-fact-card__value {
		font-size: 1.05rem;
	}

	.xhx-advantage-card .wp-block-heading {
		margin-bottom: 0.65rem;
	}

	.xhx-card--industry,
	.xhx-industry-card {
		grid-template-rows: auto auto auto auto;
	}

	.xhx-industry-card .wp-block-heading,
	.xhx-industry-card .wp-block-post-title,
	.xhx-industry-card > .wp-block-post-excerpt,
	.xhx-industry-card > p:not(.xhx-industry-card__link) {
		min-height: 0;
	}

	.xhx-industry-card .wp-block-heading,
	.xhx-industry-card .wp-block-post-title {
		margin-bottom: 0.9rem;
	}

	.xhx-industry-card__meta {
		margin-bottom: 1rem;
	}

	.xhx-industry-card__link {
		padding-top: 0.85rem;
	}

	.xhx-hero-eyebrow {
		padding: 0.45rem 0.72rem;
		font-size: 0.7rem;
		letter-spacing: 0.1em;
	}

	.xhx-hero-media {
		min-height: 15rem;
	}

	.xhx-product-hero-media {
		min-height: 15rem;
	}

	.xhx-section-heading .wp-block-heading.has-3xl-font-size {
		font-size: clamp(1.7rem, 7.8vw, 2.15rem);
	}

	.wp-block-button .wp-element-button {
		width: 100%;
		justify-content: center;
	}

	.xhx-proof-strip {
		gap: 0.65rem;
	}

	.xhx-site-brand__wordmark {
		font-size: 1.15rem;
	}

	.xhx-card,
	.xhx-placeholder-panel,
	.xhx-side-panel {
		padding: 1.2rem;
		border-radius: 22px;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		animation: none !important;
		transition-duration: 0.01ms !important;
		transition-delay: 0ms !important;
		scroll-behavior: auto !important;
	}
}

/* Capabilities archive and single pages. */
.xhx-archive-hero--capabilities .wp-block-heading {
	max-width: 47.5rem;
	margin-left: 0 !important;
	margin-right: 0 !important;
	font-size: clamp(2.65rem, 3.8vw, 3.5rem);
	line-height: 1.05;
}

.xhx-archive-hero--capabilities .has-lg-font-size {
	max-width: 48.75rem;
	margin-left: 0 !important;
	margin-right: 0 !important;
	color: var(--xhx-color-steel-700);
}

.xhx-archive-hero--capabilities .xhx-breadcrumbs,
.xhx-archive-hero--capabilities .rank-math-breadcrumb {
	margin-bottom: 1.4rem;
}

.xhx-archive-hero--capabilities .xhx-eyebrow {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.xhx-main--capabilities {
	padding-bottom: clamp(1rem, 3.35vw, 3rem);
}

.xhx-capability-archive-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(1rem, 1.9vw, 1.45rem);
	width: 100%;
	max-width: var(--xhx-content-max);
	margin: 0 auto;
	padding: clamp(1rem, 2vw, 1.5rem) var(--xhx-pad-desktop) 0;
	box-sizing: border-box;
}

.xhx-capability-archive-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	border: 1px solid rgba(68, 84, 104, 0.12);
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 12px 28px rgba(18, 59, 102, 0.05);
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.xhx-capability-archive-card:hover,
.xhx-capability-archive-card:focus-within {
	transform: translateY(-3px);
	border-color: rgba(37, 99, 166, 0.24);
	box-shadow: 0 17px 32px rgba(18, 59, 102, 0.1);
}

.xhx-capability-archive-card__media-link {
	display: block;
	color: inherit;
	text-decoration: none;
}

.xhx-capability-card__media {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	aspect-ratio: 4 / 3;
	margin: 0;
	border-bottom: 1px solid rgba(68, 84, 104, 0.1);
	background: #f2f5f8;
	overflow: hidden;
}

.xhx-capability-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.xhx-capability-media-placeholder {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.7rem;
	color: var(--xhx-color-steel-700);
	background: #f3f6f8;
}

.xhx-capability-media-placeholder p {
	margin: 0;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.035em;
}

.xhx-capability-media-placeholder__icon {
	position: relative;
	display: block;
	width: 2.25rem;
	height: 1.65rem;
	border: 1.5px solid currentColor;
	border-radius: 0.18rem;
	opacity: 0.7;
}

.xhx-capability-media-placeholder__icon::after {
	content: "";
	position: absolute;
	left: 0.42rem;
	bottom: 0.32rem;
	width: 1.1rem;
	height: 0.62rem;
	border-left: 1.5px solid currentColor;
	border-bottom: 1.5px solid currentColor;
	transform: skewY(-34deg) rotate(-35deg);
}

.xhx-capability-archive-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	align-items: flex-start;
	padding: 1.25rem 1.3rem 1.35rem;
}

.xhx-capability-archive-card__number {
	margin: 0 0 0.8rem;
	color: var(--xhx-color-primary-600);
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.08em;
}

.xhx-capability-archive-card .wp-block-heading {
	min-height: 3.6rem;
	margin: 0 0 0.7rem;
	font-size: clamp(1.1rem, 1.4vw, 1.28rem);
	line-height: 1.2;
}

.xhx-capability-archive-card .wp-block-heading a,
.xhx-capability-archive-card__link a {
	color: inherit;
	text-decoration: none;
}

.xhx-capability-archive-card .wp-block-heading a:hover,
.xhx-capability-archive-card .wp-block-heading a:focus-visible,
.xhx-capability-archive-card__link a:hover,
.xhx-capability-archive-card__link a:focus-visible {
	color: var(--xhx-color-primary-600);
}

.xhx-capability-archive-card__excerpt {
	min-height: 5.3rem;
	margin: 0;
	color: var(--xhx-color-steel-700);
	font-size: 0.94rem;
	line-height: 1.6;
}

.xhx-capability-archive-card__link {
	margin: auto 0 0;
	padding-top: 1rem;
	font-weight: 700;
}

.xhx-capability-archive-card__link a::after {
	content: "->";
	margin-left: 0.42rem;
}

.xhx-capability-hero-grid {
	align-items: center;
	gap: clamp(1.5rem, 3vw, 3rem);
}

.xhx-page-hero--capability .wp-block-post-title {
	max-width: 15ch;
}

.xhx-capability-summary {
	max-width: 43rem;
	margin: 0;
	color: var(--xhx-color-steel-700);
	font-size: clamp(1.05rem, 1.7vw, 1.2rem);
	line-height: 1.7;
}

.xhx-capability-hero-grid .xhx-button-row {
	margin-top: 1.65rem;
}

.xhx-capability-hero-media-block,
.xhx-capability-hero-media {
	width: 100%;
}

.xhx-capability-hero-media {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: clamp(21rem, 34vw, 29rem);
	margin: 0;
	border: 1px solid rgba(68, 84, 104, 0.12);
	border-radius: 18px;
	background: #f3f6f9;
	overflow: hidden;
	aspect-ratio: 5 / 4;
}

.xhx-capability-hero-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.xhx-capability-hero-media.xhx-capability-media-placeholder {
	padding: 1.5rem;
}

.xhx-capability-content {
	width: 100%;
	max-width: calc(920px + (var(--xhx-pad-desktop) * 2));
	margin: 0 auto;
	padding: clamp(1rem, 2vw, 1.5rem) var(--xhx-pad-desktop) clamp(2rem, 4vw, 3rem);
	box-sizing: border-box;
}

.xhx-capability-content > .wp-block-post-content > h2 {
	margin-top: clamp(2.4rem, 5vw, 4rem);
	margin-bottom: 1rem;
	font-size: clamp(1.65rem, 2.4vw, 2.25rem);
	line-height: 1.16;
}

.xhx-capability-content > .wp-block-post-content > h2:first-child {
	margin-top: 0;
}

.xhx-capability-content .wp-block-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.6rem 1.2rem;
	margin-block: 1.1rem 0;
}

.xhx-capability-content .wp-block-list li {
	margin: 0;
}

.xhx-capability-content .wp-block-details {
	margin: 0.75rem 0;
	padding: 1rem 1.15rem;
	border: 1px solid rgba(68, 84, 104, 0.12);
	border-radius: 10px;
	background: #fff;
}

.xhx-capability-content .wp-block-details summary {
	color: var(--xhx-color-deep);
	font-weight: 700;
	cursor: pointer;
}

.xhx-capability-content .wp-block-details p {
	margin: 0.8rem 0 0;
	color: var(--xhx-color-steel-700);
}

@media (max-width: 1180px) {
	.xhx-capability-archive-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 781px) {
	.xhx-capability-archive-grid {
		padding-inline: var(--xhx-pad-tablet);
	}

	.xhx-capability-hero-grid {
		gap: 1.5rem;
	}

	.xhx-capability-hero-media {
		min-height: 20rem;
	}

	.xhx-capability-content {
		padding-inline: var(--xhx-pad-tablet);
	}
}

@media (max-width: 480px) {
	.xhx-capability-archive-grid {
		grid-template-columns: 1fr;
		padding-inline: var(--xhx-pad-mobile);
	}

	.xhx-capability-archive-card__body {
		padding: 1.15rem;
	}

	.xhx-capability-archive-card .wp-block-heading,
	.xhx-capability-archive-card__excerpt {
		min-height: 0;
	}

	.xhx-capability-hero-media {
		min-height: 15rem;
	}

	.xhx-capability-content {
		padding-inline: var(--xhx-pad-mobile);
	}

	.xhx-capability-content .wp-block-list {
		grid-template-columns: 1fr;
	}
}

/* Industries use the same compact editorial system as the capability centre. */
.xhx-archive-hero--industries .xhx-breadcrumbs {
	margin-bottom: 1.4rem;
}

.xhx-archive-hero--industries .xhx-eyebrow {
	margin: 0 !important;
}

.xhx-archive-hero--industries .wp-block-heading {
	max-width: 48rem;
	margin-right: 0 !important;
	margin-left: 0 !important;
	font-size: clamp(2.65rem, 3.8vw, 3.5rem);
	line-height: 1.05;
}

.xhx-archive-hero--industries .has-lg-font-size {
	max-width: 49rem;
	margin-right: 0 !important;
	margin-left: 0 !important;
	color: var(--xhx-color-steel-700);
}

.xhx-main--industries {
	padding-bottom: clamp(1rem, 3.35vw, 3rem);
}

.xhx-industry-archive-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(1rem, 1.7vw, 1.5rem);
	width: 100%;
	max-width: calc(1320px + (var(--xhx-pad-desktop) * 2));
	margin: 0 auto;
	padding: 0 var(--xhx-pad-desktop);
	box-sizing: border-box;
}

.xhx-industry-archive-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	border: 1px solid rgba(68, 84, 104, 0.14);
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 5px 16px rgba(12, 29, 47, 0.045);
	overflow: hidden;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.xhx-industry-archive-card:hover {
	border-color: rgba(21, 83, 146, 0.34);
	box-shadow: 0 9px 22px rgba(12, 29, 47, 0.08);
	transform: translateY(-2px);
}

.xhx-industry-archive-card__media-link {
	display: block;
	color: inherit;
}

.xhx-industry-archive-card__media,
.xhx-industry-media-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 0;
	margin: 0;
	border-bottom: 1px solid rgba(68, 84, 104, 0.1);
	background: #f2f5f8;
	overflow: hidden;
	aspect-ratio: 4 / 3;
}

.xhx-industry-archive-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.xhx-industry-media-placeholder {
	flex-direction: column;
	gap: 0.7rem;
	color: var(--xhx-color-steel-700);
	background: #f3f6f8;
}

.xhx-industry-media-placeholder p {
	margin: 0;
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: 0.025em;
}

.xhx-industry-media-placeholder__icon {
	position: relative;
	display: block;
	width: 2.3rem;
	height: 1.7rem;
	border: 1.5px solid currentColor;
	border-radius: 0.18rem;
	opacity: 0.68;
}

.xhx-industry-media-placeholder__icon::after {
	content: "";
	position: absolute;
	left: 0.42rem;
	bottom: 0.32rem;
	width: 1.1rem;
	height: 0.62rem;
	border-left: 1.5px solid currentColor;
	border-bottom: 1.5px solid currentColor;
	transform: skewY(-34deg) rotate(-35deg);
}

.xhx-industry-archive-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	align-items: flex-start;
	padding: 1.18rem 1.25rem 1.28rem;
}

.xhx-industry-archive-card__number {
	margin: 0 0 0.72rem;
	color: var(--xhx-color-primary-600);
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.08em;
}

.xhx-industry-archive-card .wp-block-heading {
	min-height: 3.1rem;
	margin: 0 0 0.66rem;
	font-size: clamp(1.07rem, 1.35vw, 1.22rem);
	line-height: 1.2;
}

.xhx-industry-archive-card .wp-block-heading a,
.xhx-industry-archive-card__link a {
	color: inherit;
	text-decoration: none;
}

.xhx-industry-archive-card .wp-block-heading a:hover,
.xhx-industry-archive-card .wp-block-heading a:focus-visible,
.xhx-industry-archive-card__link a:hover,
.xhx-industry-archive-card__link a:focus-visible {
	color: var(--xhx-color-primary-600);
}

.xhx-industry-archive-card__excerpt {
	min-height: 5.25rem;
	margin: 0;
	color: var(--xhx-color-steel-700);
	font-size: 0.92rem;
	line-height: 1.58;
}

.xhx-industry-archive-card__labels {
	min-height: 2.55rem;
	margin: 0.95rem 0 0;
	color: var(--xhx-color-primary-600);
	font-size: 0.71rem;
	font-weight: 750;
	line-height: 1.45;
	letter-spacing: 0.045em;
	text-transform: uppercase;
}

.xhx-industry-archive-card__link {
	margin: auto 0 0;
	padding-top: 1rem;
	font-weight: 700;
}

.xhx-industry-archive-card__link a::after {
	content: "->";
	margin-left: 0.42rem;
}

.xhx-industry-hero-grid {
	align-items: center;
	gap: clamp(1.5rem, 3vw, 3rem);
}

.xhx-page-hero--industry .wp-block-post-title {
	max-width: 16ch;
}

.xhx-industry-summary {
	max-width: 43rem;
	margin: 0;
	color: var(--xhx-color-steel-700);
	font-size: clamp(1.05rem, 1.7vw, 1.2rem);
	line-height: 1.7;
}

.xhx-industry-hero-grid .xhx-button-row {
	margin-top: 1.65rem;
}

.xhx-industry-hero-media-block,
.xhx-industry-hero-media {
	width: 100%;
}

.xhx-industry-hero-media {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: clamp(21rem, 34vw, 29rem);
	margin: 0;
	border: 1px solid rgba(68, 84, 104, 0.12);
	border-radius: 18px;
	background: #f3f6f9;
	overflow: hidden;
	aspect-ratio: 5 / 4;
}

.xhx-industry-hero-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.xhx-industry-hero-media.xhx-industry-media-placeholder {
	padding: 1.5rem;
}

.xhx-industry-content {
	width: 100%;
	max-width: calc(920px + (var(--xhx-pad-desktop) * 2));
	margin: 0 auto;
	padding: clamp(1rem, 2vw, 1.5rem) var(--xhx-pad-desktop) clamp(2rem, 4vw, 3rem);
	box-sizing: border-box;
}

.xhx-industry-content > .wp-block-post-content > h2 {
	margin-top: clamp(2.4rem, 5vw, 4rem);
	margin-bottom: 1rem;
	font-size: clamp(1.65rem, 2.4vw, 2.25rem);
	line-height: 1.16;
}

.xhx-industry-content > .wp-block-post-content > h2:first-child {
	margin-top: 0;
}

.xhx-industry-content .wp-block-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.6rem 1.2rem;
	margin-block: 1.1rem 0;
}

.xhx-industry-content .wp-block-list li {
	margin: 0;
}

.xhx-industry-content .wp-block-details {
	margin: 0.75rem 0;
	padding: 1rem 1.15rem;
	border: 1px solid rgba(68, 84, 104, 0.12);
	border-radius: 10px;
	background: #fff;
}

.xhx-industry-content .wp-block-details summary {
	color: var(--xhx-color-deep);
	font-weight: 700;
	cursor: pointer;
}

.xhx-industry-content .wp-block-details p {
	margin: 0.8rem 0 0;
	color: var(--xhx-color-steel-700);
}

@media (max-width: 1180px) {
	.xhx-industry-archive-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 781px) {
	.xhx-industry-archive-grid {
		padding-inline: var(--xhx-pad-tablet);
	}

	.xhx-industry-hero-grid {
		gap: 1.5rem;
	}

	.xhx-industry-hero-media {
		min-height: 20rem;
	}

	.xhx-industry-content {
		padding-inline: var(--xhx-pad-tablet);
	}
}

@media (max-width: 480px) {
	.xhx-industry-archive-grid {
		grid-template-columns: 1fr;
		padding-inline: var(--xhx-pad-mobile);
	}

	.xhx-industry-archive-card__body {
		padding: 1.15rem;
	}

	.xhx-industry-archive-card .wp-block-heading,
	.xhx-industry-archive-card__excerpt,
	.xhx-industry-archive-card__labels {
		min-height: 0;
	}

	.xhx-industry-hero-media {
		min-height: 15rem;
	}

	.xhx-industry-content {
		padding-inline: var(--xhx-pad-mobile);
	}

.xhx-industry-content .wp-block-list {
	grid-template-columns: 1fr;
}
}

/* Case Studies archive and single pages. */
.xhx-archive-hero--case-studies {
	padding-top: clamp(4.5rem, 6vw, 6rem);
	padding-bottom: clamp(2.25rem, 3.25vw, 3rem);
}

.xhx-archive-hero--case-studies .xhx-breadcrumbs {
	margin-bottom: 1.4rem;
}

.xhx-archive-hero--case-studies .xhx-eyebrow {
	margin: 0;
}

.xhx-archive-hero--case-studies .wp-block-heading {
	max-width: 51rem;
	margin: 1rem 0 1.35rem !important;
}

.xhx-archive-hero--case-studies .has-lg-font-size {
	max-width: 47rem;
	margin: 0 !important;
	color: var(--xhx-color-steel-700);
}

.xhx-case-study-archive-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1.2rem, 2vw, 1.5rem);
	width: 100%;
	max-width: calc(var(--xhx-content-wide) + (var(--xhx-pad-desktop) * 2));
	margin: 0 auto;
	padding: 0 var(--xhx-pad-desktop);
	box-sizing: border-box;
}

.xhx-case-study-archive-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	border: 1px solid var(--xhx-color-mist-200);
	border-radius: 14px;
	background: var(--xhx-color-white);
	box-shadow: 0 10px 24px rgba(18, 59, 102, 0.045);
	overflow: hidden;
	transition: border-color var(--xhx-transition-base), box-shadow var(--xhx-transition-base), transform var(--xhx-transition-base);
}

.xhx-case-study-archive-card:hover,
.xhx-case-study-archive-card:focus-within {
	border-color: rgba(24, 75, 128, 0.28);
	box-shadow: 0 14px 28px rgba(18, 59, 102, 0.09);
	transform: translateY(-2px);
}

.xhx-case-study-archive-card__media-link,
.xhx-case-study-card__media {
	display: block;
	width: 100%;
	margin: 0;
}

.xhx-case-study-card__media {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 0;
	border-bottom: 1px solid var(--xhx-color-mist-200);
	background: #f5f7f8;
	aspect-ratio: 16 / 10;
	overflow: hidden;
}

.xhx-case-study-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--xhx-transition-base);
}

.xhx-case-study-archive-card:hover .xhx-case-study-card__media img,
.xhx-case-study-archive-card:focus-within .xhx-case-study-card__media img {
	transform: scale(1.025);
}

.xhx-case-study-media-placeholder {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.7rem;
	padding: 1rem;
	color: var(--xhx-color-steel-700);
	text-align: center;
}

.xhx-case-study-media-placeholder__icon {
	position: relative;
	display: block;
	width: 3rem;
	height: 2.35rem;
	border: 1.5px solid rgba(68, 84, 104, 0.28);
	border-radius: 0.45rem;
}

.xhx-case-study-media-placeholder__icon::after {
	position: absolute;
	right: 0.4rem;
	bottom: 0.4rem;
	left: 0.4rem;
	height: 0.8rem;
	border-right: 1.5px solid rgba(68, 84, 104, 0.28);
	border-bottom: 1.5px solid rgba(68, 84, 104, 0.28);
	transform: skewY(-30deg);
	content: "";
}

.xhx-case-study-media-placeholder p {
	margin: 0;
	font-size: 0.82rem;
}

.xhx-case-study-archive-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 1.35rem 1.35rem 1.45rem;
}

.xhx-case-study-archive-card__industry {
	margin: 0 0 0.7rem;
	color: var(--xhx-color-primary-700);
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: 0.09em;
	line-height: 1.35;
	text-transform: uppercase;
}

.xhx-case-study-archive-card h2 {
	min-height: 3.1rem;
	margin: 0 0 0.8rem;
	font-size: clamp(1.3rem, 1.55vw, 1.55rem);
	line-height: 1.22;
}

.xhx-case-study-archive-card h2 a {
	color: inherit;
	text-decoration: none;
}

.xhx-case-study-archive-card h2 a:hover,
.xhx-case-study-archive-card h2 a:focus-visible {
	color: var(--xhx-color-primary-600);
}

.xhx-case-study-archive-card__excerpt,
.xhx-case-study-archive-card__scope {
	margin: 0;
	color: var(--xhx-color-steel-700);
	font-size: 0.96rem;
	line-height: 1.62;
}

.xhx-case-study-archive-card__excerpt {
	min-height: 4.75rem;
}

.xhx-case-study-archive-card__scope {
	margin-top: 0.85rem;
	padding-top: 0.85rem;
	border-top: 1px solid var(--xhx-color-mist-200);
	min-height: 5.55rem;
}

.xhx-case-study-archive-card__scope::before {
	display: block;
	margin-bottom: 0.35rem;
	color: var(--xhx-color-deep);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.07em;
	text-transform: uppercase;
	content: "Manufacturing Scope";
}

.xhx-case-study-archive-card__link {
	margin: auto 0 0;
	padding-top: 1.2rem;
}

.xhx-case-study-archive-card__link a {
	color: var(--xhx-color-primary-700);
	font-weight: 700;
	text-decoration: none;
}

.xhx-case-study-archive-card__link a::after,
.xhx-case-study-related__link::after {
	margin-left: 0.4rem;
	content: "→";
}

.xhx-case-study-page-hero {
	width: 100%;
	max-width: calc(var(--xhx-content-wide) + (var(--xhx-pad-desktop) * 2));
	margin: 0 auto;
	padding: clamp(4.5rem, 6vw, 6rem) var(--xhx-pad-desktop) clamp(3rem, 4.8vw, 4.5rem);
	box-sizing: border-box;
}

.xhx-case-study-page-hero > .xhx-breadcrumbs {
	margin-bottom: 1.75rem;
}

.xhx-case-study-page-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(22rem, 1.1fr);
	align-items: center;
	gap: clamp(2rem, 5vw, 5.5rem);
}

.xhx-case-study-page-hero__content .wp-block-post-terms {
	display: block;
	margin: 0 0 1rem;
	color: var(--xhx-color-primary-700);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.xhx-case-study-page-hero__content .wp-block-post-terms a {
	color: inherit;
	text-decoration: none;
}

.xhx-case-study-page-hero__content .wp-block-post-title {
	max-width: 11ch;
	margin: 0;
}

.xhx-case-study-summary {
	max-width: 39rem;
	margin: 1.4rem 0 0;
	color: var(--xhx-color-steel-700);
	font-size: clamp(1.08rem, 1.55vw, 1.3rem);
	line-height: 1.58;
}

.xhx-case-study-hero-media-block,
.xhx-case-study-hero-media {
	width: 100%;
}

.xhx-case-study-hero-media {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 27rem;
	margin: 0;
	border: 1px solid var(--xhx-color-mist-200);
	border-radius: 16px;
	overflow: hidden;
	background: #f5f7f8;
	aspect-ratio: 5 / 4;
}

.xhx-case-study-hero-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.xhx-case-study-content {
	width: 100%;
	max-width: calc(920px + (var(--xhx-pad-desktop) * 2));
	margin: 0 auto;
	padding: clamp(1.5rem, 3vw, 2.5rem) var(--xhx-pad-desktop) clamp(3.5rem, 5vw, 4.75rem);
	box-sizing: border-box;
}

.xhx-case-study-content > .wp-block-post-content > h2 {
	margin-top: clamp(2.4rem, 4vw, 3.5rem);
	margin-bottom: 0.9rem;
	font-size: clamp(1.55rem, 2.2vw, 2rem);
}

.xhx-case-study-content > .wp-block-post-content > h2:first-child {
	margin-top: 0;
}

.xhx-case-study-content .wp-block-post-content > p {
	max-width: 48rem;
	color: var(--xhx-color-steel-700);
	font-size: 1.05rem;
	line-height: 1.72;
}

.xhx-case-study-related {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	width: 100%;
	max-width: calc(var(--xhx-content-wide) + (var(--xhx-pad-desktop) * 2));
	margin: 0 auto clamp(4.5rem, 6vw, 6rem);
	padding: 0 var(--xhx-pad-desktop);
	box-sizing: border-box;
}

.xhx-case-study-related__card {
	display: flex;
	flex-direction: column;
	min-height: 10rem;
	padding: 1.3rem;
	border: 1px solid var(--xhx-color-mist-200);
	border-radius: 12px;
	background: #fff;
	color: inherit;
	text-decoration: none;
}

.xhx-case-study-related__card:hover,
.xhx-case-study-related__card:focus-visible {
	border-color: rgba(24, 75, 128, 0.3);
}

.xhx-case-study-related__label {
	color: var(--xhx-color-primary-700);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.xhx-case-study-related__text {
	margin-top: 0.55rem;
	color: var(--xhx-color-steel-700);
	line-height: 1.55;
}

.xhx-case-study-related__link {
	margin-top: auto;
	padding-top: 1rem;
	color: var(--xhx-color-primary-700);
	font-weight: 700;
}

@media (max-width: 1180px) {
	.xhx-case-study-archive-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xhx-case-study-page-hero__grid {
		gap: 2.5rem;
	}
}

@media (max-width: 781px) {
	.xhx-case-study-archive-grid,
	.xhx-case-study-page-hero,
	.xhx-case-study-content,
	.xhx-case-study-related {
		padding-inline: var(--xhx-pad-tablet);
	}

	.xhx-case-study-page-hero__grid,
	.xhx-case-study-related {
		grid-template-columns: 1fr;
	}

	.xhx-case-study-hero-media {
		min-height: 20rem;
	}
}

@media (max-width: 480px) {
	.xhx-case-study-archive-grid {
		grid-template-columns: 1fr;
		padding-inline: var(--xhx-pad-mobile);
	}

	.xhx-case-study-page-hero,
	.xhx-case-study-content,
	.xhx-case-study-related {
		padding-inline: var(--xhx-pad-mobile);
	}

	.xhx-case-study-page-hero {
		padding-top: 3.5rem;
	}

	.xhx-case-study-hero-media {
		min-height: 15rem;
	}

	.xhx-case-study-archive-card h2 {
		min-height: 0;
	}

	.xhx-case-study-archive-card__excerpt,
	.xhx-case-study-archive-card__scope {
		min-height: 0;
	}
}
