/* Allow sidebar category filters inherit grid/gap styles */
[data-role="categorySidebar"]{
	display: contents;
}

.cNexusProduct .cNexusPrice {
	font-size: var(--i-font-size_1);
	font-weight: 600;
}

	.cNexusProduct_selected {
		border: 1px solid rgba(0,0,0,0.05);
		background: var(--i-background_selected);
	}

.cNexusRegister_info {
	position: relative;
}

.cNexusRegister_close {
	background: #333;
	width: 30px;
	height: 30px;
	border-radius: 30px;
	line-height: 26px;
	position: absolute;
	top: 5px;
	inset-inline-end: -10px;
	z-index: 2000;
	text-align: center;
	color: #fff;
	font-size: 20px;
}

/* PRODUCT VIEW */
.cNexusProduct_header form + .ipsLoading {
	position: absolute;
	background-color: var(--i-background_3);
	background-color: color-mix(in srgb, var(--i-background_3) 80%, transparent);
}

.cNexusProduct_header [type="number"][name="quantity"] {
	width: 11ch;
}

.cNexusProduct_header [type="submit"]{
	width: 100%;
}

.cNexusProduct_header .cNexusPrice {
	display: inline-block;
	font-size: var(--i-font-size_4);
	line-height: 28px;
	font-weight: 500;
}

.cNexusProduct_primaryImage {
	background-color: var(--i-background_2);
	display: block;
	aspect-ratio: 1;
	width: 100%;
	max-height: 550px;
	cursor: zoom-in;
	background-size: cover;
	background-position: 50%;
}

	.cNexusProduct_primaryImage img {
		width: 100%;
		height: 100%;
		object-fit: scale-down;
		position: relative;
		-webkit-backdrop-filter: blur(50px) brightness(.6);
		backdrop-filter: blur(50px) brightness(.6);
	}

.ipsCarousel--commerce-product-images{
	--i-carousel--pa: 1em; /* Prevent cropping of selected outline */
	--i-column-gap: 1em;
}

	.ipsCarousel--commerce-product-images > :first-child{ margin-inline-start: auto; }
	.ipsCarousel--commerce-product-images > :last-child{ margin-inline-end: auto; }

	.cNexusProduct_images a {
		display: block;
		border-radius: min(var(--i-design-radius), 5px);
		overflow: hidden;
	}

		.cNexusProduct_imageSelected {
			outline: 2px solid var(--i-base-contrast_5);
			outline-offset: 2px;
		}

		.cNexusProduct_images img{
			height: 90px;
			width: auto;
		}

/* GIFT CARD */
#elNexusGiftcard {
	width: 400px;
	border-radius: 10px;
}
#elNexusGiftcard_card {
	width: 400px;
	height: 230px;
	border-radius: 10px;
	background: #000;
	position: relative;
}

	#elNexusGiftcard_card span[data-role="icon"] {
		position: absolute;
		display: block;
		background: #fff;
		border-radius: 50px;
		width: 100px;
		height: 100px;
		top: 15px;
		inset-inline-start: 15px;
		font-size: 60px;
		line-height: 100px;
		text-align: center;
		z-index: 5000;
	}

	#elNexusGiftcard_card strong[data-role="siteName"] {
		position: absolute;
		top: 30px;
		inset-inline-end: 15px;
		font-size: 20px;
		font-weight: 400;
		color: rgba(255,255,255,0.6);
	}

	#elNexusGiftcard_card strong[data-role="value"] {
		position: absolute;
		inset-inline-end: 15px;
		bottom: 30px;
		color: rgba(255,255,255,0.8);
		font-weight: 300;
		font-size: 52px;
	}

	#elNexusGiftcard_card h2 {
		position: absolute;
		inset-inline-end: 15px;
		bottom: 80px;
		color: #fff;
		font-weight: 400;
		font-size: 40px;
	}

.cNexusGiftcard_swatches li {
	padding: 4px;
	border: 1px solid rgba(0,0,0,0.1);
	margin-bottom: 4px;
}

	.cNexusGiftcard_swatches li[data-selected] {
		border-color: #000;
	}

.cNexusGiftcard_swatches a {
	display: block;
	width: 30px;
	height: 30px;
}

.cNexusGiftcard_content:empty {
	display: none;
}

#elNexusGiftcard_personalize input[type="text"],
#elNexusGiftcard_personalize textarea {
	border: 1px solid rgba(0,0,0,0.2);
	padding: 3px;
}

#elNexusGiftcard_personalize input[type="text"] {
	width: 150px;
	margin-inline-start: 5px;
}

/* Redeem button - doesn't use standard button class so that emails can show it the same way */
.cNexusGiftcard_redeem {
	font-size: var(--i-font-size_-1);
	font-weight: 500;
	text-align: center;
	text-decoration: none;
	text-shadow: none;
	white-space: nowrap;
	display: inline-block;
	vertical-align: middle;
	padding: 10px 20px;
	border-radius: 3px;
	border: 1px solid rgba(0,0,0,0.1);
	background-color: rgba(51,51,51,0.8);
	color: #fff;
	position: absolute;
	inset-inline-start: 15px;
	bottom: 15px;
}

/* STEPS */
.cNexusStep_step {
	display: block;
	width: 50px;
	height: 50px;
	text-align: center;
	line-height: 50px;
	font-size: 26px;
	border-radius: 50px;
	background: var(--i-background_primary);
	color: var(--i-color_primary-contrast);
}

/* CART */
#elNexusCart .cNexusCart_totals {
	font-size: var(--i-font-size_4);
	padding: 15px;
}



/* PHONES */
@media screen and (max-width: 767px) {

	/* Store */
	.cNexusProduct {
		text-align: center;
	}
	
	/* Gift cards */
	#elNexusGiftcard {
		width: 100%;
	}

	#elNexusGiftcard_card {
		width: 100%;
		height: 190px;
	}

	#elNexusGiftcard_card span[data-role="icon"] {
		width: 50px;
		height: 50px;
		font-size: 30px;
		line-height: 50px;
		top: 10px;
		inset-inline-start: 10px;
	}

	#elNexusGiftcard_card strong[data-role="siteName"] {
		top: 20px;
	}

	#elNexusGiftcard_card strong[data-role="value"] {
		font-size: 42px;
	}

	#elNexusGiftcard_card h2 {
		font-size: 30px;
		bottom: 70px;
	}

	#elNexusFiltersBox .ipsSideMenu .ipsSideMenu__title,
	#elNexusFiltersBox .ipsSideMenu .ipsSideMenu__list {
		display: block;
	}

}