.ehs-spaces {
	background: #fff;
	color: #2a2a2a;
	padding-block: clamp(3rem, 7vw, 7rem);
}
.ehs-spaces__layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
	gap: clamp(2rem, 5vw, 5.5rem);
	align-items: stretch;
}
.ehs-spaces__media {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 3.25rem;
	gap: 0.5rem;
	align-items: end;
	min-width: 0;
}
.ehs-spaces__images {
	width: 100%;
	min-width: 0;
	aspect-ratio: 4 / 5;
	min-height: 42rem;
	position: relative;
	overflow: hidden;
	background: #eee9e1;
}
.ehs-spaces__images img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.ehs-spaces img[hidden], .ehs-spaces__panel[hidden] { display: none; }
.ehs-spaces__thumbnails, .ehs-spaces__choices { display: none; }
.ehs-spaces.is-interactive .ehs-spaces__thumbnails { display: grid; gap: 0.5rem; }
.ehs-spaces.is-interactive .ehs-spaces__choices { display: flex; flex-direction: column; align-items: start; }
.ehs-spaces button { font-family: inherit; cursor: pointer; }
.ehs-spaces__thumbnails button {
	width: 3.25rem;
	height: 4.5rem;
	padding: 2px;
	border: 1px solid transparent;
	background: transparent;
}
.ehs-spaces__thumbnails img { display: block; width: 100%; height: 100%; object-fit: cover; opacity: 0.35; transition: opacity 250ms ease; }
.ehs-spaces__thumbnails [aria-pressed="true"] { border-color: #9c672b; }
.ehs-spaces__thumbnails [aria-pressed="true"] img { opacity: 1; }
.ehs-spaces__content { min-width: 0; }
.ehs-spaces__eyebrow {
	font-size: 0.7rem;
	font-weight: 600;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	color: #91622f;
	margin: 0 0 0.75rem;
}
.ehs-spaces__choices button {
	position: relative;
	border: 0;
	border-radius: 0;
	padding: 0;
	min-height: 44px;
	margin: 0;
	background: none;
	color: #76716a;
	font-size: clamp(2rem, 3.4vw, 3.5rem);
	font-weight: 400;
	letter-spacing: -0.055em;
	line-height: 1;
	text-align: left;
	transition: color 300ms ease, padding-left 300ms ease;
}
.ehs-spaces__choices button::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	width: 1.4rem;
	height: 2px;
	background: #bc9258;
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 250ms ease;
}
.ehs-spaces__choices button[aria-pressed="true"] { color: #2a2a2a; padding-left: 2.25rem; }
.ehs-spaces__choices button[aria-pressed="true"]::before { transform: scaleX(1); }
.ehs-spaces__choices button:hover { color: #91622f; }
.ehs-spaces__details { position: sticky; top: 5rem; margin-top: clamp(2.5rem, 4vw, 4rem); padding-bottom: 1rem; max-width: 30rem; }
.ehs-spaces__panel h3 { font-size: 1.125rem; font-weight: 500; line-height: 1.4; letter-spacing: -0.025em; margin: 0 0 0.8rem; }
.ehs-spaces__panel p { font-size: 1rem; line-height: 1.6; margin: 0; color: #554d43; }
.ehs-spaces__panel + .ehs-spaces__panel { margin-top: 2rem; }
.ehs-spaces.is-interactive .ehs-spaces__panel { margin-top: 0; }
.ehs-spaces__links { display: flex; flex-wrap: wrap; gap: 0.6rem 1rem; list-style: none; padding: 0; margin: 1.5rem 0 2rem; }
.ehs-spaces__links a { display: inline-flex; align-items: center; min-height: 44px; color: #2a2a2a; font-size: 0.8rem; text-underline-offset: 4px; gap: 0.3rem; }
.ehs-spaces__links a:hover { color: #91622f; }
.ehs-spaces__all { display: inline-flex; align-items: center; gap: 1rem; min-height: 44px; border: 1px solid #bc9258; border-radius: 2rem; color: #2a2a2a; padding: 0.6rem 1.3rem; text-decoration: none; text-transform: uppercase; letter-spacing: 0.05em; font-size: 0.7rem; font-weight: 600; transition: background-color 200ms ease; }
.ehs-spaces__all:hover { background: #f6efe5; }
.ehs-spaces :is(button,a):focus-visible { outline: 2px solid #91622f; outline-offset: 5px; }
.ehs-spaces__status { font-size: 0.8rem; line-height: 1.4; }
.ehs-spaces__status:empty { margin: 0; }
@media (max-width: 900px) {
	.ehs-spaces__layout { gap: 2.5rem; grid-template-columns: minmax(0,1fr); }
	.ehs-spaces__images { min-height: 0; aspect-ratio: 4 / 3; }
	.ehs-spaces__content { max-width: 40rem; }
	.ehs-spaces__details { position: static; margin-top: 2rem; }
	.ehs-spaces__choices button { font-size: clamp(2rem, 5vw, 3rem); min-height: 44px; }
}
@media (max-width: 600px) {
	.ehs-spaces__media { grid-template-columns: minmax(0,1fr); gap: 0.5rem; }
	.ehs-spaces.is-interactive .ehs-spaces__thumbnails { display: flex; justify-content: end; }
	.ehs-spaces__thumbnails button { width: 2.75rem; height: 3.75rem; }
	.ehs-spaces__images { aspect-ratio: 4 / 5; }
	.ehs-spaces__eyebrow { margin-bottom: 0.75rem; }
}
@media (prefers-reduced-motion: reduce) {
	.ehs-spaces *, .ehs-spaces *::before { transition: none !important; }
}

/* V2 manufacturer chapter: this stylesheet is loaded only on home-next-v2. */
.ehs-home-next .ehs-home-next__manufacturers {
	background: #f8f6f2;
	padding-inline: 0;
	padding-block: clamp(3.5rem, 7vw, 7rem);
}
.ehs-home-next .ehs-home-next__manufacturer-intro {
	align-items: flex-start;
	text-align: left;
	gap: 1.5rem;
	max-width: none;
	width: calc(100% - var(--wp--custom--layout--gutter, 4vw) * 2);
	margin-inline: auto;
}
.ehs-home-next .ehs-home-next__manufacturer-intro > div {
	justify-items: start;
	gap: clamp(1.5rem, 3vw, 3rem);
}
.ehs-home-next .ehs-home-next__manufacturer-intro .ehs-home-next__eyebrow {
	color: #91622f;
	font-weight: 600;
	font-size: 0.7rem;
	letter-spacing: 0.15em;
}
.ehs-home-next .ehs-home-next__manufacturer-intro .ehs-home-next__eyebrow {
	max-width: none;
	margin: 0;
	line-height: 1.2;
}
.ehs-home-next .ehs-home-next__manufacturer-summary {
	font-size: 2.75rem;
	font-weight: 400;
	line-height: 1;
	letter-spacing: normal;
	color: #2a2a2a;
	max-width: 1015px;
	margin: 0;
	text-wrap: pretty;
	width: 100%;
	text-align: left;
}
.ehs-home-next .ehs-manufacturer-grid {
	display: flex;
	width: 100%;
	max-width: none;
	box-sizing: border-box;
	overflow-x: auto;
	scroll-snap-type: x proximity;
	scroll-padding-inline: var(--wp--custom--layout--gutter, 4vw);
	padding: 6px var(--wp--custom--layout--gutter, 4vw) 1rem;
	gap: clamp(1rem, 2vw, 2rem);
	margin-top: clamp(3rem, 5vw, 5rem);
	scrollbar-width: thin;
	scrollbar-color: #bc9258 #e7e0d6;
}

.ehs-home-next .ehs-manufacturer-grid__item {
	flex: 0 0 clamp(18rem, 44vw, 44rem);
	scroll-snap-align: start;
	gap: 1rem;
	min-width: 0;
	border-radius: 0;
}
.ehs-home-next .ehs-manufacturer-grid__logo {
	background: #fff;
	border: 0;
	min-height: 0;
	aspect-ratio: 348 / 510;
	padding: clamp(1.5rem, 3vw, 3rem);
	box-shadow: inset 0 -2px transparent;
	transition: box-shadow 250ms ease;
}
.ehs-home-next .ehs-manufacturer-grid { align-items: start; }
.ehs-home-next .ehs-manufacturer-grid__item:nth-child(even) .ehs-manufacturer-grid__logo { aspect-ratio: 348 / 655.5; }
.ehs-home-next .ehs-manufacturer-grid__logo img {
	transition: transform 350ms ease;
}
.ehs-home-next .ehs-manufacturer-grid__label {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	min-height: 44px;
	font-size: 1.0925rem;
	font-weight: 500;
	text-align: left;
}
.ehs-home-next .ehs-manufacturer-grid__item:is(:hover, :focus-visible) .ehs-manufacturer-grid__logo {
	box-shadow: inset 0 -2px #bc9258;
}
.ehs-home-next .ehs-manufacturer-grid__item:is(:hover, :focus-visible) .ehs-manufacturer-grid__logo img {
	transform: none;
}
.ehs-home-next .ehs-manufacturer-grid__item:focus-visible {
	outline: 2px solid #91622f;
	outline-offset: 4px;
}
@media (max-width: 600px) {
	.ehs-home-next .ehs-manufacturer-grid__item { flex-basis: 80vw; }
	.ehs-home-next .ehs-manufacturer-grid__logo { padding: 2.5rem; }
}
@media (prefers-reduced-motion: reduce) {
	.ehs-home-next .ehs-manufacturer-grid *, .ehs-home-next .ehs-manufacturer-grid *::after { transition: none !important; }
	.ehs-home-next .ehs-manufacturer-grid__item:is(:hover, :focus-visible) .ehs-manufacturer-grid__logo img { transform: none; }
	.ehs-home-next .ehs-manufacturer-grid { scroll-snap-type: none; }
}

/* Enhancement wrappers remain transparent to the normal layout. */
.ehs-home-next .ehs-makers-scroll {
	width: 100%;
	max-width: none;
	margin: 0;
}
.ehs-makers-scroll__progress { display: none; }
.ehs-home-next .has-makers-scroll .ehs-makers-scroll__stage {
	position: sticky;
	top: 1.5rem;
}
.ehs-home-next .has-makers-scroll .ehs-home-next__manufacturer-intro {
	gap: 1rem;
}
.ehs-home-next .has-makers-scroll .ehs-home-next__manufacturer-intro > div { gap: 1.25rem; }
.ehs-home-next .has-makers-scroll .ehs-home-next__manufacturer-summary {
	font-size: 2.75rem;
	max-width: 1015px;
}

.ehs-home-next .has-makers-scroll .ehs-makers-scroll__viewport {
	overflow: clip;
	padding-inline: var(--wp--custom--layout--gutter, 4vw);
	padding-block: 6px;
	margin-top: clamp(3rem, 5vw, 5rem);
}
.ehs-home-next .has-makers-scroll .ehs-manufacturer-grid {
	display: flex;
	position: relative;
	width: max-content;
	max-width: none;
	overflow: visible;
	scroll-snap-type: none;
	margin: 0;
	padding: 0;
	gap: clamp(1rem, 2vw, 2rem);
	will-change: transform;
}
.ehs-home-next .has-makers-scroll .ehs-manufacturer-grid__item {
	flex: 0 0 clamp(24rem, 44vw, 44rem);
	width: clamp(24rem, 44vw, 44rem);
}
.ehs-home-next .has-makers-scroll {
	--ehs-maker-tall: clamp(34.5rem, 45.520875vw, 40.96875rem);
}
.ehs-home-next .has-makers-scroll .ehs-manufacturer-grid__logo {
	aspect-ratio: auto;
	height: calc(var(--ehs-maker-tall) * 340 / 437);
}
.ehs-home-next .has-makers-scroll .ehs-manufacturer-grid__item:nth-child(even) .ehs-manufacturer-grid__logo {
	aspect-ratio: auto;
	height: var(--ehs-maker-tall);
}
.ehs-home-next .has-makers-scroll .ehs-makers-scroll__progress {
	display: block;
	position: relative;
	height: 2px;
	width: min(18rem, 35vw);
	margin: 1.5rem auto 0;
	background: #e2d9cd;
}
.ehs-home-next .has-makers-scroll .ehs-makers-scroll__progress::after {
	content: '';
	position: absolute;
	inset: 0;
	background: #bc9258;
	transform-origin: left;
	transform: scaleX(var(--makers-progress, 0));
}

@media (max-width: 1100px) {
	.ehs-home-next .ehs-home-next__manufacturer-summary,
	.ehs-home-next .has-makers-scroll .ehs-home-next__manufacturer-summary { font-size: 2rem; overflow-wrap: break-word; }
}

@media (max-width: 600px) {
	.ehs-home-next .has-makers-scroll .ehs-manufacturer-grid__item {
		flex-basis: 80vw;
		width: 80vw;
	}
	.ehs-home-next .has-makers-scroll .ehs-makers-scroll__stage { top: 1rem; }
	.ehs-home-next .has-makers-scroll .ehs-makers-scroll__viewport { margin-top: 3rem; }
	.ehs-home-next .has-makers-scroll .ehs-makers-scroll__progress { margin-top: 1rem; }
}

/* Continue the wide-desktop hero scale through smaller desktop viewports. */
@media (min-width: 901px) and (max-width: 1439.98px) {
	.ehs-home-next .axiom-hero__heading {
		font-size: clamp(1.5167rem, 3.7335vw, 4.0835rem);
		max-width: 24ch;
	}
}

/* Reference-inspired supporting copy, scoped to the V2 hero. */
.ehs-home-next .axiom-hero__body,
.ehs-home-next .axiom-hero__message .axiom-hero__body {
	flex: 0 1 auto;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.285714;
	letter-spacing: 0.02em;
	width: 100%;
	max-width: 23rem;
	text-align: left;
	text-wrap: pretty;
	overflow-wrap: break-word;
}
@media (max-width: 600px) {
	.ehs-home-next .axiom-hero__body,
	.ehs-home-next .axiom-hero__message .axiom-hero__body {
		font-size: 0.75rem;
		line-height: 1.333333;
	}
}
@media (max-width: 900px) {
	.ehs-home-next .axiom-hero__message { flex-basis: auto; }
}

/* Consistent supporting-copy typography across the V2 chapters. */
.ehs-home-next :is(
	.ehs-spaces__panel > p,
	.axiom-section-heading__body,
	.ehs-home-next__path > p:not(.ehs-home-next__path-number):not(.ehs-home-next__text-link),
	.axiom-why-equity__panel-body,
	.ehs-home-next__section-body,
	.ehs-home-next__audience-description,
	.ehs-home-next__closing-newsletter > p
) {
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.285714;
	letter-spacing: 0.02em;
	max-width: min(100%, 23rem);
	text-wrap: pretty;
	overflow-wrap: break-word;
}
@media (max-width: 600px) {
	.ehs-home-next :is(
		.ehs-spaces__panel > p,
		.axiom-section-heading__body,
		.ehs-home-next__path > p:not(.ehs-home-next__path-number):not(.ehs-home-next__text-link),
		.axiom-why-equity__panel-body,
		.ehs-home-next__section-body,
		.ehs-home-next__audience-description,
		.ehs-home-next__closing-newsletter > p
	) {
		font-size: 0.75rem;
		line-height: 1.333333;
	}
}

/* Lujo-inspired outlined calls to action in the EHS palette. */
.ehs-home-next :is(.axiom-hero__action, .ehs-spaces__all, .ehs-home-next__text-link a, .ehs-home-next__closing .wp-block-button__link, .ehs-home-next__closing-newsletter-form button) {
	--ehs-button-ink: #2a2a2a;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-height: 2.75rem;
	max-width: 100%;
	padding: 0.5rem 1.6875rem;
	border: 1px solid var(--ehs-button-ink);
	border-radius: 1000px;
	background: transparent;
	color: var(--ehs-button-ink);
	font-family: inherit;
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.05em;
	text-align: center;
	text-transform: uppercase;
	text-decoration: none;
	white-space: normal;
	transform: none;
	box-shadow: none;
	transition: background-color 300ms ease, color 300ms ease, border-color 300ms ease;
}
.ehs-home-next :is(.axiom-hero__action, .ehs-home-next__closing .wp-block-button__link, .ehs-home-next__closing-newsletter-form button) {
	--ehs-button-ink: #fff5e4;
}
.ehs-home-next :is(.axiom-hero__action, .ehs-spaces__all, .ehs-home-next__text-link a, .ehs-home-next__closing .wp-block-button__link):is(:hover, :focus-visible) {
	background: #ca9d5e;
	border-color: #ca9d5e;
	color: #2a2a2a;
	text-decoration: none;
	transform: none;
}
.ehs-home-next :is(.axiom-hero__action, .ehs-spaces__all, .ehs-home-next__text-link a, .ehs-home-next__closing .wp-block-button__link):focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
}
.ehs-home-next :is(.axiom-hero__action, .ehs-spaces__all, .ehs-home-next__text-link a) > span[aria-hidden="true"] { display: none; }
.ehs-home-next .ehs-home-next__closing-newsletter-form button:disabled { opacity: 0.5; cursor: not-allowed; }
@media (prefers-reduced-motion: reduce) {
	.ehs-home-next :is(.axiom-hero__action, .ehs-spaces__all, .ehs-home-next__text-link a, .ehs-home-next__closing .wp-block-button__link, .ehs-home-next__closing-newsletter-form button) { transition: none; }
}

/* Editorial material cards: image-to-description reveal. */
.ehs-home-next .ehs-material-story-card { position: relative; }
.ehs-material-story-card__link { display: grid; color: inherit; text-decoration: none; }
.ehs-home-next .ehs-material-story-card .ehs-manufacturer-grid__logo {
	position: relative;
	display: block;
	overflow: hidden;
	padding: 0;
	box-shadow: none;
}
.ehs-home-next .ehs-material-story-card .ehs-manufacturer-grid__logo img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	max-height: none;
	object-fit: cover;
	transform: none;
}
.ehs-material-story-card__overlay {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	padding: 2rem 1.25rem;
	background: #f3f0ea;
	color: #2a2a2a;
	opacity: 0;
	transition: opacity 350ms ease;
}
.ehs-material-story-card__overlay > span {
	width: min(100%, 14.3125rem);
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.285714;
	letter-spacing: 0.02em;
	text-align: left;
}
.ehs-material-story-card__link:focus-visible .ehs-material-story-card__overlay { opacity: 1; }
@media (hover: hover) and (pointer: fine) {
	.ehs-material-story-card:hover .ehs-material-story-card__overlay { opacity: 1; }
}
.ehs-material-story-card__link:focus-visible { outline: 2px solid #91622f; outline-offset: 4px; }
@media (max-width: 600px) {
	.ehs-material-story-card__overlay > span { font-size: 0.75rem; line-height: 1.333333; }
}
@media (prefers-reduced-motion: reduce) {
	.ehs-material-story-card__overlay { transition: none; }
}

/* Process discovery follows the completed Why Equity sequence. */
.ehs-home-next .ehs-home-next__why-process-link {
	margin: 0;
	padding: clamp(1.5rem, 3vw, 3rem) var(--axiom-gutter, 1.5rem);
	text-align: center;
}
/* Keep the section connector behind photos and the purchasing-path visual. */
.ehs-home-next .axiom-why-equity__slider-visual { z-index: 3; }
/* Official marks sit below the pre-footer actions, with a deliberate pause. */
.ehs-home-next .ehs-home-next__closing-logos {
 display:flex; flex-wrap:wrap; align-items:center;
 gap:1.5rem clamp(2rem,4vw,4rem);
 margin-top:auto;
 padding-top:4rem;
 width:100%;
}
.ehs-home-next__closing-logos .wp-block-image { margin:0; width:clamp(7.65rem,12.75vw,11.9rem); max-width:100%; }
.ehs-home-next__closing-logos a { display:flex; align-items:center; min-height:44px; }
.ehs-home-next__closing-logos img { display:block; width:100%; height:auto; }
.ehs-home-next__closing-logos a:focus-visible { outline:2px solid #ca9d5e; outline-offset:8px; }

.ehs-home-next .ehs-home-next__closing-logos > .ehs-home-next__eyebrow { flex-basis:100%; margin:0; text-align:left; }
@media (min-width:901px) {
 .ehs-home-next .ehs-home-next__closing-primary { min-height:calc(90svh - clamp(0.96rem,2.04vw,1.92rem) - clamp(0.96rem,2.04vw,1.92rem)); }
}
