/* Custom Font */
@font-face {
	font-family: 'ap5-mu';
	src:  url('../fonts/ap5-mu.eot?seokvj');
	src:  url('../fonts/ap5-mu.eot?seokvj#iefix') format('embedded-opentype'),
		url('../fonts/ap5-mu.ttf?seokvj') format('truetype'),
		url('../fonts/ap5-mu.woff?seokvj') format('woff'),
		url('../fonts/ap5-mu.svg?seokvj#ap5-mu') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: block;
}

/* Top of page */
.top-hr {
	margin-bottom: 15px;
}
.mx-auto {
	margin-right: auto!important;
	margin-left: auto!important;
}
/* /Top of page */

/* Pack content */
#ap5-product-list.ap5-on-product-page {
	margin-top: 25px;
	margin-bottom: 25px;
}
#ap5-product-list.card { flex-flow: row wrap; }

.ap5-on-product-page .ap5-pack-product-title {
}
.ap5-on-product-page .ap5-pack-product-title a {
	color: #414141;
}

.ap5-on-product-page .ap5-pack-product-title .ap5-pack-product-remove-label,
.ap5-on-product-page .ap5-pack-product-title .ap5-pack-product-add-label {
	font-size: 10px;
	font-weight: normal;
	cursor: pointer;
}

.ap5-on-product-page .ap5-pack-product-content {
	position: inherit;
}

.ap5-on-product-page .ap5-pack-product-content .ap5-pack-product-infos {
	margin-bottom: 5px;
	padding-bottom: 5px;
	border-bottom: 1px dotted #ccc;
}

.ap5-on-product-page .ap5-pack-product-content .ap5-attributes {
	padding: 0;
}

.ap5-on-product-page .ap5-pack-product-content .label,
.ap5-on-product-page .ap5-pack-product-content .ap5-attributes label {
	font-weight: bold;
	color: inherit;
	padding: 0;
}

.ap5-on-product-page .ap5-pack-product-content .pull-left {
	float: left;
}

.ap5-on-product-page .ap5-pack-product-content .pull-right {
	float: right;
}

.ap5-on-product-page .ap5-pack-product-content .attribute_label {
	padding: 0;
	margin: 0 0 10px 0;
	font-weight: bold;
}

.ap5-on-product-page .ap5-pack-product-content .ap5-attribute-list {
	display: block !important;
	padding-right: 0 !important;
}

.ap5-on-product-page .ap5-pack-product-content .ap5-attribute-list li {
	float: left;
	clear: none !important;
	margin-right: 10px;
}

	/* Product block */
	.ap5-pack-product {
		padding: 15px;
	}
	.ap5-on-product-page .ap5-pack-product {
		padding: 0px;
	}

	.ap5-pack-product-content {
		position: relative;
	}

	.ap5-pack-product.ap5-no-attributes hr:last-child {
		margin-bottom: 0px;
		border: none;
	}

		/* Product Quantity Ribbon */
		.ap5-pack-product-content .ribbon-wrapper {
		  width: 85px;
		  height: 88px;
		  overflow: hidden;
		  position: absolute;
		  top: -3px;
		  right: -3px;
		  z-index: 50;
		}
		.ap5-pack-product-content .ribbon{
		  font-weight: bold;
		  text-align: center;
		  -webkit-transform: rotate(45deg);
		  -moz-transform:    rotate(45deg);
		  -ms-transform:     rotate(45deg);
		  -o-transform:      rotate(45deg);
		  position: relative;
		  padding: 7px 0;
		  left: -5px;
		  top: 15px;
		  width: 120px;
		  -webkit-box-shadow: 0px 0px 3px rgba(0,0,0,0.3);
		  -moz-box-shadow:    0px 0px 3px rgba(0,0,0,0.3);
		  box-shadow:         0px 0px 3px rgba(0,0,0,0.3);
		}
		.ap5-pack-product-content .ribbon:before,
		.ap5-pack-product-content .ribbon:after {
		  content: "";
		  border-top:   3px solid transparent;
		  border-left:  3px solid transparent;
		  border-right: 3px solid transparent;
		  position:absolute;
		  bottom: -3px;
		}
		.ap5-pack-product-content .ribbon:before { left: 0; }
		.ap5-pack-product-content .ribbon:after { right: 0; }
		/* /Product Quantity Ribbon */

		/* Product Title */
		.ap5-pack-product-name {}
		.ap5-pack-product-name.title-left {
			padding: 10px 80px 10px 10px;
		}
		.ap5-pack-product-name.title-center {
			padding: 10px 10px 10px 10px;
			text-align: center;
		}
		.ap5-pack-product-name {
			font-size: inherit;
			margin: initial;
			padding: initial;
			font-weight: initial;
			line-height: initial;
		}
		.ap5-pack-product-name a {
			color: #414141;
		}
		/* /Product Title */

		/* Product Image */
		.ap5-pack-product-image {}
		.ap5-pack-product-image a {}
		.ap5-pack-product-image a img {}
		/* /Product Image */

		/* Product Thumbnails */
		.ap5-pack-product-slideshow {
			margin: 0 auto;
			overflow: hidden;
		}
		.ap5-pack-product-slideshow.pm-ap-owl-carousel div.ap5-pack-product-thumbnail {
			float: none;
		}
		.ap5-pack-product-slideshow.pm-ap-owl-carousel .pm-ap-owl-stage {
			margin: 0 auto;
		}
		.ap5-pack-product-slideshow.pm-ap-owl-carousel div.ap5-pack-product-thumbnail img.img-fluid,
		.ap5-pack-product-mobile-slideshow.pm-ap-owl-carousel div.ap5-pack-product-thumbnail img.img-fluid {}
		/* /Product Thumbnails */

		/* Plus Icon */
		.ap5-pack-product .ap5-pack-product-icon-plus:before {
		    color: black !important;
		    content: "\e147";
		    font-family: "Material Icons", "ap5-mu";
		    font-size: 25px;
		    position: absolute;
		    top: 150px;
		    left: 0;
		}
		.ap5-pack-product:first-child .ap5-pack-product-icon-plus:before {
			content: '';
		}
		.ap5-pack-product.ap5-no-plus-icon .ap5-pack-product-icon-plus:before {
			content: '' !important;
		}
		@media (max-width: 1200px) {
			.ap5-pack-product .ap5-pack-product-icon-plus:before {
			    top: 150px !important;
			}
		}
		@media (max-width: 767px) {
			.ap5-pack-product .ap5-pack-product-icon-plus:before {
			    top: 120px !important;
			}
			.ap5-pack-product {
			    margin-top: 30px !important;
			}
		}
		@media (max-width: 575px) {
			.ap5-pack-product .ap5-pack-product-icon-plus:before {
				top: -40px !important;
				left: 46% !important;
			}
		}
		/* Plus Icon */

		/* Remove Icon */
		.ap5-pack-product .ap5-pack-product-icon-remove:after, .ap5-is-mobile .ap5-pack-product .ap5-pack-product-icon-remove:after {
			color: black;
			content: "\e928";
			font-family: "Material Icons", "ap5-mu";
			font-size: 18px;
			position: absolute;
			top: 7px;
			right: 7px;
			cursor: pointer;
			z-index: 60;
		}
		.ap5-pack-product .ap5-pack-product-icon-remove:after {
			opacity: 0.2;
		}
		.ap5-pack-product:hover .ap5-pack-product-icon-remove:after, .ap5-is-mobile .ap5-pack-product .ap5-pack-product-icon-remove:after {
			opacity: 1;
		}
		.ap5-is-mobile .ap5-pack-product .ap5-pack-product-icon-remove:after {
			top: -13px;
			right: -13px;
			padding: 20px;
		}
		.ap5-on-product-page .ap5-pack-product .ap5-pack-product-icon-remove:after {
			color: black;
			content: "\e928";
			font-family: "Material Icons", "ap5-mu";
			font-size: 18px;
			cursor: pointer;
			position: inherit;
			top: inherit;
			right: inherit;
			font-size: inherit;
		}
		/* Remove Icon */

		/* Check Icon */
		.ap5-is-excluded-product .ap5-pack-product-icon-check:after {
			color: black;
			content: "\e854";
			font-family: "Material Icons", "ap5-mu";
			font-size: 18px;
			position: absolute;
			top: 7px;
			right: 7px;
			cursor: pointer;
			z-index: 60;
		}
		.ap5-on-product-page .ap5-is-excluded-product .ap5-pack-product-icon-check:after {
			color: black;
			content: "\e854";
			font-family: "Material Icons", "ap5-mu";
			position: inherit;
			top: inherit;
			right: inherit;
			font-size: inherit;
			cursor: pointer;
		}
		/* Check Icon */

		/* Icons */
		.ap5-pack-product-icon-remove, .ap5-pack-product-icon-check {
			cursor: pointer;
		}
		/* Icons */

		/* Product Prices */
		.ap5-pack-product-price-table-container {
			display: table;
			width: 100%;
		}
		.ap5-pack-product-price-table-container.ap5-no-reduction p {
			margin-bottom: 0;
		}
		.ap5-pack-product-price-table-container .ap5-pack-product-price-table-cell {
			display: table-cell;
			vertical-align: middle;
		}
		.ap5-pack-product-price-table-container .ap5-pack-product-price-table-cell div {
			margin-bottom: 0;
		}
		.ap5-old-price-container .ap5-pack-product-original-price {
			padding-bottom: 0 !important;
			margin-bottom: 0 !important;
		}
		.ap5-old-price-container .ap5-pack-product-reduction-container {
			margin-bottom: 0 !important;
		}
		p#reduction_amount.ap5-pack-product-amount-container {
			margin-bottom: 0 !important
		}
		/* /Product Prices */

		/* Product Availability */
		.ap5-availability-statut {
			text-align: center;
			display: block;
		}
		.ap5-availability-statut #product-availability {
			margin-left: 0;
		}
		/* /Product Availability */

		/* Product Quantity */
		fieldset.ap5-quantity-fieldset {
			padding: 5px;
		}
		div.ap5-quantity-input-container {
			width: 80px;
		}
		div.ap5-quantity-input-container input.ap5-quantity-wanted {
			background: #ffffff;
			color: #414141;
			height: 2.5rem;
			padding: .175rem .5rem;
			width: 3.30rem;
		}

		/* Product Attributes */
		.ap5-attributes {
		}
		.ap5-attributes fieldset label {
			margin-top: 4px;
		}
		.ap5-attributes fieldset.ap5-attribute-fieldset {
			padding: 5px 0;
		}
		.ap5-attributes fieldset.ap5-attribute-fieldset .ap5-attribute-list {
			padding-right: 5px;
		}
		.ap5-attributes ul.ap5-color-to-pick-list {
		}
		.ap5-attributes ul.ap5-color-to-pick-list li.selected a {
			border: 2px solid #414141;
		}
		.ap5-attributes ul.ap5-color-to-pick-list a.ap5-color.disabled, .ap5-attributes .ap5-attribute-select[disabled] {
			cursor: not-allowed;
		}
		.ap5-attributes ul.ap5-color-to-pick-list a.ap5-color img {
			vertical-align: top;
			width: 100%;
			max-width: 100%;
		}

		.ap5-attribute-fieldset {
		}
		.ap5-attribute-fieldset .attribute_label {
		}
		.ap5-attribute-fieldset .ap5-attribute-list {
		}
		/* /Product Attributes */

	/* /Product block */

/* /Pack content */

/* Buy Block */
	.ap5-buy-block {
	}
		.ap5-buy-block #ap5-buy-block-container {
		}

			/* Pack Price Block */
			.ap5-buy-block .ap5-price-container {}
			/* /Pack Price Block */

			/* Buy Button Block */
			.ap5-buy-block .ap5-buy-container {}
			/* /Buy Button Block */
	.ap5-pack-page .ap5-add-to-cart-container .product-add-to-cart .product-quantity {
		display: block;
	}
	.ap5-pack-page .ap5-add-to-cart-container .add {
		margin: 0;
	}
	.ap5-pack-page .ap5-buy-block-with-errors.ap5-is-mobile {
		padding: 20px;
	}

@media (min-width: 768px) {
	.ap5-buy-block {
	}
	.ap5-buy-block.ap5-fixed {
		position: fixed;
		top: 10px;
	}
}

/* /Buy Block */

/* Pack Description Block */
#ap5-pack-description-block {}
/* /Pack Description Block */

/* Pack Content Block */
#ap5-pack-content-block .tabs {
	margin-top: unset;
	padding: unset;
}

/* Pack Download Block */
#ap5-pack-download-block .attachment {
	margin-top: 15px;
}

	/* Tabs */
	#ap5-pack-product-tab-list {
		border: 0;
		margin: 0 20px;
	}
	#ap5-pack-product-tab-list > li {
		margin: 0;
		padding: 0;
		text-align: center;
		min-height: 100%;
	}
	#ap5-pack-product-tab-list > li > a {
		margin-right: 0;
		text-decoration: none;
		border-color: #d6d4d4;
		outline: none;
		min-height: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-direction: column;
	}
	#ap5-pack-product-tab-list > li > a > span { }
	#ap5-pack-product-tab-list > li.active > a { }
	/* /Tabs */

	/* Tab Contents */
	#ap5-pack-product-tabs-content {
		margin: 0 20px;
		padding-top: 20px;
		border: 1px #d6d4d4 solid;
		border-top: 0;
	}
	#ap5-pack-product-tabs-content > .tab-pane > div {
		margin-bottom: 20px;
	}
	#ap5-pack-product-tabs-content > .tab-pane > div > .rte {
		padding: 0;
	}

		/* Features table */
		#ap5-pack-product-tabs-content > .tab-pane > div > section.page-product-box {
			padding-bottom: 0;
			border-bottom: 0;
		}
		#ap5-pack-product-tabs-content > .tab-pane > div > section.page-product-box > h3.page-product-heading {
			margin-bottom: 0;
		}
		#ap5-pack-product-tabs-content > .tab-pane > div > section.page-product-box > .table-data-sheet {
			margin-bottom: 0;
		}
		/* /Features table */

		/* Google Rich Snippets & Reviews */
		#ap5-pack-product-tabs-content div.ap5-gsnippetsreviews-reviews-container {
			clear: both;
		}
		#ap5-pack-product-tabs-content #gsr .pagination, #ap5-pack-product-tabs-content #gsr div.gsr_social_buttons, #ap5-pack-product-tabs-content #gsr .gsr_report_button,
		#ap5-pack-product-tabs-content a[id^='reportReview'] {
			display: none !important;
		}
		#ap5-pack-product-tab-list #gsr-review-list, #ap5-pack-product-tab-list #gsr-review-list > div {
			float: none !important;
		}
		/* /Google Rich Snippets & Reviews */

		/* Product customization */
		#ap5-pack-product-tabs-content .ap5-product-customization-container {
			clear: both;
		}
		#ap5-pack-product-tabs-content .customizationUploadLine textarea {
			width: 100%;
		}
		/* /Product customization */

	@media (max-width: 767px) {
		#ap5-pack-product-tab-list,
		#ap5-pack-product-tabs-content {
			margin: 0 10px;
		}
	}
	/* /Tab Contents */
/* /Pack Content Block */

/* Alert and error cases */
.ap5-product-pack-row-has-errors > .ap5-pack-product-content > *:not(.ap5-pack-product-icon-check):not(.ap5-pack-product-icon-plus),
.ap5-product-pack-row-has-fatal-errors > .ap5-pack-product-content > *:not(.ap5-pack-product-icon-check):not(.ap5-pack-product-icon-plus) {
	filter: blur(1px);
    -webkit-filter: blur(1px);
    -moz-filter: blur(1px);
    -o-filter: blur(1px);
    -ms-filter: blur(1px);
	filter: progid:DXImageTransform.Microsoft.Blur(PixelRadius='1');
}
.ap5-on-product-page .ap5-product-pack-row-has-errors > .ap5-pack-product-content > *:not(.ap5-pack-product-icon-check):not(.ap5-pack-product-icon-plus) {
	filter: inherit;
    -webkit-filter: inherit;
    -moz-filter: inherit;
    -o-filter: inherit;
    -ms-filter: inherit;
	filter: inherit;
}
.ap5-is-excluded-product .ap5-pack-product-content > *:not(.ap5-pack-product-icon-check):not(.ap5-pack-product-title) {
	opacity: 0.2;
}
.ap5-product-pack-row-has-errors div.alert,
.ap5-product-pack-row-has-errors div.ap5-attributes,
.ap5-product-pack-row-has-errors div.product-actions,
.ap5-product-pack-row-has-errors fieldset.ap5-quantity-fieldset,
.ap5-product-pack-row-has-fatal-errors div.alert,
.ap5-product-pack-row-has-errors hr,
.ap5-product-pack-row-has-fatal-errors hr {
	filter: none !important;
    -webkit-filter: none !important;
    -moz-filter: none !important;
    -o-filter: none !important;
    -ms-filter: none !important;
}
.ap5-product-pack-row-has-errors div.alert,
.ap5-product-pack-row-has-fatal-errors div.alert {
	text-align: center;
	margin-bottom:0;
	/*box-shadow*/
	-webkit-box-shadow:0px 0px 3px 0px #656565;
	   -moz-box-shadow:0px 0px 3px 0px #656565;
	        box-shadow:0px 0px 3px 0px #656565;
	/*border-radius*/
	-webkit-border-radius:10px;
	   -moz-border-radius:10px;
	        border-radius:10px;
}
@-webkit-keyframes pulse {
	0% { background: rgba(255,109,36,0.0); }
	100% { background: rgba(255,109,36,0.3); }
}
@-moz-keyframes pulse {
	0% { background: rgba(255,109,36,0.0); }
	100% { background: rgba(255,109,36,0.3); }
}
@-o-keyframes pulse {
	0% { background: rgba(255,109,36,0.0); }
	100% { background: rgba(255,109,36,0.3); }
}
@keyframes pulse {
	0% { background: rgba(255,109,36,0.0); }
	100% { background: rgba(255,109,36,0.3); }
}

@-webkit-keyframes oosmsg {
	0% { opacity: 0; bottom: 55%; }
	100% { opacity: 1; bottom: 20%; }
}
@-moz-keyframes oosmsg {
	0% { opacity: 0; bottom: 55%; }
	100% { opacity: 1; bottom: 20%; }
}
@-o-keyframes oosmsg {
	0% { opacity: 0; bottom: 55%; }
	100% { opacity: 1; bottom: 20%; }
}
@keyframes oosmsg {
	0% { opacity: 0; bottom: 55%; }
	100% { opacity: 1; bottom: 20%; }
}
.ap5-product-pack-row-has-errors div.ap5-attributes, .ap5-product-pack-row-has-errors fieldset.ap5-quantity-fieldset {
	/*border-radius*/
	-webkit-border-radius:5px;
	   -moz-border-radius:5px;
	        border-radius:5px;
	/*animation-name*/
	-webkit-animation-name:pulse;
	   -moz-animation-name:pulse;
	    -ms-animation-name:pulse;
	     -o-animation-name:pulse;
	        animation-name:pulse;
	/*animation-duration*/
	-webkit-animation-duration:0.8s;
	   -moz-animation-duration:0.8s;
	    -ms-animation-duration:0.8s;
	     -o-animation-duration:0.8s;
	        animation-duration:0.8s;
	/*animation-iteration-count*/
	-webkit-animation-iteration-count:8;
	   -moz-animation-iteration-count:8;
	    -ms-animation-iteration-count:8;
	     -o-animation-iteration-count:8;
	        animation-iteration-count:8;
	/*animation-direction*/
	-webkit-animation-direction:alternate;
	   -moz-animation-direction:alternate;
	    -ms-animation-direction:alternate;
	     -o-animation-direction:alternate;
	        animation-direction:alternate;
	/*animation-timing-function*/
	-webkit-animation-timing-function:ease-in-out;
	   -moz-animation-timing-function:ease-in-out;
	    -ms-animation-timing-function:ease-in-out;
	     -o-animation-timing-function:ease-in-out;
	        animation-timing-function:ease-in-out;
}
.ap5-product-pack-row-has-errors div.alert ol,
.ap5-product-pack-row-has-fatal-errors div.alert ol {
	padding: 0;
	margin: 0;
	font-weight: bold;
}
.ap5-product-pack-row-has-errors div.alert ol li,
.ap5-product-pack-row-has-fatal-errors div.alert ol li {
	list-style-type: none;
}
.ap5-pack-product .ap5-overlay {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
}

#ap5-buy-container p.ap5-pack-unavailable,
#ap5-buy-container p.ap5-combination-unavailable {
	padding: 10px;
	margin: 0;
	font-weight: bold;
}
#ap5-buy-container p.ap5-combination-unavailable span a {
	color: inherit;
	outline: none;
}
/* /Container special styles */

/* Spinner */
.ap5-loader-blur {
	filter: blur(1px);
	-webkit-filter: blur(1px);
	-moz-filter: blur(1px);
	-o-filter: blur(1px);
	-ms-filter: blur(1px);
	filter: progid:DXImageTransform.Microsoft.Blur(PixelRadius='1');
}
.ap5-loader:before,
.ap5-loader:after,
.ap5-loader {
	border-radius: 50%;
	width: 2.5em;
	height: 2.5em;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation: ap5loader 1.8s infinite ease-in-out;
	animation: ap5loader 1.8s infinite ease-in-out;
}
.ap5-loader {
	margin-left: auto;
	margin-right: auto;
	font-size: 10px;
	position: relative;
	text-indent: -9999em;
	-webkit-animation-delay: 0.16s;
	animation-delay: 0.16s;
	opacity: 1;
}
.ap5-loader:before {
	left: -3.5em;
}
.ap5-loader:after {
	left: 3.5em;
	-webkit-animation-delay: 0.32s;
	animation-delay: 0.32s;
}
.ap5-loader:before,
.ap5-loader:after {
	content: '';
	position: absolute;
	top: 0;
}
/* /Spinner */

/* Modern pack layout (scoped to Advanced Pack only) */
.pm-advancedpack-wrapper {
	--ap5-surface: #fff;
	--ap5-border: #e7e9ed;
	--ap5-muted: #68717d;
	--ap5-radius: 14px;
	box-sizing: border-box;
	max-width: 100%;
}
.pm-advancedpack-wrapper *, .pm-advancedpack-wrapper *::before, .pm-advancedpack-wrapper *::after { box-sizing: border-box; }
#ap5-product-list.pm-advancedpack-wrapper {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	width: 100%;
	padding: 0;
	margin: 24px 0;
	border: 0;
	background: transparent;
	overflow: visible;
}
.pm-advancedpack-wrapper .ap5-pack-product {
	float: none;
	width: auto;
	max-width: none;
	min-width: 0;
	padding: 0;
	margin: 0 !important;
}
.pm-advancedpack-wrapper .ap5-pack-product-content {
	display: flex;
	flex-direction: column;
	height: 100% !important;
	min-height: 0;
	padding: 18px;
	border: 1px solid var(--ap5-border);
	border-radius: var(--ap5-radius);
	background: var(--ap5-surface);
	box-shadow: 0 8px 24px rgba(24, 31, 42, .06);
}
.pm-advancedpack-wrapper .ap5-pack-product-name,
.pm-advancedpack-wrapper .ap5-pack-product-name.title-left,
.pm-advancedpack-wrapper .ap5-pack-product-name.title-center {
	min-height: 0 !important;
	padding: 0 34px 12px 0;
	margin: 0;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.4;
	text-align: left;
	overflow-wrap: anywhere;
}
.pm-advancedpack-wrapper .ap5-pack-images-container {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 150px !important;
	min-height: 150px;
	margin: 0 0 14px;
}
.pm-advancedpack-wrapper .ap5-pack-product-image,
.pm-advancedpack-wrapper .ap5-pack-product-image a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}
.pm-advancedpack-wrapper .ap5-pack-product-image img,
.pm-advancedpack-wrapper .ap5-pack-product-thumbnail img {
	display: block;
	width: auto !important;
	max-width: 140px !important;
	height: auto !important;
	max-height: 140px;
	object-fit: contain;
}
.pm-advancedpack-wrapper .ap5-pack-product-icon-plus { display: none; }
.pm-advancedpack-wrapper .ap5-pack-product-price-table-container {
	height: auto !important;
	min-height: 0;
	margin: 0 0 12px;
}
.pm-advancedpack-wrapper .product-actions,
.pm-advancedpack-wrapper .ap5-attributes,
.pm-advancedpack-wrapper .ap5-attribute-fieldset {
	min-width: 0;
	margin-top: auto;
}
.pm-advancedpack-wrapper .ap5-attribute-list,
.pm-advancedpack-wrapper .ap5-attribute-select,
.pm-advancedpack-wrapper .form-control { max-width: 100%; }
#ap5-buy-block-container.pm-advancedpack-wrapper {
	min-width: 0;
	padding: 20px;
	border: 1px solid var(--ap5-border);
	border-radius: var(--ap5-radius);
	background: var(--ap5-surface);
	box-shadow: 0 8px 24px rgba(24, 31, 42, .06);
}
.pm-advancedpack-wrapper .ap5-add-to-cart-container,
.pm-advancedpack-wrapper .ap5-pack-stock-action,
.pm-advancedpack-wrapper .ap5-pack-stock-button,
.pm-advancedpack-wrapper .product-add-to-cart .add { width: 100%; }
.pm-advancedpack-wrapper .ap5-pack-stock-button[disabled],
.pm-advancedpack-wrapper.ap5-pack-oos .add-to-cart[disabled] {
	cursor: not-allowed;
	opacity: 1;
	color: #707782;
	border-color: #d7dbe0;
	background: #eceff2;
	box-shadow: none;
	pointer-events: none;
}
.pm-advancedpack-wrapper.ap5-pack-oos { border-color: #d7dbe0; }
.pm-advancedpack-wrapper.ap5-pack-details-tabs {
	margin: 0;
	padding: 0;
	overflow: hidden;
	border: 1px solid var(--ap5-border);
	border-radius: 0 0 var(--ap5-radius) var(--ap5-radius);
	background: var(--ap5-surface);
}
.pm-advancedpack-wrapper #ap5-pack-product-tab-list {
	display: flex;
	gap: 6px;
	margin: 0;
	padding: 10px 10px 0;
	overflow-x: auto;
	border-bottom: 1px solid var(--ap5-border);
	scrollbar-width: thin;
}
.pm-advancedpack-wrapper #ap5-pack-product-tab-list > li { flex: 0 0 auto; height: auto !important; }
.pm-advancedpack-wrapper #ap5-pack-product-tab-list > li > a {
	height: auto !important;
	min-height: 44px;
	padding: 10px 14px;
	border: 0;
	border-radius: 9px 9px 0 0;
	white-space: normal;
}
.pm-advancedpack-wrapper #ap5-pack-product-tabs-content {
	margin: 0;
	padding: 22px;
	border: 0;
}
.pm-advancedpack-wrapper #ap5-pack-product-tabs-content .rte,
.pm-advancedpack-wrapper #ap5-pack-product-tabs-content .product-features {
	line-height: 1.65;
	overflow-wrap: anywhere;
}
.ap5-pack-tabs-wrapper.pm-advancedpack-wrapper {
	gap: 20px;
	margin: 32px 0;
}
.ap5-pack-tabs-wrapper.pm-advancedpack-wrapper .ap5-tab-column {
	min-width: 0;
	overflow: hidden;
	border: 1px solid #e7e9ed;
	border-radius: 14px;
	background: #fff;
}
.ap5-pack-tabs-wrapper.pm-advancedpack-wrapper .ap5-tab-title,
.ap5-pack-tabs-wrapper.pm-advancedpack-wrapper .ap5-tab-content { padding: 18px 22px; }
.ap5-pack-tabs-wrapper.pm-advancedpack-wrapper .ap5-tab-title h3 { margin: 0; }
.ap5-pack-tabs-wrapper.pm-advancedpack-wrapper .ap5-tab-content > :first-child,
.ap5-pack-tabs-wrapper.pm-advancedpack-wrapper .ap5-tab-content .rte > :first-child { margin-top: 0; }
.ap5-pack-tabs-wrapper.pm-advancedpack-wrapper .ap5-tab-content > :last-child,
.ap5-pack-tabs-wrapper.pm-advancedpack-wrapper .ap5-tab-content .rte > :last-child { margin-bottom: 0; }
@media (max-width: 1023px) {
	#ap5-product-list.pm-advancedpack-wrapper { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
	#ap5-product-list.pm-advancedpack-wrapper {
		grid-template-columns: minmax(0, 1fr);
		gap: 14px;
		margin: 18px 0;
	}
	.pm-advancedpack-wrapper .ap5-pack-product-content { padding: 15px; }
	.pm-advancedpack-wrapper .ap5-pack-images-container { height: 120px !important; min-height: 120px; }
	.pm-advancedpack-wrapper .ap5-pack-product-image img,
	.pm-advancedpack-wrapper .ap5-pack-product-thumbnail img {
		max-width: 110px !important;
		max-height: 110px;
	}
	#ap5-buy-block-container.pm-advancedpack-wrapper {
		width: 100%;
		padding: 16px;
		margin-top: 16px;
	}
	.pm-advancedpack-wrapper #ap5-pack-product-tabs-content,
	.ap5-pack-tabs-wrapper.pm-advancedpack-wrapper .ap5-tab-title,
	.ap5-pack-tabs-wrapper.pm-advancedpack-wrapper .ap5-tab-content { padding: 16px; }
}
@media (max-width: 479px) {
	.pm-advancedpack-wrapper #ap5-pack-product-tab-list {
		flex-direction: column;
		overflow-x: visible;
		padding: 8px;
	}
	.pm-advancedpack-wrapper #ap5-pack-product-tab-list > li,
	.pm-advancedpack-wrapper #ap5-pack-product-tab-list > li > a { width: 100%; }
	.pm-advancedpack-wrapper #ap5-pack-product-tab-list > li > a { border-radius: 8px; }
}

/* Current Warehouse theme integration */
#ap5-product-list.pm-advancedpack-wrapper {
	max-width: 100%;
	flex: 0 0 100%;
}
#ap5-product-list.pm-advancedpack-wrapper::before { grid-column: 1 / -1; }
#ap5-buy-block-container.pm-advancedpack-wrapper {
	width: 100%;
	max-width: 100%;
	flex: 0 0 100%;
}

/* Pack product page: 90% shell, vertical contents and sticky purchase card */
body.ap5-pack-page #main {
	width: 90%;
	max-width: 1680px;
	margin-right: auto;
	margin-left: auto;
}

body.ap5-pack-page .mx-pack-info {
	min-width: 0;
}

body.ap5-pack-page .mx-pack-info #ap5-buy-block-container.pm-advancedpack-wrapper {
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: none;
}

body.ap5-pack-page .mx-pack-info .product-quantity {
	display: grid !important;
	grid-template-columns: 90px minmax(0, 1fr) 54px;
	gap: 10px;
	align-items: stretch;
	margin: 20px 0 0;
}

body.ap5-pack-page .mx-pack-info .product-quantity > .col,
body.ap5-pack-page .mx-pack-info .col-add-qty,
body.ap5-pack-page .mx-pack-info .col-add-btn,
body.ap5-pack-page .mx-pack-info .col-add-wishlist {
	width: auto !important;
	max-width: none !important;
	min-width: 0;
	padding: 0 !important;
	margin: 0;
}

body.ap5-pack-page .mx-pack-info .qty,
body.ap5-pack-page .mx-pack-info .bootstrap-touchspin,
body.ap5-pack-page .mx-pack-info #quantity_wanted,
body.ap5-pack-page .mx-pack-info .col-add-btn .add,
body.ap5-pack-page .mx-pack-info .col-add-btn .add-to-cart,
body.ap5-pack-page .mx-pack-info .col-add-wishlist .btn {
	height: 52px;
}

body.ap5-pack-page .mx-pack-info #quantity_wanted {
	width: 100%;
	min-width: 0;
	padding: 0 12px;
	border: 1px solid #dfe3e8;
	border-radius: 10px;
	text-align: center;
}

body.ap5-pack-page .mx-pack-info .col-add-btn .add-to-cart {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	padding: 0 18px;
	border-radius: 10px;
	white-space: normal;
	line-height: 1.2;
}

body.ap5-pack-page .mx-pack-info .col-add-wishlist .btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	padding: 0;
	border-radius: 10px;
}

body.ap5-pack-page .ap5-purchase-benefits {
	display: grid;
	gap: 10px;
	margin-top: 20px;
	padding-top: 18px;
	border-top: 1px solid #e7e9ed;
}

body.ap5-pack-page .ap5-purchase-benefit {
	display: grid;
	grid-template-columns: 38px minmax(0, 1fr);
	gap: 12px;
	align-items: center;
	padding: 12px;
	margin: 0;
	border: 1px solid #e7e9ed;
	border-radius: 11px;
	background: #f8f9fa;
}

body.ap5-pack-page .ap5-benefit-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	color: #2f3338;
	background: #ffc300;
	font-size: 1rem;
}

body.ap5-pack-page .ap5-benefit-copy {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 2px;
	color: #69717b;
	font-size: .84rem;
	line-height: 1.4;
}

body.ap5-pack-page .ap5-benefit-copy strong {
	color: #262a2f;
	font-size: .92rem;
}

body.ap5-pack-page .ap5-card-icons {
	display: flex;
	gap: 9px;
	margin-top: 5px;
	color: #3d4650;
	font-size: 1.35rem;
}

@media (min-width: 992px) {
	body.ap5-pack-page #main {
		display: grid;
		grid-template-columns: minmax(0, 1.55fr) minmax(340px, .85fr);
		gap: 30px 34px;
		align-items: start;
	}

	body.ap5-pack-page #main > .mx-pack-hero {
		display: contents;
	}

	body.ap5-pack-page #main > .mx-pack-hero > .mx-pack-gallery {
		grid-column: 1;
		grid-row: 1;
		width: 100%;
		max-width: 100%;
		padding: 0;
	}

	body.ap5-pack-page #main > .mx-pack-hero > .mx-pack-info {
		position: sticky;
		z-index: 5;
		top: 86px;
		grid-column: 2;
		grid-row: 1 / span 2;
		width: 100%;
		max-width: 100%;
		padding: 24px !important;
		border: 1px solid #e4e7eb;
		border-radius: 16px;
		background: #fff;
		box-shadow: 0 12px 34px rgba(26, 31, 38, .09);
	}

	body.ap5-pack-page #main > .mx-pack-items-row {
		grid-column: 1;
		grid-row: 2;
		width: 100%;
		min-width: 0;
		margin: 0;
	}

	body.ap5-pack-page #main > .ap5-pack-tabs-wrapper {
		grid-column: 1 / -1;
		grid-row: 3;
		width: 100%;
	}

	body.ap5-pack-page #main > .row:not(.mx-pack-hero):not(.mx-pack-items-row):not(.ap5-pack-tabs-wrapper),
	body.ap5-pack-page #main > .product-accessories,
	body.ap5-pack-page #main > .page-footer {
		grid-column: 1 / -1;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper {
		grid-template-columns: minmax(0, 1fr);
		gap: 14px;
		margin: 0;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-product-content {
		display: grid;
		grid-template-columns: 160px minmax(0, 1fr);
		grid-template-areas:
			"image name"
			"image price"
			"image actions";
		column-gap: 20px;
		align-items: center;
		padding: 16px;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-images-container {
		grid-area: image;
		width: 160px;
		height: 150px !important;
		min-height: 150px;
		margin: 0;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-product-name {
		grid-area: name;
		align-self: end;
		padding: 0 34px 6px 0;
		margin: 0;
		text-align: left;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-product-price-table-container {
		grid-area: price;
		align-self: center;
		margin: 0;
		text-align: left;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-product-price,
	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .current-price {
		text-align: left !important;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .product-actions {
		grid-area: actions;
		align-self: start;
		margin: 8px 0 0;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-product-content > hr {
		display: none;
	}
}

@media (max-width: 1199px) and (min-width: 992px) {
	body.ap5-pack-page #main {
		width: 90%;
		grid-template-columns: minmax(0, 1.35fr) minmax(330px, .9fr);
		gap: 24px;
	}

	body.ap5-pack-page #main > .mx-pack-hero > .mx-pack-info {
		top: 72px;
		padding: 20px !important;
	}
}

@media (max-width: 991px) {
	body.ap5-pack-page #main {
		display: block;
		width: calc(100% - 32px);
		max-width: none;
	}

	body.ap5-pack-page .mx-pack-hero,
	body.ap5-pack-page .mx-pack-items-row,
	body.ap5-pack-page .ap5-pack-tabs-wrapper {
		margin-right: 0;
		margin-left: 0;
	}

	body.ap5-pack-page .mx-pack-info {
		position: static;
		padding: 20px 0 0 !important;
	}

	body.ap5-pack-page .mx-pack-items-row {
		margin-top: 24px;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 575px) {
	body.ap5-pack-page #main {
		width: calc(100% - 24px);
	}

	body.ap5-pack-page .mx-pack-info .product-quantity {
		grid-template-columns: 76px minmax(0, 1fr) 50px;
		gap: 7px;
	}

	body.ap5-pack-page .mx-pack-info .col-add-wishlist .btn {
		width: 50px;
	}

	body.ap5-pack-page .mx-pack-info .col-add-btn .add-to-cart {
		padding: 0 10px;
		font-size: .88rem;
	}
}

/* Stop the purchase sticky before pack descriptions */
@media (min-width: 992px) {
	body.ap5-pack-page #main {
		display: block;
	}

	body.ap5-pack-page #main > .mx-pack-hero {
		display: grid !important;
		grid-template-columns: minmax(0, 1.55fr) minmax(340px, .85fr);
		gap: 34px;
		align-items: start;
		width: 100%;
		margin: 0;
	}

	body.ap5-pack-page #main > .mx-pack-hero > .mx-pack-gallery {
		grid-column: 1;
		grid-row: 1;
	}

	body.ap5-pack-page #main > .mx-pack-hero > .mx-pack-info {
		position: sticky;
		top: 86px;
		grid-column: 2;
		grid-row: 1;
		align-self: start;
	}

	body.ap5-pack-page .mx-pack-gallery > .mx-pack-items-row {
		width: 100%;
		margin: 28px 0 0;
	}

	body.ap5-pack-page .mx-pack-gallery > .mx-pack-items-row #ap5-product-list {
		width: 100%;
		max-width: 100%;
		margin: 0;
	}

	body.ap5-pack-page #main > .ap5-pack-tabs-wrapper {
		width: 100%;
		margin-top: 34px;
	}
}

@media (max-width: 1199px) and (min-width: 992px) {
	body.ap5-pack-page #main > .mx-pack-hero {
		grid-template-columns: minmax(0, 1.35fr) minmax(330px, .9fr);
		gap: 24px;
	}

	body.ap5-pack-page #main > .mx-pack-hero > .mx-pack-info {
		top: 72px;
	}
}

/* Mobile: pack contents use the full available width */
@media (max-width: 767px) {
	body.ap5-pack-page .mx-pack-items-row,
	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0;
		padding-right: 0;
		padding-left: 0;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper > .ap5-pack-product {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0;
		flex: 0 0 100% !important;
		padding-right: 0;
		padding-left: 0;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper > .ap5-pack-product > .ap5-pack-product-content {
		width: 100% !important;
		max-width: 100% !important;
	}
}

/* Desktop: complete secondary images without the faulty zoom carousel */
@media (min-width: 992px) {
	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-product-content {
		grid-template-columns: 240px minmax(0, 1fr);
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-images-container {
		display: grid;
		grid-template-rows: 150px auto;
		gap: 10px;
		width: 240px;
		height: auto !important;
		min-height: 150px;
		overflow: visible;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-product-image,
	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-image-frame {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 150px;
		overflow: hidden;
		border-radius: 8px;
		background: #f5f6f7;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-product-image img {
		width: auto !important;
		max-width: 100% !important;
		height: auto !important;
		max-height: 150px;
		object-fit: contain;
		transform: none;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-product-slideshow.no-carousel {
		display: grid !important;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 6px;
		width: 100%;
		max-width: 100%;
		margin: 0;
		overflow: visible;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-product-slideshow.no-carousel .ap5-pack-product-thumbnail,
	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-thumbnail-frame {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		min-width: 0;
		aspect-ratio: 1 / 1;
		overflow: hidden;
		border: 1px solid #e4e7eb;
		border-radius: 7px;
		background: #fff;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-product-slideshow.no-carousel .ap5-pack-product-thumbnail img {
		display: block;
		width: auto !important;
		max-width: 100% !important;
		height: auto !important;
		max-height: 54px;
		object-fit: contain;
		transform: none;
	}
}

/* Desktop: compact product information and two-up thumbnail carousel */
@media (min-width: 992px) {
	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-product-content {
		grid-template-columns: 260px minmax(0, 1fr);
		grid-template-rows: auto auto;
		grid-template-areas:
			"image name"
			"image price";
		column-gap: 22px;
		align-items: center;
		min-height: 230px;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-images-container {
		width: 240px;
		align-self: center;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-product-name {
		align-self: end;
		width: 100%;
		padding: 0 0 8px;
		margin: 0;
		text-align: left !important;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-product-price-table-container {
		align-self: start;
		width: 100%;
		height: auto !important;
		padding: 0;
		margin: 0;
		text-align: left !important;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-product-price-table-cell,
	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-product-price,
	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-product-price .current-price,
	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-pack-product-price .product-price {
		display: block !important;
		width: 100%;
		padding: 0;
		margin: 0;
		text-align: left !important;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-desktop-carousel {
		display: block !important;
		width: 240px;
		max-width: 240px;
		margin: 0;
		overflow: hidden;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-desktop-carousel .ap5-pack-product-thumbnail,
	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-desktop-carousel .ap5-pack-thumbnail-frame {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 70px;
		overflow: hidden;
		border: 1px solid #e2e6ea;
		border-radius: 8px;
		background: #fff;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-desktop-carousel .ap5-pack-product-thumbnail img {
		display: block;
		width: auto !important;
		max-width: 100% !important;
		height: auto !important;
		max-height: 66px;
		object-fit: contain;
		transform: none;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-desktop-carousel .pm-ap-owl-stage-outer {
		overflow: hidden;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-desktop-carousel .pm-ap-owl-dots {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 7px;
		min-height: 20px;
		margin-top: 6px;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-desktop-carousel .pm-ap-owl-dot span {
		width: 8px;
		height: 8px;
		margin: 0;
		background: #c9ced4;
	}

	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-desktop-carousel .pm-ap-owl-dot.active span,
	body.ap5-pack-page #ap5-product-list.pm-advancedpack-wrapper .ap5-desktop-carousel .pm-ap-owl-dot:hover span {
		background: #ffc300;
	}
}
