/* Final House of Herbs layout corrections. Loaded after the main stylesheet. */

:root {
	--container: min(calc(100vw - 40px), 1180px);
	--card-padding: clamp(1.22rem, 5.2vw, 1.7rem);
}

html,
body {
	overflow-x: clip;
}

.hero-home {
	padding-block: clamp(2.4rem, 6vw, 5.6rem) clamp(2.1rem, 5vw, 4.8rem) !important;
}

.hero-home__grid {
	align-items: center !important;
	gap: clamp(1.6rem, 5vw, 4.75rem) !important;
}

.hero-home__copy {
	display: grid !important;
	gap: clamp(0.85rem, 2vw, 1.2rem) !important;
	max-width: 720px !important;
}

.hero-home__copy .display {
	max-width: 13.4ch !important;
	margin: 0 !important;
	font-size: clamp(3rem, 6.65vw, 6.45rem) !important;
	line-height: 0.91 !important;
	letter-spacing: -0.055em !important;
}

.hero-home__subheading {
	max-width: 49ch !important;
	margin: 0 !important;
	color: var(--color-ink) !important;
	font-size: clamp(1.08rem, 1.55vw, 1.42rem) !important;
	font-weight: 800 !important;
	line-height: 1.26 !important;
	letter-spacing: -0.025em !important;
}

.hero-home__body {
	max-width: 58ch !important;
	margin: 0 !important;
	color: rgba(20, 25, 23, 0.72) !important;
	font-size: clamp(1rem, 1.25vw, 1.12rem) !important;
	line-height: 1.58 !important;
}

.hero-home__actions {
	align-items: stretch !important;
	gap: 0.75rem !important;
	margin-top: clamp(0.25rem, 1.2vw, 0.75rem) !important;
}

.hero-home__actions .button {
	min-height: 3.35rem !important;
	padding-inline: clamp(1.35rem, 3vw, 2.2rem) !important;
}

.hero-home__actions .button-primary {
	box-shadow: 0 18px 42px rgba(13, 27, 22, 0.22) !important;
}

.hero-home__actions .button-secondary {
	background: rgba(255, 255, 255, 0.58) !important;
}

.hero-home__trust-chips {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 0.55rem !important;
	margin: clamp(0.35rem, 1.5vw, 0.8rem) 0 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.hero-home__trust-chips li {
	display: inline-flex !important;
	align-items: center !important;
	min-height: 2.35rem !important;
	padding: 0.65rem 0.9rem !important;
	border: 1px solid rgba(13, 27, 22, 0.12) !important;
	border-radius: 999px !important;
	background: rgba(255, 255, 255, 0.62) !important;
	color: var(--color-ink) !important;
	font-size: 0.78rem !important;
	font-weight: 800 !important;
	line-height: 1.12 !important;
	letter-spacing: 0.03em !important;
	text-align: center !important;
	box-shadow: 0 10px 24px rgba(13, 27, 22, 0.05) !important;
}

.hero-home__trust-chip-long {
	flex: 1 1 min(100%, 21.5rem) !important;
	justify-content: center !important;
	white-space: normal !important;
}

.hero-trust-strip {
	margin-top: clamp(-2.1rem, -2.4vw, -0.9rem) !important;
	padding-block: 0 clamp(2rem, 5vw, 3.8rem) !important;
}

.hero-trust-strip__list {
	display: flex !important;
	flex-wrap: wrap !important;
	justify-content: center !important;
	gap: 0.55rem !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.hero-trust-strip__list li {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 2.45rem !important;
	padding: 0.68rem 1rem !important;
	border: 1px solid rgba(13, 27, 22, 0.1) !important;
	border-radius: 999px !important;
	background: rgba(242, 238, 229, 0.72) !important;
	color: rgba(20, 25, 23, 0.78) !important;
	font-size: 0.78rem !important;
	font-weight: 850 !important;
	line-height: 1.12 !important;
	letter-spacing: 0.04em !important;
	text-align: center !important;
	box-shadow: 0 10px 26px rgba(13, 27, 22, 0.045) !important;
}

.hero-home__visual {
	aspect-ratio: 1 / 0.95 !important;
	max-height: min(58vh, 620px) !important;
}

.hero-home__metric-card {
	max-width: min(92%, 520px) !important;
}

.section-header,
.page-hero__grid > div:first-child,
.hero-home__copy,
.bundle-card__body,
.bundle-support-card__body,
.bundle-compare__card,
.product-card__body,
.product-hero__content,
.bundle-inside-panel {
	padding-inline: max(var(--card-padding), 1.25rem) !important;
}

.story-step {
	padding-block: clamp(1rem, 4.5vw, 1.85rem) !important;
}

.story-step__card {
	padding: var(--card-padding) !important;
}

.routine-story-actions {
	margin-top: clamp(2.8rem, 12vw, 5rem) !important;
	margin-bottom: clamp(1.6rem, 7vw, 3.5rem) !important;
}

.routine-story-actions .button {
	max-width: min(100%, 560px) !important;
	margin-inline: auto !important;
}

.product-card,
.product-card-compact,
.product-card-wide,
.shop-product-grid .product-card,
.concern-products-grid .product-card,
.recommended-product-grid .product-card {
	--product-card-fit: contain;
	--product-card-scale: 1;
	--product-image-position: center 43%;
	grid-template-columns: 1fr !important;
	overflow: hidden !important;
}

.product-card__image,
.product-card-wide .product-card__image,
.product-card-compact .product-card__image,
.shop-product-grid .product-card__image,
.concern-products-grid .product-card__image,
.recommended-product-grid .product-card__image,
.product-pair-card__image,
.bundle-inside-product__image {
	display: grid !important;
	place-items: center !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	aspect-ratio: 1 / 1.02 !important;
	padding: 0 !important;
	overflow: hidden !important;
	background: linear-gradient(145deg, #f8f8f4 0%, #eeece5 100%) !important;
}

.product-card__image img,
.product-card-wide .product-card__image img,
.product-card-compact .product-card__image img,
.shop-product-grid .product-card__image img,
.concern-products-grid .product-card__image img,
.recommended-product-grid .product-card__image img,
.product-pair-card__image img,
.bundle-inside-product__image img {
	width: 100% !important;
	height: 100% !important;
	max-width: 100% !important;
	max-height: 100% !important;
	padding: 0 !important;
	object-fit: contain !important;
	object-position: var(--product-image-position) !important;
	transform: none !important;
}

.product-card:hover .product-card__image img,
.product-card-wide:hover .product-card__image img,
.product-card-compact:hover .product-card__image img,
.shop-product-grid .product-card:hover .product-card__image img,
.concern-products-grid .product-card:hover .product-card__image img,
.recommended-product-grid .product-card:hover .product-card__image img {
	transform: none !important;
}

.product-card--fullness-wash .product-card__image img,
.product-card--fullness-wash:hover .product-card__image img {
	object-fit: cover !important;
	object-position: center 18% !important;
	transform: translateY(8%) scale(1.92) !important;
	transform-origin: center top !important;
}

.product-card--botanical-scalp-oil .product-card__image img,
.product-card--botanical-scalp-oil:hover .product-card__image img {
	object-fit: cover !important;
	object-position: center 34% !important;
	transform: translateY(-7%) scale(1.08) !important;
	transform-origin: center center !important;
}

.product-card--root-refresh-mist,
.product-card--clarifying-herb-shampoo,
.product-card--rejuvenating-conditioner,
.product-card--fullness-wash {
	--product-card-fit: contain;
	--product-image-position: center 51%;
}

.product-card--botanical-scalp-oil {
	--product-card-fit: cover;
	--product-image-position: center 34%;
}

.product-hero__media,
.product-hero__image,
.product-gallery__main {
	display: grid !important;
	place-items: center !important;
	overflow: hidden !important;
	background: linear-gradient(145deg, #f8f8f4 0%, #eeece5 100%) !important;
}

.product-hero__media img,
.product-hero__image img,
.product-gallery__main img {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain !important;
	object-position: center 42% !important;
	transform: none !important;
	padding: clamp(0.45rem, 2vw, 1rem) !important;
}

body[data-product="botanical-scalp-oil"] .product-hero__media img,
body[data-product="root-refresh-mist"] .product-hero__media img,
body[data-product="clarifying-herb-shampoo"] .product-hero__media img,
body[data-product="rejuvenating-conditioner"] .product-hero__media img,
body[data-product="fullness-wash"] .product-hero__media img {
	object-fit: contain !important;
	object-position: center 42% !important;
	transform: none !important;
}

.story-visual {
	display: block !important;
	position: relative !important;
	width: 100% !important;
	min-height: clamp(360px, 92vw, 560px) !important;
	height: auto !important;
	aspect-ratio: 1 / 1.08 !important;
	padding: clamp(0.75rem, 3vw, 1.1rem) !important;
	overflow: hidden !important;
	border-radius: var(--card-radius) !important;
	background: linear-gradient(145deg, #f8f8f4 0%, #eeece5 100%) !important;
}

.story-visual__frame {
	position: absolute !important;
	inset: clamp(0.75rem, 3vw, 1.1rem) clamp(0.75rem, 3vw, 1.1rem) clamp(4.8rem, 18vw, 6.5rem) !important;
	display: grid !important;
	place-items: center !important;
	overflow: hidden !important;
	border-radius: calc(var(--card-radius) - 10px) !important;
	background: #f5f5f0 !important;
	opacity: 0 !important;
	transition: opacity 240ms ease !important;
}

.story-visual__frame.is-active {
	opacity: 1 !important;
}

.story-visual__frame img {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain !important;
	object-position: center 42% !important;
	transform: none !important;
	padding: 0 !important;
}

.story-visual__caption {
	position: absolute !important;
	inset: auto clamp(1rem, 4vw, 1.4rem) clamp(1rem, 4vw, 1.4rem) !important;
	max-width: none !important;
	color: var(--color-white) !important;
	background: rgba(20, 25, 23, 0.74) !important;
	border: 1px solid rgba(255, 255, 255, 0.16) !important;
	backdrop-filter: blur(10px) !important;
}

.bundle-card,
.bundle-card-featured,
.bundle-support-card {
	grid-template-columns: 1fr !important;
}

.bundle-card__visual,
.bundle-support-card__image,
.bundle-compare__image,
.bundle-product-montage {
	display: none !important;
}

.bundle-card--text-only {
	background:
		radial-gradient(circle at top left, rgba(170, 136, 91, 0.12), transparent 36%),
		linear-gradient(145deg, #fffdf8 0%, #f4f0e7 100%) !important;
}

.bundle-card__included-summary {
	display: grid !important;
	gap: 0.5rem !important;
	margin: clamp(1rem, 3vw, 1.35rem) 0 !important;
	padding: clamp(0.9rem, 3vw, 1.15rem) !important;
	border: 1px solid var(--color-line) !important;
	border-radius: 24px !important;
	background: rgba(255, 255, 255, 0.68) !important;
}

.bundle-card__included-summary span {
	display: block !important;
	font-size: 0.76rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	color: var(--color-clay) !important;
}

.bundle-card__included-summary ul {
	display: grid !important;
	gap: 0.35rem !important;
	margin: 0 !important;
	padding-left: 1.1rem !important;
	color: var(--color-ink) !important;
	font-size: clamp(0.98rem, 3.4vw, 1.12rem) !important;
	line-height: 1.45 !important;
}

.bundle-card__included-summary li {
	padding-left: 0.15rem !important;
	color: var(--color-ink) !important;
}

.bundle-inside-panel {
	display: grid !important;
	gap: clamp(1rem, 3vw, 1.35rem) !important;
	margin: clamp(1.2rem, 4vw, 1.8rem) var(--card-padding) var(--card-padding) !important;
	padding: clamp(1rem, 3.6vw, 1.45rem) !important;
	border: 1px solid var(--color-line) !important;
	border-radius: 26px !important;
	background: rgba(255, 255, 255, 0.76) !important;
}

.bundle-inside-panel__header {
	display: grid !important;
	gap: 0.55rem !important;
}

.bundle-inside-panel__header h4 {
	margin: 0 !important;
	color: var(--color-ink) !important;
	font-family: var(--font-serif) !important;
	font-size: clamp(1.45rem, 8vw, 2.1rem) !important;
	line-height: 0.98 !important;
}

.bundle-inside-panel__header p {
	margin: 0 !important;
	max-width: 58ch !important;
	color: var(--color-muted) !important;
}

.bundle-inside-grid {
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 0.9rem !important;
}

.bundle-inside-product {
	display: grid !important;
	grid-template-columns: minmax(104px, 0.42fr) minmax(0, 0.58fr) !important;
	gap: 0.85rem !important;
	align-items: center !important;
	padding: 0.75rem !important;
	border: 1px solid var(--color-line) !important;
	border-radius: 24px !important;
	background: #fffdfa !important;
}

.bundle-inside-product__image {
	border-radius: 18px !important;
	aspect-ratio: 1 / 1.08 !important;
	padding: 0.35rem !important;
}

.bundle-inside-product__body {
	display: grid !important;
	gap: 0.35rem !important;
	min-width: 0 !important;
}

.bundle-inside-product__body h5 {
	margin: 0 !important;
	font-family: var(--font-serif) !important;
	font-size: clamp(1.2rem, 5vw, 1.55rem) !important;
	line-height: 1 !important;
}

.bundle-inside-product__body a {
	color: var(--color-ink) !important;
	text-decoration: none !important;
}

.bundle-inside-product__body p,
.bundle-inside-product__meta {
	margin: 0 !important;
	color: var(--color-muted) !important;
	font-size: 0.9rem !important;
	line-height: 1.4 !important;
}

.bundle-inside-product__meta {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 0.45rem !important;
	font-weight: 800 !important;
	color: var(--color-ink) !important;
}

@media (max-width: 767px) {
	.hero-home {
		padding-block: clamp(1.45rem, 5.5vw, 2.2rem) clamp(1.6rem, 6vw, 2.4rem) !important;
	}

	.hero-home__grid {
		grid-template-columns: 1fr !important;
		gap: clamp(1rem, 4.8vw, 1.45rem) !important;
	}

	.hero-home__copy {
		gap: clamp(0.7rem, 3vw, 0.95rem) !important;
	}

	.hero-home__copy .display {
		max-width: 12.6ch !important;
		font-size: clamp(2.45rem, 11.2vw, 3.75rem) !important;
		line-height: 0.93 !important;
	}

	.hero-home__subheading {
		max-width: 33ch !important;
		font-size: clamp(0.98rem, 4.2vw, 1.13rem) !important;
		line-height: 1.3 !important;
	}

	.hero-home__body {
		max-width: 34ch !important;
		font-size: 0.94rem !important;
		line-height: 1.48 !important;
	}

	.hero-home__actions {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 0.58rem !important;
		margin-top: 0.25rem !important;
	}

	.hero-home__actions .button {
		width: 100% !important;
		min-height: 3.1rem !important;
		padding-inline: 0.9rem !important;
	}

	.hero-home__trust-chips {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 0.5rem !important;
		margin-top: 0.25rem !important;
	}

	.hero-home__trust-chips li {
		justify-content: center !important;
		min-height: 2.25rem !important;
		padding: 0.58rem 0.65rem !important;
		text-align: center !important;
		font-size: 0.72rem !important;
		line-height: 1.15 !important;
	}

	.hero-home__trust-chip-long {
		grid-column: 1 / -1 !important;
	}

	.hero-trust-strip {
		margin-top: clamp(-1.2rem, -4vw, -0.55rem) !important;
		padding-block: 0 clamp(1.45rem, 6vw, 2.1rem) !important;
	}

	.hero-trust-strip__list {
		justify-content: flex-start !important;
		gap: 0.45rem !important;
	}

	.hero-trust-strip__list li {
		flex: 1 1 calc(50% - 0.45rem) !important;
		min-height: 2.15rem !important;
		padding: 0.58rem 0.68rem !important;
		font-size: 0.68rem !important;
		line-height: 1.15 !important;
	}

	.hero-trust-strip__list li:last-child {
		flex-basis: 100% !important;
	}

	.hero-home__media {
		margin-top: 0.3rem !important;
	}

	.hero-home__visual {
		aspect-ratio: 1 / 0.56 !important;
		max-height: 210px !important;
		border-radius: 28px !important;
	}

	.hero-home__visual img {
		object-position: center 47% !important;
	}

	.hero-home__metric-card {
		position: relative !important;
		inset: auto !important;
		max-width: 100% !important;
		margin-top: -0.7rem !important;
		padding: 1rem !important;
		border-radius: 24px !important;
	}

	.hero-home__metric-card strong {
		font-size: clamp(1.45rem, 8vw, 2rem) !important;
		line-height: 0.95 !important;
	}
}

@media (max-width: 767px) {
	.section-dark .story-layout {
		grid-template-columns: 1fr !important;
		gap: clamp(1rem, 5vw, 1.4rem) !important;
		margin-top: clamp(1.2rem, 6vw, 1.8rem) !important;
	}

	.section-dark .story-visual {
		display: none !important;
	}

	.section-dark .story-steps {
		display: grid !important;
		gap: clamp(0.95rem, 4.5vw, 1.25rem) !important;
	}

	.section-dark .story-step {
		padding: 0 !important;
		opacity: 1 !important;
		transform: none !important;
	}

	.section-dark .story-step__card {
		position: relative !important;
		overflow: hidden !important;
		display: grid !important;
		gap: clamp(0.75rem, 3.8vw, 1rem) !important;
		padding: clamp(1.35rem, 5.8vw, 1.85rem) !important;
		border: 1px solid rgba(255, 255, 255, 0.18) !important;
		border-radius: 30px !important;
		background:
			radial-gradient(circle at 12% 0%, rgba(221, 196, 156, 0.3), transparent 32%),
			linear-gradient(145deg, rgba(246, 244, 238, 0.96), rgba(213, 216, 210, 0.95)) !important;
		box-shadow: 0 24px 55px rgba(0, 0, 0, 0.22) !important;
	}

	.section-dark .story-step__card::after {
		content: "" !important;
		position: absolute !important;
		inset: 0 !important;
		pointer-events: none !important;
		border-radius: inherit !important;
		background: linear-gradient(135deg, rgba(255, 255, 255, 0.26), transparent 38%) !important;
	}

	.section-dark .story-step__card > * {
		position: relative !important;
		z-index: 1 !important;
	}

	.section-dark .story-step__card .eyebrow {
		color: #a57645 !important;
		font-size: 0.75rem !important;
		letter-spacing: 0.24em !important;
	}

	.section-dark .story-step__card h3 {
		max-width: 11ch !important;
		margin: 0 !important;
		color: var(--color-ink) !important;
		font-size: clamp(2.15rem, 10.5vw, 3.05rem) !important;
		line-height: 0.9 !important;
		letter-spacing: -0.055em !important;
	}

	.section-dark .story-step__card p {
		max-width: 34ch !important;
		margin: 0 !important;
		color: rgba(20, 25, 23, 0.82) !important;
		font-size: clamp(1rem, 4.3vw, 1.16rem) !important;
		line-height: 1.55 !important;
	}

	.section-dark .story-step__card ul {
		display: grid !important;
		gap: 0.55rem !important;
		margin: 0.25rem 0 0 !important;
		padding: 0 !important;
		list-style: none !important;
	}

	.section-dark .story-step__card li {
		display: flex !important;
		align-items: flex-start !important;
		gap: 0.6rem !important;
		margin: 0 !important;
		color: var(--color-ink) !important;
		font-size: clamp(0.96rem, 4vw, 1.06rem) !important;
		font-weight: 800 !important;
		line-height: 1.35 !important;
	}

	.section-dark .story-step__card li::before {
		content: "" !important;
		flex: 0 0 auto !important;
		width: 0.5rem !important;
		height: 0.5rem !important;
		margin-top: 0.44rem !important;
		border-radius: 999px !important;
		background: var(--color-forest) !important;
		box-shadow: 0 0 0 5px rgba(13, 27, 22, 0.08) !important;
	}

	.routine-story-actions {
		margin-top: clamp(1.5rem, 7vw, 2.2rem) !important;
	}
}

@media (max-width: 430px) {
	:root {
		--container: min(calc(100vw - 32px), 1180px);
		--card-padding: clamp(1.05rem, 4.8vw, 1.35rem);
	}

	.product-card__body,
	.product-hero__content,
	.bundle-card__body,
	.bundle-support-card__body {
		padding-inline: var(--card-padding) !important;
	}

	.bundle-inside-product {
		grid-template-columns: 1fr !important;
	}

	.bundle-inside-product__image {
		aspect-ratio: 1 / 0.86 !important;
	}
}

@media (min-width: 768px) {
	:root {
		--container: min(calc(100vw - 64px), 1180px);
		--card-padding: clamp(1.4rem, 2.5vw, 2rem);
	}

	.product-card__image,
	.product-card-wide .product-card__image,
	.product-card-compact .product-card__image,
	.shop-product-grid .product-card__image,
	.concern-products-grid .product-card__image,
	.recommended-product-grid .product-card__image {
		aspect-ratio: 1 / 0.96 !important;
	}

	.story-visual {
		min-height: clamp(440px, 52vw, 620px) !important;
	}

	.bundle-inside-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}

	.bundle-inside-product {
		grid-template-columns: 1fr !important;
		align-content: start !important;
	}

	.bundle-inside-product__image {
		aspect-ratio: 1 / 0.95 !important;
	}
}

@media (min-width: 1024px) {
	:root {
		--container: min(calc(100vw - 96px), 1180px);
		--card-padding: clamp(1.55rem, 1.9vw, 2.25rem);
	}

	.product-card__image,
	.product-card-wide .product-card__image,
	.product-card-compact .product-card__image,
	.shop-product-grid .product-card__image,
	.concern-products-grid .product-card__image,
	.recommended-product-grid .product-card__image {
		aspect-ratio: 1 / 1 !important;
	}

	.story-visual {
		position: sticky !important;
		top: calc(var(--header-height, 86px) + 1.25rem) !important;
		min-height: clamp(520px, 44vw, 680px) !important;
	}

	.bundle-card,
	.bundle-card-featured,
	.bundle-support-card {
		grid-template-columns: 1fr !important;
	}

	.bundle-card__visual,
	.bundle-support-card__image,
	.bundle-compare__image,
	.bundle-product-montage {
		display: none !important;
	}
}

/* Final cleanup pass for mobile readability and conversion details. */
.nav-toggle {
	position: relative !important;
	display: none;
	align-items: center !important;
	justify-content: center !important;
	width: 3.65rem !important;
	height: 3.65rem !important;
	border: 1px solid rgba(13, 27, 22, 0.13) !important;
	border-radius: 999px !important;
	background:
		radial-gradient(circle at 50% 15%, rgba(255, 255, 255, 0.85), transparent 46%),
		linear-gradient(145deg, #fbfaf5, #eee8da) !important;
	color: var(--color-forest) !important;
	box-shadow: 0 12px 28px rgba(13, 27, 22, 0.1) !important;
	overflow: hidden !important;
}

.nav-toggle span,
.nav-toggle::before,
.nav-toggle::after {
	content: "" !important;
	position: absolute !important;
	left: 50% !important;
	width: 1.45rem !important;
	height: 0.16rem !important;
	border-radius: 999px !important;
	background: currentColor !important;
	transform: translateX(-50%) !important;
}

.nav-toggle::before {
	top: calc(50% - 0.52rem) !important;
}

.nav-toggle span {
	top: 50% !important;
	margin: 0 !important;
}

.nav-toggle span + span {
	display: none !important;
}

.nav-toggle::after {
	top: calc(50% + 0.52rem) !important;
}

.site-header.is-menu-open .nav-toggle::before {
	top: 50% !important;
	transform: translateX(-50%) rotate(45deg) !important;
}

.site-header.is-menu-open .nav-toggle span {
	opacity: 0 !important;
}

.site-header.is-menu-open .nav-toggle::after {
	top: 50% !important;
	transform: translateX(-50%) rotate(-45deg) !important;
}

.product-card__trust > span,
.product-review-accordion__stars,
.product-review-accordion__item-topline > span {
	color: #b98a4b !important;
	font-size: clamp(1.1rem, 3.6vw, 1.45rem) !important;
	letter-spacing: 0.06em !important;
	text-shadow: 0 5px 18px rgba(185, 138, 75, 0.2) !important;
}

.product-card__trust small {
	display: none !important;
}

.product-review-accordion {
	border: 1px solid var(--color-line) !important;
	border-radius: 28px !important;
	background: rgba(255, 255, 255, 0.72) !important;
	box-shadow: 0 18px 44px rgba(13, 27, 22, 0.08) !important;
	overflow: hidden !important;
}

.product-review-accordion summary {
	display: grid !important;
	grid-template-columns: auto minmax(0, 1fr) auto !important;
	align-items: center !important;
	gap: 0.9rem !important;
	padding: clamp(1rem, 3.5vw, 1.25rem) !important;
	cursor: pointer !important;
	list-style: none !important;
}

.product-review-accordion summary::-webkit-details-marker {
	display: none !important;
}

.product-review-accordion summary::after {
	content: "+" !important;
	display: grid !important;
	place-items: center !important;
	width: 2rem !important;
	height: 2rem !important;
	border-radius: 999px !important;
	background: var(--color-forest) !important;
	color: #fff !important;
	font-weight: 900 !important;
}

.product-review-accordion[open] summary::after {
	content: "-" !important;
}

.product-review-accordion__summary-copy {
	display: grid !important;
	gap: 0.22rem !important;
	min-width: 0 !important;
}

.product-review-accordion__summary-copy strong {
	color: var(--color-ink) !important;
	font-size: clamp(1rem, 3.8vw, 1.16rem) !important;
	line-height: 1.15 !important;
}

.product-review-accordion__summary-copy small {
	color: var(--color-muted) !important;
	font-size: 0.92rem !important;
	line-height: 1.35 !important;
}

.product-review-accordion__panel {
	display: grid !important;
	gap: 0.8rem !important;
	padding: 0 clamp(1rem, 3.5vw, 1.25rem) clamp(1rem, 3.5vw, 1.25rem) !important;
}

.product-review-accordion__item {
	display: grid !important;
	gap: 0.55rem !important;
	padding: clamp(0.9rem, 3vw, 1.1rem) !important;
	border: 1px solid rgba(13, 27, 22, 0.08) !important;
	border-radius: 22px !important;
	background: rgba(250, 248, 243, 0.84) !important;
}

.product-review-accordion__item-topline {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 0.55rem !important;
}

.product-review-accordion__item blockquote {
	margin: 0 !important;
	color: var(--color-ink) !important;
	font-size: clamp(0.98rem, 3.8vw, 1.08rem) !important;
	line-height: 1.55 !important;
}

.product-review-accordion__item small {
	color: var(--color-muted) !important;
	font-weight: 800 !important;
}

.concern-recommendation-card__proof {
	display: none !important;
}

.concern-recommendation-card__intro > .eyebrow,
.concern-button > .eyebrow {
	display: inline-flex !important;
	width: fit-content !important;
	padding: 0.38rem 0.55rem !important;
	border: 1px solid rgba(151, 112, 74, 0.24) !important;
	border-radius: 999px !important;
	background: rgba(151, 112, 74, 0.1) !important;
	color: #8e633b !important;
	font-size: 0.74rem !important;
	font-weight: 900 !important;
	letter-spacing: 0.2em !important;
}

.concern-recommendation-card h2 {
	color: var(--color-ink) !important;
	font-size: clamp(2.35rem, 8vw, 4.6rem) !important;
	line-height: 0.9 !important;
	letter-spacing: -0.055em !important;
	text-wrap: balance !important;
}

.bundle-inside-panel {
	margin-inline: 0 !important;
}

.bundle-inside-panel__header {
	grid-template-columns: minmax(0, 1fr) !important;
}

.bundle-inside-panel__header h4 {
	max-width: 12ch !important;
	text-wrap: balance !important;
}

.bundle-inside-product {
	box-shadow: 0 14px 32px rgba(13, 27, 22, 0.06) !important;
}

.support-panel .support-list {
	display: grid !important;
	gap: 0 !important;
}

.support-panel .metric-line {
	display: grid !important;
	grid-template-columns: minmax(0, 0.44fr) minmax(0, 0.56fr) !important;
	gap: clamp(0.75rem, 3vw, 1.25rem) !important;
	align-items: start !important;
	padding-block: clamp(0.95rem, 3vw, 1.25rem) !important;
}

.support-panel .metric-line span {
	color: var(--color-ink) !important;
	font-size: clamp(0.92rem, 2.4vw, 1.05rem) !important;
	line-height: 1.35 !important;
}

.support-panel .metric-line strong {
	min-width: 0 !important;
	color: var(--color-ink) !important;
	font-family: var(--font-sans) !important;
	font-size: clamp(1rem, 2.8vw, 1.25rem) !important;
	font-weight: 900 !important;
	line-height: 1.25 !important;
	letter-spacing: -0.02em !important;
	text-align: left !important;
	overflow-wrap: anywhere !important;
	word-break: normal !important;
}

.woocommerce-cart table.cart {
	overflow: visible !important;
}

.woocommerce-cart table.cart tbody {
	display: grid !important;
	gap: clamp(0.9rem, 3vw, 1.25rem) !important;
}

.woocommerce-cart table.cart tr.cart_item {
	position: relative !important;
	display: grid !important;
	grid-template-columns: 92px minmax(0, 1fr) !important;
	gap: 0.85rem 1rem !important;
	padding: clamp(1rem, 4vw, 1.35rem) !important;
	border: 1px solid var(--color-line) !important;
	border-radius: 28px !important;
	background: rgba(255, 255, 255, 0.76) !important;
	box-shadow: 0 18px 42px rgba(13, 27, 22, 0.08) !important;
}

.woocommerce-cart table.cart td.product-remove {
	position: absolute !important;
	top: 0.75rem !important;
	right: 0.75rem !important;
	display: block !important;
	width: auto !important;
	padding: 0 !important;
	border: 0 !important;
}

.woocommerce-cart table.cart a.remove {
	display: grid !important;
	place-items: center !important;
	width: 2.45rem !important;
	height: 2.45rem !important;
	border-radius: 999px !important;
	background: rgba(151, 54, 42, 0.08) !important;
	color: #9d3d32 !important;
	font-size: 1.3rem !important;
	font-weight: 900 !important;
	text-decoration: none !important;
}

.woocommerce-cart table.cart td.product-thumbnail {
	grid-column: 1 !important;
	grid-row: 1 !important;
	display: block !important;
	padding: 0 !important;
}

.woocommerce-cart table.cart td.product-thumbnail:empty {
	display: none !important;
}

.woocommerce-cart table.cart tr.cart_item:has(td.product-thumbnail:empty) {
	grid-template-columns: 1fr !important;
}

.woocommerce-cart table.cart td.product-thumbnail::before,
.woocommerce-cart table.cart td.product-name::before {
	display: none !important;
	content: none !important;
}

.woocommerce-cart table.cart img,
.hoh-cart-item-image {
	width: 92px !important;
	height: 92px !important;
	max-width: 92px !important;
	border-radius: 20px !important;
	object-fit: cover !important;
}

.woocommerce-cart table.cart td.product-name {
	grid-column: 2 !important;
	grid-row: 1 !important;
	align-self: center !important;
	display: block !important;
	padding: 0 2.75rem 0 0 !important;
	text-align: left !important;
}

.woocommerce-cart table.cart tr.cart_item:has(td.product-thumbnail:empty) td.product-name {
	grid-column: 1 / -1 !important;
}

.woocommerce-cart table.cart td.product-name a {
	color: var(--color-ink) !important;
	font-family: var(--font-serif) !important;
	font-size: clamp(1.35rem, 5.6vw, 1.95rem) !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	text-decoration: none !important;
}

.woocommerce-cart table.cart td.product-price,
.woocommerce-cart table.cart td.product-quantity,
.woocommerce-cart table.cart td.product-subtotal {
	grid-column: 1 / -1 !important;
	display: grid !important;
	grid-template-columns: 1fr auto !important;
	align-items: center !important;
	gap: 1rem !important;
	padding: 0.85rem 0 0 !important;
	border-top: 1px solid rgba(13, 27, 22, 0.09) !important;
	font-size: 1rem !important;
	text-align: right !important;
}

.woocommerce-cart table.cart td.product-price::before,
.woocommerce-cart table.cart td.product-quantity::before,
.woocommerce-cart table.cart td.product-subtotal::before {
	color: var(--color-ink) !important;
	font-weight: 900 !important;
	text-align: left !important;
}

.woocommerce-cart table.cart td.product-price,
.woocommerce-cart table.cart td.product-subtotal {
	color: var(--color-ink) !important;
	font-weight: 900 !important;
}

.woocommerce-cart table.cart .quantity {
	justify-self: end !important;
	max-width: 7.5rem !important;
}

.woocommerce-cart table.cart td.actions {
	display: block !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

.woocommerce-cart table.cart td.actions .coupon {
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 0.75rem !important;
	margin-top: 1rem !important;
	padding: 1rem !important;
	border: 1px solid rgba(13, 27, 22, 0.08) !important;
	border-radius: 24px !important;
	background: #fbfaf6 !important;
}

.woocommerce-cart-form .coupon .input-text,
.woocommerce-cart-form .coupon button.button,
.woocommerce-cart table.cart button[name="update_cart"] {
	width: 100% !important;
	min-height: 3.25rem !important;
}

@media (max-width: 767px) {
	.nav-toggle {
		display: inline-flex !important;
	}

	.bundle-inside-panel {
		padding: 1rem !important;
		border-radius: 24px !important;
	}

	.bundle-inside-panel__header h4 {
		max-width: none !important;
		font-size: clamp(1.5rem, 7vw, 2rem) !important;
		line-height: 1 !important;
	}

	.bundle-inside-grid {
		gap: 0.72rem !important;
	}

	.bundle-inside-product {
		grid-template-columns: 86px minmax(0, 1fr) !important;
		gap: 0.72rem !important;
		padding: 0.62rem !important;
		border-radius: 20px !important;
	}

	.bundle-inside-product__image {
		aspect-ratio: 1 / 1 !important;
		border-radius: 16px !important;
	}

	.bundle-inside-product__body {
		gap: 0.22rem !important;
	}

	.bundle-inside-product__body h5 {
		font-size: clamp(1.08rem, 4.7vw, 1.32rem) !important;
		line-height: 1.02 !important;
	}

	.bundle-inside-product__body p {
		display: -webkit-box !important;
		-webkit-line-clamp: 2 !important;
		-webkit-box-orient: vertical !important;
		overflow: hidden !important;
		font-size: 0.84rem !important;
	}

	.bundle-inside-product__meta {
		font-size: 0.82rem !important;
	}

	.support-panel .metric-line {
		grid-template-columns: 1fr !important;
		gap: 0.35rem !important;
	}

	.support-panel .metric-line strong {
		font-size: clamp(1.05rem, 5vw, 1.38rem) !important;
	}

	.product-review-accordion summary {
		grid-template-columns: 1fr auto !important;
	}

	.product-review-accordion__stars {
		grid-column: 1 / -1 !important;
	}
}

.brand-lockup {
	min-width: 0 !important;
	max-width: min(46vw, 430px) !important;
}

.brand-lockup__text {
	min-width: 0 !important;
}

.brand-lockup__tagline {
	display: block !important;
	max-width: 100% !important;
	overflow: visible !important;
	text-overflow: clip !important;
	white-space: normal !important;
	color: rgba(20, 25, 23, 0.66) !important;
	font-size: clamp(0.52rem, 0.74vw, 0.68rem) !important;
	font-weight: 850 !important;
	line-height: 1.12 !important;
	letter-spacing: 0.1em !important;
}

@media (max-width: 767px) {
	.site-header__bar {
		gap: 0.42rem !important;
	}

	.brand-lockup {
		flex: 1 1 auto !important;
		max-width: min(54vw, 300px) !important;
	}

	.brand-lockup__name {
		font-size: clamp(1.72rem, 6.25vw, 2.25rem) !important;
		line-height: 0.9 !important;
	}

	.brand-lockup__tagline {
		max-width: 30ch !important;
		font-size: clamp(0.43rem, 1.55vw, 0.55rem) !important;
		line-height: 1.08 !important;
		letter-spacing: 0.11em !important;
	}

	.site-header__actions {
		flex: 0 0 auto !important;
		gap: 0.35rem !important;
	}
}

/* Final homepage polish: lighter slogan, cleaner proof blocks, stronger featured bundle contrast. */
.brand-lockup__tagline {
	white-space: pre-line !important;
	text-transform: none !important;
	color: rgba(20, 25, 23, 0.62) !important;
	font-size: clamp(0.48rem, 0.62vw, 0.58rem) !important;
	font-weight: 400 !important;
	line-height: 1.08 !important;
	letter-spacing: 0.055em !important;
}

.home-review-feature {
	padding-block: clamp(0.65rem, 2.5vw, 1.2rem) 0.75rem !important;
}

.home-review-feature__card {
	border-color: rgba(13, 27, 22, 0.12) !important;
	background: rgba(255, 253, 249, 0.94) !important;
}

.review-marquee__item {
	border-color: rgba(13, 27, 22, 0.11) !important;
	background: rgba(255, 253, 249, 0.94) !important;
}

.trust-rail {
	padding: 0.45rem 0 clamp(2.2rem, 5vw, 4rem) !important;
}

.trust-rail__inner {
	display: grid !important;
	grid-template-columns: auto minmax(0, 1fr) auto !important;
	align-items: center !important;
	gap: clamp(0.9rem, 2vw, 1.35rem) !important;
	border: 1px solid rgba(13, 27, 22, 0.13) !important;
	background: rgba(255, 253, 249, 0.92) !important;
	box-shadow: 0 18px 44px rgba(13, 27, 22, 0.055) !important;
}

.trust-rail__inner strong {
	max-width: 12ch !important;
	color: var(--color-ink) !important;
	font-size: clamp(1rem, 1.4vw, 1.18rem) !important;
	line-height: 1.16 !important;
}

.trust-rail__inner ul {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 0.42rem 1rem !important;
	color: rgba(20, 25, 23, 0.72) !important;
	font-size: clamp(0.9rem, 1.2vw, 1rem) !important;
	line-height: 1.32 !important;
}

.trust-rail__inner li {
	display: flex !important;
	align-items: flex-start !important;
	gap: 0.48rem !important;
}

.trust-rail__inner li::before {
	flex: 0 0 auto !important;
	margin: 0 !important;
}

.trust-rail__inner .button {
	white-space: normal !important;
	text-align: center !important;
}

.bundle-card-featured.bundle-card--text-only {
	border: 1px solid rgba(39, 76, 62, 0.26) !important;
	background:
		radial-gradient(circle at top left, rgba(170, 136, 91, 0.16), transparent 34%),
		linear-gradient(145deg, #fffdfa 0%, #efe8dc 100%) !important;
	box-shadow: 0 28px 80px rgba(13, 27, 22, 0.11) !important;
}

.bundle-card-featured .bundle-card__body {
	border: 1px solid rgba(39, 76, 62, 0.14) !important;
	border-radius: 32px !important;
	background: rgba(255, 253, 249, 0.74) !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7) !important;
}

.bundle-card-featured .bundle-card__body > .eyebrow:first-child {
	display: inline-flex !important;
	width: max-content !important;
	max-width: 100% !important;
	padding: 0.4rem 0.72rem !important;
	border: 1px solid rgba(39, 76, 62, 0.16) !important;
	border-radius: 999px !important;
	background: rgba(39, 76, 62, 0.08) !important;
	color: #274c3e !important;
}

.bundle-card-featured .bundle-card__deal {
	border: 1px solid rgba(39, 76, 62, 0.18) !important;
	background: rgba(255, 255, 255, 0.88) !important;
	box-shadow: 0 14px 32px rgba(13, 27, 22, 0.055) !important;
}

@media (max-width: 767px) {
	.brand-lockup {
		max-width: min(50vw, 260px) !important;
	}

	.brand-lockup__tagline {
		max-width: 24ch !important;
		font-size: clamp(0.38rem, 1.3vw, 0.46rem) !important;
		line-height: 1.04 !important;
		letter-spacing: 0.045em !important;
	}

	.home-review-feature {
		padding-block: 0.4rem 0.45rem !important;
	}

	.home-review-feature__grid {
		grid-template-columns: 1fr !important;
		gap: 0.75rem !important;
	}

	.home-review-feature__media {
		display: none !important;
	}

	.home-review-feature__card {
		gap: 0.72rem !important;
		padding: 1.12rem !important;
		border-radius: 28px !important;
	}

	.home-review-feature__card h2 {
		font-size: clamp(1.65rem, 8vw, 2.25rem) !important;
		line-height: 0.96 !important;
	}

	.home-review-feature__card blockquote {
		max-height: none !important;
		font-size: 0.94rem !important;
		line-height: 1.52 !important;
	}

	.review-marquee {
		padding-block: 0.2rem 0.7rem !important;
	}

	.review-marquee__item {
		min-width: min(76vw, 310px) !important;
		max-width: min(76vw, 310px) !important;
		min-height: 148px !important;
		padding: 0.95rem !important;
		border-radius: 24px !important;
	}

	.review-marquee__item strong {
		min-height: 0 !important;
		font-size: 0.94rem !important;
		line-height: 1.38 !important;
		-webkit-line-clamp: 3 !important;
	}

	.trust-rail {
		padding: 0.35rem 0 clamp(2rem, 8vw, 2.8rem) !important;
	}

	.trust-rail__inner {
		grid-template-columns: 1fr !important;
		align-items: stretch !important;
		gap: 0.8rem !important;
		padding: 1.05rem !important;
		border-radius: 30px !important;
	}

	.trust-rail__inner strong {
		max-width: none !important;
		font-size: 1.05rem !important;
	}

	.trust-rail__inner ul {
		grid-template-columns: 1fr !important;
		gap: 0.45rem !important;
		font-size: 0.96rem !important;
	}

	.trust-rail__inner .button {
		width: 100% !important;
		min-height: 3.2rem !important;
	}

	.ingredient-pill-rich {
		border-radius: 30px !important;
	}

	.ingredient-pill__media {
		aspect-ratio: 1.22 / 0.76 !important;
		min-height: 0 !important;
	}

	.bundle-card-featured.bundle-card--text-only {
		border-width: 1.5px !important;
		border-color: rgba(39, 76, 62, 0.32) !important;
	}

	.bundle-card-featured .bundle-card__body {
		border-radius: 26px !important;
	}
}

/* Concern route images are portrait artwork; keep the frame aligned to the asset ratio. */
.route-panel {
	align-content: start !important;
	border-color: rgba(13, 27, 22, 0.13) !important;
	background:
		linear-gradient(180deg, rgba(255, 253, 249, 0.9), rgba(244, 239, 230, 0.78)) !important;
}

.route-panel__visual {
	display: block !important;
	width: min(100%, 19rem) !important;
	min-height: 0 !important;
	height: auto !important;
	aspect-ratio: 2 / 3 !important;
	margin-inline: auto !important;
	border: 1px solid rgba(13, 27, 22, 0.08) !important;
	border-radius: 32px !important;
	overflow: hidden !important;
	background: #fffdf9 !important;
	box-shadow: 0 14px 34px rgba(13, 27, 22, 0.06) !important;
}

.route-panel--frizz .route-panel__visual {
	aspect-ratio: 1 / 1 !important;
}

.route-panel__visual img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	padding: 0 !important;
	object-fit: cover !important;
	object-position: var(--route-image-position, center center) !important;
}

.route-panel__content {
	width: 100% !important;
}

@media (max-width: 767px) {
	.route-panel {
		padding: clamp(1rem, 4.5vw, 1.25rem) !important;
		gap: clamp(0.95rem, 4vw, 1.2rem) !important;
		border-radius: 34px !important;
	}

	.route-panel__visual {
		width: min(100%, 18.25rem) !important;
		border-radius: 28px !important;
	}
}

@media (min-width: 768px) {
	.route-panel__visual {
		width: min(100%, 16rem) !important;
	}
}

/* Header and hero review refinement after final copy pass. */
.brand-lockup__text {
	padding-left: clamp(0.35rem, 0.9vw, 0.72rem) !important;
}

.brand-lockup__tagline {
	font-size: clamp(0.54rem, 0.74vw, 0.68rem) !important;
	font-weight: 400 !important;
	line-height: 1.1 !important;
	letter-spacing: 0.045em !important;
}

.home-review-feature__grid {
	grid-template-columns: minmax(280px, 0.86fr) minmax(0, 1.14fr) !important;
	align-items: stretch !important;
}

.home-review-feature__media {
	display: block !important;
	min-height: 0 !important;
	aspect-ratio: 1 / 1 !important;
	max-height: 640px !important;
	overflow: hidden !important;
	border-radius: 34px !important;
	background: rgba(255, 253, 249, 0.96) !important;
}

.home-review-feature__media img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	padding: clamp(0.45rem, 1.5vw, 0.85rem) !important;
	object-fit: contain !important;
	object-position: center center !important;
	background: rgba(255, 253, 249, 0.96) !important;
}

.home-review-feature__card {
	position: relative !important;
	z-index: 1 !important;
	align-content: start !important;
}

@media (max-width: 767px) {
	.brand-lockup__text {
		padding-left: clamp(0.25rem, 1.4vw, 0.45rem) !important;
	}

	.brand-lockup__tagline {
		font-size: clamp(0.45rem, 1.55vw, 0.55rem) !important;
		line-height: 1.07 !important;
		letter-spacing: 0.035em !important;
	}

	.home-review-feature__grid {
		grid-template-columns: 1fr !important;
		gap: 0.85rem !important;
	}

	.home-review-feature__media {
		display: block !important;
		aspect-ratio: 1 / 1 !important;
		max-height: none !important;
		border-radius: 28px !important;
	}

	.home-review-feature__media img {
		padding: 0.55rem !important;
		object-fit: contain !important;
	}
}

/* Final visual scale pass for review image, concern cards and routine steps. */
.home-review-feature__media img {
	padding: 0 !important;
	object-fit: cover !important;
	transform: scale(1.015) !important;
	transform-origin: center center !important;
}

.route-panel--frizz .route-panel__visual,
.route-panel--other .route-panel__visual,
.route-panel__visual {
	aspect-ratio: 2 / 3 !important;
}

.route-panel--frizz .route-panel__visual img,
.route-panel--other .route-panel__visual img {
	object-fit: cover !important;
	object-position: center center !important;
}

.section-dark .story-step__card h3 {
	max-width: 13ch !important;
	font-size: clamp(1.85rem, 2.6vw, 2.45rem) !important;
	line-height: 0.94 !important;
	letter-spacing: -0.045em !important;
}

.section-dark .story-step__card p {
	max-width: 38ch !important;
	font-size: clamp(0.92rem, 1.25vw, 1rem) !important;
	line-height: 1.45 !important;
}

.section-dark .story-step__card li {
	font-size: clamp(0.9rem, 1.12vw, 0.98rem) !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
}

@media (max-width: 767px) {
	.home-review-feature__media img {
		padding: 0 !important;
		object-fit: cover !important;
		transform: scale(1.018) !important;
	}

	.section-dark .story-step__card h3 {
		max-width: 12.5ch !important;
		font-size: clamp(1.85rem, 8.2vw, 2.28rem) !important;
		line-height: 0.94 !important;
	}

	.section-dark .story-step__card p {
		max-width: 34ch !important;
		font-size: clamp(0.9rem, 3.75vw, 1rem) !important;
		line-height: 1.43 !important;
	}

	.section-dark .story-step__card li {
		font-size: clamp(0.88rem, 3.55vw, 0.96rem) !important;
		font-weight: 700 !important;
	}
}

/* Hero headline readability: force intentional sentence rhythm instead of browser wrapping. */
.hero-home__headline {
	display: grid !important;
	gap: clamp(0.22rem, 0.85vw, 0.52rem) !important;
	max-width: min(100%, 13.8ch) !important;
	font-size: clamp(3.05rem, 6.2vw, 6.15rem) !important;
	line-height: 0.9 !important;
	letter-spacing: -0.056em !important;
	text-wrap: balance !important;
}

.hero-home__headline span {
	display: block !important;
	max-width: 11.5ch !important;
	text-wrap: balance !important;
}

.hero-home__headline span + span {
	max-width: 9.5ch !important;
	margin-top: clamp(0.08rem, 0.45vw, 0.28rem) !important;
}

.hero-home__subheading {
	max-width: 38ch !important;
	font-size: clamp(1rem, 1.35vw, 1.22rem) !important;
	font-weight: 650 !important;
	line-height: 1.34 !important;
	letter-spacing: -0.018em !important;
}

.hero-home__body {
	max-width: 43ch !important;
	font-size: clamp(0.98rem, 1.18vw, 1.08rem) !important;
	line-height: 1.56 !important;
}

@media (max-width: 767px) {
	.hero-home__headline {
		gap: clamp(0.2rem, 1.7vw, 0.46rem) !important;
		max-width: min(100%, 10.8ch) !important;
		font-size: clamp(2.8rem, 11.4vw, 3.62rem) !important;
		line-height: 0.91 !important;
		letter-spacing: -0.052em !important;
	}

	.hero-home__headline span {
		max-width: 10.2ch !important;
	}

	.hero-home__headline span + span {
		max-width: 8.8ch !important;
		margin-top: 0.16rem !important;
	}

	.hero-home__subheading {
		max-width: 31ch !important;
		font-size: clamp(0.98rem, 4vw, 1.08rem) !important;
		font-weight: 650 !important;
		line-height: 1.32 !important;
	}

	.hero-home__body {
		max-width: 32ch !important;
		font-size: clamp(0.92rem, 3.75vw, 1rem) !important;
		line-height: 1.48 !important;
	}
}

/* Ingredient CTA spacing and concern-card label polish. */
.ingredient-pill-grid-rich + .section-actions {
	margin-top: clamp(1.6rem, 5vw, 2.6rem) !important;
}

.ingredient-pill-grid-rich + .section-actions .button {
	width: min(100%, 620px) !important;
	margin-inline: auto !important;
}

.concern-button {
	align-content: start !important;
	gap: clamp(0.62rem, 1.8vw, 0.85rem) !important;
	padding: clamp(0.92rem, 2.5vw, 1.18rem) !important;
}

.concern-button > .eyebrow {
	box-sizing: border-box !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-height: 2.35rem !important;
	padding: 0.52rem 0.72rem !important;
	border-radius: 999px !important;
	text-align: center !important;
	white-space: normal !important;
	overflow-wrap: normal !important;
	word-break: normal !important;
	hyphens: none !important;
	font-size: clamp(0.58rem, 1.45vw, 0.68rem) !important;
	font-weight: 800 !important;
	line-height: 1.22 !important;
	letter-spacing: 0.14em !important;
}

.concern-button strong {
	margin-top: 0.15rem !important;
}

@media (max-width: 767px) {
	.ingredient-pill-grid-rich + .section-actions {
		margin-top: clamp(1.35rem, 7vw, 2rem) !important;
	}

	.concern-button {
		gap: 0.58rem !important;
		padding: 0.78rem !important;
		border-radius: 22px !important;
	}

	.concern-button > .eyebrow {
		min-height: 2.25rem !important;
		padding: 0.46rem 0.5rem !important;
		font-size: clamp(0.51rem, 2.7vw, 0.6rem) !important;
		line-height: 1.24 !important;
		letter-spacing: 0.13em !important;
	}

	.concern-button strong {
		font-size: clamp(1.08rem, 5vw, 1.32rem) !important;
		line-height: 0.98 !important;
	}

	.concern-button__summary {
		font-size: 0.76rem !important;
		line-height: 1.34 !important;
	}
}

/* Global image-frame contract: every framed image must fill and inherit the rounded shape. */
.product-card__image,
.product-card-wide .product-card__image,
.product-card-compact .product-card__image,
.shop-product-grid .product-card__image,
.home-lineup .product-card__image,
.concern-products-grid .product-card__image,
.recommended-product-grid .product-card__image,
.bundle-inside-product__image,
.product-pair-card__image,
.bundle-support-card__image,
.bundle-compare__image,
.story-visual,
.story-visual__frame,
.product-hero__media,
.product-hero__image,
.product-gallery__main,
.route-panel__visual,
.ingredient-pill__media,
.home-review-feature__media,
.review-card__proof,
.review-card__proof-media,
.proof-shot,
.journal-card__image,
.journal-archive-card__media,
.article-page__hero {
	overflow: hidden !important;
	padding: 0 !important;
	isolation: isolate !important;
}

.product-card__image img,
.product-card-wide .product-card__image img,
.product-card-compact .product-card__image img,
.shop-product-grid .product-card__image img,
.home-lineup .product-card__image img,
.concern-products-grid .product-card__image img,
.recommended-product-grid .product-card__image img,
.bundle-inside-product__image img,
.product-pair-card__image img,
.bundle-support-card__image img,
.bundle-compare__image img,
.story-visual__frame img,
.product-hero__media img,
.product-hero__image img,
.product-gallery__main img,
.route-panel__visual img,
.ingredient-pill__media img,
.home-review-feature__media img,
.review-card__proof img,
.review-card__proof-media img,
.proof-shot img,
.journal-card__image img,
.journal-archive-card__media img,
.article-page__hero img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	padding: 0 !important;
	border-radius: inherit !important;
	object-fit: cover !important;
	background: transparent !important;
}

.bundle-inside-product__image {
	border-radius: 18px !important;
}

.product-card__image,
.home-lineup .product-card__image,
.shop-product-grid .product-card__image,
.concern-products-grid .product-card__image,
.recommended-product-grid .product-card__image {
	border-radius: 0 !important;
}

.story-visual__frame {
	border-radius: calc(var(--card-radius) - 10px) !important;
}

.product-hero__media,
.product-hero__image,
.product-gallery__main,
.product-pair-card__image,
.bundle-support-card__image,
.bundle-compare__image,
.route-panel__visual,
.ingredient-pill__media,
.home-review-feature__media,
.review-card__proof,
.review-card__proof-media,
.proof-shot,
.journal-card__image,
.journal-archive-card__media,
.article-page__hero {
	border-radius: inherit !important;
}

.product-card--root-refresh-mist .product-card__image img,
.product-card--root-refresh-mist:hover .product-card__image img {
	object-position: center 18% !important;
	transform: scale(1.52) !important;
	transform-origin: center top !important;
}

.product-card--clarifying-herb-shampoo .product-card__image img,
.product-card--clarifying-herb-shampoo:hover .product-card__image img,
.product-card--rejuvenating-conditioner .product-card__image img,
.product-card--rejuvenating-conditioner:hover .product-card__image img {
	object-position: center 16% !important;
	transform: scale(1.5) !important;
	transform-origin: center top !important;
}

.product-card--fullness-wash .product-card__image img,
.product-card--fullness-wash:hover .product-card__image img {
	object-position: center 18% !important;
	transform: translateY(8%) scale(1.92) !important;
	transform-origin: center top !important;
}

.product-card--botanical-scalp-oil .product-card__image img,
.product-card--botanical-scalp-oil:hover .product-card__image img {
	object-position: center 34% !important;
	transform: translateY(-7%) scale(1.08) !important;
	transform-origin: center center !important;
}

.bundle-inside-product__image img,
.product-pair-card__image img {
	object-position: center center !important;
	transform: scale(1.08) !important;
	transform-origin: center center !important;
}

.story-visual__frame img {
	object-position: center 42% !important;
	transform: scale(1.02) !important;
}

body[data-product="botanical-scalp-oil"] .product-hero__media img,
body[data-product="root-refresh-mist"] .product-hero__media img,
body[data-product="clarifying-herb-shampoo"] .product-hero__media img,
body[data-product="rejuvenating-conditioner"] .product-hero__media img,
body[data-product="fullness-wash"] .product-hero__media img {
	object-position: center 34% !important;
	transform: scale(1.06) !important;
}
