/*
 * Parallel Product Detail V3
 *
 * Every public rule is rooted in `.hsl-product-v3-page`, so selecting or
 * previewing this template cannot restyle the legacy Single Product template.
 */

/* stylelint-disable no-descending-specificity --
 * V3 component states intentionally follow their scoped base rules.
 */

body.hsl-product-v3-preview .hsl-mockup-utility__inner {
	min-height: 36px;
}

body.hsl-product-v3-preview .hsl-mockup-header__inner {
	min-height: 71px;
}

.hsl-product-v3-page {
	--hsl-v3-vault: #174368;
	--hsl-v3-vault-deep: #103450;
	--hsl-v3-ink: #16212c;
	--hsl-v3-muted: #5b6b7a;
	--hsl-v3-line: #dfe7ee;
	--hsl-v3-mist: #eef3f8;
	--hsl-v3-surface: #f5f7fa;
	--hsl-v3-yellow: #fcdc69;
	--hsl-v3-yellow-hover: #fbd247;
	--hsl-v3-yellow-ink: #5d490f;
	--hsl-v3-radius: 14px;
	--hsl-v3-hero-flow-space: 1.75rem;
	--hsl-v3-gallery-sticky-offset: 1.5rem;
	--hsl-v3-shell: 75rem;
	--hsl-v3-ease: cubic-bezier(0.16, 1, 0.3, 1);
	width: 100%;
	max-width: none;
	box-sizing: border-box;
	color: var(--hsl-v3-ink);
	font-family: "Mona Sans", ui-sans-serif, system-ui, sans-serif;
	font-size: 16px;
	font-weight: 430;
	font-variant-numeric: normal;
	line-height: 1.5;
	text-rendering: optimizelegibility;
	-webkit-font-smoothing: antialiased;
}

.hsl-product-v3-page *,
.hsl-product-v3-page *::before,
.hsl-product-v3-page *::after {
	box-sizing: inherit;
}

.hsl-product-v3-page ::selection {
	background: var(--hsl-v3-yellow);
	color: var(--hsl-v3-vault-deep);
}

.hsl-product-v3-page :focus-visible {
	outline: 3px solid var(--hsl-v3-vault);
	outline-offset: 3px;
}

.hsl-product-v3-page a {
	text-decoration-thickness: 1px;
	text-underline-offset: 0.24em;
}

.hsl-product-v3-page button,
.hsl-product-v3-page summary {
	-webkit-tap-highlight-color: transparent;
}

.hsl-product-v3-page :is(h1, h2, h3, h4, h5, h6, button, input, select, textarea),
.hsl-product-v3-page .hsl-product-cta-link {
	font-family: "Mona Sans", ui-sans-serif, system-ui, sans-serif !important;
}

.hsl-product-v3-page img {
	display: block;
	max-width: 100%;
}

.hsl-product-v3-page > *,
.hsl-product-v3-page .hsl-product-v3-breadcrumb-bar,
.hsl-product-v3-page .hsl-product-v3-hero,
.hsl-product-v3-page .hsl-product-v3-hero__shell,
.hsl-product-v3-page .hsl-product-v3-product-layout {
	margin-block: 0;
}

.hsl-product-v3-page .hsl-product-v3-breadcrumb-bar {
	width: 100%;
	max-width: none;
	border-bottom: 1px solid var(--hsl-v3-line);
	background: var(--hsl-v3-surface);
}

.hsl-product-v3-page .hsl-product-v3-breadcrumbs {
	display: flex;
	width: min(calc(100% - 3rem), var(--hsl-v3-shell));
	min-height: 2.75rem;
	align-items: center;
	margin-inline: auto;
}

.hsl-product-v3-page .hsl-product-v3-breadcrumbs ol {
	display: flex;
	min-width: 0;
	align-items: center;
	gap: 0.5rem;
	margin: 0;
	padding: 0;
	color: var(--hsl-v3-muted);
	font-size: 0.875rem;
	list-style: none;
}

.hsl-product-v3-page .hsl-product-v3-breadcrumbs li {
	min-width: 0;
	white-space: nowrap;
}

.hsl-product-v3-page .hsl-product-v3-breadcrumbs li:last-child {
	overflow: hidden;
	text-overflow: ellipsis;
}

.hsl-product-v3-page .hsl-product-v3-breadcrumbs a {
	color: var(--hsl-v3-vault);
	font-weight: 700;
	text-decoration: none;
}

.hsl-product-v3-page .hsl-product-v3-breadcrumbs a:hover {
	color: var(--hsl-v3-vault-deep);
}

.hsl-product-v3-page .hsl-product-v3-breadcrumbs__separator {
	color: rgb(91 107 122 / 60%);
}

.hsl-product-v3-page .hsl-product-v3-hero {
	width: 100%;
	max-width: none;
	padding: 0;
}

.hsl-product-v3-page .hsl-product-v3-hero__shell {
	width: min(calc(100% - 3rem), var(--hsl-v3-shell));
	max-width: var(--hsl-v3-shell);
	margin-inline: auto;
	padding-block: 2.5rem;
}

.hsl-product-v3-page .hsl-product-v3-product-layout {
	display: grid;
	width: 100%;
	max-width: none;
	grid-template-areas:
		"heading"
		"gallery"
		"price"
		"actions"
		"dealer"
		"information";
	grid-template-columns: minmax(0, 1fr);
	gap: 0;
	margin: 0;
}

.hsl-product-v3-page .hsl-product-v3-product-layout > * {
	margin-block-start: 0 !important;
}

.hsl-product-v3-page .hsl-product-v3-summary {
	grid-area: heading;
	margin: 0;
}

.hsl-product-v3-page .hsl-product-v3-gallery {
	width: 100%;
	min-width: 0;
	grid-area: gallery;
	margin: 0;
}

.hsl-product-v3-page .hsl-product-v3-action-block {
	grid-area: actions;
	margin: 0 0 var(--hsl-v3-hero-flow-space);
}

.hsl-product-v3-page .hsl-product-v3-summary__title {
	max-width: none;
	margin: 0;
	text-wrap: balance;
}

.hsl-product-v3-page .hsl-product-v3-summary__brand {
	display: block;
	color: var(--hsl-v3-muted);
	font-size: clamp(0.78rem, 1.1vw, 0.9rem);
	font-weight: 800;
	letter-spacing: 0.14em;
	line-height: 1.2;
	text-transform: uppercase;
}

.hsl-product-v3-page .hsl-product-v3-summary__model {
	display: block;
	margin-top: 0.35rem;
	color: var(--hsl-v3-vault);
	font-size: clamp(2.6rem, 4.4vw, 3.5rem);
	font-weight: 830;
	letter-spacing: -0.035em;
	line-height: 0.95;
	overflow-wrap: anywhere;
}

.hsl-product-v3-page .hsl-product-v3-description {
	margin-top: 1rem;
}

.hsl-product-v3-page .hsl-product-v3-description__copy {
	max-width: 58ch;
	margin: 0;
	color: var(--hsl-v3-muted);
	font-size: 1.05rem;
	line-height: 1.6667;
}

.hsl-product-v3-page .hsl-product-v3-description__copy.is-clamped {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.hsl-product-v3-page .hsl-product-v3-description__toggle {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	border: 0;
	background: transparent;
	padding: 0.3rem 0;
	color: var(--hsl-v3-vault);
	font: inherit;
	font-size: 0.84rem;
	font-weight: 800;
	cursor: pointer;
}

.hsl-product-v3-page .hsl-product-v3-description__toggle[hidden] {
	display: none;
}

.hsl-product-v3-page
.hsl-product-v3-description[data-hsl-v3-description-reserve-toggle]:not([data-hsl-v3-ready])
.hsl-product-v3-description__toggle[hidden] {
	display: inline-flex;
	visibility: hidden;
}

.hsl-product-v3-page .hsl-product-v3-description__toggle::after {
	position: absolute;
	inset: -0.45rem;
	content: "";
}

.hsl-product-v3-page .hsl-product-v3-description__toggle:hover {
	color: var(--hsl-v3-vault-deep);
}

.hsl-product-v3-page .hsl-product-v3-description__toggle svg {
	width: 1rem;
	height: 1rem;
	transition: transform 260ms var(--hsl-v3-ease);
}

.hsl-product-v3-page
.hsl-product-v3-description__toggle[aria-expanded="true"]
svg {
	transform: rotate(180deg);
}

.hsl-product-v3-page .hsl-product-v3-price {
	display: flex;
	min-height: 5.4375rem;
	flex-wrap: wrap;
	grid-area: price;
	align-items: flex-end;
	gap: 0.65rem 1rem;
	border-top: 1px solid var(--hsl-v3-line);
	padding-block: 1.25rem;
	margin: 0 0 0.75rem;
}

.hsl-product-v3-page .hsl-product-v3-price__current {
	margin: 0;
	color: var(--hsl-v3-vault);
	font-size: clamp(2rem, 4vw, 2.7rem);
	font-weight: 830;
	font-variant-numeric: tabular-nums;
	letter-spacing: -0.035em;
	line-height: 0.92;
}

.hsl-product-v3-page .hsl-product-v3-price__visual {
	display: inline-flex;
	align-items: flex-start;
	white-space: nowrap;
}

.hsl-product-v3-page .hsl-product-v3-price__whole,
.hsl-product-v3-page .hsl-product-v3-price__currency {
	line-height: 0.92;
}

.hsl-product-v3-page .hsl-product-v3-price__cents {
	position: static;
	margin-left: 0.08em;
	font-size: 0.48em;
	font-weight: 800;
	line-height: 1;
	vertical-align: top;
}

.hsl-product-v3-page .hsl-product-v3-price__comparison {
	display: flex;
	flex: 1 0 10rem;
	flex-direction: column;
	align-items: flex-end;
	gap: 0.16rem;
	margin: 0 0 0.1rem auto;
	font-size: 0.88rem;
	line-height: 1.45;
	text-align: right;
}

.hsl-product-v3-page .hsl-product-v3-price__was {
	color: var(--hsl-v3-muted);
}

.hsl-product-v3-page .hsl-product-v3-price__savings {
	color: var(--hsl-v3-yellow-ink);
	font-weight: 820;
}

.hsl-product-v3-page .hsl-product-v3-action-block,
.hsl-product-v3-page .hsl-product-v3-actions {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
	gap: 0.65rem;
}

.hsl-product-v3-page .hsl-product-v3-actions {
	margin: 0;
}

.hsl-product-v3-page .hsl-product-v3-action-block > .hsl-product-cta-action,
.hsl-product-v3-page .hsl-product-v3-actions .wp-block-button,
.hsl-product-v3-page .hsl-product-v3-summary-column .hsl-product-cta-action {
	width: 100%;
	margin: 0;
}

.hsl-product-v3-page .hsl-product-v3-action-block .hsl-product-cta-link,
.hsl-product-v3-page .hsl-product-v3-actions .wp-block-button__link,
.hsl-product-v3-page .hsl-product-v3-summary-column .hsl-product-cta-link,
.hsl-product-v3-page .hsl-product-v3-button {
	display: inline-flex;
	width: 100%;
	min-height: 3.25rem;
	align-items: center;
	justify-content: center;
	border: 2px solid var(--hsl-v3-vault);
	border-radius: 9px;
	padding: 0.85rem 1rem;
	font-size: 0.95rem;
	font-weight: 820;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease,
		transform 220ms var(--hsl-v3-ease);
}

.hsl-product-v3-page
.hsl-product-v3-action-block
.hsl-product-cta-link--primary,
.hsl-product-v3-page
.hsl-product-v3-actions
.wp-block-button:first-child
.wp-block-button__link,
.hsl-product-v3-page
.hsl-product-v3-summary-column
.hsl-product-cta-link--primary {
	border-color: var(--hsl-v3-yellow);
	background: var(--hsl-v3-yellow);
	color: var(--hsl-v3-vault-deep);
}

.hsl-product-v3-page
.hsl-product-v3-action-block
.hsl-product-cta-link--primary::after {
	content: "→";
	margin-left: 0.35rem;
	font-size: 1.05em;
	line-height: 1;
}

.hsl-product-v3-page
.hsl-product-v3-action-block
.hsl-product-cta-link--primary:hover,
.hsl-product-v3-page
.hsl-product-v3-actions
.wp-block-button:first-child
.wp-block-button__link:hover,
.hsl-product-v3-page
.hsl-product-v3-summary-column
.hsl-product-cta-link--primary:hover {
	border-color: var(--hsl-v3-yellow-hover);
	background: var(--hsl-v3-yellow-hover);
	color: var(--hsl-v3-vault-deep);
	transform: translateY(-1px);
}

.hsl-product-v3-page
.hsl-product-v3-action-block
.hsl-product-cta-link--secondary,
.hsl-product-v3-page
.hsl-product-v3-actions
.is-style-outline
.wp-block-button__link,
.hsl-product-v3-page
.hsl-product-v3-summary-column
.hsl-product-cta-link--secondary,
.hsl-product-v3-page .hsl-product-v3-button--secondary {
	background: transparent;
	color: var(--hsl-v3-vault);
}

.hsl-product-v3-page
.hsl-product-v3-action-block
.hsl-product-cta-link--secondary:hover,
.hsl-product-v3-page
.hsl-product-v3-actions
.is-style-outline
.wp-block-button__link:hover,
.hsl-product-v3-page
.hsl-product-v3-summary-column
.hsl-product-cta-link--secondary:hover,
.hsl-product-v3-page .hsl-product-v3-button--secondary:hover {
	background: var(--hsl-v3-vault);
	color: #fff;
}

.hsl-product-v3-page .hsl-product-v3-action-block > .hsl-product-cta-caption,
.hsl-product-v3-page .hsl-product-cta-caption,
.hsl-product-v3-page .hsl-product-v3-quote-caption {
	grid-column: 1 / -1;
	flex-basis: 100%;
	margin: 0.05rem 0 0;
	color: var(--hsl-v3-muted);
	font-size: 0.75rem;
	font-weight: 620;
	line-height: 1.6667;
	text-align: center;
}

.hsl-product-v3-page .hsl-product-v3-dealer {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1.25rem;
	grid-area: dealer;
	margin: 0 0 var(--hsl-v3-hero-flow-space);
	border-radius: var(--hsl-v3-radius);
	background: var(--hsl-v3-surface);
	padding: 1.25rem 1.5rem;
}

.hsl-product-v3-page .hsl-product-v3-dealer__link {
	display: flex;
	width: 100%;
	align-items: center;
	justify-content: center;
	gap: 1.25rem;
	color: inherit;
	text-decoration: none;
}

.hsl-product-v3-page .hsl-product-v3-dealer__logo {
	width: 5.6rem;
	height: 3.1rem;
	flex: 0 0 auto;
	object-fit: contain;
	filter: grayscale(1);
}

/*
 * Blue Dot retains its white inset; the other marks need solid-black artwork
 * on this light panel.
 */
.hsl-product-v3-page
.hsl-product-v3-dealer--american-security
.hsl-product-v3-dealer__logo,
.hsl-product-v3-page
.hsl-product-v3-dealer--liberty
.hsl-product-v3-dealer__logo,
.hsl-product-v3-page
.hsl-product-v3-dealer--five-star-safes
.hsl-product-v3-dealer__logo {
	filter: grayscale(1) brightness(0);
}

.hsl-product-v3-page .hsl-product-v3-dealer__wordmark {
	max-width: 8rem;
	flex: 0 0 auto;
	color: var(--hsl-v3-ink);
	font-size: 0.78rem;
	font-weight: 850;
	letter-spacing: 0.08em;
	line-height: 1.2;
	text-align: center;
	text-transform: uppercase;
}

.hsl-product-v3-page .hsl-product-v3-dealer__copy {
	max-width: 27rem;
	margin: 0;
	color: var(--hsl-v3-muted);
	font-size: 0.93rem;
	line-height: 1.6;
}

.hsl-product-v3-page .hsl-product-v3-dealer__copy strong {
	color: var(--hsl-v3-ink);
	font-weight: 820;
}

.hsl-product-v3-page .hsl-product-v3-details {
	grid-area: information;
	border-bottom: 1px solid var(--hsl-v3-line);
}

.hsl-product-v3-page .hsl-product-v3-detail {
	border-top: 1px solid var(--hsl-v3-line);
}

.hsl-product-v3-page .hsl-product-v3-details > .hsl-product-v3-detail:first-child {
	border-top: 0;
}

.hsl-product-v3-page .hsl-product-v3-detail summary,
.hsl-product-v3-page .hsl-product-v3-faq summary {
	display: grid;
	min-height: 4.5rem;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 1rem;
	color: var(--hsl-v3-vault);
	font-size: 1.125rem;
	font-weight: 820;
	cursor: pointer;
	list-style: none;
}

.hsl-product-v3-page .hsl-product-v3-detail summary::-webkit-details-marker,
.hsl-product-v3-page .hsl-product-v3-faq summary::-webkit-details-marker {
	display: none;
}

.hsl-product-v3-page .hsl-product-v3-detail__icon {
	display: grid;
	width: 2.55rem;
	height: 2.55rem;
	place-items: center;
	border-radius: 50%;
	background: var(--hsl-v3-mist);
	transition: background-color 180ms ease;
}

.hsl-product-v3-page .hsl-product-v3-detail__icon svg {
	width: 1.15rem;
	height: 1.15rem;
	transition: transform 320ms var(--hsl-v3-ease);
}

.hsl-product-v3-page details[open] > summary .hsl-product-v3-detail__icon {
	background: var(--hsl-v3-yellow);
}

.hsl-product-v3-page details[open] > summary .hsl-product-v3-detail__icon svg {
	transform: rotate(45deg);
}

.hsl-product-v3-page .hsl-product-v3-detail__body {
	padding: 0.15rem 0 1.6rem;
}

.hsl-product-v3-page .hsl-product-v3-feature-ledger,
.hsl-product-v3-page .hsl-product-v3-decision-ledger {
	margin: 0;
}

.hsl-product-v3-page .hsl-product-v3-feature-ledger > div {
	display: grid;
	grid-template-columns: minmax(8rem, 0.75fr) minmax(0, 1.25fr);
	gap: 1.5rem;
	padding-block: 0.92rem;
	border-bottom: 1px solid var(--hsl-v3-line);
}

.hsl-product-v3-page .hsl-product-v3-feature-ledger > div:last-child,
.hsl-product-v3-page .hsl-product-v3-spec-table tr:last-child > *,
.hsl-product-v3-page .hsl-product-v3-decision-ledger > div:last-child {
	border-bottom: 0;
}

.hsl-product-v3-page .hsl-product-v3-feature-ledger dt {
	color: var(--hsl-v3-muted);
	font-size: 0.84rem;
	font-weight: 650;
}

.hsl-product-v3-page .hsl-product-v3-feature-ledger dd {
	margin: 0;
	color: var(--hsl-v3-ink);
	font-weight: 820;
}

.hsl-product-v3-page .hsl-product-v3-spec-table {
	width: 100%;
	border: 0;
	border-collapse: collapse;
	font-size: 0.88rem;
	font-variant-numeric: tabular-nums;
}

.hsl-product-v3-page .hsl-product-v3-spec-table th,
.hsl-product-v3-page .hsl-product-v3-spec-table td {
	width: 50%;
	border: 0;
	border-bottom: 1px solid var(--hsl-v3-line);
	padding: 0.83rem 0;
	line-height: 1.45;
	text-align: left;
	vertical-align: top;
}

.hsl-product-v3-page .hsl-product-v3-spec-table th {
	padding-right: 1.5rem;
	color: var(--hsl-v3-muted);
	font-weight: 650;
}

.hsl-product-v3-page .hsl-product-v3-spec-table td {
	color: var(--hsl-v3-ink);
	font-weight: 780;
}

.hsl-product-v3-page .hsl-product-v3-detail__body--warranty {
	padding-top: 0.4rem;
}

.hsl-product-v3-page .hsl-product-v3-warranty__summary {
	max-width: 66ch;
	margin: 0;
	color: var(--hsl-v3-muted);
	font-size: 0.94rem;
	font-weight: 520;
	line-height: 1.65;
}

.hsl-product-v3-page .hsl-product-v3-warranty__ledger {
	margin: 1.2rem 0 0;
}

.hsl-product-v3-page .hsl-product-v3-warranty__ledger > div {
	display: grid;
	grid-template-columns: minmax(8.5rem, 0.78fr) minmax(0, 1.22fr);
	gap: 1.5rem;
	padding-block: 0.9rem;
	border-top: 1px solid var(--hsl-v3-line);
}

.hsl-product-v3-page .hsl-product-v3-warranty__ledger dt {
	color: var(--hsl-v3-vault);
	font-size: 0.86rem;
	font-weight: 820;
	line-height: 1.45;
}

.hsl-product-v3-page .hsl-product-v3-warranty__ledger dd {
	margin: 0;
	color: var(--hsl-v3-muted);
	font-size: 0.88rem;
	font-weight: 520;
	line-height: 1.55;
}

.hsl-product-v3-page .hsl-product-v3-warranty__terms {
	max-width: 66ch;
	margin: 1rem 0 0;
	padding-top: 1rem;
	border-top: 1px solid var(--hsl-v3-line);
	color: var(--hsl-v3-muted);
	font-size: 0.82rem;
	line-height: 1.6;
}

.hsl-product-v3-page .hsl-product-v3-warranty__terms strong {
	color: var(--hsl-v3-ink);
	font-weight: 780;
}

.hsl-product-v3-page .hsl-product-v3-warranty__link {
	display: inline-flex;
	min-height: 2.75rem;
	align-items: center;
	margin-top: 0.85rem;
}

.hsl-product-v3-page .hsl-product-v3-gallery__stage {
	position: relative;
	display: grid;
	min-height: 38rem;
	place-items: center;
	overflow: hidden;
	border-radius: var(--hsl-v3-radius);
	background: var(--hsl-v3-surface);
}

.hsl-product-v3-page .hsl-product-v3-gallery__main {
	width: min(82%, 34rem);
	height: 34rem;
	object-fit: contain;
	opacity: 1;
	clip-path: inset(0 0 0 0);
	transition:
		opacity 180ms ease,
		filter 380ms var(--hsl-v3-ease),
		clip-path 380ms var(--hsl-v3-ease);
}

.hsl-product-v3-page .hsl-product-v3-gallery__main.is-changing {
	opacity: 0.42;
	clip-path: inset(0 0 12% 0);
	filter: blur(3px);
}

.hsl-product-v3-page .hsl-product-v3-gallery__choices {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0.5rem;
	margin-top: 0.75rem;
}

.hsl-product-v3-page
.hsl-product-v3-gallery[data-hsl-v3-gallery-carousel]
.hsl-product-v3-gallery__choices {
	grid-auto-columns: calc((100% - 1.5rem) / 4);
	grid-auto-flow: column;
	grid-template-columns: none;
	overflow-x: auto;
	overflow-y: hidden;
	overscroll-behavior-inline: contain;
	scroll-behavior: smooth;
	scroll-snap-type: inline mandatory;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}

.hsl-product-v3-page
.hsl-product-v3-gallery[data-hsl-v3-gallery-carousel]
.hsl-product-v3-gallery__choices::-webkit-scrollbar {
	display: none;
}

.hsl-product-v3-page .hsl-product-v3-gallery__choice {
	display: grid;
	min-width: 0;
	min-height: 5rem;
	grid-template-columns: 3.25rem minmax(0, 1fr);
	align-items: center;
	gap: 0.7rem;
	border: 1px solid var(--hsl-v3-line);
	border-radius: 12px;
	background: #fff;
	padding: 0.45rem;
	color: var(--hsl-v3-muted);
	font: inherit;
	text-align: left;
	cursor: pointer;
	transition:
		border-color 180ms ease,
		background-color 180ms ease;
}

.hsl-product-v3-page
.hsl-product-v3-gallery[data-hsl-v3-gallery-carousel]
.hsl-product-v3-gallery__choice {
	scroll-snap-align: start;
}

.hsl-product-v3-page .hsl-product-v3-gallery__choice:hover {
	background: var(--hsl-v3-mist);
}

.hsl-product-v3-page .hsl-product-v3-gallery__choice[aria-pressed="true"] {
	border: 2px solid var(--hsl-v3-vault);
	color: var(--hsl-v3-vault);
}

.hsl-product-v3-page .hsl-product-v3-gallery__choice img {
	width: 3.25rem;
	height: 3.75rem;
	object-fit: contain;
}

.hsl-product-v3-page .hsl-product-v3-gallery__choice span {
	min-width: 0;
	overflow: hidden;
	font-size: 0.75rem;
	font-weight: 800;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.hsl-product-v3-page .hsl-product-v3-gallery__caption {
	display: flex;
	min-height: 1.5rem;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
	margin-top: 0.75rem;
	color: var(--hsl-v3-muted);
	font-size: 0.875rem;
	font-weight: 650;
	line-height: 1.55;
	text-align: left;
}

.hsl-product-v3-page .hsl-product-v3-gallery__caption > span:first-child {
	min-width: 0;
}

.hsl-product-v3-page .hsl-product-v3-gallery__controls {
	display: flex;
	flex: 0 0 auto;
	gap: 0.5rem;
}

.hsl-product-v3-page .hsl-product-v3-gallery__control {
	display: grid;
	width: 2.75rem;
	height: 2.75rem;
	place-items: center;
	border: 1px solid var(--hsl-v3-line);
	border-radius: 12px;
	background: #fff;
	padding: 0;
	color: var(--hsl-v3-vault);
	font: inherit;
	cursor: pointer;
	transition:
		border-color 180ms ease,
		background-color 180ms ease,
		color 180ms ease;
}

.hsl-product-v3-page .hsl-product-v3-gallery__control[hidden] {
	display: none;
}

.hsl-product-v3-page .hsl-product-v3-gallery__control svg {
	width: 1.1rem;
	height: 1.1rem;
}

.hsl-product-v3-page
.hsl-product-v3-gallery__control:hover:not([aria-disabled="true"]) {
	border-color: var(--hsl-v3-vault);
	background: var(--hsl-v3-mist);
}

.hsl-product-v3-page
.hsl-product-v3-gallery__control[aria-disabled="true"] {
	background: var(--hsl-v3-surface);
	color: rgb(91 107 122 / 42%);
	cursor: not-allowed;
}

.hsl-product-v3-page .hsl-v3-section {
	width: 100%;
	max-width: none;
	margin: 0;
	padding-block: clamp(4.5rem, 8vw, 7rem);
	padding-inline: max(1.5rem, calc((100vw - var(--hsl-v3-shell)) / 2));
}

.hsl-product-v3-page .hsl-v3-section h2,
.hsl-product-v3-page .hsl-product-v3-section-intro h2 {
	max-width: 14ch;
	margin: 0;
	color: var(--hsl-v3-vault);
	font-size: clamp(2.15rem, 4.4vw, 3.55rem);
	font-weight: 830;
	letter-spacing: -0.035em;
	line-height: 1.03;
	text-wrap: balance;
}

.hsl-product-v3-page .hsl-product-v3-section-intro > p,
.hsl-product-v3-page .hsl-product-v3-story__lead,
.hsl-product-v3-page .hsl-product-v3-story__lead p {
	max-width: 66ch;
	margin: 1.2rem 0 0;
	color: var(--hsl-v3-muted);
	font-size: clamp(1rem, 1.35vw, 1.12rem);
	line-height: 1.7;
}

.hsl-product-v3-page .hsl-product-v3-link {
	display: inline-flex;
	min-height: 2.65rem;
	align-items: center;
	border-bottom: 2px solid var(--hsl-v3-yellow);
	color: var(--hsl-v3-vault);
	font-weight: 800;
	text-decoration: none;
}

.hsl-product-v3-page .hsl-product-v3-link:hover {
	border-color: var(--hsl-v3-vault);
	color: var(--hsl-v3-vault-deep);
}

.hsl-product-v3-page .hsl-product-v3-story,
.hsl-product-v3-page .hsl-product-v3-comparison,
.hsl-product-v3-page .hsl-product-v3-faqs {
	background: var(--hsl-v3-surface);
}

.hsl-product-v3-page .hsl-product-v3-story__grid {
	display: grid;
	grid-template-areas: "intro" "media" "ledger";
	grid-template-columns: minmax(0, 1fr);
	gap: clamp(2.5rem, 5vw, 5rem);
	align-items: start;
}

.hsl-product-v3-page .hsl-product-v3-story__intro {
	grid-area: intro;
}

.hsl-product-v3-page .hsl-product-v3-story__media {
	grid-area: media;
	margin: 0;
}

.hsl-product-v3-page .hsl-product-v3-story__media > div {
	display: grid;
	min-height: 34rem;
	place-items: center;
	overflow: hidden;
	border-radius: var(--hsl-v3-radius);
	background: #fff;
}

.hsl-product-v3-page .hsl-product-v3-story__media img {
	width: 100%;
	height: 34rem;
	object-fit: contain;
}

.hsl-product-v3-page .hsl-product-v3-story__media figcaption {
	margin-top: 0.75rem;
	color: var(--hsl-v3-muted);
	font-size: 0.78rem;
	font-weight: 650;
	line-height: 1.5;
}

.hsl-product-v3-page .hsl-product-v3-decision-ledger {
	grid-area: ledger;
	margin: 0;
	border-top: 1px solid #cbd7e0;
}

.hsl-product-v3-page .hsl-product-v3-story__callouts {
	grid-area: ledger;
	margin: 0;
	border-top: 1px solid #cbd7e0;
}

.hsl-product-v3-page .hsl-product-v3-story__callouts article {
	min-width: 0;
	padding-block: 1.2rem;
	border-bottom: 1px solid #cbd7e0;
}

.hsl-product-v3-page .hsl-product-v3-story__callouts article:last-child {
	border-bottom: 0;
}

.hsl-product-v3-page .hsl-product-v3-story__callouts h3 {
	margin: 0;
	color: var(--hsl-v3-ink);
	font-size: 1.08rem;
	font-weight: 820;
	letter-spacing: -0.012em;
	line-height: 1.3;
}

.hsl-product-v3-page .hsl-product-v3-story__callouts p {
	max-width: 62ch;
	margin: 0.42rem 0 0;
	color: var(--hsl-v3-muted);
	font-size: 0.9rem;
	font-weight: 500;
	line-height: 1.62;
	overflow-wrap: anywhere;
}

.hsl-product-v3-page .hsl-product-v3-decision-ledger > div {
	display: grid;
	grid-template-columns: minmax(9.5rem, 0.72fr) minmax(0, 1.28fr);
	gap: 1.5rem;
	padding-block: 1.15rem;
	border-bottom: 1px solid #cbd7e0;
}

.hsl-product-v3-page .hsl-product-v3-decision-ledger dt {
	color: var(--hsl-v3-muted);
	font-size: 0.8rem;
	font-weight: 720;
}

.hsl-product-v3-page .hsl-product-v3-decision-ledger dd {
	margin: 0;
	color: var(--hsl-v3-ink);
	font-size: 1.08rem;
	font-weight: 820;
	line-height: 1.4;
}

.hsl-product-v3-page .hsl-product-v3-decision-ledger dd span {
	display: block;
	margin-top: 0.32rem;
	color: var(--hsl-v3-muted);
	font-size: 0.84rem;
	font-weight: 500;
	line-height: 1.55;
}

.hsl-product-v3-page .hsl-product-v3-comparison__shell {
	margin-top: 3rem;
	overflow: hidden;
	border-radius: var(--hsl-v3-radius);
	background: #fff;
}

.hsl-product-v3-page .hsl-product-v3-comparison__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hsl-product-v3-page .hsl-product-v3-comparison__model {
	display: flex;
	min-width: 0;
	flex-direction: column;
	padding: clamp(1.35rem, 2.5vw, 2rem);
	border-left: 1px solid var(--hsl-v3-line);
}

.hsl-product-v3-page .hsl-product-v3-comparison__model:first-child {
	border-left: 0;
}

.hsl-product-v3-page .hsl-product-v3-comparison__model.is-current {
	background: var(--hsl-v3-mist);
}

.hsl-product-v3-page .hsl-product-v3-comparison__marker {
	align-self: flex-start;
	border-radius: 999px;
	background: #f3e9c8;
	padding: 0.4rem 0.68rem;
	color: var(--hsl-v3-yellow-ink);
	font-size: 0.68rem;
	font-weight: 850;
	letter-spacing: 0.08em;
	line-height: 1;
	text-transform: uppercase;
}

.hsl-product-v3-page
.hsl-product-v3-comparison__model:not(.is-current)
.hsl-product-v3-comparison__marker {
	background: transparent;
	padding-inline: 0;
	color: var(--hsl-v3-muted);
}

.hsl-product-v3-page .hsl-product-v3-comparison__model figure {
	display: grid;
	height: 16rem;
	place-items: center;
	margin: 1rem 0;
}

.hsl-product-v3-page .hsl-product-v3-comparison__model figure img {
	width: min(78%, 11rem);
	height: 15rem;
	object-fit: contain;
	transition: opacity 180ms ease;
}

.hsl-product-v3-page .hsl-product-v3-comparison__model:has(a:hover) figure img {
	opacity: 0.72;
}

.hsl-product-v3-page .hsl-product-v3-comparison__model h3 {
	margin: 0;
	color: var(--hsl-v3-vault);
	font-size: 1.45rem;
	font-weight: 830;
	letter-spacing: -0.02em;
}

.hsl-product-v3-page .hsl-product-v3-comparison__summary {
	min-height: 2.6rem;
	margin: 0.42rem 0 1rem;
	color: var(--hsl-v3-muted);
	font-size: 0.82rem;
	font-weight: 620;
	line-height: 1.5;
}

.hsl-product-v3-page .hsl-product-v3-comparison__model dl {
	margin: 1rem 0 0;
	border-top: 1px solid var(--hsl-v3-line);
}

.hsl-product-v3-page .hsl-product-v3-comparison__model dl > div {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 1rem;
	padding-block: 0.72rem;
	border-bottom: 1px solid var(--hsl-v3-line);
}

.hsl-product-v3-page .hsl-product-v3-comparison__model dt {
	color: var(--hsl-v3-muted);
	font-size: 0.76rem;
	font-weight: 700;
}

.hsl-product-v3-page .hsl-product-v3-comparison__model dd {
	margin: 0;
	color: var(--hsl-v3-ink);
	font-size: 0.8rem;
	font-weight: 800;
	text-align: right;
}

.hsl-product-v3-page .hsl-product-v3-comparison__model .hsl-product-v3-button {
	margin-top: auto;
}

.hsl-product-v3-page .hsl-product-v3-guides__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(20rem, 0.8fr);
	gap: clamp(2.5rem, 5vw, 5rem);
	align-items: start;
	margin-top: 3rem;
}

.hsl-product-v3-page .hsl-product-v3-guides > .hsl-product-v3-section-intro {
	max-width: 52rem;
}

.hsl-product-v3-page .hsl-product-v3-guides__image {
	display: block;
	overflow: hidden;
	border-radius: var(--hsl-v3-radius);
	background: var(--hsl-v3-mist);
}

.hsl-product-v3-page .hsl-product-v3-guides__image img {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	transition: opacity 180ms ease;
}

.hsl-product-v3-page
.hsl-product-v3-guides__featured:has(a:hover)
.hsl-product-v3-guides__image
img {
	opacity: 0.78;
}

.hsl-product-v3-page .hsl-product-v3-guides h3 {
	margin: 1.35rem 0 0;
	color: var(--hsl-v3-vault);
	font-size: clamp(1.35rem, 2.6vw, 2rem);
	font-weight: 820;
	letter-spacing: -0.025em;
	line-height: 1.15;
}

.hsl-product-v3-page .hsl-product-v3-guides h3 a {
	color: inherit;
	text-decoration: none;
}

.hsl-product-v3-page .hsl-product-v3-guides article > p {
	margin: 0.75rem 0 0;
	color: var(--hsl-v3-muted);
	font-size: 0.92rem;
	line-height: 1.65;
}

.hsl-product-v3-page .hsl-product-v3-guides__list {
	border-top: 1px solid var(--hsl-v3-line);
}

.hsl-product-v3-page .hsl-product-v3-guides__list article {
	padding-block: 1.6rem;
	border-bottom: 1px solid var(--hsl-v3-line);
}

.hsl-product-v3-page .hsl-product-v3-guides__list h3 {
	margin: 0;
	font-size: 1.15rem;
	letter-spacing: -0.01em;
}

.hsl-product-v3-page .hsl-product-v3-faqs__grid {
	display: grid;
	grid-template-columns: minmax(17rem, 0.62fr) minmax(0, 1.38fr);
	gap: clamp(2.5rem, 5vw, 5rem);
	align-items: start;
}

.hsl-product-v3-page .hsl-product-v3-faqs__list {
	border-top: 1px solid #cbd7e0;
}

.hsl-product-v3-page .hsl-product-v3-faq {
	border-bottom: 1px solid #cbd7e0;
}

.hsl-product-v3-page .hsl-product-v3-faq > div {
	max-width: 66ch;
	padding: 0 4rem 1.6rem 0;
	color: var(--hsl-v3-muted);
	font-size: 0.93rem;
	line-height: 1.7;
}

.hsl-product-v3-page .hsl-product-v3-faqs .hsl-product-v3-link {
	margin-top: 1rem;
}

/* Template-owned global chapters use dedicated mockup-faithful structures. */
.hsl-product-v3-page .hsl-v3-delivery,
.hsl-product-v3-page .hsl-v3-shipping-comparison,
.hsl-product-v3-page .hsl-v3-proof,
.hsl-product-v3-page .hsl-v3-showrooms {
	padding-block: clamp(4.5rem, 8vw, 7rem);
	padding-inline: max(1.5rem, calc((100vw - var(--hsl-v3-shell)) / 2));
}

.hsl-product-v3-page .hsl-v3-delivery,
.hsl-product-v3-page .hsl-v3-shipping-comparison {
	background: #fff;
}

.hsl-product-v3-page .hsl-v3-delivery-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(25rem, 0.92fr);
	gap: clamp(2.5rem, 5vw, 5rem);
	align-items: center;
	margin: 0;
}

.hsl-product-v3-page .hsl-v3-delivery-grid > .wp-block-column {
	min-width: 0;
	margin: 0;
}

.hsl-product-v3-page .hsl-v3-delivery-image {
	margin: 0;
}

.hsl-product-v3-page .hsl-v3-delivery-image img {
	width: 100%;
	height: 37rem;
	border-radius: var(--hsl-v3-radius);
	background: var(--hsl-v3-mist);
	object-fit: cover;
}

.hsl-product-v3-page .hsl-v3-delivery-image figcaption,
.hsl-product-v3-page .hsl-v3-showrooms__photo figcaption {
	margin-top: 0.75rem;
	color: var(--hsl-v3-muted);
	font-size: 0.78rem;
	font-weight: 650;
	line-height: 1.5;
}

.hsl-product-v3-page .hsl-v3-section-lead {
	max-width: 58ch;
	margin: 1.2rem 0 0;
	color: var(--hsl-v3-muted);
	font-size: clamp(1rem, 1.35vw, 1.12rem);
	line-height: 1.7;
}

.hsl-product-v3-page .hsl-v3-delivery-steps {
	position: relative;
	margin: 2.5rem 0 0;
	padding: 0;
	counter-reset: hsl-v3-route;
	list-style: none;
}

.hsl-product-v3-page .hsl-v3-delivery-steps::before {
	position: absolute;
	top: 1.4rem;
	bottom: 1.4rem;
	left: 1.31rem;
	width: 1px;
	background: #cfd9e2;
	content: "";
}

.hsl-product-v3-page .hsl-v3-delivery-steps li {
	position: relative;
	display: grid;
	grid-template-areas: "number title" "number body";
	grid-template-columns: 2.65rem minmax(0, 1fr);
	gap: 1.1rem;
	padding: 0 0 1.65rem;
	counter-increment: hsl-v3-route;
	color: var(--hsl-v3-muted);
}

.hsl-product-v3-page .hsl-v3-delivery-steps li:last-child {
	padding-bottom: 0;
}

.hsl-product-v3-page .hsl-v3-delivery-steps li::before {
	z-index: 1;
	grid-area: number;
	display: grid;
	width: 2.65rem;
	height: 2.65rem;
	place-items: center;
	border: 1px solid var(--hsl-v3-vault);
	border-radius: 50%;
	background: #fff;
	color: var(--hsl-v3-vault);
	content: counter(hsl-v3-route, decimal-leading-zero);
	font-size: 0.8rem;
	font-weight: 850;
	font-variant-numeric: tabular-nums;
}

.hsl-product-v3-page .hsl-v3-delivery-steps strong {
	grid-area: title;
	align-self: start;
	margin-top: 0.08rem;
	color: var(--hsl-v3-ink);
	font-size: 1.05rem;
	font-weight: 800;
	line-height: 1.35;
}

.hsl-product-v3-page .hsl-v3-delivery-steps span {
	grid-area: body;
	margin-top: -0.75rem;
	color: var(--hsl-v3-muted);
	font-size: 0.91rem;
	line-height: 1.6;
}

.hsl-product-v3-page .hsl-v3-delivery-radius {
	margin: 2rem 0 0;
	border-top: 1px solid var(--hsl-v3-line);
	padding-top: 1.2rem;
	color: var(--hsl-v3-muted);
	font-size: 0.78rem;
	font-weight: 650;
	line-height: 1.55;
}

.hsl-product-v3-page .hsl-v3-shipping-comparison {
	border-top: 1px solid var(--hsl-v3-line);
}

.hsl-product-v3-page .hsl-v3-shipping-comparison__intro {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(25rem, 1.1fr);
	gap: 1.5rem;
	align-items: end;
}

.hsl-product-v3-page .hsl-v3-shipping-comparison__lead {
	max-width: 58ch;
	margin: 0;
	color: var(--hsl-v3-muted);
	font-size: clamp(1rem, 1.35vw, 1.12rem);
	line-height: 1.7;
}

.hsl-product-v3-page .hsl-v3-shipping-mobile-cue {
	display: none;
}

.hsl-product-v3-page .hsl-v3-shipping-table {
	max-width: 70rem;
	margin: 3rem auto 0;
	overflow: hidden;
	border-radius: var(--hsl-v3-radius) var(--hsl-v3-radius) 0 0;
	scrollbar-color: #bcd9f0 var(--hsl-v3-mist);
	scrollbar-width: thin;
}

.hsl-product-v3-page .hsl-v3-shipping-table table {
	width: 100%;
	min-width: 0;
	border: 0;
	border-collapse: separate;
	border-spacing: 0;
	table-layout: fixed;
}

.hsl-product-v3-page .hsl-v3-shipping-table :is(th, td) {
	border: 0;
	padding: 1rem 1.15rem;
	font-size: 0.88rem;
	line-height: 1.5;
	text-align: left;
	vertical-align: top;
}

.hsl-product-v3-page .hsl-v3-shipping-table tr > :first-child {
	width: 29.22%;
}

.hsl-product-v3-page .hsl-v3-shipping-table tr > :nth-child(2) {
	width: 32.47%;
}

.hsl-product-v3-page .hsl-v3-shipping-table tr > :last-child {
	width: 38.31%;
}

.hsl-product-v3-page .hsl-v3-shipping-table thead th {
	height: 5.5rem;
	vertical-align: middle;
	background: #edf0f3;
	color: #4f5e6c;
	font-size: 0.8rem;
	font-weight: 820;
	letter-spacing: 0.055em;
	line-height: 1.35;
	text-align: center;
	text-transform: uppercase;
}

.hsl-product-v3-page .hsl-v3-shipping-table thead th:first-child {
	background: transparent;
}

.hsl-product-v3-page .hsl-v3-shipping-table thead th:nth-child(2) {
	border-radius: var(--hsl-v3-radius) 0 0;
}

.hsl-product-v3-page .hsl-v3-shipping-table thead th:last-child {
	border-top: 3px solid var(--hsl-v3-yellow);
	border-radius: 0 var(--hsl-v3-radius) 0 0;
	background: var(--hsl-v3-vault);
	color: #fff;
	font-size: 0.82rem;
	font-weight: 830;
	letter-spacing: 0.045em;
}

.hsl-product-v3-page .hsl-v3-shipping-table thead small {
	display: block;
	margin-top: 0.28rem;
	color: var(--hsl-v3-yellow);
	font-size: 0.67rem;
	font-weight: 830;
	letter-spacing: 0.11em;
}

.hsl-product-v3-page .hsl-v3-shipping-table tbody :is(th, td) {
	border-top: 1px solid var(--hsl-v3-line);
}

.hsl-product-v3-page .hsl-v3-shipping-table tbody th {
	color: var(--hsl-v3-vault);
	font-size: 0.9rem;
	font-weight: 800;
	line-height: 1.4;
	vertical-align: middle;
}

.hsl-product-v3-page .hsl-v3-shipping-table tbody td {
	position: relative;
	padding-left: 3.25rem;
	color: var(--hsl-v3-muted);
}

.hsl-product-v3-page .hsl-v3-shipping-table tbody td:last-child {
	background: var(--hsl-v3-mist);
	color: var(--hsl-v3-ink);
	font-weight: 650;
}

.hsl-product-v3-page .hsl-v3-shipping-status {
	position: absolute;
	top: 1.05rem;
	left: 1.15rem;
	display: grid;
	width: 1.4rem;
	height: 1.4rem;
	place-items: center;
	margin-top: 0.05rem;
	border-radius: 50%;
	font-size: 1rem;
	font-weight: 850;
	line-height: 1;
}

.hsl-product-v3-page .hsl-v3-shipping-status--freight {
	background: #fce9e6;
	color: #b42318;
}

.hsl-product-v3-page .hsl-v3-shipping-status--hsl {
	background: #f3e9c8;
	color: var(--hsl-v3-vault);
}

.hsl-product-v3-page .hsl-v3-shipping-footer {
	display: grid;
	max-width: 70rem;
	grid-template-columns: minmax(11rem, 0.9fr) minmax(0, 1fr) minmax(0, 1.18fr);
	margin: 0 auto;
}

.hsl-product-v3-page .hsl-v3-shipping-footer__note {
	grid-column: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 1.1rem 1.35rem;
	color: var(--hsl-v3-muted);
	font-size: 0.82rem;
	font-weight: 650;
	line-height: 1.45;
	text-align: center;
}

.hsl-product-v3-page .hsl-v3-shipping-footer__action {
	grid-column: 3;
	display: flex;
	align-items: center;
	min-width: 0;
	margin: 0;
	border-radius: 0 0 var(--hsl-v3-radius) var(--hsl-v3-radius);
	background: var(--hsl-v3-vault);
	padding: 1.1rem 1.35rem;
}

.hsl-product-v3-page .hsl-v3-shipping-footer__action > *,
.hsl-product-v3-page .hsl-v3-shipping-footer__action .hsl-product-cta-action,
.hsl-product-v3-page .hsl-v3-shipping-footer__action .hsl-product-cta-link {
	width: 100%;
}

.hsl-product-v3-page .hsl-v3-shipping-footer__action .hsl-product-cta-link {
	display: inline-flex;
	min-height: 3.25rem;
	align-items: center;
	justify-content: center;
	border: 2px solid var(--hsl-v3-yellow);
	border-radius: 9px;
	background: var(--hsl-v3-yellow);
	padding: 0.85rem 1rem;
	color: var(--hsl-v3-vault-deep);
	font-size: 0.95rem;
	font-weight: 820;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
}

.hsl-product-v3-page .hsl-v3-shipping-footer__action .hsl-product-cta-link:hover {
	border-color: var(--hsl-v3-yellow-hover);
	background: var(--hsl-v3-yellow-hover);
}

.hsl-product-v3-page .hsl-v3-shipping-disclosure {
	max-width: 72ch;
	margin: 1.15rem auto 0;
	color: var(--hsl-v3-muted);
	font-size: 0.76rem;
	line-height: 1.55;
	text-align: center;
}

.hsl-product-v3-page .hsl-v3-proof {
	background: var(--hsl-v3-vault);
	color: #fff;
}

.hsl-product-v3-page .hsl-v3-proof__shell {
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(15rem, 0.55fr);
	gap: clamp(2.5rem, 5vw, 5rem);
	align-items: stretch;
}

.hsl-product-v3-page .hsl-v3-proof__quote {
	display: flex;
	min-width: 0;
	flex-direction: column;
	justify-content: center;
}

.hsl-product-v3-page .hsl-v3-proof__stars {
	margin: 0 0 1.25rem;
	color: var(--hsl-v3-yellow);
	font-size: 1rem;
	letter-spacing: 0.16em;
}

.hsl-product-v3-page .hsl-v3-proof blockquote,
.hsl-product-v3-page .hsl-v3-proof .wp-block-quote {
	max-width: 31ch;
	margin: 0;
	border: 0;
	padding: 0;
	color: #fff;
	font-size: clamp(1.55rem, 3vw, 2.45rem);
	font-weight: 650;
	letter-spacing: -0.025em;
	line-height: 1.28;
	text-wrap: balance;
}

.hsl-product-v3-page .hsl-v3-proof blockquote p {
	margin: 0;
	color: #fff;
	font: inherit;
}

.hsl-product-v3-page .hsl-v3-proof blockquote cite {
	display: block;
	margin-top: 1.5rem;
	color: #bcd9f0;
	font-size: 0.88rem;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.5;
}

.hsl-product-v3-page .hsl-v3-proof-list {
	margin: 0;
	border-top: 1px solid rgb(255 255 255 / 24%);
	padding: 0;
	list-style: none;
}

.hsl-product-v3-page .hsl-v3-proof-list li {
	padding-block: 1.35rem;
	border-bottom: 1px solid rgb(255 255 255 / 24%);
}

.hsl-product-v3-page .hsl-v3-proof-list strong,
.hsl-product-v3-page .hsl-v3-proof-list span {
	display: block;
}

.hsl-product-v3-page .hsl-v3-proof-list strong {
	color: #fff;
	font-size: clamp(1.5rem, 3vw, 2.25rem);
	font-weight: 830;
	letter-spacing: -0.03em;
	line-height: 1;
}

.hsl-product-v3-page .hsl-v3-proof-list span {
	margin-top: 0.45rem;
	color: #bcd9f0;
	font-size: 0.84rem;
	font-weight: 650;
	line-height: 1.5;
}

.hsl-product-v3-page .hsl-v3-showrooms {
	background: var(--hsl-v3-vault-deep);
	color: #fff;
}

.hsl-product-v3-page .hsl-v3-showrooms__shell {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(27rem, 1.1fr);
	gap: clamp(2.5rem, 5vw, 5rem);
	align-items: center;
}

.hsl-product-v3-page .hsl-v3-showrooms__photo {
	margin: 0;
	overflow: visible;
}

.hsl-product-v3-page .hsl-v3-showrooms__photo img {
	width: 100%;
	height: 34rem;
	border-radius: var(--hsl-v3-radius);
	background: var(--hsl-v3-mist);
	object-fit: cover;
}

.hsl-product-v3-page .hsl-v3-showrooms__photo figcaption,
.hsl-product-v3-page .hsl-v3-showrooms .hsl-v3-section-lead,
.hsl-product-v3-page .hsl-v3-showrooms p {
	color: #bcd9f0;
}

.hsl-product-v3-page .hsl-v3-showrooms h2 {
	color: #fff;
}

.hsl-product-v3-page .hsl-v3-showrooms__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin-top: 2rem;
}

.hsl-product-v3-page .hsl-v3-showrooms__actions > *,
.hsl-product-v3-page .hsl-v3-showrooms__actions .wp-block-button {
	margin: 0;
}

.hsl-product-v3-page .hsl-v3-showrooms__actions .hsl-product-cta-link,
.hsl-product-v3-page .hsl-v3-showrooms__actions .wp-block-button__link {
	display: inline-flex;
	min-height: 3.25rem;
	align-items: center;
	justify-content: center;
	border: 2px solid var(--hsl-v3-yellow);
	border-radius: 9px;
	background: var(--hsl-v3-yellow);
	padding: 0.85rem 1rem;
	color: var(--hsl-v3-vault-deep);
	font-size: 0.95rem;
	font-weight: 820;
	line-height: 1.2;
	text-decoration: none;
}

.hsl-product-v3-page .hsl-v3-showrooms__actions .is-style-outline .wp-block-button__link {
	border-color: #fff;
	background: transparent;
	color: #fff;
}

.hsl-product-v3-page .hsl-v3-showrooms__actions .hsl-product-cta-link:hover {
	border-color: var(--hsl-v3-yellow-hover);
	background: var(--hsl-v3-yellow-hover);
}

.hsl-product-v3-page .hsl-v3-showrooms__actions .is-style-outline .wp-block-button__link:hover {
	background: #fff;
	color: var(--hsl-v3-vault-deep);
}

.hsl-product-v3-page .hsl-v3-showrooms__locations {
	margin-top: 2rem;
}

.hsl-product-v3-page .hsl-v3-showrooms__location {
	display: grid;
	grid-template-columns: minmax(9rem, 0.65fr) minmax(0, 1.35fr) auto;
	gap: 1.5rem;
	align-items: center;
	padding-block: 1.25rem;
	border-top: 1px solid rgb(255 255 255 / 20%);
}

.hsl-product-v3-page .hsl-v3-showrooms__location:last-child {
	border-bottom: 1px solid rgb(255 255 255 / 20%);
}

.hsl-product-v3-page .hsl-v3-showrooms__location h3,
.hsl-product-v3-page .hsl-v3-showrooms__location p {
	margin: 0;
}

.hsl-product-v3-page .hsl-v3-showrooms__location h3 {
	color: #fff;
	font-size: 1rem;
	font-weight: 800;
}

.hsl-product-v3-page .hsl-v3-showrooms__location > p:last-child {
	text-align: right;
}

.hsl-product-v3-page .hsl-v3-showrooms__location a {
	display: inline-flex;
	min-height: 2.75rem;
	align-items: center;
	border-bottom: 2px solid var(--hsl-v3-yellow);
	color: #fff;
	font-weight: 800;
	text-decoration: none;
}

.hsl-product-v3-page .hsl-v3-showrooms__location > p:first-of-type a {
	display: inline;
	min-height: 0;
	border: 0;
	color: inherit;
	font-weight: inherit;
}

.hsl-product-v3-page .hsl-v3-showrooms__hours,
.hsl-product-v3-page .hsl-v3-showrooms__trust {
	margin: 1rem 0 0;
	font-size: 0.82rem;
	font-weight: 650;
	line-height: 1.55;
}

.hsl-product-v3-page .hsl-v3-showrooms__trust {
	color: #fff !important;
}

.hsl-product-v3-page .hsl-product-v3-placeholder {
	border: 1px dashed var(--hsl-v3-line);
	border-radius: 10px;
	padding: 1rem;
	color: var(--hsl-v3-muted);
}

body.hsl-product-v3-preview .hsl-v3-footer {
	margin: 0;
	background: var(--hsl-v3-surface);
	padding: 2rem max(1.5rem, calc((100vw - var(--hsl-v3-shell)) / 2));
	color: var(--hsl-v3-muted);
	font-family: var(--wp--preset--font-family--primary), "Mona Sans", sans-serif;
	font-size: 0.875rem;
}

body.hsl-product-v3-preview .hsl-v3-footer__shell {
	width: 100%;
	max-width: var(--hsl-v3-shell);
	min-height: 1.25rem;
	align-items: center;
	gap: 1rem 2rem;
	margin: 0 auto;
}

body.hsl-product-v3-preview .hsl-v3-footer :is(p, nav, ul) {
	margin: 0;
}

body.hsl-product-v3-preview .hsl-v3-footer__nav,
body.hsl-product-v3-preview .hsl-v3-footer__nav ul {
	gap: 0.5rem 1.25rem;
}

body.hsl-product-v3-preview .hsl-v3-footer a {
	display: inline-flex;
	min-height: 2.75rem;
	align-items: center;
	color: var(--hsl-v3-vault);
	font-weight: 800;
	text-decoration: none;
}

body.hsl-product-v3-preview .hsl-v3-footer a:hover {
	color: var(--hsl-v3-vault-deep);
	text-decoration: underline;
	text-decoration-color: var(--hsl-v3-yellow);
	text-decoration-thickness: 2px;
	text-underline-offset: 0.25rem;
}

@media (min-width: 64rem) {

	.hsl-product-v3-page .hsl-product-v3-product-layout {
		grid-template-areas:
			"gallery heading"
			"gallery price"
			"gallery actions"
			"gallery dealer"
			"gallery information";
		grid-template-columns: minmax(0, 1.13fr) minmax(25rem, 0.87fr);
		column-gap: 3.5rem;
	}

	.hsl-product-v3-page .hsl-product-v3-gallery {
		position: sticky;
		top: var(--hsl-v3-gallery-sticky-offset);
		align-self: start;
	}

	.admin-bar .hsl-product-v3-page .hsl-product-v3-gallery {
		top: calc(var(--hsl-v3-gallery-sticky-offset) + 32px);
	}

	.hsl-product-v3-page .hsl-product-v3-summary {
		padding-bottom: var(--hsl-v3-hero-flow-space);
	}

	.hsl-product-v3-page .hsl-product-v3-story__grid {
		grid-template-areas:
			"media intro"
			"media ledger";
		grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
		row-gap: 2.25rem;
	}

	.hsl-product-v3-page .hsl-product-v3-faqs__grid > .hsl-product-v3-section-intro {
		position: sticky;
		top: 8rem;
	}
}

@media (min-width: 80rem) {

	.hsl-product-v3-page .hsl-product-v3-hero__shell {
		padding-block: 3.5rem;
	}
}

@media (max-width: 63.999rem) {

	.hsl-product-v3-page .hsl-product-v3-summary {
		margin-bottom: 1.5rem;
	}

	.hsl-product-v3-page .hsl-product-v3-gallery {
		margin-bottom: 1.25rem;
	}

	.hsl-product-v3-page .hsl-product-v3-price {
		margin-bottom: 1.5rem;
	}

	.hsl-product-v3-page .hsl-product-v3-story__grid {
		grid-template-areas: "intro" "media" "ledger";
		grid-template-columns: 1fr;
	}
}

@media (max-width: 53.75rem) {

	body.hsl-product-v3-preview .hsl-mockup-utility {
		display: none;
	}

	body.hsl-product-v3-preview .hsl-mockup-header__inner {
		min-height: 71px;
	}

	.hsl-product-v3-page .hsl-product-v3-breadcrumbs,
	.hsl-product-v3-page .hsl-product-v3-hero__shell {
		width: min(calc(100% - 2rem), var(--hsl-v3-shell));
	}
}

@media (max-width: 48rem) {

	.hsl-product-v3-page .hsl-v3-section,
	.hsl-product-v3-page .hsl-v3-delivery,
	.hsl-product-v3-page .hsl-v3-shipping-comparison,
	.hsl-product-v3-page .hsl-v3-proof,
	.hsl-product-v3-page .hsl-v3-showrooms {
		padding-block: 4rem;
		padding-inline: 1rem;
	}

	body.hsl-product-v3-preview .hsl-v3-footer {
		padding: 2rem 1rem;
	}

	body.hsl-product-v3-preview .hsl-v3-footer__shell {
		align-items: flex-start;
	}

	.hsl-product-v3-page .hsl-v3-section h2,
	.hsl-product-v3-page .hsl-product-v3-section-intro h2 {
		font-size: clamp(2rem, 11vw, 3rem);
	}

	.hsl-product-v3-page .hsl-product-v3-comparison__shell {
		overflow: visible;
	}

	.hsl-product-v3-page .hsl-product-v3-comparison__grid {
		width: auto;
		grid-template-columns: minmax(0, 1fr);
	}

	.hsl-product-v3-page .hsl-product-v3-comparison__model {
		border-top: 1px solid var(--hsl-v3-line);
		border-left: 0;
	}

	.hsl-product-v3-page .hsl-product-v3-comparison__model:first-child {
		border-top: 0;
	}

	.hsl-product-v3-page .hsl-product-v3-comparison__model figure {
		height: 13rem;
	}

	.hsl-product-v3-page .hsl-product-v3-comparison__model figure img {
		height: 12rem;
	}

	.hsl-product-v3-page .hsl-product-v3-comparison__summary {
		min-height: 0;
	}

	.hsl-product-v3-page .hsl-product-v3-guides__grid,
	.hsl-product-v3-page .hsl-product-v3-faqs__grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 2.75rem;
	}

	.hsl-product-v3-page .hsl-product-v3-story__media > div,
	.hsl-product-v3-page .hsl-product-v3-story__media img {
		min-height: 27rem;
		height: 27rem;
	}

	.hsl-product-v3-page .hsl-product-v3-decision-ledger > div {
		grid-template-columns: minmax(0, 1fr);
		gap: 0.35rem;
	}

	.hsl-product-v3-page .hsl-v3-delivery-grid,
	.hsl-product-v3-page .hsl-v3-shipping-comparison__intro,
	.hsl-product-v3-page .hsl-v3-proof__shell,
	.hsl-product-v3-page .hsl-v3-showrooms__shell {
		grid-template-columns: minmax(0, 1fr);
		gap: 2.75rem;
	}

	.hsl-product-v3-page .hsl-v3-delivery-image img {
		height: 20rem;
	}

	.hsl-product-v3-page .hsl-v3-shipping-comparison {
		overflow-x: clip;
		padding-top: 4rem;
	}

	.hsl-product-v3-page .hsl-v3-shipping-mobile-cue {
		display: flex;
		align-items: center;
		gap: 0.55rem;
		margin: 2.5rem 0 0.85rem;
		color: var(--hsl-v3-muted);
		font-size: 0.78rem;
		font-weight: 700;
	}

	.hsl-product-v3-page .hsl-v3-shipping-mobile-cue::first-letter {
		color: var(--hsl-v3-vault);
		font-size: 1.2rem;
	}

	.hsl-product-v3-page .hsl-v3-shipping-table {
		width: calc(100% + 2rem);
		max-width: none;
		margin: 0 -1rem;
		overflow-x: auto;
		border-radius: 0;
		padding: 0.2rem 1rem 0.9rem;
		contain: inline-size paint;
		isolation: isolate;
		scroll-padding-inline: 1rem;
		scroll-snap-type: x mandatory;
		overscroll-behavior-inline: contain;
	}

	.hsl-product-v3-page .hsl-v3-shipping-table:focus-visible {
		border-radius: 12px;
		outline-offset: -1px;
	}

	.hsl-product-v3-page .hsl-v3-shipping-table table {
		display: block;
		width: max-content;
		table-layout: auto;
	}

	.hsl-product-v3-page .hsl-v3-shipping-table thead {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		white-space: nowrap;
	}

	.hsl-product-v3-page .hsl-v3-shipping-table tbody {
		display: flex;
		width: max-content;
		gap: 0.75rem;
	}

	.hsl-product-v3-page .hsl-v3-shipping-table tbody tr {
		display: flex;
		width: min(20rem, 84vw);
		flex: 0 0 min(20rem, 84vw);
		flex-direction: column;
		overflow: hidden;
		border: 1px solid var(--hsl-v3-line);
		border-radius: var(--hsl-v3-radius);
		background: #fff;
		scroll-snap-align: start;
	}

	.hsl-product-v3-page .hsl-v3-shipping-table tbody tr > :is(th, td) {
		display: grid;
		width: 100% !important;
		border-top: 0;
	}

	.hsl-product-v3-page .hsl-v3-shipping-table tbody th {
		min-height: 4.25rem;
		align-items: center;
		padding: 0.95rem 1rem;
		font-size: 0.94rem;
	}

	.hsl-product-v3-page .hsl-v3-shipping-table tbody td {
		position: static;
		min-height: 7.3rem;
		display: grid;
		grid-template-columns: 1.4rem minmax(0, 1fr);
		grid-template-rows: auto 1fr;
		padding: 0.9rem 1rem 1rem;
		border-top: 1px solid var(--hsl-v3-line);
	}

	.hsl-product-v3-page .hsl-v3-shipping-table .hsl-v3-shipping-status {
		position: static;
	}

	.hsl-product-v3-page .hsl-v3-shipping-table tbody td::before {
		grid-column: 1 / -1;
		margin-bottom: 0.25rem;
		color: var(--hsl-v3-muted);
		content: attr(data-column);
		font-size: 0.66rem;
		font-weight: 820;
		letter-spacing: 0.07em;
		text-transform: uppercase;
	}

	.hsl-product-v3-page .hsl-v3-shipping-table tbody td:last-child {
		min-height: 7.75rem;
		border-top: 2px solid var(--hsl-v3-yellow);
		background: var(--hsl-v3-vault);
		color: #fff;
	}

	.hsl-product-v3-page .hsl-v3-shipping-table tbody td:last-child::before {
		color: var(--hsl-v3-yellow);
	}

	.hsl-product-v3-page .hsl-v3-shipping-table tbody td:last-child .hsl-v3-shipping-status--hsl {
		background: rgb(252 220 105 / 16%);
		color: var(--hsl-v3-yellow);
	}

	.hsl-product-v3-page .hsl-v3-shipping-footer {
		display: flex;
		flex-direction: column;
		gap: 1rem;
		margin-top: 1.25rem;
	}

	.hsl-product-v3-page .hsl-v3-shipping-footer__note,
	.hsl-product-v3-page .hsl-v3-shipping-footer__action {
		width: 100%;
	}

	.hsl-product-v3-page .hsl-v3-shipping-footer__note {
		order: 2;
		padding: 0;
	}

	.hsl-product-v3-page .hsl-v3-shipping-footer__action {
		order: 1;
		border-radius: 0;
		background: transparent;
		padding: 0;
	}

	.hsl-product-v3-page .hsl-v3-shipping-disclosure {
		margin-top: 0.9rem;
		text-align: left;
	}

	.hsl-product-v3-page .hsl-v3-shipping-footer__note,
	.hsl-product-v3-page .hsl-v3-shipping-disclosure {
		display: none;
	}

	.hsl-product-v3-page .hsl-v3-proof blockquote,
	.hsl-product-v3-page .hsl-v3-proof .wp-block-quote {
		font-size: clamp(1.45rem, 7vw, 2rem);
	}

	.hsl-product-v3-page .hsl-v3-showrooms__photo img {
		height: 18rem;
	}

	.hsl-product-v3-page .hsl-v3-showrooms__actions {
		flex-direction: column;
	}

	.hsl-product-v3-page .hsl-v3-showrooms__actions > *,
	.hsl-product-v3-page .hsl-v3-showrooms__actions .wp-block-buttons,
	.hsl-product-v3-page .hsl-v3-showrooms__actions .wp-block-button,
	.hsl-product-v3-page .hsl-v3-showrooms__actions a {
		width: 100%;
	}

	.hsl-product-v3-page .hsl-v3-showrooms__location {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 0.75rem 1rem;
	}

	.hsl-product-v3-page .hsl-v3-showrooms__location > p:first-of-type {
		grid-column: 1 / -1;
		grid-row: 2;
	}

	.hsl-product-v3-page .hsl-v3-showrooms__location > p:last-child {
		grid-column: 2;
		grid-row: 1;
	}
}

@media (max-width: 40rem) {

	.hsl-product-v3-page
	.hsl-product-v3-description:not([data-hsl-v3-ready])
	.hsl-product-v3-description__toggle[hidden] {
		display: inline-flex;
		visibility: hidden;
	}

	.hsl-product-v3-page .hsl-product-v3-hero__shell {
		padding-block: 1.5rem;
	}

	.hsl-product-v3-page .hsl-product-v3-action-block,
	.hsl-product-v3-page .hsl-product-v3-actions {
		grid-template-columns: 1fr;
	}

	.hsl-product-v3-page .hsl-product-v3-gallery {
		margin-bottom: 0.5rem;
	}

	.hsl-product-v3-page
	.hsl-product-v3-action-block > .hsl-product-cta-caption {
		margin: 0.1rem 0 0;
	}

	.hsl-product-v3-page .hsl-product-v3-dealer,
	.hsl-product-v3-page .hsl-product-v3-dealer__link {
		flex-direction: column;
		gap: 0.75rem;
		padding: 1.25rem;
		text-align: center;
	}

	.hsl-product-v3-page .hsl-product-v3-dealer__logo {
		width: 5rem;
		height: 2.75rem;
		object-position: center;
	}

	.hsl-product-v3-page .hsl-product-v3-feature-ledger > div {
		grid-template-columns: 1fr;
		gap: 0.25rem;
	}

	.hsl-product-v3-page .hsl-product-v3-warranty__ledger > div {
		grid-template-columns: 1fr;
		gap: 0.3rem;
	}

	.hsl-product-v3-page .hsl-product-v3-gallery__stage {
		min-height: 11.875rem;
	}

	.hsl-product-v3-page .hsl-product-v3-gallery__main {
		width: min(72%, 14rem);
		height: 11.25rem;
	}

	.hsl-product-v3-page .hsl-product-v3-gallery__choice {
		min-height: 3.5rem;
		grid-template-columns: 1fr;
		place-items: center;
		padding: 0.3rem;
	}

	.hsl-product-v3-page .hsl-product-v3-gallery__choice img {
		width: 2.5rem;
		height: 3rem;
	}

	.hsl-product-v3-page .hsl-product-v3-gallery__choice span {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		white-space: nowrap;
	}
}

@media (max-width: 30rem) {

	.hsl-product-v3-page .hsl-product-v3-summary__model {
		font-size: 2.6rem;
	}

	.hsl-product-v3-page .hsl-product-v3-feature-ledger > div {
		grid-template-columns: 1fr;
		gap: 0.28rem;
	}

	.hsl-product-v3-page .hsl-product-v3-spec-table th,
	.hsl-product-v3-page .hsl-product-v3-spec-table td {
		display: block;
		width: 100%;
	}

	.hsl-product-v3-page .hsl-product-v3-spec-table th {
		border-bottom: 0;
		padding: 0.9rem 0 0.2rem;
	}

	.hsl-product-v3-page .hsl-product-v3-spec-table td {
		padding: 0 0 0.9rem;
	}

	.hsl-product-v3-page .hsl-product-v3-faq > div {
		padding-right: 0;
	}
}

@media (prefers-reduced-motion: reduce) {

	.hsl-product-v3-page *,
	.hsl-product-v3-page *::before,
	.hsl-product-v3-page *::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}
