@charset "utf-8";
/*

	This is the development code.
	When done you need to minify this file and overwrite styles.min.css

	for version 3.5.7

*/


/* This is needed if it's not in the framework */
/*
   .u-invisible {
	   visibility: hidden;
   }
   .bm {
	   margin-bottom: 1rem !important;
   }
   .lp {
	   padding-left: 1rem !important;
   }
*/


/* This is for the sticky product image/video */
@media screen and (min-width: 48em) {
	* {
		scroll-margin-top: 96px;
	}

	.sidebar__inner {
		position: sticky;
		top: 96px;
	}
}


/* This is the thumbnails of the gallery */
.x-filmstrip__picture-video:before {
	background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABGCAYAAAA6hjFpAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABRtJREFUeNrsXc9PG0cUfrvdxsFYyEmEwCGAkQotSRrMIYc2Te1cCkeSS9ULhL+gyiXXKucqcpxDjsWQpJeGNmqkSvQShyotnDBq0ipQCfOjwYhQueCY0LRs5429jm1svGDjnV2/Txrt2ozs9fv43q+1ZyQoA/58/10POzgznsJzT4HpXTlzC2G31ygVYTZiOubhnGmdrxFr+vVZuNQLk/ROXDrNjC5BHzv1pp7yAWE3hNKEqnD/xBN9ZEk6iLjMDl+w4SYbl4QIG9cYMcF9EbJ4uoO5C2noAN1GtYIpRR1sfjIT1k0IIwNV4dfp6wl7B7qyK4yUYFFCFk51YJz4jmxWEVxseTpzvyAh86c6nOyJOVJG5ZSiArS1Pp1JZ2tyzgQ/m+BkA2hUZDhToWGnQiInO9wpdRAqDFSJ+7eZSK5CPqf/WGMG2n6Hy2J/6CPjGDb6slzWXGc71hpT5DwMRXfb77NhJaUOaoMYD+QgrLksL9nDcHAOkgpRwaO/zUg4oFTLkyYEsHGokk0MhpsH9T/eo4AuUmCXqU0iFJyKqqpEiECEoELofoc48Cgix3JbZyco77TDywffVw0jssj9BNlRB8e/vA6uBz+Arae3KnooMhtegZtuHI72dmi67oej39wD5cNzVubDK7TLyry2txQFjp3pgprATYiNj8PmSBD+nZ62nMtSzFYQ2uvqwNbbC+tnz0JichJe3R6xFDFMIarACsl/baiWIw0NYPP5IN7dDa+npmDz9rAliFHMnPZytdjtsH7oEChdXfD658eQuHULtleiJk57VXErdVWHeDW1JNbXIf7ReXibBf2tH8dYjBmB7ajpiHHKVvG9qJZjLhdXjO2THnDeuQu1V6+C3NhorjpE8HvNewKqxVlfz4cky1nEgMNhitRXaIWo+8w3UCX1TU38yB8zYo4wYmr6B0CqdQieZVn0PggqBJWylUjA32trXCH2/n6ouXQJNr8dhc3RUVDjLwVsnQgs4HKk5LlqkTgxA3D07tdgH+hnj2uF+syWiiHF1KLFllxibD09wnxmoV1Wua+Nq+XwYe7C0JUhtuNx/j6i2EGBKoOmlo3ZWYj6/fBqbEy01kl14T9WQK4EbsKL4BA1F/feyyovES+GgmwM8XOBm4vWVwSSsMrIEJmIjBhiTYmg8VcZEaIrwlSF4X4vLRoIwOpX5iLCklnWX/dGORn/LC2Z9jOY5hZuMSKWTU5EpsuKgKiLAhRhZA2JuGENIlKIoMsSl5DqIeINIWK7rOyr25iY4ERsTExaNk1XwARpFifCH+BHq0NohWwxl/Ts08+qgggN2It+JDIh1UQGcmHZO4ZmVghBJEKYQEL0w31hRogUIl6lrsbIDMIgxn+d/suJVgrtAuCDpXlJc1kRMofxbZNkpQ78Gxe4IKObbGIowplp7yOyh/FF4RuFJBf9JRgLzkF6yZnHx1vnyG0ZFz/OPZ9vSyskqRJ1GJIrWBMqj+F8rZMg2cUwpG2ftUrWT64W/DrfZbJPZck4v7wwmE8hiCugbxsHQpkq85TNIa9CEOOuFh87PCRbVQQXPl5eCO1KSJoUla//Tks3HZQyJLiYS0ZBQniV0tiCKTDGFB/Zr+wV+aA3uqB/u4qsaqWxGQnBlZf7yJal1RpsXPNFF3fNZnWvRcqI0faEQoK0faQ85NYKBmttjypsiYQYEeXZ8kgPHjY059vAy12k8t/rWsG+MrqMUjcEi8DODnn4wspiyRnq/wIMADXcwnf+0MibAAAAAElFTkSuQmCC') center center no-repeat;
	background-size: 2rem;
	bottom: 0;
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	z-index: 2;
}

.x-filmstrip__picture-video {
	background-color: #010101;
	position: relative;
	z-index: 1;
}

.x-filmstrip__link {
	transition: opacity 0.2s linear;
}

.x-filmstrip__link:hover {
	opacity: 0.8;
}

.filmstrip-video-close-area {
	position: absolute;
	right: 4px;
	top: 4px;
	z-index: 4;
}

.c-button.filmstrip-video-close-area-button {
	font-size: 11px;
	padding: 0.5em 1em;
	text-transform: uppercase;
}

#filmstrip-video-iframe-container {
	background: #fff;
	bottom: 0;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	z-index: 4;
}

#filmstrip-video-iframe-container .filmstrip-video {
	border: none;
	bottom: 0;
	display: block;
	height: 100%;
	left: 0;
	margin: 0;
	padding: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	z-index: 2;
}

.x-product-layout-images {
	display: flex;
	flex-flow: column nowrap;
	gap: 1.25rem;
	margin: 0 auto;
	max-width: 100%;
	min-height: var(--prod-img-y);
	width: fit-content;
}

.x-product-layout-images[data-vertical] {
	flex-direction: row-reverse;
	gap: 1.25rem;
	height: 480px;
	margin: 0 auto;
	max-height: 480px;
	max-width: 100%;
	min-height: 480px;
	min-width: 100%;
	width: 100%;
}

.x-product-layout-images__figure,
.x-product-layout-images__picture,
.x-product-layout-images__image {
	display: block;
	margin: 0 auto;
}

.x-product-layout-images__figure {
	align-items: center;
	display: flex;
	justify-content: center;
	overflow: hidden;
	position: relative;
	text-align: center;
	width: 100%;
}

.x-product-layout-images__figure a[data-photograph] {
	max-width: 100%;
	min-width: 100%;
	width: 100%;
}

.x-product-layout-images__picture {
	background-position: center center;
	background-repeat: no-repeat;
	transition: all 0.2s linear;
	width: fit-content;
}

.x-product-layout-images__picture.zoom-ready {
	cursor: zoom-in;
}

@media (hover: hover) and (pointer: fine) {
    .x-product-layout-images__image:hover {
    	opacity: 0;
    }
}

.x-product-layout-images__picture img,
.x-product-layout-images__image {
	height: 300px;
	object-fit: contain;
	transition: opacity 0.5s;
}

@media screen and (min-width: 30em) {
	.x-product-layout-images__picture img,
	.x-product-layout-images__image {
		height: 480px;
	}
}

.x-product-layout-images__thumbnail-image {
	margin-bottom: 1rem;
}

[data-filmstrip-wrapper] {
	min-width: 80px;
	position: relative;
}

[data-filmstrip] {
	overflow: hidden;
	position: relative;
	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;
	-moz-user-select: none;
	-webkit-user-select: none;
	user-select: none;
}

[data-vertical] [data-filmstrip] {
	height: 100%;
	scroll-snap-type: y mandatory;
}

[data-filmstrip]::-webkit-scrollbar {
	display: none;
}

[data-filmstrip] ul {
	align-items: center;
	display: flex;
	flex-flow: row nowrap;
	gap: 1rem;
	margin: 0;
	min-height: 64px;
	min-width: 64px;
	width: max-content;
}

[data-filmstrip] ul.has-controls {
	padding: 0 calc(1rem / 2);
}

[data-vertical] [data-filmstrip] ul {
	flex-direction: column;
	height: max-content;
}

[data-vertical] [data-filmstrip] ul.has-controls {
	padding: calc(1rem / 2) 0;
}

[data-filmstrip] li {
	border: 1px solid #010101;
	height: var(--prod-thumb-y);
	list-style: none;
	scroll-snap-align: none;
	scroll-snap-stop: always;
	width: var(--prod-thumb-x);
}

[data-filmstrip] picture {
	align-items: center;
	background-color: #fff;
	border: 3px solid #fff;
	display: flex;
	flex-direction: column;
	height: 100%;
	justify-content: center;
	overflow: hidden;
	width: 100%;
}

[data-filmstrip] img.x-filmstrip__image,
[data-filmstrip] img {
	height: 100%;
	max-width: 100%;
	object-fit: contain;
}

[data-filmstrip] img.x-filmstrip__image.is-active {
	border: 3px solid #323232;
}

[data-filmstrip] img.x-filmstrip__image:invalid {
	opacity: 0;
}

[data-filmstrip-controls] {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: space-between;
	left: 0;
	list-style: none;
	margin: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

[data-filmstrip-controls] button {
	border-radius: 50%;
	height: 2.5rem;
	padding: 0;
	width: 2.5rem;
}

[data-filmstrip-controls] button:focus {
	outline: 3px solid #3a58fc;
	outline-offset: -3px;
}

[data-filmstrip-controls] button span {
	pointer-events: none;
}

[data-vertical] [data-filmstrip-controls] {
	flex-direction: column;
}

[data-vertical] .x-filmstrip-controls__previous,
[data-vertical] .x-filmstrip-controls__next {
	transform: rotate(90deg);
}


/* Popup Modal Photo Viewer */
.is-inert {
	pointer-events: none;
	-moz-user-select: none;
	-webkit-user-select: none;
	user-select: none;
}

.has-photo-viewer {
	overflow: hidden;
}

.x-photo-viewer:before {
	background-color: rgba(255, 255, 255, 0.7);
	bottom: 0;
	content: "";
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1;
}

.x-photo-viewer {
	/* background-color: rgba(0, 0, 0, 0.9); */
	backdrop-filter: blur(0.75rem);
	border: 0;
	clip: rect(0 0 0 0);
	display: flex;
	flex-direction: column;
	height: auto;
	left: 0;
	margin: 0;
	opacity: 0;
	overflow: hidden;
	padding: 0;
	position: absolute;
	top: 0;
	transform: scale(0);
	transition: opacity 0.3s ease, transform 0.2s ease;
	white-space: nowrap;
	width: 1px;
	z-index: 99999999999;
}

.x-photo-viewer__visible {
	clip: auto;
	/* height: 100%; */
	height: 100dvh;
	opacity: 1;
	position: fixed;
	transform: scale(1);
	width: 100%;
}

.x-photo-viewer__header,
.x-photo-viewer__controls {
	align-items: center;
	display: flex;
	width: 100%;
}

.x-photo-viewer__title {
	flex: 1;
	font-size: 1.5rem;
	line-height: 1.4;
	margin: 0;
	padding-left: 2em;
	text-align: center;
	white-space: normal;
}

.x-photo-viewer__close {
	border-radius: 50%;
	height: 2.25em;
	margin: 1rem 2rem 0.5em 0.5em;
	width: 2.25em;
}

.x-photo-viewer__close button {
	border-radius: 50%;
	height: 100%;
	padding: 0;
	width: 100%;
}

.c-button.x-photo-viewer__prev-btn,
.c-button.x-photo-viewer__next-btn {
	font-size: 0.875rem;
	min-width: 90px;
	padding-left: 0;
	padding-right: 0;
}

.x-photo-viewer__container {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: center;
	padding: 0 1rem;
	touch-action: manipulation;
	white-space: nowrap;
	width: 100%;
}

.x-photo-viewer__current-image {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: center;
	opacity: 0;
	transition: opacity ease-in 0.3s 0.3s;
	width: 100%;
}

.x-photo-viewer__current-image.is-loaded {
	opacity: 1;
	transition: opacity 0.3s ease-out;
}

.x-photo-viewer__current-image img {
	border: 0.25rem solid #fff;
	max-height: 80vh;
}

.x-photo-viewer__controls {
	justify-content: space-between;
	padding: 1rem 2rem;
}

.x-photo-viewer__count {
	font-size: 0.875rem;
	font-weight: 500;
	text-align: center;
}
