/* Solutions page fidelity layer.
 * Desktop reference: Figma 4373:2 at 1440px.
 * Mobile reference: Figma 4368:7256 at 390px. */

@layer pyp-site-typography {
	body.pyp-solutions-figma {
		--pyp-body-web-font: "BR Segma Figma Web", "BR Segma", Arial, sans-serif;
	}

	body.pyp-solutions-figma,
	body.pyp-solutions-figma :is(h1, h2, h3, p, span, a, button) {
		font-family: var(--pyp-body-web-font) !important;
		font-synthesis: none;
	}

	body.pyp-solutions-figma .pyp-solutions-page :is(h1, h2),
	body.pyp-solutions-figma .pyp-solutions-page :is(h1, h2) *,
	body.pyp-solutions-figma :is(.pyp-solutions-hero, .pyp-solutions-section, .pyp-sol-process) :is(h1, h2),
	body.pyp-solutions-figma :is(.pyp-solutions-hero, .pyp-solutions-section, .pyp-sol-process) :is(h1, h2) * {
		font-weight: 600 !important;
	}

	body.pyp-solutions-figma :is(
		.pyp-solutions-hero p,
		.pyp-solutions-section__header > p,
		.pyp-solutions-how__body > span:nth-child(2),
		.pyp-solutions-sourcing__card > span,
		.pyp-solutions-custom__body span,
		.pyp-solutions-projects__body span,
		.pyp-solutions-why p,
		.pyp-solutions-why__card > span:last-child
	) {
		font-weight: 500 !important;
	}

	/* The shared typography sheet uses an ID-level light-body rule. These
	 * component-specific declarations restore the exact Figma font masters. */
	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-sourcing__card > span:nth-child(2),
	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-custom__body > span:first-child,
	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-why__card > span:nth-child(3) {
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-weight: 600 !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-sourcing__card > div:first-child span:last-child {
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-weight: 600 !important;
		font-style: normal !important;
		color: #c9a26b !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-sol-process__copy p,
	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-why__card > span:last-child {
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-weight: 500 !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-projects__body > span:nth-child(2) {
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-weight: 500 !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-custom__body > div span:last-child,
	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-section__header > p,
	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-how__body > span:nth-child(2),
	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-sourcing__card > span:nth-child(3),
	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-sourcing__card > div:last-child span:last-child,
	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-why__intro p,
	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-why__card > span:last-child {
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-weight: 500 !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-form input:not([type="hidden"]):not([type="file"]),
	html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-form textarea {
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-size: 14px !important;
		font-weight: 400 !important;
		font-synthesis: none;
	}

	html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-form select {
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-size: 14px !important;
		font-weight: 500 !important;
		font-synthesis: none;
	}

	html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-form input::placeholder {
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-size: 14px !important;
		font-weight: 400 !important;
		color: #999 !important;
		opacity: 1;
	}

	html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-form textarea::placeholder {
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-size: 14px !important;
		font-weight: 400 !important;
		line-height: 19.6px !important;
		color: #757575 !important;
		opacity: 1;
	}

	html body.pyp-solutions-figma .pyp-context-nav__title {
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-weight: 600 !important;
	}

	html body.pyp-solutions-figma .pyp-context-nav__links a {
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-weight: 500 !important;
	}

	@media (max-width: 767px) {
		html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-section__header > p,
		html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-how__body > span:nth-child(2),
		html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-sourcing__card > span:nth-child(3),
		html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-sourcing__card > div:last-child span:last-child {
			font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
			font-weight: 500 !important;
		}

		html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-hero__action {
			font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
			font-size: 14px !important;
			font-weight: 500 !important;
			line-height: 16.8px !important;
		}

		html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-custom__body > span:first-child {
			font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
			font-weight: 600 !important;
		}

		html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-projects__body > span:first-child {
			font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
			font-weight: 600 !important;
		}

		html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-hero__content > p {
			font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
			font-weight: 500 !important;
		}

		html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-sol-process__copy p {
			font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
			font-size: 12px !important;
			font-weight: 300 !important;
			line-height: 20px !important;
		}

		html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-sol-process__header > span {
			font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
			font-weight: 500 !important;
		}

		html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-form input:not([type="hidden"]):not([type="file"]),
		html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-form select,
		html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-form textarea,
		html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-form input::placeholder,
		html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-form textarea::placeholder {
			font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
			font-size: 12px !important;
			font-weight: 400 !important;
		}

		html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-form textarea,
		html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-form textarea::placeholder {
			font-size: 14px !important;
			font-weight: 400 !important;
			line-height: 19.6px !important;
		}

		html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-form > button[type="submit"] {
			font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
			font-size: 14px !important;
			font-weight: 500 !important;
			line-height: 18px !important;
		}
	}
}

.pyp-header__logo-mobile { display: none !important; }

body.pyp-solutions-figma {
	display: block;
	min-height: 100%;
	overflow-x: clip;
	overflow-y: visible;
	color: #20261f;
	background: #faf8f3;
}

body.pyp-solutions-figma .pyp-solutions-page {
	display: block;
	overflow: hidden;
	color: #20261f;
	background: #faf8f3;
}

body.pyp-solutions-figma *,
body.pyp-solutions-figma *::before,
body.pyp-solutions-figma *::after {
	box-sizing: border-box;
}

.pyp-solutions-mobile-copy,
.pyp-solutions-projects__mobile-cta {
	display: none;
}

.pyp-solutions-trust {
	height: 38px;
	padding: 9px 24px !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 20px !important;
	letter-spacing: .06em !important;
}

/* Hero */
.pyp-solutions-hero {
	min-height: 600px !important;
	height: 600px;
	align-items: center !important;
}

.pyp-solutions-hero__picture,
.pyp-solutions-hero__picture img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
}

.pyp-solutions-hero__picture img {
	object-fit: cover !important;
	object-position: center !important;
}

.pyp-solutions-hero__veil {
	background: linear-gradient(104.6deg, rgba(27,16,0,.73) -7.65%, rgba(42,26,0,0) 52.01%) !important;
	mix-blend-mode: multiply;
}

.pyp-solutions-hero__content {
	height: 447px;
	padding: 40px 48px 72px !important;
	gap: 0 !important;
}

.pyp-solutions-hero__content > span {
	font-size: 12px !important;
	font-weight: 500 !important;
	line-height: 18px !important;
	letter-spacing: 0 !important;
}

.pyp-solutions-hero h1 {
	width: 615px;
	max-width: 820px !important;
	margin: 8px 0 0 !important;
	font-size: 48px !important;
	line-height: 57.6px !important;
	letter-spacing: 0 !important;
}

.pyp-solutions-hero__content > p {
	width: 572px;
	max-width: 572px !important;
	margin-top: 16px !important;
	font-size: 18px !important;
	line-height: 28.8px !important;
}

@media (min-width: 768px) {
	.pyp-solutions-hero__picture img {
		inset: auto !important;
		right: 0 !important;
		bottom: -0.19px !important;
		width: calc(100% + 5.393px) !important;
		height: 603px !important;
		max-width: none !important;
		object-fit: fill !important;
		object-position: initial !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-hero__content > p {
		font-weight: 400 !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-sol-process__header > span {
		font-size: 14px !important;
		font-weight: 400 !important;
		line-height: 18px !important;
	}
}

.pyp-solutions-hero__actions {
	align-items: center;
	margin-top: 48px;
	padding: 0 !important;
	gap: 16px !important;
	flex-wrap: nowrap !important;
}

.pyp-solutions-hero__action {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	height: 42px;
	padding: 12px 24px !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 18px !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	white-space: nowrap !important;
}

.pyp-solutions-hero__action > span { white-space: nowrap !important; }
.pyp-solutions-hero__action--primary { width: 204px; padding: 13px 24px 11px !important; }
.pyp-solutions-hero__action--secondary { width: 169px; height: 39px; line-height: 16.8px !important; }
.pyp-solutions-hero__action--secondary > span { line-height: 16.8px !important; }

/* Shared section geometry and typography */
.pyp-solutions-section__inner {
	width: min(1360px, 100%);
	padding: 96px 48px !important;
	gap: 40px !important;
}

.pyp-solutions-section__header { flex-wrap: nowrap !important; }

.pyp-solutions-section__header > div > span,
.pyp-solutions-custom__header > span,
.pyp-solutions-featured__header > span,
.pyp-solutions-why__intro > span,
.pyp-sol-process__header > div > span {
	font-size: 12px !important;
	font-weight: 400 !important;
	line-height: 18px !important;
	letter-spacing: 0 !important;
}

.pyp-solutions-section h2,
.pyp-sol-process__header h2 {
	font-size: 48px !important;
	line-height: 51.84px !important;
	letter-spacing: -2px !important;
}

.pyp-solutions-section__header > p {
	font-size: 16px !important;
	line-height: 25.6px !important;
	color: #999 !important;
}

/* How we help */
.pyp-solutions-how__track {
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 18px !important;
}

.pyp-solutions-how__card { min-width: 0; }

.pyp-solutions-how__media {
	height: 274.95px;
	aspect-ratio: auto !important;
}

.pyp-solutions-how__body {
	min-height: 272.5px;
	padding: 24px !important;
	gap: 0 !important;
}

.pyp-solutions-how__body > span:first-child {
	font-size: 32px !important;
	font-weight: 600 !important;
	line-height: 38.4px !important;
	letter-spacing: -1px !important;
}

.pyp-solutions-how__body > span:nth-child(2) {
	margin-top: 8px;
	font-size: 14px !important;
	line-height: 22.4px !important;
}

.pyp-solutions-how__body > div { margin-top: 16px; }

.pyp-solutions-how__body > div span {
	font-size: 12px !important;
	line-height: 16.5px !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}

.pyp-solutions-how__body > span:last-child {
	align-self: flex-start;
	margin-top: 16px;
	padding-top: 12px !important;
	border-bottom: 1px solid #000;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 16.8px !important;
	letter-spacing: 0 !important;
	color: #000 !important;
	text-transform: none !important;
}

/* Sourcing */
.pyp-solutions-sourcing .pyp-solutions-section__inner { align-items: center; }
.pyp-solutions-sourcing .pyp-solutions-section__header { width: 100%; }

.pyp-solutions-sourcing__grid {
	width: 100%;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.pyp-solutions-sourcing__card {
	min-height: 356.66px;
	padding: 40px !important;
}

.pyp-solutions-sourcing__card > div:first-child {
	padding-bottom: 8px !important;
}

.pyp-solutions-sourcing__card > div:first-child span:first-child {
	font-size: 12px !important;
	line-height: 16.5px !important;
	letter-spacing: 0 !important;
}

.pyp-solutions-sourcing__card > div:first-child span:last-child {
	font-size: 30px !important;
	font-weight: 600 !important;
	line-height: 30px !important;
	font-style: normal !important;
}

.pyp-solutions-sourcing__card > span:nth-child(2) {
	padding-top: 24px !important;
	font-size: 32px !important;
	font-weight: 600 !important;
	line-height: 32.2px !important;
	letter-spacing: -1px !important;
}

.pyp-solutions-sourcing__card > span:nth-child(3) {
	padding-top: 16px !important;
	font-size: 16px !important;
	line-height: 24px !important;
	color: #999 !important;
}

.pyp-solutions-sourcing__card > div:last-child {
	padding-top: 24px !important;
	gap: 8px !important;
}

.pyp-solutions-sourcing__card > div:last-child span:last-child {
	font-size: 14px !important;
	line-height: 18px !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}

.pyp-solutions-sourcing__cta {
	height: 54.5px;
	padding: 16px 34px !important;
	box-shadow: none !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	line-height: 18px !important;
	letter-spacing: 0 !important;
	color: #f8f5ed !important;
	text-transform: none !important;
}

/* Desktop sourcing typography lock. The broad body-copy rule above also
 * targets direct card spans, so these Figma-specific values need the higher
 * page-level specificity used by the legacy theme. */
@media (min-width: 768px) {
	.pyp-solutions-hero__action--primary { color: #000 !important; }

	html body.pyp-solutions-figma .sc-host .pyp-solutions-sourcing__card > span:nth-child(2) {
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-size: 32px !important;
		font-weight: 600 !important;
		line-height: 32.2px !important;
		letter-spacing: -1px !important;
		color: #20261f !important;
	}

	html body.pyp-solutions-figma .sc-host .pyp-solutions-sourcing__card > div:first-child span:last-child {
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-size: 30px !important;
		font-weight: 600 !important;
		font-style: normal !important;
		line-height: 30px !important;
		color: #c9a26b !important;
	}

	html body.pyp-solutions-figma .sc-host .pyp-solutions-custom__body > span:first-child {
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-size: 24px !important;
		font-weight: 600 !important;
		font-style: normal !important;
		line-height: 28.8px !important;
		letter-spacing: 0 !important;
		color: #20261f !important;
	}
}

/* Custom */
.pyp-solutions-custom__track {
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 12px 14px !important;
}

.pyp-solutions-custom__card {
	grid-template-columns: 45.3% 54.7% !important;
	min-height: 250px !important;
}

.pyp-solutions-custom__body {
	padding: 24px !important;
	gap: 12px !important;
}

.pyp-solutions-custom__body > span:first-child {
	font-size: 24px !important;
	font-weight: 600 !important;
	line-height: 28.8px !important;
}

.pyp-solutions-custom__body > div {
	gap: 8px !important;
	padding-top: 12px !important;
}

.pyp-solutions-custom__body > div span:last-child {
	font-size: 14px !important;
	line-height: 16.8px !important;
	color: rgba(92,97,86,.8) !important;
}

.pyp-solutions-custom__body > span:last-child {
	align-self: flex-start;
	padding-top: 12px !important;
	border-bottom: 1px solid #9c5b2e;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 16.8px !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}

/* Project solutions */
.pyp-solutions-projects .pyp-solutions-section__inner {
	padding-top: 100px !important;
	padding-bottom: 100px !important;
	gap: 44px !important;
}

.pyp-solutions-projects h2 { letter-spacing: -1px !important; }

.pyp-solutions-projects__grid {
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 16px !important;
}

.pyp-solutions-projects__media {
	height: 211.4px;
	aspect-ratio: auto !important;
}

.pyp-solutions-projects__media img {
	display: block;
	width: 64px;
	height: 64px;
}

.pyp-solutions-projects__body {
	min-height: 204px;
	padding: 22px 24px 24px !important;
	gap: 16px !important;
}

.pyp-solutions-projects__body > span:first-child {
	font-size: 24px !important;
	font-weight: 500 !important;
	line-height: 27.6px !important;
}

.pyp-solutions-projects__body > span:nth-child(2) {
	font-size: 14px !important;
	line-height: 22.4px !important;
}

.pyp-solutions-projects__body > span:last-child {
	align-self: flex-start;
	padding-top: 24px !important;
	border-bottom: 1px solid #d8b98c;
	font-size: 14px !important;
	line-height: 16.8px !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}

/* Process */
.pyp-sol-process__header h2 { width: 517px; }
.pyp-sol-process__header > span { font-size: 12px !important; line-height: 18px !important; }
.pyp-sol-process__copy h3 { font-weight: 600 !important; }
.pyp-sol-process__copy p { font-size: 14px !important; line-height: 20px !important; }

/* Why */
.pyp-solutions-why__inner {
	width: min(1360px, 100%);
	grid-template-columns: 450px 750px !important;
	gap: 64px !important;
	padding: 96px 48px !important;
}

.pyp-solutions-why__intro {
	position: static !important;
	justify-content: center;
	gap: 24px !important;
}

.pyp-solutions-why__intro h2 { margin-top: 8px !important; }
.pyp-solutions-why__intro p { font-size: 16px !important; line-height: 25.6px !important; color: #999 !important; }
.pyp-solutions-why__grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 16px !important; }
.pyp-solutions-why__card { padding: 24px !important; gap: 12px !important; }
.pyp-solutions-why__card > span:first-child { width: 28px; height: 28px; }
.pyp-solutions-why__card:first-child > span:first-child img {
	display: block;
	width: 23px !important;
	height: 23px !important;
	margin: 3px 0 0 3px;
}
.pyp-solutions-why__card > span:nth-child(2) { display: none !important; }
.pyp-solutions-why__card > span:nth-child(3) { font-size: 24px !important; font-weight: 600 !important; line-height: 28.8px !important; letter-spacing: -1px !important; }
.pyp-solutions-why__card > span:last-child { font-size: 14px !important; line-height: 22.4px !important; color: rgba(92,97,86,.6) !important; }

/* Shared project brief: Solutions uses the exact 500px Figma panel. */
.pyp-home-project-form textarea { padding: 16px !important; }

/* Desktop contextual navigation, Figma 4376:2306. */
@media (min-width: 768px) {
	body.pyp-solutions-figma .pyp-context-nav {
		height: 360px;
		border-top: 0;
		background: #faf8f3;
	}

	body.pyp-solutions-figma .pyp-context-nav__inner {
		box-sizing: border-box;
		width: 100%;
		max-width: 1440px;
		height: 360px;
		margin: 0 auto;
		padding: 56px 88px;
		display: flex;
		align-items: center;
		gap: 40px;
	}

	body.pyp-solutions-figma .pyp-context-nav__title {
		flex: 1 1 0;
		min-width: 0;
		font-size: 48px !important;
		line-height: 51.84px !important;
		letter-spacing: -2px !important;
		text-transform: none;
		color: #20261f;
	}

	body.pyp-solutions-figma .pyp-context-nav__links {
		box-sizing: border-box;
		flex: 0 0 745px;
		width: 745px;
		height: 248px;
		display: flex;
		align-content: center;
		align-items: center;
		gap: 16px;
		flex-wrap: wrap;
	}

	body.pyp-solutions-figma .pyp-context-nav__links a {
		box-sizing: border-box;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		height: 50px;
		padding: 0 24px;
		border: 1px solid #000;
		font-size: 14px !important;
		line-height: 16.8px !important;
		letter-spacing: -1px !important;
		color: #374239;
		text-decoration: underline;
		text-decoration-color: currentColor;
		text-underline-offset: auto;
		white-space: nowrap;
	}
}

body.pyp-solutions-figma .pyp-footer__cta a {
	border: 0 !important;
	box-shadow: none !important;
}

/* The production menu contains legacy entries that are not present in either
 * Solutions design node. Keep them out of this page without changing the
 * shared WordPress menus used by the rest of the site. */
body.pyp-solutions-figma .pyp-footer__col[aria-label="Footer products"] a:nth-of-type(6),
body.pyp-solutions-figma .pyp-footer__col[aria-label="Footer solutions"] a:nth-of-type(4),
body.pyp-solutions-figma .pyp-footer__col[aria-label="Footer company"] a:nth-of-type(n+5):nth-of-type(-n+7) {
	display: none !important;
}

@media (min-width: 768px) {
	body.pyp-solutions-figma .pyp-footer__cta {
		box-sizing: border-box !important;
		height: 436px !important;
		min-height: 436px !important;
		max-height: 436px !important;
		overflow: hidden;
	}

	body.pyp-solutions-figma .pyp-footer__grid {
		box-sizing: border-box !important;
		height: 300px !important;
		min-height: 300px !important;
		max-height: 300px !important;
	}

	body.pyp-solutions-figma .pyp-footer__locations {
		box-sizing: border-box !important;
		height: 93px !important;
		min-height: 93px !important;
		max-height: 93px !important;
	}

	body.pyp-solutions-figma .pyp-footer__bottom {
		box-sizing: border-box !important;
		height: 98px !important;
		min-height: 98px !important;
		max-height: 98px !important;
	}
}

/* Featured */
.pyp-solutions-featured__header { width: 517px; }
.pyp-solutions-featured__grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 16px !important; }
.pyp-solutions-featured__card { gap: 24px !important; }
.pyp-solutions-featured__media { height: 306px; aspect-ratio: auto !important; }
.pyp-solutions-featured__card > div:last-child { gap: 16px !important; }
.pyp-solutions-featured__card > div:last-child > span { font-size: 24px !important; font-weight: 600 !important; line-height: 28.75px !important; letter-spacing: -1px !important; }
.pyp-solutions-featured__card > div:last-child div { gap: 8px !important; }
.pyp-solutions-featured__card > div:last-child div span { font-size: 14px !important; line-height: 16.5px !important; letter-spacing: 0 !important; text-transform: none !important; }

@media (min-width: 768px) {
	.pyp-solutions-how__card { height: 549.453px; }
	.pyp-solutions-how__body { height: 272.5px; min-height: 272.5px; }
	.pyp-solutions-how__body > span:first-child {
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-size: 24px !important;
		font-weight: 700 !important;
		line-height: 29px !important;
		font-synthesis: none;
	}
	.pyp-solutions-how__body > span:last-child { margin-top: 48px !important; }
	.pyp-solutions-sourcing { height: 767.156px; overflow: hidden; }
	.pyp-solutions-custom { height: 884px; overflow: hidden; }
	.pyp-solutions-projects { height: 741.391px; overflow: hidden; }
	.pyp-sol-process { height: 829.516px; overflow: hidden; }
	.pyp-solutions-why { height: 561px; overflow: hidden; }
	.pyp-solutions-featured { height: 770px; overflow: hidden; }
}

@media (max-width: 767px) {
	.pyp-solutions-desktop-copy { display: none; }
	.pyp-solutions-mobile-copy { display: inline; }

	.pyp-solutions-trust {
		height: 57px;
		padding: 9px 24px !important;
		display: flex;
		align-items: center;
		justify-content: flex-start;
		font-size: 13px !important;
		font-weight: 400 !important;
		line-height: 19.5px !important;
		letter-spacing: .78px !important;
		text-align: left !important;
	}

	.pyp-solutions-hero {
		height: 650px;
		min-height: 650px !important;
		align-items: flex-start !important;
	}

	.pyp-solutions-hero__picture {
		inset: auto !important;
		left: 0 !important;
		top: 650px !important;
		width: 0 !important;
		height: 0 !important;
		overflow: visible !important;
	}

	.pyp-solutions-hero__picture img {
		inset: auto !important;
		right: -457px !important;
		bottom: 0 !important;
		width: 705px !important;
		height: 659px !important;
		max-width: none !important;
		object-fit: fill !important;
		object-position: initial !important;
	}

	.pyp-solutions-hero__veil {
		background: linear-gradient(-23.6139deg, rgba(42,26,0,0) 32.49%, rgba(27,16,0,.73) 88.785%) !important;
	}

	.pyp-solutions-hero__content {
		height: auto;
		padding: 44px 24px 0 !important;
		align-items: center;
		text-align: center;
	}

	.pyp-solutions-hero__content > span {
		line-height: 15px !important;
		color: #f3eee8 !important;
	}

	.pyp-solutions-hero h1 {
		width: 342px;
		margin-top: 4px !important;
		font-size: 32px !important;
		line-height: 38.4px !important;
		letter-spacing: -1.17px !important;
		text-align: center;
	}

	.pyp-solutions-hero__content > p {
		width: 342px;
		max-width: 342px !important;
		margin-top: 8px !important;
		font-size: 14px !important;
		line-height: 23px !important;
		text-align: center;
		color: #fff !important;
	}

	.pyp-solutions-hero__actions {
		margin-top: 24px;
		flex-direction: column;
		gap: 12px !important;
	}

	.pyp-solutions-hero__action,
	.pyp-solutions-hero__action--primary,
	.pyp-solutions-hero__action--secondary {
		width: 208px;
		height: 41px;
		min-height: 41px;
		padding: 13px 24px 11px !important;
		font-size: 14px !important;
		font-weight: 500 !important;
		line-height: 16.8px !important;
	}
	.pyp-solutions-hero__action--primary { border: 0 !important; }
	.pyp-solutions-hero__action--secondary { border: 1px solid #fff !important; }

	.pyp-solutions-section__inner {
		width: 100%;
		padding: 56px 24px !important;
	}

	.pyp-solutions-section__header {
		align-items: flex-start !important;
		flex-direction: column !important;
		gap: 16px !important;
	}

	.pyp-solutions-section__header > div,
	.pyp-solutions-custom__header,
	.pyp-solutions-featured__header,
	.pyp-solutions-why__intro {
		width: 100%;
		max-width: none !important;
	}

	.pyp-solutions-section h2,
	.pyp-sol-process__header h2 {
		width: 100%;
		font-size: 38px !important;
		line-height: 42px !important;
		letter-spacing: -.76px !important;
	}

	.pyp-solutions-section__header > p {
		width: 100%;
		max-width: none !important;
		padding: 0 !important;
		font-size: 16px !important;
		line-height: 25.6px !important;
		letter-spacing: -.32px !important;
	}

	/* How: one-card horizontal rail */
	.pyp-solutions-how { overflow: hidden; }
	.pyp-solutions-how .pyp-solutions-section__inner { gap: 24px !important; }
	.pyp-solutions-how__track {
		display: flex !important;
		width: calc(100% + 24px);
		margin-right: -24px;
		padding-right: 24px;
		gap: 12px !important;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}
	.pyp-solutions-how__track::-webkit-scrollbar { display: none; }
	.pyp-solutions-how__card { flex: 0 0 313px; width: 313px; scroll-snap-align: start; }
	.pyp-solutions-how__media { height: 190px; }
	.pyp-solutions-how__body { height: 284px; min-height: 284px; flex: 0 0 284px; padding: 16px 16px 24px !important; gap: 0 !important; }
	.pyp-solutions-how__body > div:first-of-type { gap: 8px !important; }
	.pyp-solutions-how__body > span:first-child { font-size: 24px !important; line-height: 32px !important; letter-spacing: -.64px !important; }
	.pyp-solutions-how__body > span:nth-child(2) { margin-top: 8px; }
	.pyp-solutions-how__body > div { margin-top: 16px; }
	.pyp-solutions-how__body > span:last-child { height: 22px; min-height: 22px; margin-top: auto !important; padding: 0 0 4px !important; }

	/* Sourcing */
	.pyp-solutions-sourcing .pyp-solutions-section__inner { gap: 16px !important; }
	.pyp-solutions-sourcing__grid { grid-template-columns: 1fr !important; }
	.pyp-solutions-sourcing__card { min-height: 0; padding: 24px !important; border-right: 0 !important; border-bottom: 1px solid rgba(32,38,31,.1); }
	.pyp-solutions-sourcing__card > div:first-child { padding: 4px 0 !important; }
	.pyp-solutions-sourcing__card > span:nth-child(2) { padding-top: 16px !important; font-size: 24px !important; line-height: 28.8px !important; letter-spacing: 0 !important; }
	.pyp-solutions-sourcing__card > span:nth-child(3) { padding-top: 8px !important; font-size: 14px !important; line-height: 22.4px !important; }
	.pyp-solutions-sourcing__card > div:last-child { padding-top: 16px !important; }
	.pyp-solutions-sourcing__cta { width: 100%; justify-content: center; }

	/* Custom: one-card horizontal rail */
	.pyp-solutions-custom { overflow: hidden; }
	.pyp-solutions-custom .pyp-solutions-section__inner { gap: 40px !important; }
	.pyp-solutions-custom__track {
		display: flex !important;
		width: calc(100% + 24px);
		margin-right: -24px;
		padding-right: 24px;
		gap: 12px !important;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}
	.pyp-solutions-custom__track::-webkit-scrollbar { display: none; }
	.pyp-solutions-custom__card { flex: 0 0 342px; width: 342px; min-height: 592px !important; display: flex !important; flex-direction: column; scroll-snap-align: start; }
	.pyp-solutions-custom__media { flex: 0 0 342px; height: 342px; }
	.pyp-solutions-custom__body { flex: 0 0 248px; height: 248px; min-height: 248px; padding: 24px !important; }
	.pyp-solutions-custom__body > span:last-child {
		height: 42px;
		min-height: 42px;
		margin-top: auto !important;
		padding: 12px 0 8px !important;
		box-sizing: border-box;
		color: #000 !important;
		border-bottom-color: #000 !important;
	}

	/* Projects */
	.pyp-solutions-projects .pyp-solutions-section__inner { padding: 56px 24px !important; gap: 0 !important; }
	.pyp-solutions-projects h2 { font-size: 32px !important; line-height: 38.4px !important; letter-spacing: 0 !important; }
	.pyp-solutions-projects .pyp-solutions-section__header { gap: 24px !important; }
	.pyp-solutions-projects__grid { margin-top: 12px; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; }
	.pyp-solutions-projects__card { min-width: 0; min-height: 0; gap: 16px; padding-bottom: 16px; }
	.pyp-solutions-projects__media { height: 114px; }
	.pyp-solutions-projects__media img { width: 40px; height: 40px; }
	.pyp-solutions-projects__body { min-height: 0; padding: 0 12px !important; gap: 0 !important; }
	.pyp-solutions-projects__body > span:first-child { padding-top: 0; font-size: 16px !important; font-weight: 600 !important; line-height: 19.2px !important; }
	.pyp-solutions-projects__body > span:nth-child(2) { margin-top: 8px; font-size: 14px !important; line-height: 21px !important; }
	.pyp-solutions-projects__body > span:last-child { margin-top: 24px; padding-top: 0 !important; font-size: 14px !important; }
	.pyp-solutions-projects__mobile-cta { align-self: center; display: inline-flex; align-items: center; justify-content: center; margin-top: 48px; padding: 16px 24px; border: 1px solid rgba(216,185,140,.55); color: #d8b98c; font-size: 14px; line-height: 16.8px; }

	/* Process */
	.pyp-sol-process__inner { padding: 56px 24px !important; gap: 40px !important; }
	.pyp-sol-process__header { align-items: flex-start !important; flex-direction: column; gap: 16px !important; }
	.pyp-sol-process__header > div { gap: 8px !important; }
	.pyp-sol-process__header > span { padding: 0 !important; font-size: 16px !important; line-height: 25.6px !important; color: #999 !important; white-space: normal !important; }
	.pyp-sol-process__viewport { margin-right: -24px !important; padding-right: 24px !important; }
	.pyp-sol-process__card { flex-basis: 303px !important; width: 303px !important; }
	.pyp-sol-process__body { padding-top: 42px !important; }
	.pyp-sol-process__copy p { font-size: 12px !important; font-weight: 300 !important; line-height: 20px !important; }

	/* Why */
	.pyp-solutions-why__inner { width: 100%; display: grid !important; grid-template-columns: 1fr !important; gap: 24px !important; padding: 56px 24px !important; }
	.pyp-solutions-why__intro { gap: 16px !important; }
	.pyp-solutions-why__intro > span + h2 { margin-top: -8px !important; }
	.pyp-solutions-why__intro h2 { margin-top: 0 !important; }
	.pyp-solutions-why__intro p { font-size: 16px !important; line-height: 25.6px !important; letter-spacing: -.32px !important; }
	.pyp-solutions-why__grid { grid-template-columns: 1fr !important; gap: 12px !important; }
	.pyp-solutions-why__card { padding: 24px 16px !important; }
	.pyp-solutions-why__card > span:first-child { height: 36px; }
	.pyp-solutions-why__card > span:nth-child(3) { font-size: 24px !important; line-height: 26.45px !important; letter-spacing: 0 !important; }
	.pyp-solutions-why__card > span:last-child { font-size: 14px !important; line-height: 19.6px !important; color: #999 !important; }

	/* Featured */
	.pyp-solutions-featured .pyp-solutions-section__inner { padding: 68px 24px !important; gap: 40px !important; }
	.pyp-solutions-featured__grid { grid-template-columns: 1fr !important; gap: 32px !important; }
	.pyp-solutions-featured__card { gap: 16px !important; }
	.pyp-solutions-featured__media { height: 256.5px; }
	.pyp-solutions-featured__card > div:last-child { gap: 8px !important; }
	.pyp-solutions-featured__card > div:last-child > span { font-size: 20px !important; line-height: 28.75px !important; letter-spacing: -1px !important; }
	.pyp-solutions-featured__card > div:last-child div { gap: 6px !important; }
	.pyp-solutions-featured__card > div:last-child div span { font-size: 12px !important; }
}

/* The legacy theme has attribute-based mobile fallbacks with deliberately high
 * specificity. Keep this final lock equally explicit so the page follows the
 * dedicated 390px frame instead of inheriting those generic fallbacks. */
@media (max-width: 767px) {
	html body.pyp-solutions-figma .pyp-header {
		height: 53px !important;
		min-height: 53px !important;
		padding: 8px 0 !important;
		backdrop-filter: blur(5px) !important;
		-webkit-backdrop-filter: blur(5px) !important;
	}
	html body.pyp-solutions-figma .pyp-header__bar {
		width: 100% !important;
		height: 36px !important;
		min-height: 36px !important;
		padding: 8px 24px !important;
	}
	html body.pyp-solutions-figma .pyp-header__logo {
		min-height: 0 !important;
		gap: 4px !important;
		align-items: flex-end !important;
	}
	html body.pyp-solutions-figma .pyp-header__logo-desktop { display: none !important; }
	html body.pyp-solutions-figma .pyp-header__logo-mobile {
		display: block !important;
		width: 103.034px !important;
		height: 17.669px !important;
		max-width: none !important;
	}
	html body.pyp-solutions-figma .pyp-header__logo > span {
		font-size: 8px !important;
		font-weight: 400 !important;
		line-height: 12px !important;
		letter-spacing: 0 !important;
		text-transform: none !important;
	}
	html body.pyp-solutions-figma .pyp-mobile-toggle {
		display: flex !important;
		width: 20px !important;
		height: 20px !important;
		min-height: 20px !important;
		margin: 0 !important;
		padding: 3.409px 0 !important;
		gap: 4.545px !important;
		background: transparent !important;
	}
	html body.pyp-solutions-figma .pyp-mobile-toggle span {
		width: 20px !important;
		height: 1.364px !important;
		min-height: 1.364px !important;
		margin: 0 !important;
		flex: 0 0 1.364px !important;
		border-radius: 999px;
	}
	html body.pyp-solutions-figma .pyp-mobile-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(5.909px) rotate(45deg); }
	html body.pyp-solutions-figma .pyp-mobile-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-5.909px) rotate(-45deg); }

	html body.pyp-solutions-figma .sc-host .pyp-solutions-hero__content { padding: 44px 24px 0 !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-hero h1 { font-size: 32px !important; line-height: 38.4px !important; letter-spacing: -1.17px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-hero__content > p { font-size: 14px !important; line-height: 23px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-hero__action { width: 208px !important; height: 41px !important; min-height: 41px !important; padding: 13px 24px 11px !important; border-width: 0 !important; font-size: 14px !important; font-weight: 500 !important; line-height: 16.8px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-hero__action--secondary { border: 1px solid #fff !important; }

	html body.pyp-solutions-figma .sc-host .pyp-solutions-section__inner { padding: 56px 24px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-section h2,
	html body.pyp-solutions-figma .sc-host .pyp-sol-process__header h2 { font-size: 38px !important; line-height: 42px !important; letter-spacing: -.76px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-section__header > p { font-size: 16px !important; line-height: 25.6px !important; }

	html body.pyp-solutions-figma .sc-host .pyp-solutions-how__card { width: 313px !important; min-width: 313px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-how__media { height: 190px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-how__body { height: 284px !important; min-height: 284px !important; flex: 0 0 284px !important; padding: 16px 16px 24px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-how__body > span:first-child { font-size: 24px !important; line-height: 32px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-how__body > span:nth-child(2) { font-size: 14px !important; font-weight: 500 !important; line-height: 22.4px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-how__body > span:last-child { height: 22px !important; min-height: 22px !important; margin-top: auto !important; padding: 0 0 4px !important; }

	html body.pyp-solutions-figma .sc-host .pyp-solutions-sourcing__card { padding: 24px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-sourcing__card > span:nth-child(2) { font-size: 24px !important; line-height: 28.8px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-sourcing__card > span:nth-child(3) { font-size: 14px !important; line-height: 22.4px !important; }

	html body.pyp-solutions-figma .sc-host .pyp-solutions-custom__card { width: 342px !important; min-width: 342px !important; height: 592px !important; min-height: 592px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-custom__media { height: 342px !important; min-height: 342px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-custom__body { height: 248px !important; min-height: 248px !important; flex: 0 0 248px !important; padding: 24px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-custom__body > span:first-child { font-size: 24px !important; font-weight: 600 !important; line-height: 28.8px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-custom__body > div span:last-child { font-size: 14px !important; line-height: 16.8px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-custom__body > span:last-child { height: 42px !important; min-height: 42px !important; margin-top: auto !important; padding: 12px 0 8px !important; }

	html body.pyp-solutions-figma .sc-host .pyp-solutions-projects .pyp-solutions-section__inner { padding: 56px 24px !important; gap: 0 !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-projects h2 { font-size: 32px !important; line-height: 38.4px !important; letter-spacing: 0 !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-projects__grid { margin-top: 12px !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-projects__card { min-height: 0 !important; gap: 16px !important; padding-bottom: 16px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-projects__media { height: 114px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-projects__body { min-height: 0 !important; padding: 0 12px !important; gap: 0 !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-projects__body > span:first-child { font-size: 16px !important; line-height: 19.2px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-projects__body > span:nth-child(2) { margin-top: 8px !important; font-size: 14px !important; line-height: 21px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-projects__body > span:last-child { margin-top: 24px !important; }

	html body.pyp-solutions-figma .sc-host .pyp-sol-process__inner { padding: 56px 24px !important; gap: 40px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-sol-process__header > span { font-size: 16px !important; line-height: 25.6px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-sol-process__viewport { margin-right: -24px !important; padding-right: 24px !important; }

	html body.pyp-solutions-figma .sc-host .pyp-solutions-why__inner { padding: 56px 24px !important; grid-template-columns: 1fr !important; gap: 24px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-why__grid { grid-template-columns: 1fr !important; gap: 12px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-why__card { padding: 24px 16px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-why__card > span:nth-child(3) { font-size: 24px !important; line-height: 26.45px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-why__card > span:last-child { font-size: 14px !important; line-height: 19.6px !important; }

	html body.pyp-solutions-figma .sc-host .pyp-solutions-featured .pyp-solutions-section__inner { padding: 68px 24px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-featured__grid { grid-template-columns: 1fr !important; gap: 32px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-featured__media { height: 256.5px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-featured__card > div:last-child > span { font-size: 20px !important; line-height: 28.75px !important; }
	html body.pyp-solutions-figma .sc-host .pyp-solutions-featured__card > div:last-child div span { font-size: 12px !important; line-height: 16.5px !important; }
}

/* Device-scale rounding can report the 390px Figma viewport as 390.286px.
 * Keep the exact-frame lock within a one-pixel tolerance. */
@media (min-width: 389px) and (max-width: 391px) {
	.pyp-solutions-how { box-sizing: border-box !important; height: 809.685px !important; min-height: 809.685px !important; max-height: 809.685px !important; overflow: hidden; }
	.pyp-solutions-sourcing { box-sizing: border-box !important; height: 1217.5px !important; min-height: 1217.5px !important; max-height: 1217.5px !important; overflow: hidden; }
	.pyp-solutions-custom { box-sizing: border-box !important; height: 858px !important; min-height: 858px !important; max-height: 858px !important; overflow: hidden; }
	.pyp-solutions-projects { box-sizing: border-box !important; height: 1073px !important; min-height: 1073px !important; max-height: 1073px !important; overflow: hidden; }
	.pyp-solutions-projects .pyp-solutions-section__header { height: 205px; overflow: hidden; }
	.pyp-solutions-projects__card:nth-child(-n+2) { height: 306px; }
	.pyp-solutions-projects__card:nth-child(n+3) { height: 327px; }
	.pyp-sol-process { box-sizing: border-box !important; height: 790.516px !important; min-height: 790.516px !important; max-height: 790.516px !important; overflow: hidden; }
	.pyp-solutions-why { box-sizing: border-box !important; height: 1084px !important; min-height: 1084px !important; max-height: 1084px !important; overflow: hidden; }
	.pyp-solutions-featured { box-sizing: border-box !important; height: 1405.5px !important; min-height: 1405.5px !important; max-height: 1405.5px !important; overflow: hidden; }
}

/* Final mobile visual-audit lock: the shared accessibility layer adds a
 * 26px/22px form inset and a 48px touch minimum after the Figma component.
 * Remove only those inherited dimensions so the 390px frame remains exact. */
@media (max-width: 767px) {
	html body.pyp-solutions-figma #pyp-main-content .sc-host :is(
		.pyp-solutions-sourcing .pyp-solutions-section__header > div > span,
		.pyp-solutions-custom__header > span,
		.pyp-solutions-projects .pyp-solutions-section__header > div > span,
		.pyp-sol-process__header > div > span,
		.pyp-solutions-why__intro > span,
		.pyp-solutions-featured__header > span
	) {
		font-weight: 500 !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-sourcing__cta {
		font-weight: 500 !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-sol-process__copy p {
		font-size: 12px !important;
		font-weight: 300 !important;
		line-height: 20px !important;
	}

	html body.pyp-solutions-figma .pyp-solutions-trust {
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-weight: 400 !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-hero__content > span {
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-weight: 400 !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-hero__content > p {
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-weight: 500 !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-hero__action,
	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-hero__action span {
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-weight: 500 !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-cta {
		box-sizing: border-box !important;
		height: 1583px !important;
		min-height: 1583px !important;
		max-height: 1583px !important;
		align-items: center !important;
		padding: 56px 24px !important;
		gap: 32px !important;
		overflow: hidden !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-cta__story,
	html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-cta__form-panel {
		box-sizing: border-box !important;
		flex: 0 0 auto !important;
		align-self: center !important;
		width: 342px !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-cta__story,
	html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-cta__story-content {
		height: 501px !important;
		min-height: 501px !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-cta__story h2 {
		font-size: 32px !important;
		font-weight: 600 !important;
		line-height: 35.2px !important;
		letter-spacing: -.64px !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-form {
		box-sizing: border-box !important;
		width: 100% !important;
		height: 783px !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		gap: 0 !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-form textarea {
		height: 168px !important;
		min-height: 168px !important;
		padding: 8px !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .pyp-home-project-form > button[type="submit"] {
		display: inline-flex !important;
		height: 42px !important;
		min-height: 42px !important;
		margin: 24px 0 0 !important;
		padding: 0 24px !important;
		border: 0 !important;
	}

	html body.pyp-solutions-figma .pyp-context-nav {
		height: 362px !important;
		min-height: 362px !important;
		border-top: 0 !important;
		background: #fff !important;
		overflow: hidden !important;
	}

	html body.pyp-solutions-figma .pyp-context-nav__inner {
		box-sizing: border-box !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		width: 100% !important;
		max-width: none !important;
		height: 362px !important;
		margin: 0 !important;
		padding: 56px 24px !important;
		gap: 40px !important;
	}

	html body.pyp-solutions-figma .pyp-context-nav__title {
		flex: 0 0 53px !important;
		width: 342px !important;
		height: 53px !important;
		font-size: 24px !important;
		font-weight: 600 !important;
		line-height: 26.4px !important;
		letter-spacing: -.48px !important;
		text-align: center !important;
		text-transform: none !important;
		color: #20261f !important;
	}

	html body.pyp-solutions-figma .pyp-context-nav__links {
		box-sizing: border-box !important;
		flex: 0 0 157px !important;
		display: flex !important;
		flex-wrap: wrap !important;
		justify-content: center !important;
		align-content: flex-start !important;
		width: 911px !important;
		height: 157px !important;
		margin: 0 !important;
		padding: 0 !important;
		gap: 8px !important;
		overflow: visible !important;
	}

	html body.pyp-solutions-figma .pyp-context-nav__links a {
		box-sizing: border-box !important;
		flex: 0 0 auto !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		height: 47px !important;
		min-height: 47px !important;
		padding: 14px 16px !important;
		border: 1px solid #20261f !important;
		font-size: 14px !important;
		font-weight: 500 !important;
		line-height: 16.8px !important;
		letter-spacing: -1px !important;
		text-decoration-color: currentColor !important;
		text-underline-offset: 3px !important;
		white-space: nowrap !important;
	}

	body.pyp-solutions-figma .pyp-footer__cta,
	body.pyp-solutions-figma .pyp-footer__cta-inner {
		box-sizing: border-box !important;
		height: 303px !important;
		min-height: 303px !important;
		max-height: 303px !important;
	}

	body.pyp-solutions-figma .pyp-footer__cta-inner {
		justify-content: flex-start !important;
		padding: 56px 24px !important;
	}

	body.pyp-solutions-figma .pyp-footer__cta-inner > div {
		min-height: 125px !important;
	}

	body.pyp-solutions-figma .pyp-footer__cta a {
		box-sizing: border-box !important;
		width: 169px !important;
		height: 42px !important;
		min-height: 42px !important;
		max-height: 42px !important;
		padding: 12px 24px !important;
	}

	body.pyp-solutions-figma .pyp-footer__grid {
		box-sizing: border-box !important;
		height: 633.669px !important;
		min-height: 633.669px !important;
		max-height: 633.669px !important;
	}
}

/* PixelYourSite appends this empty transport after the footer. A broad
 * body-child minimum-height rule otherwise turns it into a full blank screen. */
body.pyp-solutions-figma > #pys_ajax_events {
	height: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

/* Solutions-only contextual-link marquee. The duplicated set is hidden on
 * desktop, where the original Figma layout remains unchanged. */
body.pyp-solutions-figma .pyp-context-nav__marquee {
	display: none;
}

@media (max-width: 700px) {
	/* Keep the custom-card CTA inside the fixed 248px body and preserve a
	 * visible 28px gap between its underline and the card edge. */
	html body.pyp-solutions-figma .sc-host .pyp-solutions-custom__body {
		box-sizing: border-box !important;
		padding: 24px 24px 28px !important;
	}

	html body.pyp-solutions-figma #pyp-main-content .sc-host .pyp-solutions-custom__card {
		gap: 0 !important;
	}

	html body.pyp-solutions-figma .sc-host .pyp-solutions-custom__body > span:last-child {
		box-sizing: border-box !important;
		height: 22px !important;
		min-height: 22px !important;
		margin-top: auto !important;
		padding: 0 0 4px !important;
	}

	/* Project cards use the same bottom rhythm regardless of copy length. */
	html body.pyp-solutions-figma .sc-host .pyp-solutions-projects__card {
		box-sizing: border-box !important;
		padding-bottom: 24px !important;
	}

	html body.pyp-solutions-figma .sc-host .pyp-solutions-projects__body {
		box-sizing: border-box !important;
		flex: 1 1 auto !important;
	}

	html body.pyp-solutions-figma .sc-host .pyp-solutions-projects__body > span:last-child {
		margin-top: auto !important;
		padding-top: 6px !important;
	}

	/* Three 47px rails occupy the existing 157px Figma button area. */
	html body.pyp-solutions-figma .pyp-context-nav__links--desktop {
		display: none !important;
	}

	html body.pyp-solutions-figma .pyp-context-nav__marquee {
		box-sizing: border-box;
		display: flex;
		flex: 0 0 157px;
		flex-direction: column;
		width: calc(100% + 48px);
		height: 157px;
		margin: 0 -24px;
		gap: 8px;
		overflow: hidden;
	}

	html body.pyp-solutions-figma .pyp-context-nav__marquee-row {
		box-sizing: border-box;
		width: 100%;
		height: 47px;
		overflow: hidden;
	}

	html body.pyp-solutions-figma .pyp-context-nav__marquee-track {
		display: flex;
		width: max-content;
		height: 47px;
		gap: 8px;
		will-change: transform;
		animation: pyp-solutions-link-marquee 28s linear infinite;
	}

	html body.pyp-solutions-figma .pyp-context-nav__marquee-row--2 .pyp-context-nav__marquee-track {
		animation-duration: 24s;
		animation-delay: -8s;
	}

	html body.pyp-solutions-figma .pyp-context-nav__marquee-row--3 .pyp-context-nav__marquee-track {
		animation-duration: 26s;
		animation-delay: -15s;
	}

	html body.pyp-solutions-figma .pyp-context-nav__marquee-group {
		display: flex;
		flex: 0 0 auto;
		height: 47px;
		gap: 8px;
	}

	html body.pyp-solutions-figma .pyp-context-nav__marquee a {
		box-sizing: border-box !important;
		flex: 0 0 auto !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		height: 47px !important;
		min-height: 47px !important;
		padding: 14px 16px !important;
		border: 1px solid #ddd !important;
		font-family: "BR Segma Figma Web", "BR Segma", Arial, sans-serif !important;
		font-size: 14px !important;
		font-weight: 500 !important;
		line-height: 16.8px !important;
		letter-spacing: -1px !important;
		color: #374239 !important;
		text-decoration: underline !important;
		text-decoration-color: currentColor !important;
		text-underline-offset: 3px !important;
		white-space: nowrap !important;
	}

	html body.pyp-solutions-figma .pyp-context-nav__marquee-row:active .pyp-context-nav__marquee-track,
	html body.pyp-solutions-figma .pyp-context-nav__marquee-row:focus-within .pyp-context-nav__marquee-track {
		animation-play-state: paused;
	}
}

@keyframes pyp-solutions-link-marquee {
	to { transform: translate3d(calc(-50% - 4px), 0, 0); }
}

@media (max-width: 700px) and (prefers-reduced-motion: reduce) {
	html body.pyp-solutions-figma .pyp-context-nav__marquee-row {
		overflow-x: auto;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}

	html body.pyp-solutions-figma .pyp-context-nav__marquee-row::-webkit-scrollbar {
		display: none;
	}

	html body.pyp-solutions-figma .pyp-context-nav__marquee-track {
		animation: none !important;
		transform: none !important;
	}
}

/* Figma 4666:8009: section navigation below the hero. */
.pyp-solutions-section-nav { box-sizing: border-box; display: flex; justify-content: center; align-items: center; gap: 48px; height: 72px; padding: 24px 24px 0; background: #faf8f3; }
@media (min-width: 701px) {
 .pyp-solutions-section-nav { border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
}
.pyp-solutions-section-nav a { flex: 0 0 auto; padding-bottom: 16px; border-bottom: 2px solid transparent; font-size: 16px; line-height: 28.8px; letter-spacing: 0; color: #999; text-decoration: none; white-space: nowrap; }
.pyp-solutions-section-nav a[aria-current] { color: #050505; border-bottom-color: #050505; }
@layer pyp-site-typography {
 body.pyp-solutions-figma .pyp-solutions-section-nav a { font-weight: 400 !important; }
 body.pyp-solutions-figma .pyp-solutions-section-nav a[aria-current] { font-weight: 600 !important; }
}
@media (max-width: 700px) {
 .pyp-solutions-section-nav { justify-content: flex-start; overflow-x: auto; gap: 24px; }
 .pyp-solutions-section-nav a { font-size: 16px; }
}

/* Native server-rendered interaction states. The former export runtime generated
 * these pseudo-class rules from style-hover attributes. */
.pyp-sol-process__controls[hidden] { display: none !important; }

body.pyp-solutions-figma .pyp-solutions-page :is(a, button, [tabindex]):focus-visible {
	outline: 2px solid #9c5b2e;
	outline-offset: 3px;
}

@media (hover: hover) {
	body.pyp-solutions-figma .pyp-solutions-hero__action--primary:hover {
		background: #e7dcc9 !important;
	}

	body.pyp-solutions-figma .pyp-solutions-hero__action--secondary:hover {
		background: rgba(255, 255, 255, .12) !important;
	}

	body.pyp-solutions-figma .pyp-solutions-how__card:hover,
	body.pyp-solutions-figma .pyp-solutions-custom__card:hover {
		box-shadow: 0 14px 32px rgba(32, 38, 31, .12);
		transform: translateY(-3px);
	}

	body.pyp-solutions-figma .pyp-solutions-sourcing__card:hover {
		background: #faf8f3 !important;
	}

	body.pyp-solutions-figma .pyp-solutions-sourcing__cta:hover {
		background: #b06835 !important;
		color: #fff9f0 !important;
	}

	body.pyp-solutions-figma .pyp-solutions-projects__card:hover {
		border-color: rgba(216, 185, 140, .6) !important;
		transform: translateY(-3px);
	}

	body.pyp-solutions-figma :is(
		.pyp-solutions-how__card,
		.pyp-solutions-custom__card,
		.pyp-solutions-projects__card,
		.pyp-solutions-featured__card
	):hover [role="img"] {
		transform: scale(1.05);
	}
}

@media (prefers-reduced-motion: reduce) {
	body.pyp-solutions-figma .pyp-solutions-page *,
	body.pyp-solutions-figma .pyp-solutions-page *::before,
	body.pyp-solutions-figma .pyp-solutions-page *::after {
		scroll-behavior: auto !important;
		transition-duration: .01ms !important;
	}
}
