/**
 * TecnoPack product catalog.
 *
 * A continuous equipment line: technical white space, precise dividers and
 * content bays instead of detached cards.
 */

:root {
	--mktv-green-deep: #0a6b3d;
	--mktv-green: #249b49;
	--mktv-ink: #17211d;
	--mktv-line: #e4eae5;
	--mktv-muted: #66736c;
	--mktv-white: #fff;
	--mktv-surface: #f5f8f6;
	--mktv-shell: 1400px;
	--mktv-gutter: clamp(1.25rem, 4vw, 3.5rem);
}

.mktv-tp-catalog-view .site-content > .ast-container {
	display: block;
	max-width: none;
	padding: 0;
}

.mktv-tp-catalog-view .site-content,
.mktv-tp-catalog-view .site-main {
	background: var(--mktv-white);
}

/*
 * Astra treats #primary and post_class() articles as blog content. Those
 * selectors are more specific than the catalogue component classes and can
 * otherwise reduce the archive to the content column and pad every grid item.
 */
.mktv-tp-catalog-view #primary.mktv-catalog,
.mktv-tp-catalog-view #primary.mktv-product,
.mktv-tp-catalog-view #primary.mktv-area-elementor {
	float: none;
	clear: both;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
}

.mktv-catalog *,
.mktv-product * {
	box-sizing: border-box;
}

.mktv-catalog,
.mktv-product {
	width: 100%;
	max-width: none;
	margin: 0;
	color: var(--mktv-ink);
	font-family: var(--font-gotham);
	font-size: 1rem;
	line-height: 1.65;
}

.mktv-catalog h1,
.mktv-catalog h2,
.mktv-catalog h3,
.mktv-product h1,
.mktv-product h2,
.mktv-product h3 {
	margin-block: 0;
	color: var(--mktv-ink);
	font-family: var(--font-gotham);
	font-weight: 700;
	letter-spacing: -0.035em;
	line-height: 1.05;
}

.mktv-catalog p,
.mktv-product p,
.mktv-product dl,
.mktv-product ul {
	margin-top: 0;
}

.mktv-catalog a,
.mktv-product a,
.mktv-product button {
	-webkit-tap-highlight-color: transparent;
}

.mktv-catalog a:focus-visible,
.mktv-product a:focus-visible,
.mktv-product button:focus-visible,
.mktv-variant-table-wrap:focus-visible {
	outline: 3px solid var(--mktv-green);
	outline-offset: 4px;
}

.mktv-shell {
	width: min(100%, var(--mktv-shell));
	margin-inline: auto;
	padding-inline: var(--mktv-container-padding);
	box-sizing: border-box;
}

.mktv-eyebrow {
	margin-bottom: 1.1rem;
	color: var(--mktv-green-deep);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.095em;
	line-height: 1.3;
	text-transform: uppercase;
}

.mktv-catalog-hero {
	padding-block: clamp(2.4rem, 5vw, 4.75rem) clamp(2.5rem, 5vw, 4.5rem);
}

.mktv-catalog-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: end;
	gap: clamp(2rem, 7vw, 7rem);
}

.mktv-catalog .mktv-shell {
	width: min(100%, 1400px);
}

.mktv-catalog h1,
.mktv-catalog h2,
.mktv-catalog h3 {
	font-family: var(--font-gotham);
}

.mktv-catalog-breadcrumbs {
	border-bottom: 0;
	padding-block: 1.55rem 0;
}

.mktv-catalog-hero__heading {
	position: relative;
	max-width: 48rem;
	padding-left: clamp(1.4rem, 2vw, 2rem);
}

.mktv-catalog-hero__heading::before {
	position: absolute;
	top: 0.15rem;
	bottom: 0.1rem;
	left: 0;
	width: 2px;
	background: var(--mktv-green-deep);
	content: "";
}

.mktv-catalog-hero h1 {
	max-width: 18ch;
	font-size: clamp(2.5rem, 4.2vw, 4.35rem);
	letter-spacing: -0.045em;
}

.mktv-catalog-hero__description {
	max-width: 43rem;
	margin-top: 0.85rem;
	color: var(--mktv-muted);
	font-size: clamp(0.98rem, 1.25vw, 1.1rem);
	line-height: 1.55;
}

.mktv-catalog-hero__description > :last-child {
	margin-bottom: 0;
}

.mktv-catalog-hero__count {
	margin: 0 0 0.15rem;
	color: var(--mktv-muted);
	font-size: 0.95rem;
	font-weight: 500;
	white-space: nowrap;
}

.mktv-catalog-results {
	display: block;
	width: min(100%, 1440px);
	max-width: none;
	padding-block: clamp(3.5rem, 7vw, 6.5rem);
}

.mktv-equipment-line {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	border-top: 1px solid var(--mktv-line);
	border-left: 1px solid var(--mktv-line);
}

.mktv-product-bay {
	display: flex;
	min-width: 0;
	margin: 0;
	border-right: 1px solid var(--mktv-line);
	border-bottom: 1px solid var(--mktv-line);
	background: var(--mktv-white);
	flex-direction: column;
}

.mktv-product-bay__media {
	position: relative;
	display: grid;
	overflow: hidden;
	width: 100%;
	border-bottom: 1px solid var(--mktv-line);
	background:
		radial-gradient(circle at 50% 75%, rgba(10, 107, 61, 0.055), transparent 42%),
		var(--mktv-surface);
	aspect-ratio: 1 / 1;
	place-items: center;
}

.mktv-product-bay__image {
	position: absolute !important;
	inset: 0 !important;
	display: block !important;
	box-sizing: border-box !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	margin: 0 !important;
	padding: clamp(1rem, 2vw, 1.75rem) !important;
	object-fit: contain !important;
	object-position: 50% 50% !important;
	transform: none !important;
}

.mktv-product-bay:hover .mktv-product-bay__image {
	transform: none;
}

.mktv-product-bay__placeholder {
	display: grid;
	width: 100%;
	height: 100%;
	place-items: center;
}

.mktv-product-bay__placeholder svg {
	width: 34%;
	fill: none;
	stroke: #b4c2ba;
	stroke-linecap: square;
	stroke-width: 1.25;
}

.mktv-product-bay__body {
	display: flex;
	min-height: 17rem;
	padding: clamp(1.5rem, 2.4vw, 2.25rem) clamp(1.3rem, 2.1vw, 2rem) 1.55rem;
	flex: 1;
	flex-direction: column;
}

.mktv-product-bay__labels {
	display: flex;
	min-height: 1.4rem;
	margin-bottom: 1.05rem;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	color: var(--mktv-green-deep);
	font-size: 0.71rem;
	font-weight: 700;
	letter-spacing: 0.045em;
	line-height: 1.35;
	text-transform: uppercase;
}

.mktv-product-bay__labels a {
	color: inherit;
	text-decoration: none;
}

.mktv-product-bay__labels a:hover {
	text-decoration: underline;
	text-underline-offset: 0.25em;
}

.mktv-product-bay__brand {
	color: var(--mktv-muted);
	font-size: 0.66rem;
	text-align: right;
}

.mktv-product-bay__title {
	font-size: clamp(1.45rem, 2vw, 2rem);
}

.mktv-product-bay__title a {
	color: var(--mktv-ink);
	text-decoration: none;
}

.mktv-product-bay__title a:hover {
	color: var(--mktv-green-deep);
}

.mktv-product-bay__summary {
	margin-block: 0.8rem 1.35rem;
	color: var(--mktv-muted);
	font-size: 0.92rem;
	line-height: 1.55;
}

.mktv-product-bay__action,
.mktv-text-action,
.mktv-button {
	display: inline-flex;
	width: min(100%, 21.5rem);
	min-height: 4.1rem;
	margin-top: auto;
	padding: 0.85rem 1.5rem;
	align-items: center;
	justify-content: center;
	border: 1px solid #64728d;
	border-radius: 2px;
	background: var(--mktv-white);
	color: #64728d;
	font-size: clamp(1rem, 1.2vw, 1.15rem);
	font-weight: 400;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition: border-color 180ms ease, background-color 180ms ease, color 180ms ease;
}

.mktv-product-bay__action:hover,
.mktv-text-action:hover,
.mktv-button:hover {
	border-color: var(--mktv-green-deep);
	background: #f5f8f6;
	color: var(--mktv-green-deep);
}

/* Catalogue filters ------------------------------------------------------ */

.mktv-catalog-filters {
	width: 100%;
	margin: 0;
	padding-block: clamp(1.5rem, 2.5vw, 2.25rem);
	border-bottom: 1px solid var(--mktv-line);
	background: var(--mktv-white);
	font-family: var(--font-gotham);
}

.mktv-catalog-filters__inner {
	width: min(100%, 1400px);
	margin-inline: auto;
	padding-inline: var(--mktv-container-padding);
	box-sizing: border-box;
}

.mktv-catalog-filters__form {
	padding: 0;
	background: transparent;
}

.mktv-catalog-filters__controls {
	display: grid;
	grid-template-columns: minmax(17rem, 1.5fr) repeat(4, minmax(9rem, 1fr));
	align-items: start;
	gap: 0.7rem;
}

.mktv-catalog-filter-search label {
	display: block;
	margin-bottom: 0.4rem;
	color: var(--mktv-ink);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.055em;
	line-height: 1.3;
	text-transform: uppercase;
}

.mktv-catalog-filter-search input[type="search"] {
	width: 100%;
	height: 3rem;
	margin: 0;
	padding: 0 0.85rem;
	border: 1px solid #ccd5cf;
	border-radius: 2px;
	background: var(--mktv-white);
	box-shadow: none;
	color: var(--mktv-ink);
	font: 400 0.86rem/1.2 var(--font-gotham);
}

.mktv-catalog-filter-search input[type="search"]:focus,
.mktv-catalog-filter[open] > summary {
	border-color: var(--mktv-green-deep);
}

.mktv-catalog-filter {
	margin-top: 1.2rem;
}

.mktv-catalog-filter > summary {
	display: flex;
	min-height: 3rem;
	padding: 0.6rem 0.8rem;
	align-items: center;
	justify-content: space-between;
	gap: 0.65rem;
	border: 1px solid #ccd5cf;
	border-radius: 2px;
	background: var(--mktv-white);
	color: var(--mktv-ink);
	cursor: pointer;
	font-size: 0.79rem;
	font-weight: 500;
	line-height: 1.3;
	list-style: none;
}

.mktv-catalog-filter > summary::-webkit-details-marker {
	display: none;
}

.mktv-catalog-filter > summary::after {
	color: var(--mktv-green-deep);
	content: "+";
	font-size: 1.1rem;
	font-weight: 400;
	line-height: 1;
}

.mktv-catalog-filter[open] > summary::after {
	content: "−";
}

.mktv-catalog-filter__count {
	display: inline-grid;
	min-width: 1.3rem;
	height: 1.3rem;
	margin-left: auto;
	border-radius: 50%;
	background: var(--mktv-green-deep);
	color: var(--mktv-white);
	font-size: 0.62rem;
	font-weight: 700;
	place-items: center;
}

.mktv-catalog-filter__options {
	overflow-y: auto;
	max-height: 16rem;
	margin-top: 0.45rem;
	padding: 0.4rem;
	border: 1px solid #d9e0dc;
	background: var(--mktv-white);
}

.mktv-catalog-filter__option {
	display: grid;
	min-height: 2.3rem;
	margin: 0;
	padding: 0.45rem 0.6rem 0.45rem calc(0.6rem + (var(--mktv-filter-depth) * 0.8rem));
	grid-template-columns: auto minmax(0, 1fr);
	align-items: start;
	gap: 0.65rem;
	color: #3d4942;
	cursor: pointer;
	font-size: 0.75rem;
	font-weight: 400;
	line-height: 1.45;
}

.mktv-catalog-filter__option:hover {
	background: #f2f6f3;
}

.mktv-catalog-filter__option input[type="checkbox"] {
	width: 1rem;
	height: 1rem;
	margin: 0.08rem 0 0;
	accent-color: var(--mktv-green-deep);
}

.mktv-catalog-filter-search input[type="search"]:focus-visible,
.mktv-catalog-filter > summary:focus-visible,
.mktv-catalog-filter__option input[type="checkbox"]:focus-visible,
.mktv-active-filter:focus-visible {
	outline: 3px solid var(--mktv-green);
	outline-offset: 3px;
}

.mktv-catalog-filters__actions {
	display: flex;
	margin-top: 1rem;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 0.75rem;
}

.mktv-catalog-filters__actions .mktv-button {
	width: auto;
	min-width: 10.5rem;
	min-height: 3rem;
	margin-top: 0;
	padding: 0.6rem 1.15rem;
	font-size: 0.84rem;
}

/* Astra may assign its own active button colours. Keep every submit state
 * explicit so green backgrounds never inherit green text. */
.mktv-catalog-filters__actions button.mktv-catalog-filters__apply,
.mktv-catalog-filters__actions button.mktv-catalog-filters__apply:hover,
.mktv-catalog-filters__actions button.mktv-catalog-filters__apply:focus,
.mktv-catalog-filters__actions button.mktv-catalog-filters__apply:focus-visible,
.mktv-catalog-filters__actions button.mktv-catalog-filters__apply:active {
	border-color: var(--mktv-green-deep) !important;
	background: var(--mktv-green-deep) !important;
	color: var(--mktv-white) !important;
	-webkit-text-fill-color: var(--mktv-white);
}

.mktv-catalog-filters__actions button.mktv-catalog-filters__apply:hover,
.mktv-catalog-filters__actions button.mktv-catalog-filters__apply:focus,
.mktv-catalog-filters__actions button.mktv-catalog-filters__apply:focus-visible {
	border-color: #265f36 !important;
	background: #265f36 !important;
}

.mktv-catalog-filters__actions button.mktv-catalog-filters__apply:focus-visible {
	outline: 3px solid #319a5e !important;
	outline-offset: 3px;
}

.mktv-active-filters {
	display: flex;
	margin-top: 0.85rem;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.55rem;
}

.mktv-active-filters__label {
	margin-right: 0.25rem;
	color: var(--mktv-muted);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.055em;
	text-transform: uppercase;
}

.mktv-active-filter {
	display: inline-flex;
	min-height: 2.1rem;
	padding: 0.35rem 0.65rem;
	align-items: center;
	gap: 0.6rem;
	border: 1px solid #cbd5ce;
	border-radius: 2px;
	background: var(--mktv-white);
	color: var(--mktv-ink);
	font-size: 0.7rem;
	font-weight: 500;
	line-height: 1.25;
	text-decoration: none;
}

.mktv-active-filter:hover {
	border-color: var(--mktv-green-deep);
	color: var(--mktv-green-deep);
}

.mktv-active-filter > [aria-hidden="true"] {
	color: var(--mktv-green-deep);
	font-size: 1rem;
	line-height: 1;
}

@media (max-width: 1180px) {
	.mktv-catalog-filters__controls {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.mktv-catalog-filter-search {
		grid-column: span 2;
	}
}

@media (max-width: 720px) {
	.mktv-catalog-filters__controls {
		grid-template-columns: 1fr;
	}

	.mktv-catalog-filter-search {
		grid-column: auto;
	}

	.mktv-catalog-filter {
		margin-top: 0;
	}

	.mktv-catalog-filters__actions {
		justify-content: stretch;
	}

	.mktv-catalog-filters__actions .mktv-button {
		width: 100%;
	}

	.mktv-active-filters {
		align-items: stretch;
		flex-direction: column;
	}

	.mktv-active-filter {
		justify-content: space-between;
	}
}

/* Quiet archive presentation: photography and product data carry the page. */
.mktv-equipment-line--catalog {
	display: grid;
	width: 100%;
	max-width: none;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	align-items: stretch;
	column-gap: clamp(1.35rem, 2.2vw, 2.15rem);
	row-gap: clamp(3.25rem, 5vw, 5.25rem);
	border: 0;
}

.mktv-catalog .mktv-equipment-line--catalog > .mktv-product-bay {
	float: none;
	clear: none;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	border: 0;
}

.mktv-equipment-line--catalog .mktv-product-bay__media {
	border: 0;
	background: #f5f7f6;
	aspect-ratio: 1 / 1;
}

.mktv-equipment-line--catalog .mktv-product-bay__media > img.mktv-product-bay__image {
	position: absolute !important;
	inset: 0 !important;
	display: block !important;
	box-sizing: border-box !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	margin: 0 !important;
	padding: clamp(1rem, 2vw, 1.75rem) !important;
	object-fit: contain !important;
	object-position: 50% 50% !important;
	transform: none !important;
}

.mktv-equipment-line--catalog .mktv-product-bay__body {
	min-height: 14.25rem;
	padding: 1.15rem 0 0;
}

.mktv-equipment-line--catalog .mktv-product-bay__labels {
	min-height: auto;
	margin-bottom: 0.8rem;
	justify-content: flex-start;
	gap: 0.55rem;
	font-size: 0.68rem;
}

.mktv-equipment-line--catalog .mktv-product-bay__brand {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	font-size: inherit;
	text-align: left;
}

.mktv-equipment-line--catalog .mktv-product-bay__brand::before {
	color: #a7b1ab;
	content: "\00b7";
}

.mktv-equipment-line--catalog .mktv-product-bay__title {
	font-size: clamp(1.15rem, 1.45vw, 1.45rem);
	letter-spacing: -0.025em;
	line-height: 1.2;
}

.mktv-equipment-line--catalog .mktv-product-bay__summary {
	display: -webkit-box;
	overflow: hidden;
	max-width: 32ch;
	margin-block: 0.65rem 1.2rem;
	font-size: 0.9rem;
	line-height: 1.55;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.mktv-catalog .mktv-pagination {
	padding-top: clamp(2.5rem, 4vw, 4rem);
	border-top: 1px solid var(--mktv-line);
}

.mktv-catalog-empty {
	max-width: 48rem;
	padding-block: clamp(2rem, 6vw, 5rem);
}

.mktv-catalog-empty__line {
	display: block;
	width: 5rem;
	height: 0.35rem;
	margin-bottom: 2rem;
	background: var(--mktv-green);
}

.mktv-catalog-empty h2 {
	margin-bottom: 1rem;
	font-size: clamp(2rem, 4vw, 3.5rem);
}

.mktv-catalog-empty p {
	max-width: 42rem;
	margin-bottom: 1.5rem;
	color: var(--mktv-muted);
}

.mktv-pagination {
	margin-top: clamp(2.5rem, 5vw, 4.5rem);
}

.mktv-pagination .page-numbers {
	display: flex;
	margin: 0;
	padding: 0;
	align-items: center;
	gap: 0;
	list-style: none;
}

.mktv-pagination .page-numbers li {
	margin: 0;
}

.mktv-pagination a,
.mktv-pagination span.current,
.mktv-pagination span.dots {
	display: grid;
	min-width: 2.85rem;
	height: 2.85rem;
	padding-inline: 0.85rem;
	border: 1px solid var(--mktv-line);
	border-right: 0;
	color: var(--mktv-ink);
	font-size: 0.82rem;
	font-weight: 700;
	text-decoration: none;
	place-items: center;
}

.mktv-pagination li:last-child > * {
	border-right: 1px solid var(--mktv-line);
}

.mktv-pagination a:hover,
.mktv-pagination span.current {
	background: var(--mktv-green-deep);
	color: var(--mktv-white);
}

/* Single product ---------------------------------------------------------- */

.mktv-breadcrumbs {
	padding-block: 1.15rem;
	border-bottom: 1px solid var(--mktv-line);
	color: var(--mktv-muted);
	font-size: 0.75rem;
}

.mktv-breadcrumbs ol {
	display: flex;
	margin: 0;
	padding: 0;
	align-items: center;
	gap: 0.55rem;
	list-style: none;
}

.mktv-breadcrumbs li {
	display: flex;
	min-width: 0;
	align-items: center;
	gap: 0.55rem;
}

.mktv-breadcrumbs li:not(:last-child)::after {
	color: #aab5af;
	content: "/";
}

.mktv-breadcrumbs a {
	color: inherit;
	text-decoration: none;
}

.mktv-breadcrumbs a:hover {
	color: var(--mktv-green-deep);
}

.mktv-breadcrumbs [aria-current="page"] {
	overflow: hidden;
	max-width: 34ch;
	color: var(--mktv-ink);
	text-overflow: ellipsis;
	white-space: nowrap;
}

.mktv-product-hero {
	padding-block: clamp(2.5rem, 5vw, 5rem);
}

.mktv-product-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(20rem, 0.9fr);
	align-items: start;
	gap: clamp(2.5rem, 6vw, 6rem);
}

.mktv-product > .mktv-shell,
.mktv-product-hero .mktv-shell,
.mktv-product-section .mktv-shell,
.mktv-product-cta .mktv-shell {
	width: min(100%, 1400px);
}

.mktv-product-gallery {
	min-width: 0;
}

.mktv-product-gallery__stage {
	position: relative;
	display: grid;
	overflow: hidden;
	width: 100%;
	border: 1px solid var(--mktv-line);
	background:
		radial-gradient(circle at 52% 72%, rgba(10, 107, 61, 0.065), transparent 43%),
		var(--mktv-surface);
	aspect-ratio: 1 / 1;
	place-items: center;
}

.mktv-product-gallery__stage > img.mktv-product-gallery__main-image {
	position: absolute !important;
	inset: 0 !important;
	display: block !important;
	box-sizing: border-box !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	margin: 0 !important;
	padding: clamp(1.25rem, 4vw, 3rem) !important;
	object-fit: contain !important;
	object-position: 50% 50% !important;
	transform: none !important;
}

.mktv-product-gallery__stage--empty svg {
	width: 38%;
	fill: none;
	stroke: #b4c2ba;
	stroke-width: 1.4;
}

.mktv-product-gallery__thumbs {
	display: grid;
	overflow-x: auto;
	grid-auto-columns: 5rem;
	grid-auto-flow: column;
	border-right: 1px solid var(--mktv-line);
	scrollbar-color: var(--mktv-green-deep) var(--mktv-line);
}

.mktv-product-gallery__thumb {
	position: relative;
	display: grid;
	width: 5rem;
	height: 5rem;
	margin: 0;
	padding: 0.45rem;
	border: 0;
	border-bottom: 1px solid var(--mktv-line);
	border-left: 1px solid var(--mktv-line);
	border-radius: 0;
	background: var(--mktv-white);
	cursor: pointer;
	place-items: center;
}

.mktv-product-gallery__thumb::after {
	position: absolute;
	right: 0;
	bottom: -1px;
	left: 0;
	height: 3px;
	background: transparent;
	content: "";
}

.mktv-product-gallery__thumb.is-active::after {
	background: var(--mktv-green-deep);
}

.mktv-product-gallery__thumb img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.mktv-product-intro__taxonomy {
	display: flex;
	margin-bottom: 1.25rem;
	flex-wrap: wrap;
	gap: 0.55rem 1rem;
}

.mktv-taxonomy-link {
	color: var(--mktv-green-deep);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.07em;
	text-decoration: none;
	text-transform: uppercase;
}

.mktv-taxonomy-link:hover {
	text-decoration: underline;
	text-underline-offset: 0.25em;
}

.mktv-product-intro h1 {
	position: relative;
	max-width: 12ch;
	padding-left: clamp(1.1rem, 1.8vw, 1.6rem);
	font-size: clamp(2.75rem, 4.3vw, 4.75rem);
	line-height: 0.98;
	word-break: break-word;
}

.mktv-product-intro h1::before {
	position: absolute;
	top: 0.08em;
	bottom: 0.04em;
	left: 0;
	width: 2px;
	background: var(--mktv-green-deep);
	content: "";
}

.mktv-product-intro__model {
	display: flex;
	margin-block: 1.15rem 0;
	align-items: baseline;
	gap: 0.7rem;
	color: var(--mktv-ink);
	font-family: var(--font-gotham);
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.035em;
}

.mktv-product-intro__model span,
.mktv-product-intro__brand > span {
	color: var(--mktv-muted);
	font-size: 0.69rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.mktv-product-intro__summary {
	max-width: 34rem;
	margin-block: 1.25rem 0;
	color: var(--mktv-muted);
	font-size: clamp(1rem, 1.25vw, 1.14rem);
	line-height: 1.65;
}

.mktv-product-intro__brand {
	display: flex;
	margin-top: 1.1rem;
	align-items: center;
	gap: 0.75rem;
}

.mktv-product-intro__brand .mktv-taxonomy-link {
	color: var(--mktv-ink);
	font-size: 0.82rem;
}

.mktv-product-intro__actions {
	display: grid;
	margin-top: clamp(1.75rem, 3vw, 2.5rem);
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.75rem;
}

.mktv-product-intro__actions .mktv-button,
.mktv-product-intro__actions .mktv-text-action {
	width: 100%;
	min-height: 3.65rem;
	margin: 0;
	font-size: 0.95rem;
}

.mktv-button {
	margin-top: 0;
}

.mktv-button:hover {
	border-color: var(--mktv-green-deep);
	background: #f5f8f6;
	color: var(--mktv-green-deep);
}

.mktv-product-section {
	padding-block: clamp(3.5rem, 6vw, 5.75rem);
	border-top: 1px solid var(--mktv-line);
}

.mktv-product-section__split {
	display: grid;
	grid-template-columns: minmax(13rem, 0.58fr) minmax(0, 1.42fr);
	gap: clamp(2.5rem, 7vw, 7rem);
}

.mktv-section-heading h2 {
	max-width: 17ch;
	font-size: clamp(2rem, 3vw, 3rem);
	line-height: 1.05;
}

.mktv-section-heading--inline {
	display: grid;
	margin-bottom: clamp(1.75rem, 3vw, 2.75rem);
	grid-template-columns: minmax(11rem, 0.45fr) minmax(0, 1.55fr);
	align-items: center;
	gap: 1.5rem;
}

.mktv-section-heading--inline .mktv-eyebrow {
	margin-bottom: 0.3rem;
}

.mktv-section-heading--inline h2 {
	font-size: clamp(2rem, 3vw, 3rem);
}

.mktv-prose {
	max-width: 46rem;
	color: #35413b;
	font-size: clamp(1rem, 1.15vw, 1.08rem);
	line-height: 1.78;
}

.mktv-prose > :first-child {
	margin-top: 0;
}

.mktv-prose > :last-child {
	margin-bottom: 0;
}

.mktv-prose h2,
.mktv-prose h3 {
	margin-block: 2em 0.75em;
	font-size: 1.5rem;
	letter-spacing: -0.02em;
}

.mktv-prose a {
	color: var(--mktv-green-deep);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.2em;
}

.mktv-product-features,
.mktv-product-facets,
.mktv-product-videos {
	background: #f7f9f8;
}

.mktv-feature-line {
	display: grid;
	margin: 0;
	padding: 0;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr));
	gap: 1px;
	background: var(--mktv-line);
	list-style: none;
}

.mktv-feature-line li {
	position: relative;
	min-height: 0;
	margin: 0;
	padding: 1.6rem 1.6rem 1.6rem 2.8rem;
	border: 0;
	background: var(--mktv-white);
	font-size: 0.94rem;
	line-height: 1.6;
}

.mktv-feature-line li::before {
	position: absolute;
	top: 2rem;
	left: 1.4rem;
	width: 0.42rem;
	height: 0.42rem;
	background: var(--mktv-green);
	content: "";
}

.mktv-feature-line strong,
.mktv-feature-line span {
	display: block;
}

.mktv-feature-line strong {
	margin-bottom: 0.45rem;
	color: var(--mktv-ink);
	font-family: var(--font-gotham);
	font-size: 1rem;
	letter-spacing: -0.015em;
}

.mktv-feature-line span {
	color: var(--mktv-muted);
}

.mktv-specification-groups {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 24rem), 1fr));
	gap: 1rem;
}

.mktv-specification-plate {
	min-width: 0;
	border: 1px solid var(--mktv-line);
}

.mktv-specification-plate h3 {
	padding: 1rem 1.25rem;
	border-bottom: 1px solid var(--mktv-line);
	background: var(--mktv-surface);
	font-family: var(--font-gotham);
	font-size: 0.76rem;
	letter-spacing: 0.075em;
	text-transform: uppercase;
}

.mktv-specification-plate dl {
	margin: 0;
}

.mktv-specification-plate dl > div {
	display: grid;
	padding: 0.8rem 1.25rem;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: baseline;
	gap: 1.5rem;
	border-bottom: 1px solid var(--mktv-line);
}

.mktv-specification-plate dl > div:last-child {
	border-bottom: 0;
}

.mktv-specification-plate dt {
	color: var(--mktv-muted);
	font-size: 0.83rem;
}

.mktv-specification-plate dd {
	display: flex;
	margin: 0;
	align-items: baseline;
	justify-content: flex-end;
	gap: 0.4rem;
	font-size: 0.9rem;
	font-weight: 700;
	text-align: right;
}

.mktv-specification-plate__unit {
	color: var(--mktv-muted);
	font-size: 0.72rem;
	font-weight: 500;
}

.mktv-facet-line {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
	gap: 1rem;
}

.mktv-facet-line > div {
	min-height: 0;
	padding: 1.35rem;
	border: 1px solid var(--mktv-line);
	background: var(--mktv-white);
}

.mktv-facet-line h2 {
	margin-bottom: 1rem;
	font-family: var(--font-gotham);
	font-size: 0.73rem;
	letter-spacing: 0.075em;
	text-transform: uppercase;
}

.mktv-facet-line > div > div {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.mktv-facet-link {
	display: inline-block;
	padding: 0.45rem 0.65rem;
	border: 1px solid #cad4ce;
	background: var(--mktv-white);
	color: var(--mktv-ink);
	font-size: 0.76rem;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
}

.mktv-facet-link:hover {
	border-color: var(--mktv-green-deep);
	color: var(--mktv-green-deep);
}

.mktv-variant-table-wrap {
	overflow-x: auto;
	border: 1px solid var(--mktv-line);
	border-radius: 2px;
}

.mktv-variant-table {
	width: 100%;
	min-width: 48rem;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	font-size: 0.88rem;
}

.mktv-variant-table th,
.mktv-variant-table td {
	padding: 1rem 1.25rem;
	border: 0;
	border-right: 1px solid var(--mktv-line);
	border-bottom: 1px solid var(--mktv-line);
	background: var(--mktv-white);
	text-align: left;
	vertical-align: top;
}

.mktv-variant-table th:last-child,
.mktv-variant-table td:last-child {
	border-right: 0;
}

.mktv-variant-table tbody tr:last-child td {
	border-bottom: 0;
}

.mktv-variant-table th {
	background: var(--mktv-surface);
	color: var(--mktv-muted);
	font-size: 0.69rem;
	letter-spacing: 0.075em;
	text-transform: uppercase;
}

.mktv-variant-table code {
	padding: 0;
	background: transparent;
	color: var(--mktv-green-deep);
	font-family: var(--font-gotham);
	font-size: 0.83rem;
	font-weight: 700;
}

.mktv-variant-attribute {
	display: inline;
	color: var(--mktv-muted);
}

.mktv-variant-attribute:not(:last-child)::after {
	margin-inline: 0.5rem;
	color: #b4beb8;
	content: "·";
}

.mktv-pagination--variants {
	margin-top: 1.5rem;
}

.mktv-video-line {
	display: grid;
	max-width: 58rem;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 26rem), 1fr));
	gap: 1.25rem;
}

.mktv-video-panel {
	margin: 0;
	min-width: 0;
}

.mktv-video-embed {
	width: 100%;
	background: var(--mktv-surface);
	aspect-ratio: 16 / 9;
	overflow: hidden;
}

.mktv-video-embed iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}

.mktv-product-cta {
	padding-block: clamp(3rem, 5vw, 4.5rem);
	border-top: 1px solid var(--mktv-line);
	border-bottom: 1px solid var(--mktv-line);
	background: #f7f9f8;
}

.mktv-product-cta__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(14rem, 21.5rem);
	align-items: center;
	gap: 2.5rem;
}

.mktv-product-cta .mktv-eyebrow {
	color: var(--mktv-green-deep);
}

.mktv-product-cta h2 {
	max-width: 24ch;
	color: var(--mktv-ink);
	font-size: clamp(2rem, 3.5vw, 3.5rem);
	line-height: 1.05;
}

.mktv-button--light {
	border-color: #64728d;
	background: var(--mktv-white);
	color: #64728d;
}

.mktv-button--light:hover {
	border-color: var(--mktv-green-deep);
	background: #f5f8f6;
	color: var(--mktv-green-deep);
}

.mktv-product-cta .mktv-button--light:focus-visible {
	outline-color: var(--mktv-green-deep);
	box-shadow: none;
}

.mktv-equipment-line--related {
	gap: 1.5rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border: 0;
}

.mktv-equipment-line--related .mktv-product-bay {
	border: 0;
}

.mktv-equipment-line--related .mktv-product-bay__media {
	border: 0;
	background: #f5f7f6;
}

.mktv-equipment-line--related .mktv-product-bay__body {
	min-height: 13rem;
	padding: 1.15rem 0 0;
}

.mktv-equipment-line--related .mktv-product-bay__labels {
	justify-content: flex-start;
	gap: 0.55rem;
}

.mktv-equipment-line--related .mktv-product-bay__brand::before {
	margin-right: 0.55rem;
	color: #a7b1ab;
	content: "\00b7";
}

@media (max-width: 1180px) {
	.mktv-equipment-line {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.mktv-product-hero__grid {
		gap: 3.5rem;
	}

}

@media (max-width: 920px) {
	.mktv-catalog-hero__grid,
	.mktv-product-hero__grid,
	.mktv-product-section__split {
		grid-template-columns: 1fr;
	}

	.mktv-catalog-hero__grid {
		gap: 2rem;
	}

	.mktv-catalog-hero__count {
		margin-left: clamp(1.4rem, 2vw, 2rem);
	}

	.mktv-catalog-hero__description {
		padding-bottom: 0;
	}

	.mktv-equipment-line {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.mktv-product-hero__grid {
		align-items: start;
	}

	.mktv-product-intro {
		max-width: 43rem;
	}

	.mktv-product-intro__actions {
		max-width: 43rem;
	}

	.mktv-product-section__split {
		gap: 2.5rem;
	}

	.mktv-section-heading--inline {
		grid-template-columns: 1fr;
		gap: 0.65rem;
	}

	.mktv-specification-groups,
	.mktv-video-line {
		grid-template-columns: 1fr;
	}

	.mktv-product-cta__grid {
		grid-template-columns: 1fr;
		align-items: start;
	}

	.mktv-equipment-line--related {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 680px) {
	:root {
		--mktv-gutter: 1.15rem;
	}

	.mktv-catalog-hero {
		background: var(--mktv-white);
		padding-block: 2rem 2.75rem;
	}

	.mktv-catalog-breadcrumbs {
		padding-top: 1.15rem;
	}

	.mktv-catalog-hero__heading {
		padding-left: 1.15rem;
	}

	.mktv-catalog-hero__count {
		margin-left: 1.15rem;
	}

	.mktv-catalog-hero h1,
	.mktv-product-intro h1 {
		font-size: clamp(2.45rem, 12vw, 3.75rem);
	}

	.mktv-equipment-line,
	.mktv-equipment-line--related,
	.mktv-feature-line,
	.mktv-facet-line {
		grid-template-columns: 1fr;
	}

	.mktv-equipment-line--catalog {
		row-gap: 3.25rem;
	}

	.mktv-product-bay__media {
		aspect-ratio: 1.15 / 1;
	}

	.mktv-product-bay__body {
		min-height: 15.5rem;
	}

	.mktv-breadcrumbs ol {
		overflow-x: auto;
		padding-bottom: 0.25rem;
	}

	.mktv-breadcrumbs li {
		flex: 0 0 auto;
	}

	.mktv-product-gallery__stage {
		aspect-ratio: 1 / 1;
	}

	.mktv-product-intro__actions {
		grid-template-columns: 1fr;
	}

	.mktv-button {
		width: 100%;
	}

	.mktv-feature-line li {
		min-height: 7rem;
	}

	.mktv-specification-plate dl > div {
		padding-inline: 1rem;
		grid-template-columns: minmax(0, 1fr) minmax(5rem, auto);
		gap: 1rem;
	}

	.mktv-facet-line > div {
		min-height: auto;
	}

	.mktv-variant-table {
		min-width: 0;
	}

	.mktv-variant-table thead {
		position: absolute;
		overflow: hidden;
		width: 1px;
		height: 1px;
		clip: rect(0 0 0 0);
		clip-path: inset(50%);
		white-space: nowrap;
	}

	.mktv-variant-table,
	.mktv-variant-table tbody,
	.mktv-variant-table tr,
	.mktv-variant-table td {
		display: block;
		width: 100%;
	}

	.mktv-variant-table tr {
		border-bottom: 1px solid var(--mktv-line);
	}

	.mktv-variant-table tbody tr:last-child {
		border-bottom: 0;
	}

	.mktv-variant-table td {
		display: grid;
		padding: 0.8rem 1rem;
		grid-template-columns: 6.5rem minmax(0, 1fr);
		gap: 1rem;
		border-right: 0;
	}

	.mktv-variant-table td::before {
		color: var(--mktv-muted);
		content: attr(data-label);
		font-size: 0.65rem;
		font-weight: 700;
		letter-spacing: 0.07em;
		text-transform: uppercase;
	}

	.mktv-product-cta__grid {
		gap: 2rem;
	}

	.mktv-product-cta h2 {
		font-size: clamp(1.9rem, 9vw, 2.75rem);
	}

	.mktv-pagination .page-numbers {
		flex-wrap: wrap;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mktv-product-bay__image,
	.mktv-product-bay__action,
	.mktv-text-action,
	.mktv-button {
		transition: none;
	}

	.mktv-product-bay:hover .mktv-product-bay__image {
		transform: none;
	}
}

@media print {
	.mktv-breadcrumbs,
	.mktv-product-intro__actions,
	.mktv-product-videos,
	.mktv-product-cta,
	.mktv-related-products,
	.mktv-pagination {
		display: none !important;
	}

	.mktv-product-hero,
	.mktv-product-section {
		padding-block: 2rem;
	}

	.mktv-product-hero__grid,
	.mktv-product-section__split {
		grid-template-columns: 1fr 1fr;
		gap: 2rem;
	}
}

/* Product single v2 ------------------------------------------------------ */

html {
	scroll-behavior: smooth;
}

.mktv-product-masthead {
	background: linear-gradient(115deg, #319a5e 0%, #265f36 100%);
	color: var(--mktv-white);
}

.mktv-product-masthead .mktv-shell,
.mktv-product-overview .mktv-shell,
.mktv-product-technical .mktv-shell,
.mktv-product-contact .mktv-shell,
.mktv-related-products .mktv-shell {
	width: min(100%, 1400px);
}

.mktv-product-masthead .mktv-breadcrumbs {
	padding-block: 1.35rem 0;
	border-bottom: 0;
	color: rgba(255, 255, 255, 0.78);
}

.mktv-product-masthead .mktv-breadcrumbs li:not(:last-child)::after {
	color: rgba(255, 255, 255, 0.48);
}

.mktv-product-masthead .mktv-breadcrumbs a,
.mktv-product-masthead .mktv-breadcrumbs [aria-current="page"] {
	color: inherit;
}

.mktv-product-masthead .mktv-breadcrumbs a:hover {
	color: var(--mktv-white);
}

.mktv-product-masthead .mktv-breadcrumbs a:focus-visible {
	outline-color: var(--mktv-white);
}

.mktv-product-masthead__identity {
	max-width: 58rem;
	padding-block: clamp(0.9rem, 1.8vw, 1.4rem) clamp(3rem, 6vw, 5rem);
}

.mktv-product-masthead__category {
	display: flex;
	margin-bottom: 1rem;
	flex-wrap: wrap;
	gap: 0.55rem 1rem;
}

.mktv-product-masthead__category .mktv-taxonomy-link {
	color: rgba(255, 255, 255, 0.88);
}

.mktv-product-masthead h1 {
	max-width: 16ch;
	color: var(--mktv-white);
	font-size: clamp(2.65rem, 6vw, 5.75rem);
	letter-spacing: -0.055em;
	line-height: 0.96;
	word-break: break-word;
}

.mktv-product-masthead__model {
	margin-block: 1.15rem 0;
	color: rgba(255, 255, 255, 0.84);
	font-size: clamp(0.95rem, 1.25vw, 1.1rem);
	font-weight: 500;
	letter-spacing: 0.035em;
}

.mktv-product-overview {
	padding-block: clamp(3.5rem, 7vw, 7rem);
}

.mktv-product-overview__lead {
	max-width: 68rem;
	margin-bottom: clamp(2.75rem, 5vw, 5rem);
	color: #34413a;
	font-size: clamp(1.12rem, 1.75vw, 1.45rem);
	line-height: 1.68;
}

.mktv-product-overview__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(20rem, 0.92fr);
	align-items: start;
	gap: clamp(2.75rem, 7vw, 7rem);
}

.mktv-product-overview .mktv-product-gallery__stage {
	border: 0;
	background:
		radial-gradient(circle at 50% 74%, rgba(49, 154, 94, 0.08), transparent 42%),
		#f4f7f5;
	aspect-ratio: 4 / 3;
}

.mktv-product-overview .mktv-product-gallery__stage > img.mktv-product-gallery__main-image {
	padding: clamp(1.5rem, 4vw, 3.5rem) !important;
	object-fit: contain !important;
	object-position: 50% 50% !important;
}

.mktv-product-overview .mktv-product-gallery__thumbs {
	margin-top: 0.75rem;
	gap: 0.5rem;
	border: 0;
}

.mktv-product-overview .mktv-product-gallery__thumb {
	border: 1px solid var(--mktv-line);
	background: var(--mktv-white);
}

.mktv-product-overview__details {
	min-width: 0;
}

.mktv-product-overview__taxonomy {
	display: flex;
	margin-bottom: 2rem;
	flex-wrap: wrap;
	gap: 0.55rem 1rem;
}

.mktv-highlight-list {
	display: grid;
	margin: 0;
	padding: 0;
	gap: 0;
	list-style: none;
}

.mktv-highlight-list li {
	position: relative;
	margin: 0;
	padding: 1rem 0 1rem 1.25rem;
	border-top: 1px solid var(--mktv-line);
	color: var(--mktv-muted);
	font-size: 0.94rem;
	line-height: 1.55;
}

.mktv-highlight-list li:last-child {
	border-bottom: 1px solid var(--mktv-line);
}

.mktv-highlight-list li::before {
	position: absolute;
	top: 1.55rem;
	left: 0;
	width: 0.38rem;
	height: 0.38rem;
	background: #319a5e;
	content: "";
}

.mktv-highlight-list strong,
.mktv-highlight-list span {
	display: block;
}

.mktv-highlight-list strong {
	margin-bottom: 0.25rem;
	color: var(--mktv-ink);
	font-size: 1rem;
}

.mktv-product-meta {
	margin-block: 2rem 0;
}

.mktv-product-meta > div {
	display: grid;
	padding-block: 0.7rem;
	grid-template-columns: 6.5rem minmax(0, 1fr);
	gap: 1rem;
	border-bottom: 1px solid var(--mktv-line);
}

.mktv-product-meta dt,
.mktv-product-meta dd {
	margin: 0;
}

.mktv-product-meta dt,
.mktv-product-areas h3 {
	color: var(--mktv-muted);
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.075em;
	text-transform: uppercase;
}

.mktv-product-meta dd {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.mktv-product-meta .mktv-taxonomy-link,
.mktv-product-meta .mktv-facet-link {
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--mktv-ink);
	font-size: 0.82rem;
	letter-spacing: 0;
	text-transform: none;
}

.mktv-product-meta .mktv-taxonomy-link:not(:last-child)::after,
.mktv-product-meta .mktv-facet-link:not(:last-child)::after {
	margin-left: 0.4rem;
	color: #aab4ae;
	content: "·";
}

.mktv-product-areas {
	margin-top: 2rem;
}

.mktv-product-areas h3 {
	margin-bottom: 0.8rem;
	letter-spacing: 0.075em;
}

.mktv-area-labels {
	display: flex;
	margin: 0;
	padding: 0;
	flex-wrap: wrap;
	gap: 0.55rem;
	list-style: none;
}

.mktv-area-labels li {
	margin: 0;
}

.mktv-area-label {
	display: inline-flex;
	min-height: 2.25rem;
	padding: 0.5rem 0.75rem;
	align-items: center;
	gap: 0.55rem;
	border: 1px solid #cbd5cf;
	background: var(--mktv-white);
	color: var(--mktv-ink);
	font-size: 0.76rem;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
}

.mktv-area-label:hover {
	border-color: #319a5e;
	color: #265f36;
}

.mktv-area-label__icon {
	display: block;
	width: 1.65rem;
	height: 1.65rem;
	object-fit: contain;
}

.mktv-product-overview__contact {
	margin-top: 2.25rem;
}

.mktv-product-technical {
	padding-block: clamp(2rem, 5vw, 4.5rem);
	border-top: 1px solid var(--mktv-line);
}

.mktv-product-accordion {
	display: grid;
	gap: clamp(0.625rem, 1vw, 0.875rem);
}

.mktv-accordion-item {
	border: 1px solid #dce4df;
	background: var(--mktv-white);
}

.mktv-accordion-item summary {
	display: flex;
	min-height: 4.65rem;
	padding: 1.15rem 1.25rem;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	background: #f4f6f5;
	color: #267847;
	cursor: pointer;
	font-size: clamp(0.85rem, 1.2vw, 1rem);
	font-weight: 500;
	letter-spacing: 0.045em;
	list-style: none;
	text-transform: uppercase;
}

.mktv-accordion-item summary::-webkit-details-marker {
	display: none;
}

.mktv-accordion-item summary:hover {
	background: #eef3f0;
}

.mktv-accordion-item summary:focus-visible {
	outline: 3px solid #319a5e;
	outline-offset: -3px;
}

.mktv-accordion-item__state {
	display: grid;
	width: 1.75rem;
	height: 1.75rem;
	flex: 0 0 auto;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1;
	place-items: center;
}

.mktv-accordion-item__state .is-open,
.mktv-accordion-item[open] .mktv-accordion-item__state .is-closed {
	display: none;
}

.mktv-accordion-item[open] .mktv-accordion-item__state .is-open {
	display: block;
}

.mktv-accordion-item__content {
	padding: clamp(1.5rem, 4vw, 3rem) clamp(0rem, 2vw, 1.25rem);
}

.mktv-accordion-item__content.mktv-prose {
	max-width: none;
}

.mktv-accordion-item .mktv-specification-groups,
.mktv-accordion-item .mktv-video-line {
	max-width: none;
}

.mktv-download-panel__brand {
	max-width: 58rem;
	margin-bottom: 2rem;
}

.mktv-download-panel__brand > p {
	margin-bottom: 0.8rem;
	color: var(--mktv-muted);
	font-size: 0.82rem;
	letter-spacing: 0.025em;
}

.mktv-download-file {
	display: flex;
	max-width: 58rem;
	padding-top: 1.25rem;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	border-top: 1px solid var(--mktv-line);
}

.mktv-download-file > div {
	display: grid;
	gap: 0.2rem;
}

.mktv-download-file strong {
	color: var(--mktv-ink);
	font-size: 0.95rem;
}

.mktv-download-file span {
	color: var(--mktv-muted);
	font-size: 0.75rem;
}

.mktv-download-file .mktv-button {
	width: min(100%, 16rem);
	flex: 0 0 auto;
}

.mktv-product-contact {
	padding-block: clamp(3.75rem, 7vw, 7rem);
	border-top: 1px solid var(--mktv-line);
	background: #f7f9f8;
	scroll-margin-top: 2rem;
}

.mktv-product-contact__grid {
	display: grid;
	grid-template-columns: minmax(15rem, 0.65fr) minmax(0, 1.35fr);
	align-items: start;
	gap: clamp(2.75rem, 7vw, 7rem);
}

.mktv-product-contact__heading h2 {
	font-size: clamp(2.4rem, 4vw, 4rem);
}

.mktv-product-contact__heading > p:last-child {
	max-width: 28rem;
	margin-top: 1.25rem;
	color: var(--mktv-muted);
	line-height: 1.65;
}

.mktv-product-contact__admin-notice {
	padding: 1rem 1.15rem;
	border-left: 3px solid #319a5e;
	background: var(--mktv-white);
	color: var(--mktv-muted);
}

.mktv-related-products {
	padding-block: clamp(3.75rem, 7vw, 7rem);
	border-top: 1px solid var(--mktv-line);
}

.mktv-related-products > .mktv-shell > h2 {
	margin-bottom: clamp(2rem, 4vw, 3.5rem);
	font-size: clamp(2rem, 3.5vw, 3.5rem);
}

.mktv-equipment-line--related {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 920px) {
	.mktv-product-overview__grid,
	.mktv-product-contact__grid {
		grid-template-columns: 1fr;
	}

	.mktv-product-overview__details {
		max-width: 46rem;
	}

	.mktv-product-contact__heading {
		max-width: 38rem;
	}

	.mktv-equipment-line--related {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 680px) {
	.mktv-product-masthead__identity {
		padding-block: 2.5rem 3.25rem;
	}

	.mktv-product-masthead h1 {
		font-size: clamp(2.45rem, 13vw, 3.8rem);
	}

	.mktv-product-overview .mktv-product-gallery__stage {
		aspect-ratio: 1 / 1;
	}

	.mktv-product-meta > div {
		grid-template-columns: 1fr;
		gap: 0.35rem;
	}

	.mktv-accordion-item summary {
		min-height: 4.2rem;
		padding-inline: 1rem;
	}

	.mktv-accordion-item__content {
		padding-block: 1.5rem 2rem;
	}

	.mktv-download-file {
		align-items: stretch;
		flex-direction: column;
	}

	.mktv-download-file .mktv-button,
	.mktv-product-overview__contact {
		width: 100% !important;
	}

	.mktv-equipment-line--related {
		grid-template-columns: 1fr;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
}

@media print {
	.mktv-product-contact,
	.mktv-related-products,
	.mktv-product-overview__contact,
	.mktv-product-gallery__thumbs {
		display: none !important;
	}

	.mktv-product-masthead {
		background: #fff !important;
		color: #000;
	}

	.mktv-product-masthead h1,
	.mktv-product-masthead__model,
	.mktv-product-masthead .mktv-breadcrumbs,
	.mktv-product-masthead__category .mktv-taxonomy-link {
		color: #000;
	}

	.mktv-accordion-item:not([open]) > .mktv-accordion-item__content {
		display: block;
	}
}
