/**
 * Specs Flip Card — optimized replica of Maddox .mv-specs-wrap hover flip.
 * Target: product customization cards (Meet Any Spec carousel items).
 * Also styles Elementor Nested Carousel wrapper (.mdx-prod-custom-carousel)
 * to match target Swiper (overflow visible, ~508px slides, 48px gap).
 */

.jdw-ee-specs-flip {
	--jdw-sfc-orange: #f65e1e;
	--jdw-sfc-black: #161616;
	--jdw-sfc-white: #ffffff;
	--jdw-sfc-pad: 2.175rem;
	--jdw-sfc-btn: 2.625rem;
	--jdw-sfc-card-w: 31.75rem; /* target .mv-specs-wrap width */
	box-sizing: border-box;
	width: 100%;
	max-width: var(--jdw-sfc-card-w);
}

.jdw-ee-specs-flip *,
.jdw-ee-specs-flip *::before,
.jdw-ee-specs-flip *::after {
	box-sizing: border-box;
}

/* Card shell — target .mv-specs-wrap */
.jdw-ee-specs-flip__card {
	aspect-ratio: 508 / 384;
	width: 100%;
	max-width: 100%;
	display: flex;
	justify-content: space-between;
	position: relative;
	overflow: hidden;
	text-decoration: none;
	color: inherit;
	cursor: pointer;
	outline: none;
}

.jdw-ee-specs-flip__card:focus-visible {
	outline: 2px solid var(--jdw-sfc-orange);
	outline-offset: 2px;
}

/* Background image — target .mv-specs-image */
.jdw-ee-specs-flip__image {
	z-index: 1;
	object-fit: cover;
	width: 100%;
	height: 100%;
	position: absolute;
	inset: 0;
	margin: 0;
	padding: 0;
	border: 0;
	display: block;
	pointer-events: none;
}

.jdw-ee-specs-flip__image-placeholder {
	z-index: 1;
	position: absolute;
	inset: 0;
	background: #2a2a2a;
}

/* Default title bar — target .mv-specs-content-wrap */
.jdw-ee-specs-flip__content {
	z-index: 2;
	justify-content: space-between;
	align-items: flex-end;
	width: 100%;
	padding: var(--jdw-sfc-pad);
	display: flex;
	position: relative;
	opacity: 1;
	transition: opacity 0.3s ease;
	pointer-events: none;
}

.jdw-ee-specs-flip__title {
	margin: 0;
	padding: 0;
	color: var(--jdw-sfc-white);
	font-family: "Suisse Intl", Suisseintl, Arial, sans-serif;
	font-size: 1.25rem;
	font-weight: 400;
	line-height: 1.3;
}

/* Hover panel — target .mv-specs-hover-wrap */
.jdw-ee-specs-flip__hover {
	z-index: 4;
	opacity: 0;
	pointer-events: none;
	width: 100%;
	height: 100%;
	color: var(--jdw-sfc-black);
	flex-flow: column;
	justify-content: flex-start;
	align-items: flex-start;
	padding: var(--jdw-sfc-pad);
	position: absolute;
	inset: 0;
	display: flex;
	transition: opacity 0.3s ease;
}

.jdw-ee-specs-flip__hover-title {
	margin: 0 0 0.5rem;
	padding: 0;
	color: var(--jdw-sfc-black);
	font-family: "Suisse Intl", Suisseintl, Arial, sans-serif;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.25;
	opacity: 0;
	transition: opacity 0.3s ease;
}

.jdw-ee-specs-flip__line {
	display: block;
	width: 100%;
	max-width: 4rem;
	height: auto;
	margin: 0 0 0.75rem -0.7rem;
	border: 0;
}

.jdw-ee-specs-flip__line--css {
	width: 3.5rem;
	height: 3px;
	margin: 0.35rem 0 0.85rem;
	background: var(--jdw-sfc-black);
	max-width: none;
}

.jdw-ee-specs-flip__body {
	margin: 0;
	padding: 0;
	color: var(--jdw-sfc-black);
	font-family: "Suisse Intl", Suisseintl, Arial, sans-serif;
	font-size: 1.25rem;
	font-weight: 400;
	line-height: 1.3;
}

/* Orange veil — target .mv-specs-orange */
.jdw-ee-specs-flip__orange {
	z-index: 3;
	background-color: var(--jdw-sfc-orange);
	opacity: 0;
	position: absolute;
	inset: 0;
	pointer-events: none;
	transition: opacity 0.3s ease;
}

/* Plus control — target .mv-specs-button-wrap (not a native button) */
.jdw-ee-specs-flip__plus {
	z-index: 5;
	background-color: var(--jdw-sfc-orange);
	justify-content: center;
	align-items: center;
	width: var(--jdw-sfc-btn);
	height: var(--jdw-sfc-btn);
	margin: 0;
	padding: 0;
	border: 0;
	display: flex;
	position: absolute;
	inset: auto 1.875rem 1.875rem auto;
	cursor: pointer;
	transition: background-color 0.35s ease;
}

.jdw-ee-specs-flip__plus-line {
	background-color: var(--jdw-sfc-white);
	width: 1.3rem;
	height: 0.4rem;
	position: relative;
	transition: height 0.3s ease, width 0.3s ease;
}

.jdw-ee-specs-flip__plus-line--v {
	width: 0.4rem;
	height: 1.3rem;
	position: absolute;
	transition: height 0.3s ease;
}

/* Hover / open (desktop + touch) */
.jdw-ee-specs-flip__card:hover .jdw-ee-specs-flip__hover,
.jdw-ee-specs-flip__card.is-open .jdw-ee-specs-flip__hover,
.jdw-ee-specs-flip__card:focus-within .jdw-ee-specs-flip__hover {
	opacity: 1;
	pointer-events: auto;
}

.jdw-ee-specs-flip__card:hover .jdw-ee-specs-flip__orange,
.jdw-ee-specs-flip__card.is-open .jdw-ee-specs-flip__orange,
.jdw-ee-specs-flip__card:focus-within .jdw-ee-specs-flip__orange {
	opacity: 1;
}

.jdw-ee-specs-flip__card:hover .jdw-ee-specs-flip__hover-title,
.jdw-ee-specs-flip__card.is-open .jdw-ee-specs-flip__hover-title,
.jdw-ee-specs-flip__card:focus-within .jdw-ee-specs-flip__hover-title {
	opacity: 1;
}

.jdw-ee-specs-flip__card:hover .jdw-ee-specs-flip__content,
.jdw-ee-specs-flip__card.is-open .jdw-ee-specs-flip__content,
.jdw-ee-specs-flip__card:focus-within .jdw-ee-specs-flip__content {
	opacity: 0;
}

.jdw-ee-specs-flip__card:hover .jdw-ee-specs-flip__plus,
.jdw-ee-specs-flip__card.is-open .jdw-ee-specs-flip__plus,
.jdw-ee-specs-flip__card:focus-within .jdw-ee-specs-flip__plus {
	background-color: var(--jdw-sfc-black);
}

.jdw-ee-specs-flip__card:hover .jdw-ee-specs-flip__plus-line--v,
.jdw-ee-specs-flip__card.is-open .jdw-ee-specs-flip__plus-line--v,
.jdw-ee-specs-flip__card:focus-within .jdw-ee-specs-flip__plus-line--v {
	height: 0;
}

/* Touch devices: rely on .is-open (JS) more than sticky :hover */
@media (hover: none) {
	.jdw-ee-specs-flip__card:hover .jdw-ee-specs-flip__hover {
		opacity: 0;
		pointer-events: none;
	}

	.jdw-ee-specs-flip__card:hover .jdw-ee-specs-flip__orange {
		opacity: 0;
	}

	.jdw-ee-specs-flip__card:hover .jdw-ee-specs-flip__content {
		opacity: 1;
	}

	.jdw-ee-specs-flip__card:hover .jdw-ee-specs-flip__plus {
		background-color: var(--jdw-sfc-orange);
	}

	.jdw-ee-specs-flip__card:hover .jdw-ee-specs-flip__plus-line--v {
		height: 1.3rem;
	}

	.jdw-ee-specs-flip__card.is-open .jdw-ee-specs-flip__hover {
		opacity: 1;
		pointer-events: auto;
	}

	.jdw-ee-specs-flip__card.is-open .jdw-ee-specs-flip__orange {
		opacity: 1;
	}

	.jdw-ee-specs-flip__card.is-open .jdw-ee-specs-flip__hover-title {
		opacity: 1;
	}

	.jdw-ee-specs-flip__card.is-open .jdw-ee-specs-flip__content {
		opacity: 0;
	}

	.jdw-ee-specs-flip__card.is-open .jdw-ee-specs-flip__plus {
		background-color: var(--jdw-sfc-black);
	}

	.jdw-ee-specs-flip__card.is-open .jdw-ee-specs-flip__plus-line--v {
		height: 0;
	}
}

@media screen and (max-width: 767px) {
	.jdw-ee-specs-flip__card {
		aspect-ratio: 4 / 3;
	}

	.jdw-ee-specs-flip__title {
		font-size: 1.125rem;
	}

	.jdw-ee-specs-flip__hover-title {
		font-size: 1.25rem;
	}

	.jdw-ee-specs-flip__body {
		font-size: 1rem;
	}

	.jdw-ee-specs-flip {
		--jdw-sfc-pad: 1.25rem;
		--jdw-sfc-card-w: 100%;
	}
}

/* -------------------------------------------------------------------------
 * Nested Carousel host inside product customizations section.
 * Scope: .mdx-prod-customizations (section CSS class) — stable anchor, not
 * Elementor auto ids. Target: overflow visible, card ~31.75rem, gap 48.
 * Swiper writes inline width on slides; override with !important.
 * ------------------------------------------------------------------------- */

/* Peek slides may extend past the viewport; clip at the section so the page
   never gains a horizontal scrollbar (target keeps scrollWidth at 100vw). */
.mdx-prod-customizations { overflow-x: clip; }

/*
 * Target hairline grid (all rgb(199,198,196)):
 * - full-width horizontal lines at the stock/custom row top+bottom and at
 *   the reviews row top (row bottom = section border-bottom, set in JSON);
 * - vertical lines at the 1206px content edges running continuously from the
 *   stock row top through the reviews heading strip down to the reviews row
 *   bottom. Stock row verticals come from its own L/R border (JSON); the
 *   reviews section strip is drawn here with full-height pseudo lines.
 */
.mdx-prod-stock-custom { position: relative; }
.mdx-prod-stock-custom::before,
.mdx-prod-stock-custom::after,
.mdx-prod-reviews-row::before {
	content: "";
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	width: 100vw;
	height: 1px;
	background: #c7c6c4;
	pointer-events: none;
	z-index: 3;
}
.mdx-prod-stock-custom::before { top: -1px; }
.mdx-prod-stock-custom::after { bottom: -1px; }
.mdx-prod-reviews-row::before { top: -1px; }

/* Vertical content-edge lines through the reviews section (heading + row).
   Only meaningful while the boxed content is exactly 1206px wide. */
@media screen and (min-width: 1287px) {
	.mdx-prod-reviews { position: relative; }
	.mdx-prod-reviews::before,
	.mdx-prod-reviews::after {
		content: "";
		position: absolute;
		top: 0;
		bottom: 0;
		width: 1px;
		background: #c7c6c4;
		pointer-events: none;
		z-index: 3;
	}
	.mdx-prod-reviews::before { left: calc(50% - 603px); }
	.mdx-prod-reviews::after { left: calc(50% + 602px); }
}

/* Target goes full-bleed with the photo rows below 1025px: pull the stock
   cards and the reviews row out of their sections' side padding. */
@media screen and (max-width: 1024px) {
	.mdx-prod-stock-custom { margin-left: -32px; margin-right: -32px; }
	.mdx-prod-reviews-row { margin-left: -40px; margin-right: -40px; }
}
@media screen and (max-width: 767px) {
	.mdx-prod-stock-custom { margin-left: -20px; margin-right: -20px; }
}

/* Shared carousel hosts: customizations + product reviews */
.mdx-prod-customizations .elementor-widget-n-carousel,
.mdx-prod-customizations .elementor-widget-n-carousel > .elementor-widget-container,
.mdx-prod-reviews .elementor-widget-n-carousel,
.mdx-prod-reviews .elementor-widget-n-carousel > .elementor-widget-container {
	overflow: visible;
}

.mdx-prod-customizations .elementor-widget-n-carousel .e-n-carousel,
.mdx-prod-customizations .elementor-widget-n-carousel .swiper,
.mdx-prod-reviews .elementor-widget-n-carousel .e-n-carousel,
.mdx-prod-reviews .elementor-widget-n-carousel .swiper {
	overflow: visible;
}

.mdx-prod-customizations .elementor-widget-n-carousel .swiper-wrapper,
.mdx-prod-reviews .elementor-widget-n-carousel .swiper-wrapper {
	align-items: stretch;
}

.mdx-prod-customizations .elementor-widget-n-carousel .swiper-slide,
.mdx-prod-reviews .elementor-widget-n-carousel .swiper-slide {
	height: auto;
	box-sizing: border-box;
}

/* Desktop: force target card width (508px / 31.75rem) so peeks show */
@media screen and (min-width: 1024px) {
	.mdx-prod-customizations .elementor-widget-n-carousel .swiper-slide {
		width: 31.75rem !important;
		max-width: 31.75rem !important;
		flex-shrink: 0;
	}
}

.mdx-prod-customizations .elementor-widget-n-carousel .swiper-slide > .e-con,
.mdx-prod-reviews .elementor-widget-n-carousel .swiper-slide > .e-con {
	height: 100%;
	width: 100%;
}

.mdx-prod-customizations .elementor-widget-n-carousel .jdw-ee-specs-flip {
	width: 100%;
	max-width: none;
}

.mdx-prod-customizations .elementor-widget-n-carousel .jdw-ee-specs-flip__card {
	width: 100%;
}

/*
 * Navigation arrows — match target .swiper-navigation under .swiper.is-mv-specs:
 * centered row BELOW slides, gap 2.625rem, padding-top 2rem, orange chevrons
 * (not side overlays). Elementor still outputs absolute prev/next; reflow them.
 */
.mdx-prod-customizations .elementor-widget-n-carousel {
	/* Host becomes a column so arrows can sit under the swiper track. */
	display: flex;
	flex-direction: column;
	align-items: stretch;
	position: relative;
}

.mdx-prod-customizations .elementor-widget-n-carousel > .elementor-widget-container {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	width: 100%;
	position: relative;
}

/* Swiper track full width; do not shrink for side arrows */
.mdx-prod-customizations .elementor-widget-n-carousel.elementor-arrows-position-outside .swiper,
.mdx-prod-customizations .elementor-widget-n-carousel.elementor-arrows-position-inside .swiper,
.mdx-prod-customizations .elementor-widget-n-carousel .e-n-carousel.swiper {
	width: 100% !important;
	position: relative;
}

/*
 * Bottom nav row: place both arrow buttons in normal flow under the slider.
 * Target: .swiper-navigation { display:flex; justify-content:center; gap:2.625rem; padding-top:2rem }
 */
.mdx-prod-customizations .elementor-widget-n-carousel .elementor-swiper-button {
	position: static !important;
	inset: auto !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;
	transform: none !important;
	translate: none !important;
	z-index: 6;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	/* Target .swiper-btn-*: 2.0625rem */
	width: 2.0625rem;
	height: 2.0625rem;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background-color: transparent !important;
	box-shadow: none !important;
	/* Target color: var(--orange) #f65e1e */
	color: #f65e1e !important;
	opacity: 1 !important;
	pointer-events: auto !important;
	cursor: pointer;
	font-size: 2.0625rem;
	line-height: 1;
	transition: color 0.25s ease, opacity 0.3s ease;
	order: 2; /* after swiper in flex column when sibling of .swiper */
}

/*
 * Replace Elementor eicon chevron with target-site .icon-chevron path
 * (viewBox 0 0 33 33, same SVG used for prev + next; next is rotated 180deg
 * on target via .swiper-btn-next { transform: rotate(180deg) }).
 * Media library SVG upload is blocked on some hosts; inline mask is reliable.
 */
.mdx-prod-customizations .elementor-widget-n-carousel .elementor-swiper-button svg {
	/* hide default eicon glyph */
	display: none !important;
}

.mdx-prod-customizations .elementor-widget-n-carousel .elementor-swiper-button::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-color: currentColor;
	/* Target path: M16.1461 16.5002L25.6043… (left-pointing chevron) */
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 33 33'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M16.1461 16.5002L25.6043 25.9584L19.7707 31.792L4.47888 16.5002L19.7707 1.20837L25.6043 7.042L16.1461 16.5002Z' fill='black'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 33 33'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M16.1461 16.5002L25.6043 25.9584L19.7707 31.792L4.47888 16.5002L19.7707 1.20837L25.6043 7.042L16.1461 16.5002Z' fill='black'/%3E%3C/svg%3E");
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
}

/* Target: next uses same SVG rotated 180deg */
.mdx-prod-customizations .elementor-widget-n-carousel .elementor-swiper-button-next::before {
	transform: rotate(180deg);
}

.mdx-prod-customizations .elementor-widget-n-carousel .elementor-swiper-button:hover {
	background-color: transparent !important;
	color: #b84c16 !important; /* target --dark-orange */
}

/* Disabled / lock: still visible, dimmed like target swiper-button-disabled */
.mdx-prod-customizations .elementor-widget-n-carousel .elementor-swiper-button.swiper-button-lock,
.mdx-prod-customizations .elementor-widget-n-carousel .elementor-swiper-button.swiper-button-disabled {
	display: inline-flex !important;
	opacity: 0.35 !important;
	cursor: default;
	pointer-events: none !important;
}

/*
 * Wrap prev+next into a centered bottom row.
 * Elementor outputs: .swiper ~ .prev ~ .next as siblings.
 * Use a flex row on the container and push both buttons into a centered group
 * via width 100% spacer technique: both buttons share a full-width flex line.
 */
.mdx-prod-customizations .elementor-widget-n-carousel > .elementor-widget-container,
.mdx-prod-customizations .elementor-widget-n-carousel:not(:has(> .elementor-widget-container)) {
	/* When no inner container, widget itself is the flex host (optimized markup). */
}

/* Buttons share one row under the swiper: full-width flex with center + gap */
.mdx-prod-customizations .elementor-widget-n-carousel .elementor-swiper-button-prev,
.mdx-prod-customizations .elementor-widget-n-carousel .elementor-swiper-button-next {
	/* Participate in a synthetic nav row */
	margin-top: 2rem; /* target padding-top on .swiper-navigation */
}

/* Create bottom nav row with CSS: both buttons on same flex line centered */
.mdx-prod-customizations .elementor-widget-n-carousel > .elementor-widget-container,
.mdx-prod-customizations .elementor-element.elementor-widget-n-carousel:not(:has(> .elementor-widget-container)) {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: center;
	align-items: flex-start;
	column-gap: 2.625rem; /* target grid-column-gap on .swiper-navigation */
	row-gap: 0;
}

/* Swiper takes full first row */
.mdx-prod-customizations .elementor-widget-n-carousel .e-n-carousel,
.mdx-prod-customizations .elementor-widget-n-carousel .swiper {
	flex: 0 0 100%;
	width: 100% !important;
	max-width: 100%;
	order: 1;
}

.mdx-prod-customizations .elementor-widget-n-carousel .elementor-swiper-button-prev {
	order: 2;
	margin-top: 2rem;
}

.mdx-prod-customizations .elementor-widget-n-carousel .elementor-swiper-button-next {
	order: 3;
	margin-top: 2rem;
	/* Target next chevron is rotated 180deg relative to prev path orientation.
	   Elementor already uses distinct prev/next icons — do not double-rotate. */
}

/* Pagination (if enabled) stays after arrows */
.mdx-prod-customizations .elementor-widget-n-carousel .swiper-pagination {
	order: 4;
	position: static !important;
	margin-top: 1rem;
	width: 100%;
}


/*
 * Reviews carousel — target layout (.mv-reviews-wrapper):
 * static stars above a ONE-slide text swiper, chevron arrows flanking the
 * text column at vertical center, static cover photo in the right column.
 * Overrides the shared visible-overflow host rules above (later rules win).
 */
.mdx-prod-reviews-row { position: relative; }
.mdx-prod-reviews-left { position: relative; }

/* Static 5-star strip (target .mv-reviews-star SVG, 175x35 → 230x46) */
.mdx-rev-stars { width: 230px; min-height: 46px; flex: none; }
.mdx-rev-stars::before {
	content: "";
	display: block;
	width: 100%;
	height: 46px;
	background-color: #f65e1e;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 175 35'%3E%3Cpath d='M17.5 0L21.429 12.0922L34.1435 12.0922L23.8572 19.5656L27.7862 31.6578L17.5 24.1844L7.21376 31.6578L11.1428 19.5656L0.85651 12.0922L13.571 12.0922L17.5 0Z' fill='black'/%3E%3Cpath d='M52.65 0L56.579 12.0922L69.2935 12.0922L59.0073 19.5656L62.9363 31.6578L52.65 24.1844L42.3638 31.6578L46.2928 19.5656L36.0065 12.0922L48.721 12.0922L52.65 0Z' fill='black'/%3E%3Cpath d='M87.8 0L91.729 12.0922L104.443 12.0922L94.1572 19.5656L98.0862 31.6578L87.8 24.1844L77.5137 31.6578L81.4427 19.5656L71.1565 12.0922L83.871 12.0922L87.8 0Z' fill='black'/%3E%3Cpath d='M122.95 0L126.879 12.0922L139.594 12.0922L129.307 19.5656L133.236 31.6578L122.95 24.1844L112.664 31.6578L116.593 19.5656L106.307 12.0922L119.021 12.0922L122.95 0Z' fill='black'/%3E%3Cpath d='M158.1 0L162.029 12.0922L174.743 12.0922L164.457 19.5656L168.386 31.6578L158.1 24.1844L147.814 31.6578L151.743 19.5656L141.456 12.0922L154.171 12.0922L158.1 0Z' fill='black'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 175 35'%3E%3Cpath d='M17.5 0L21.429 12.0922L34.1435 12.0922L23.8572 19.5656L27.7862 31.6578L17.5 24.1844L7.21376 31.6578L11.1428 19.5656L0.85651 12.0922L13.571 12.0922L17.5 0Z' fill='black'/%3E%3Cpath d='M52.65 0L56.579 12.0922L69.2935 12.0922L59.0073 19.5656L62.9363 31.6578L52.65 24.1844L42.3638 31.6578L46.2928 19.5656L36.0065 12.0922L48.721 12.0922L52.65 0Z' fill='black'/%3E%3Cpath d='M87.8 0L91.729 12.0922L104.443 12.0922L94.1572 19.5656L98.0862 31.6578L87.8 24.1844L77.5137 31.6578L81.4427 19.5656L71.1565 12.0922L83.871 12.0922L87.8 0Z' fill='black'/%3E%3Cpath d='M122.95 0L126.879 12.0922L139.594 12.0922L129.307 19.5656L133.236 31.6578L122.95 24.1844L112.664 31.6578L116.593 19.5656L106.307 12.0922L119.021 12.0922L122.95 0Z' fill='black'/%3E%3Cpath d='M158.1 0L162.029 12.0922L174.743 12.0922L164.457 19.5656L168.386 31.6578L158.1 24.1844L147.814 31.6578L151.743 19.5656L141.456 12.0922L154.171 12.0922L158.1 0Z' fill='black'/%3E%3C/svg%3E");
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: left center;
	mask-position: left center;
}

/* Host: plain block; swiper clips its own slides (unlike customizations peek) */
.mdx-prod-reviews .elementor-widget-n-carousel,
.mdx-prod-reviews .elementor-widget-n-carousel > .elementor-widget-container {
	display: block;
	width: 100%;
	position: relative;
	overflow: visible;
}
.mdx-prod-reviews .elementor-widget-n-carousel .e-n-carousel,
.mdx-prod-reviews .elementor-widget-n-carousel .swiper {
	overflow: hidden;
	width: 100% !important;
	max-width: 100%;
	position: relative;
}

/* Chevron arrows: absolute, flanking the text column, vertical center */
.mdx-prod-reviews .elementor-widget-n-carousel .elementor-swiper-button {
	position: absolute !important;
	inset: auto !important;
	top: 50% !important;
	bottom: auto !important;
	transform: translateY(-50%) !important;
	translate: none !important;
	z-index: 6;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 2.0625rem;
	height: 2.0625rem;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background-color: transparent !important;
	box-shadow: none !important;
	color: #f65e1e !important;
	opacity: 1 !important;
	pointer-events: auto !important;
	cursor: pointer;
	font-size: 2.0625rem;
	line-height: 1;
	transition: color 0.25s ease, opacity 0.3s ease;
}
.mdx-prod-reviews .elementor-widget-n-carousel .elementor-swiper-button-prev {
	left: -5.75rem !important;
	right: auto !important;
}
.mdx-prod-reviews .elementor-widget-n-carousel .elementor-swiper-button-next {
	right: -5.75rem !important;
	left: auto !important;
}
@media screen and (max-width: 767px) {
	.mdx-prod-reviews .elementor-widget-n-carousel .elementor-swiper-button-prev { left: -2.75rem !important; }
	.mdx-prod-reviews .elementor-widget-n-carousel .elementor-swiper-button-next { right: -2.75rem !important; }
}

/* Static cover photo column: image fills the row height (target .cover-image) */
.mdx-prod-reviews-photo { align-items: stretch; }
.mdx-prod-reviews-photo .elementor-widget-image,
.mdx-prod-reviews-photo .elementor-widget-image > .elementor-widget-container,
.mdx-prod-reviews-photo .elementor-widget-image a {
	width: 100%;
	height: 100%;
}
.mdx-prod-reviews-photo .elementor-widget-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* -------------------------------------------------------------------------
 * Stock & Custom photo cards (target .medium-voltage-options-wrap):
 * orange icon badges rendered via mask (SVG upload blocked on host).
 * ------------------------------------------------------------------------- */
.mdx-ico-stock,
.mdx-ico-custom,
.mdx-ico-reman { width: 36px; min-height: 36px; flex: none; }
.mdx-ico-stock::before,
.mdx-ico-custom::before,
.mdx-ico-reman::before {
	content: "";
	display: block;
	width: 100%;
	height: 36px;
	background-color: #f65e1e;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
}
.mdx-ico-stock::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 57 57'%3E%3Cpath d='M16.7691 45.2691L28.5 57L40.2309 45.2691L28.5 33.5381L16.7691 45.2691Z' fill='black'/%3E%3Cpath d='M11.7309 40.2309L23.4619 28.5L11.7309 16.7691L0 28.5L11.7309 40.2309Z' fill='black'/%3E%3Cpath d='M16.7691 11.7309L28.5 0L40.2309 11.7309L28.5 23.4619L16.7691 11.7309Z' fill='black'/%3E%3Cpath d='M45.2691 16.7691L33.5381 28.5L45.2691 40.2309L57 28.5L45.2691 16.7691Z' fill='black'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 57 57'%3E%3Cpath d='M16.7691 45.2691L28.5 57L40.2309 45.2691L28.5 33.5381L16.7691 45.2691Z' fill='black'/%3E%3Cpath d='M11.7309 40.2309L23.4619 28.5L11.7309 16.7691L0 28.5L11.7309 40.2309Z' fill='black'/%3E%3Cpath d='M16.7691 11.7309L28.5 0L40.2309 11.7309L28.5 23.4619L16.7691 11.7309Z' fill='black'/%3E%3Cpath d='M45.2691 16.7691L33.5381 28.5L45.2691 40.2309L57 28.5L45.2691 16.7691Z' fill='black'/%3E%3C/svg%3E");
}
.mdx-ico-custom::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 39 39'%3E%3Cpath d='M31.52 13.8904L25.1092 7.47945L31.52 1.06849C31.52 1.06849 28.5817 0 26.979 0C20.301 0 15.0496 5.3824 14.9586 12.0205C14.9384 13.4957 15.4929 15.7603 15.4929 15.7603L0.534238 26.1781L0 32.589L6.14373 39L12.5546 38.4657L22.9722 23.5068C22.9722 23.5068 25.6434 24.0411 26.979 24.0411C33.657 24.0411 38.8977 18.6585 38.9993 12.0205C39.0269 10.2199 38.198 7.47945 38.198 7.47945L31.52 13.8904Z' fill='black'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 39 39'%3E%3Cpath d='M31.52 13.8904L25.1092 7.47945L31.52 1.06849C31.52 1.06849 28.5817 0 26.979 0C20.301 0 15.0496 5.3824 14.9586 12.0205C14.9384 13.4957 15.4929 15.7603 15.4929 15.7603L0.534238 26.1781L0 32.589L6.14373 39L12.5546 38.4657L22.9722 23.5068C22.9722 23.5068 25.6434 24.0411 26.979 24.0411C33.657 24.0411 38.8977 18.6585 38.9993 12.0205C39.0269 10.2199 38.198 7.47945 38.198 7.47945L31.52 13.8904Z' fill='black'/%3E%3C/svg%3E");
}
.mdx-ico-reman::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 39 39'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M21.9375 0H17.0625L15.7205 5.36805C14.4663 5.70262 13.2785 6.19971 12.1809 6.83538L7.43501 3.98784L3.98786 7.43498L6.8354 12.1809C6.19972 13.2784 5.70263 14.4663 5.36806 15.7205L0 17.0625V21.9375L5.36805 23.2795C5.70263 24.5337 6.19972 25.7216 6.8354 26.8191L3.98787 31.565L7.43502 35.0121L12.1809 32.1646C13.2785 32.8003 14.4663 33.2974 15.7205 33.6319L17.0625 39H21.9375L23.2795 33.6319C24.5337 33.2974 25.7216 32.8003 26.8191 32.1646L31.565 35.0121L35.0122 31.565L32.1646 26.8191C32.8003 25.7215 33.2974 24.5337 33.6319 23.2795L39 21.9375V17.0625L33.6319 15.7205C33.2974 14.4663 32.8003 13.2785 32.1646 12.1809L35.0122 7.43497L31.565 3.98783L26.8191 6.83539C25.7215 6.19971 24.5337 5.70263 23.2795 5.36805L21.9375 0ZM19.5 24.375C22.1924 24.375 24.375 22.1924 24.375 19.5C24.375 16.8076 22.1924 14.625 19.5 14.625C16.8076 14.625 14.625 16.8076 14.625 19.5C14.625 22.1924 16.8076 24.375 19.5 24.375Z' fill='black'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 39 39'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M21.9375 0H17.0625L15.7205 5.36805C14.4663 5.70262 13.2785 6.19971 12.1809 6.83538L7.43501 3.98784L3.98786 7.43498L6.8354 12.1809C6.19972 13.2784 5.70263 14.4663 5.36806 15.7205L0 17.0625V21.9375L5.36805 23.2795C5.70263 24.5337 6.19972 25.7216 6.8354 26.8191L3.98787 31.565L7.43502 35.0121L12.1809 32.1646C13.2785 32.8003 14.4663 33.2974 15.7205 33.6319L17.0625 39H21.9375L23.2795 33.6319C24.5337 33.2974 25.7216 32.8003 26.8191 32.1646L31.565 35.0121L35.0122 31.565L32.1646 26.8191C32.8003 25.7215 33.2974 24.5337 33.6319 23.2795L39 21.9375V17.0625L33.6319 15.7205C33.2974 14.4663 32.8003 13.2785 32.1646 12.1809L35.0122 7.43497L31.565 3.98783L26.8191 6.83539C25.7215 6.19971 24.5337 5.70263 23.2795 5.36805L21.9375 0ZM19.5 24.375C22.1924 24.375 24.375 22.1924 24.375 19.5C24.375 16.8076 22.1924 14.625 19.5 14.625C16.8076 14.625 14.625 16.8076 14.625 19.5C14.625 22.1924 16.8076 24.375 19.5 24.375Z' fill='black'/%3E%3C/svg%3E");
}
/* Trust-band 48px mask icons (transformer-parts: inventory diamonds, truck). */
.mdx-ico-inventory,
.mdx-ico-truck { width: 48px; min-height: 48px; flex: none; }
.mdx-ico-inventory::before,
.mdx-ico-truck::before {
	content: "";
	display: block;
	width: 100%;
	height: 48px;
	background-color: #f65e1e;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
}
.mdx-ico-inventory::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 54 54'%3E%3Cpath d='M15.8865 42.8865L27 54L38.1135 42.8865L27 31.773L15.8865 42.8865Z' fill='black'/%3E%3Cpath d='M11.1135 38.1135L22.227 27L11.1135 15.8865L0 27L11.1135 38.1135Z' fill='black'/%3E%3Cpath d='M15.8865 11.1135L27 0L38.1135 11.1135L27 22.227L15.8865 11.1135Z' fill='black'/%3E%3Cpath d='M42.8865 15.8865L31.773 27L42.8865 38.1135L54 27L42.8865 15.8865Z' fill='black'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 54 54'%3E%3Cpath d='M15.8865 42.8865L27 54L38.1135 42.8865L27 31.773L15.8865 42.8865Z' fill='black'/%3E%3Cpath d='M11.1135 38.1135L22.227 27L11.1135 15.8865L0 27L11.1135 38.1135Z' fill='black'/%3E%3Cpath d='M15.8865 11.1135L27 0L38.1135 11.1135L27 22.227L15.8865 11.1135Z' fill='black'/%3E%3Cpath d='M42.8865 15.8865L31.773 27L42.8865 38.1135L54 27L42.8865 15.8865Z' fill='black'/%3E%3C/svg%3E");
}
.mdx-ico-truck::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 54 54'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M37.125 6.75H0V43.875H6.75C6.75 47.6029 9.77208 50.625 13.5 50.625C17.2279 50.625 20.25 47.6029 20.25 43.875H33.75C33.75 47.6029 36.7721 50.625 40.5 50.625C44.2279 50.625 47.25 47.6029 47.25 43.875H54V27C54 21.4081 49.4669 16.875 43.875 16.875H37.125V6.75ZM37.125 23.625V30.375H47.25V23.625H37.125Z' fill='black'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 54 54'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M37.125 6.75H0V43.875H6.75C6.75 47.6029 9.77208 50.625 13.5 50.625C17.2279 50.625 20.25 47.6029 20.25 43.875H33.75C33.75 47.6029 36.7721 50.625 40.5 50.625C44.2279 50.625 47.25 47.6029 47.25 43.875H54V27C54 21.4081 49.4669 16.875 43.875 16.875H37.125V6.75ZM37.125 23.625V30.375H47.25V23.625H37.125Z' fill='black'/%3E%3C/svg%3E");
}
.mdx-prod-reviews .elementor-widget-n-carousel .elementor-swiper-button svg { display: none !important; }
.mdx-prod-reviews .elementor-widget-n-carousel .elementor-swiper-button::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-color: currentColor;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 33 33'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M16.1461 16.5002L25.6043 25.9584L19.7707 31.792L4.47888 16.5002L19.7707 1.20837L25.6043 7.042L16.1461 16.5002Z' fill='black'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 33 33'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M16.1461 16.5002L25.6043 25.9584L19.7707 31.792L4.47888 16.5002L19.7707 1.20837L25.6043 7.042L16.1461 16.5002Z' fill='black'/%3E%3C/svg%3E");
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
}
.mdx-prod-reviews .elementor-widget-n-carousel .elementor-swiper-button-next::before { transform: rotate(180deg); }
.mdx-prod-reviews .elementor-widget-n-carousel .elementor-swiper-button:hover { color: #b84c16 !important; background: transparent !important; }
.mdx-prod-reviews .elementor-widget-n-carousel .elementor-swiper-button.swiper-button-lock,
.mdx-prod-reviews .elementor-widget-n-carousel .elementor-swiper-button.swiper-button-disabled {
	display: inline-flex !important;
	opacity: 0.35 !important;
	cursor: default;
	pointer-events: none !important;
}
