/* =========================================================
EDIT SECTION 1: MAIN IMAGE + ZOOM
- Main product image and zoom holder behaviour
========================================================= */
#contentHolder
{
	position: relative;
	width: 100%;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background-color: black;
	margin-bottom: 5px;
	cursor: zoom-in;
}

#contentHolder.product-video-active
{
	cursor:default;
}

#main-img
{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	display: block;
	object-fit: contain; /* or 'cover' if you prefer */
	cursor: inherit;
}

#contentHolder.product-video-active #main-img
{
	pointer-events:none;
}

/* Zoom panel */
#smallzoomholder
{
	position:absolute;
	top:0px;

	/* put it exactly to the right of #left, with a gap */
	left:calc(100% + 30px);

	visibility:hidden;
	z-index:3;

	/* good default before JS runs (JS can override) */
	width:100%;
	height:100%;
}

#enlargeimage2
{
	width:100%;
	height:100%;
	background-color:black;
	overflow:hidden;
}

#zoom-img
{
	display:block;
	max-width:none;
	max-height:none;
}

/* Debug overlay (kept because it looks intentional for outlining arrays) */
.array
{
	white-space:pre;
	position:absolute;
	border:2px dashed transparent;
	text-align:left;
}


/* =========================================================
EDIT SECTION 2: THUMBNAILS STRIP
- Small thumbnails under the main image
========================================================= */
.test
{
	position:relative;
	width:100%;
	display:block;
	margin-top:10px;
}

.test ul
{
	width:100%;
	list-style:none;
	margin:0;
	padding:0;
}

.thumb
{
	float:left;
	width:12.5%;
	cursor:pointer;
}

.thumbholder
{
	position:relative;
	display:block;
	padding-top:100%;
	overflow:hidden;
}

/* Default spacing between thumbs */
.thumbholder > div:first-child
{
	margin-left:10px;
}

/* First thumb should not have left spacing */
.thumb:first-child > .thumbholder > div:first-child
{
	margin-left:0px;
}

.thumbholder img
{
	position:absolute;
	top:0;
	bottom:0;
	margin:auto;
	width:100%;
}

/* Custom thumbs (looks like a different layout mode) */
.thumbcustom
{
	cursor:pointer;
	position:relative;
	float:left;
	width:24%;
}

.thumbcustomholder
{
	display:block;
	transform:scale(1);
	transform-origin:top left;
}


/* =========================================================
EDIT SECTION 3: PRODUCT GRID CARDS
- Used for related products / product blocks
========================================================= */
.product
{
	position:relative;
	float:left;
	width:25%;
	display:block;
}

.product .productholder
{
	border:1px #B1B1B1 solid;
	background-color:white;
}

.product .padding
{
	padding:5px;
}

.product .imageholder
{
	position:relative;
	display:block;
	width:100%;
	height:255px;
	margin-bottom:5px;
}

.product .imageholder img
{
	display:none;
	width:100%;
	height:255px;
}

.product .imageholder .savingholder
{
	position:absolute;
	right:0px;
	top:0px;
	width:60px;
	height:60px;
	display:table;
	background-image:url(../../content/sale.png);
	background-size:100% 100%;
	text-align:center;
}

.product .imageholder .savingholder div
{
	display:table-cell;
	vertical-align:middle;
}

.product .imageholder .savingholder span
{
	font-family:rabelo;
	font-size:15px;
	color:white;
}

/* Helper clears (kept because your layout likely depends on them) */
.fourthclear
{
	clear:none !important;
	margin-bottom:0px;
}


/* =========================================================
EDIT SECTION 4: EDIT UI (LEFT/RIGHT + FONT LIST)
- Options editor layout and font picker list
========================================================= */
.lefteditholder
{
	float:left;
	width:50%;
}

.lefteditholder select
{
	width:100%;
	font-family:rabelo;
	font-size:12px;
}

.lefteditholder textarea
{
	float:left;
	font-family:rabelo;
	font-size:16px;
	width:100%;
	height:100px;
}

.righteditholder
{
	float:right;
	width:50%;
}

@keyframes productFontPreviewShimmer
{
	0%
	{
		background-position:-468px 0;
	}

	100%
	{
		background-position:468px 0;
	}
}

.fontholder
{
	position:relative;
	float:left;
	display:block;
	width:100%;
	height:250px;
	padding:0px;
}

.fontList
{
	position:absolute;
	top:0px;
	bottom:0px;
	left:0px;
	right:0px;
	overflow-y:scroll;
	overflow-x:hidden;
	list-style:none;
	margin:0px;
	padding:0px;
	border:1px solid #ccc;
	background-color:white;
}

.fontList li
{
	position:relative;
	height:50px;
	padding:0px 10px;
	display:flex;
	align-items:center;
	justify-content:flex-start;
	overflow:hidden;
	box-sizing:border-box;
	white-space:nowrap;
	transition:font-size 0.2s ease;
}

.fontList li:last-child
{
	border-bottom:0px solid black;
	padding-bottom:5px;
}

.fontList li.selected
{
	font-weight:bold;
	background-color:#e1e1e1;
}

.fontList li:hover:not(.selected)
{
	background-color:#f0f0f0;
}

.product-font-loader
{
	display:none;
	position:absolute;
	left:10px;
	width:calc(100% - 20px);
	height:24px;
	border-radius:6px;
	background:linear-gradient(to right, #eeeeee 10%, #dddddd 18%, #eeeeee 33%);
	background-size:800px 104px;
	animation:productFontPreviewShimmer 1.25s linear infinite forwards;
	pointer-events:none;
}

.product-font-option.is-loading .product-font-loader
{
	display:block;
}

.product-font-option.is-loading .product-font-option-text
{
	visibility:hidden;
}

.product-font-option-text
{
	display:inline-block;
	max-width:100%;
	font-size:22px;
	line-height:1;
	white-space:nowrap;
	overflow:visible;
	text-overflow:clip;
}


/* =========================================================
EDIT SECTION 5: SELLER META ROW + CONTACT LINK
- “Sold & fulfilled by …” row and contact seller button
- Removed duplicate .seller-contact-link definition and merged it here
========================================================= */
.meta-row
{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:12px;
	margin-top:6px;
	font-family:'Garet';
	font-size:20px;
	color:#111;
}

.meta-left
{
	display:flex;
	align-items:flex-start;
	gap:8px;
	min-width:0px; /* critical so text can wrap */
	flex:1 1 auto;
}

.meta-ic
{
	color:#9a9a9a;
	opacity:.85;
	line-height:0px;
	flex:0 0 16px;
	margin-top:2px;
}

.meta-text
{
	min-width:0px;
	line-height:1.2;
}

.meta-muted
{
	color:#9a9a9a;
}

.meta-seller-link
{
	color:#2a2a2a;
	text-decoration:underline;
	text-underline-offset:2px;
}

.meta-seller-name
{
	color:#2a2a2a;
}

.meta-right
{
	flex:0 0 auto;
	padding-left:8px;
}

/* Contact link style */
.seller-contact-link
{
	background:none;
	border:none;
	padding:0px;
	margin:0px;
	cursor:pointer;
	font:inherit;
	font-size:16px;
	line-height:1;
	display:inline-flex;
	align-items:center;
	gap:6px;
	color:#6b6b6b;
	text-decoration:underline;
	text-underline-offset:2px;
	white-space:nowrap; /* never split into 2 lines */
}

.seller-contact-icon
{
	color:#9a9a9a;
}

.seller-contact-link:hover
{
	color:#111;
}

.seller-contact-link:hover .seller-contact-icon
{
	color:#111;
}


/* =========================================================
EDIT SECTION 6: DEAL PRICING UI
========================================================= */
.deal-pricing
{
	display:flex;
	flex-direction:column;
	gap:10px;
	margin:20px 0px 20px 0px;
}

.deal-top
{
	display:flex;
	align-items:flex-end;
	gap:14px;
	flex-wrap:wrap;
}

.price-main
{
	display:flex;
	align-items:baseline;
}

.currency
{
	font-family:'Quicksand';
	font-size:40px;
	margin-right:2px;
}

.price-current
{
	font-family:'Quicksand';
	font-size:60px;
	letter-spacing:-0.5px;
	line-height:1;
}

.deal-meta
{
	display:flex;
	align-items:baseline;
	gap:10px;
	flex-wrap:wrap;
}

.price-tax
{
	font-family:'Garet';
	font-size:20px;
	color:#666;
	white-space:nowrap;
}

.price-old
{
	font-family:'Garet';
	font-size:18px;
	color:#9a9a9a;
	white-space:nowrap;
}

.old-currency
{
	font-size:14px;
}

.deal-badge
{
	font-family:'Quicksand';
	font-weight:700;
	font-size:14px;
	color:#111;
	background:#fbeff1;
	border:1px solid #d6aab0;
	padding:6px 10px;
	border-radius:999px;
	white-space:nowrap;
}

.deal-bottom
{
	display:flex;
	align-items:center;
	justify-content:flex-start;
	margin-top:10px;
}

.deal-timer
{
	display:inline-flex;
	align-items:center;
	gap:8px;
	padding:7px 10px;
	border-left:4px solid #d6aab0;
	border-radius:10px;
	background:#fafafa;
}

.deal-timer-label
{
	font-family:'Garet';
	font-size:14px;
	color:#666;
}

.deal-timer-value
{
	font-family:'Quicksand';
	font-size:14px;
	font-weight:700;
	color:#111;
}


/* =========================================================
EDIT SECTION 7: PRODUCT DETAILS TABLE
========================================================= */
.product-details-table
{
	display:flex;
	flex-wrap:wrap;
	gap:10px 0px;
	font-family:'Garet';
	color:black;
}

.product-details-row
{
	width:50%;
	display:flex;
}

.product-details-label
{
	width:40%;
	font-family:'Quicksand';
	font-weight:bold;
}

.product-details-value
{
	width:60%;
}


/* =========================================================
EDIT SECTION 8: POPUPS (CONTACT SELLER + STORE CARD)
========================================================= */
.popup-contact-seller .popupContent
{
	padding:0px;
}

.popup-contact-seller .cs-box
{
	padding:12px 14px;
	background:#fafafa;
	border-bottom:1px solid #eee;
}

.popup-contact-seller .cs-title
{
	font-size:14px;
	font-weight:700;
	color:#222;
	margin:0px 0px 2px 0px;
}

.popup-contact-seller .cs-sub
{
	font-size:12px;
	color:#666;
	margin:0px;
	line-height:1.35;
}

.popup-contact-seller .cs-form
{
	padding:12px 14px;
}

.popup-contact-seller .cs-label
{
	display:block;
	font-size:12px;
	font-weight:700;
	color:#333;
	margin:0px 0px 6px 0px;
}

.popup-contact-seller textarea
{
	width:100%;
	box-sizing:border-box;
	border:1px solid #ccc;
	border-radius:0;
	padding:10px;
	font-size:14px;
	font-family:inherit;
	min-height:96px;
	max-height:180px;
	resize:vertical;
	outline:none;
}

.popup-contact-seller textarea:focus
{
	border-color:#d6aab0;
	box-shadow:0px 0px 0px 3px rgba(214,170,176,.25);
}

.popup-contact-seller .cs-actions
{
	display:flex;
	justify-content:flex-end;
	gap:10px;
	margin-top:12px;
}

.popup-contact-seller .cs-btn-primary
{
	border-radius:0;
	font-weight:normal;
	cursor:pointer;
}

.popup-contact-seller .cs-btn-primary:disabled
{
	opacity:.55;
	cursor:not-allowed;
}

.popup-contact-seller .cs-btn-secondary
{
	border-radius:0;
	font-weight:normal;
	cursor:pointer;
}

.popup-contact-seller .cs-status
{
	margin-top:10px;
	font-size:12px;
	color:#666;
}


/* Store card popup */
.popup-store-card .popupContent
{
	padding:0px;
}

.popup-store-card .sc-box
{
	padding:12px 14px;
	background:#fafafa;
	border-bottom:1px solid #eee;
}

.popup-store-card .sc-name
{
	color:#000;
	font-weight:bold;
	margin:0px;
}

.popup-store-card .sc-since
{
	font-size:12px;
	color:#666;
}

.popup-store-card .sc-products
{
	font-size:12px;
	color:#666;
	margin:4px 0px 8px 0px;
}

.popup-store-card .sc-rating
{
	font-size:13px;
	color:#111;
}

.popup-store-card .sc-body
{
	padding:12px 14px;
}

.popup-store-card .sc-desc
{
	font-size:14px;
	color:#333;
	line-height:1.4;
	white-space:pre-line;
}

.popup-store-card .sc-actions
{
	display:flex;
	justify-content:flex-end;
	gap:10px;
	margin-top:12px;
}

.popup-store-card .sc-btn-primary
{
	border-radius:0;
	font-weight:normal;
	cursor:pointer;
}

.popup-store-card .sc-btn-secondary
{
	border-radius:0;
	font-weight:normal;
	cursor:pointer;
}


/* =========================================================
EDIT SECTION 9: RESPONSIVE BREAKPOINTS
========================================================= */
@media only screen and (max-width: 1200px)
{
	#main-img
	{
		cursor:default;
	}

	#description
	{
		width:100%;
		max-width:400px;
	}

	#smallzoomholder
	{
		display:none;
	}

	#left
	{
		width:100%;
		margin-left:auto;
		margin-right:auto;
		margin-bottom:25px;
		max-width:none;
	}

	#right
	{
		width:100%;
		margin-left:auto;
		margin-right:auto;
		max-width:none;
	}

	#right > div
	{
		padding:0px !important;
	}

	.thumbholder > div:first-child
	{
		margin-left:5px;
	}

	#reviewholder
	{
		display:none;
	}

	.product
	{
		width:50%;
	}

	/* These look like layout helpers used by your product template */
	.product4
	{
		display:block;
	}

	.thirdclear
	{
		clear:none;
		margin-bottom:0px;
	}

	.secondclear
	{
		clear:both;
		margin-bottom:50px;
	}
}

@media only screen and (max-width: 900px)
{
	.product-details-row
	{
		width:100%;
	}
}

@media only screen and (max-width: 700px)
{
	.product
	{
		width:100%;
	}

	.secondclear
	{
		clear:none;
		margin-bottom:0px;
	}

	.fontList li
	{
		height:35px !important;
	}

	.product-font-loader
	{
		height:20px;
	}
}

/* Mobile stack: seller meta + price sizing */
@media (max-width: 520px)
{
	.meta-row
	{
		flex-direction:column;
		align-items:stretch;
		gap:6px;
	}

	.meta-right
	{
		padding-left:24px; /* aligns under text (16 icon + 8 gap) */
	}

	.price-current
	{
		font-size:52px;
	}

	.price-tax
	{
		font-size:18px;
	}
}

/* Extracted fixed styles from public PHP templates. */

.product-auto-055a0822
{
	font-family: 'Garet';
}

.product-auto-5c8e4b6b
{
	position:relative;
	width:100%;
	aspect-ratio:1 / 1;
	overflow:hidden;
	background-color:black;
}

.product-auto-3fe1d07e
{
	position:absolute;
	top:0px;
	left:0px;
	opacity:0.8;
	background-color:white;
	border:1px solid black;
	display:block;
	visibility:hidden;
	pointer-events:none;
}

.product-auto-5402b843
{
	position:absolute;
	top:0px;
	right:calc(-100% - 30px);
	visibility:hidden;
	z-index:3;
}

.product-auto-3e5d9540
{
	position:relative;
	float:left;
	width:calc(100% - 30px);
	height:100%;
	display:block;
	overflow:hidden;
}

.product-auto-c551dfec
{
	padding-left:30px;
}

.product-auto-0051ec8d
{
	padding: 10px;
	background-color: #ffffff;
	box-shadow: 2px 2px 2px 2px #78787842;
}

.product-auto-77c40835
{
	font-family: 'Garet';
	font-weight: lighter;
	color:black;
}

.product-auto-c8be1ccb
{
	display:none;
}

.product-auto-7c947ef6
{
	clear:both;
}

.product-auto-ef100fb6
{
	clear:both;
	margin-bottom:10px;
}

.product-auto-69736f00
{
	loat:left;
	color:grey;
	font-family: 'Garet';
}

.product-auto-ceed0fb5
{
	clear:both;
	margin-bottom:20px;
}

.product-auto-21d91b70
{
	display:block;
}

.product-auto-5af8a797
{
	display:flex;
	align-items:center;
	gap:8px;
	margin-top:6px;
	font-family:'Garet';
	font-size:20px;
	color:#111;
}

.product-auto-7f02d2ea
{
	float:left;
	color:black;
	font-family: 'Quicksand';
	font-weight: bold;
}

.product-auto-70c75d7a
{
	clear:both;
	margin-bottom:5px;
}

.product-auto-2a27463a
{
	float:left;
	color:black;
	font-family: 'Quicksand';
	font-weight:bold;
}

.product-auto-5cc57ebb
{
	float:left;
	position:relative;
	width:100%;
}

.product-auto-5419aafc
{
	float:left;
	color: #d6aab0;
	font-family: 'CaviarDreams';
	margin-right:10px;
	font-weight:bold;
}

.product-auto-c3e785ea
{
	color: black;
	font-size: 14px;
	font-family: 'Garet', sans-serif;
	margin-top: 8px;
	background-color: #fbeff1;
	border-left: 4px solid #d6aab0;
	padding: 8px 12px;
	border-radius: 4px;
}

.product-auto-87db2275
{
	position:relative;
}

.product-auto-04502155
{
	color:black;
	font-size:14px;
	font-family:'Garet', sans-serif;
	margin-top:8px;
	background-color:#fbeff1;
	border-left:4px solid #d6aab0;
	padding:8px 12px;
	border-radius:4px;
}

.product-auto-59166ba9
{
	display:flex;
	align-items:center;
}

.product-auto-8fd8495e
{
	color: #555;
	font-size: 18px;
	font-family: 'Garet';
}

.product-auto-efa41693
{
	float:left;
	width:75%;
}

.product-auto-3142cc04
{
	padding-left:20px;
}

.product-auto-35991ad5
{
	float:left;
	color: #d6aab0;
	font-weight: bold;
	margin-right: 10px;
	font-family: 'CaviarDreams';
}

.product-auto-9cb5ccd6
{
	list-style-type:square;
	font-family: 'Garet';
	color:black;
	padding-left:15px;
	margin:0px;
}

.product-auto-3a22a376
{
	float:left;
	color:#d6aab0;
	font-weight: bold;
	margin-right: 10px;
	font-family: 'CaviarDreams';
}

.product-auto-8f89b9df
{
	background-color:#999;
	float:left;
	margin-right:5px;
	margin-bottom:5px;
	font-family:'Garet';
	color:white;
	text-decoration: line-through;
}

.product-auto-9b049ee7
{
	padding:5px;
}

.product-auto-b898a40f
{
	background-color:#d6aab0;
	float:left;
	margin-right:5px;
	margin-bottom:5px;
	font-family:'Garet';
	color:white;
}

.product-auto-d696f953
{
	cursor: pointer;
	display:block;
	height:44px;
	font-family: 'Garet';
	font-weight: bold;
	background-color: var(--decoz-pink, #d6aab0);
	border: 1px solid var(--decoz-pink, #d6aab0);
	color: #ffffff;
	padding:0 18px;
	border-radius: 0px;
	-webkit-appearance: none;
	-webkit-border-radius:0;
	transition:background 160ms ease, border-color 160ms ease;
}

.product-auto-6ef03217
{
	float: left;
	width: 40px;
	height: 40px;
	background-color: #d6aab0;
	display: flex;
	justify-content: center;
	align-items: center;
}

.product-auto-5c29f5c8
{
	cursor: pointer;
	display:block;
	height:44px;
	font-family: 'Garet';
	font-weight: bold;
	background-color: var(--decoz-pink, #d6aab0);
	border: 1px solid var(--decoz-pink, #d6aab0);
	color: #ffffff;
	padding:0 24px;
	border-radius: 0px;
	-webkit-appearance: none;
	-webkit-border-radius:0;
	transition:background 160ms ease, border-color 160ms ease;
}

.product-auto-d696f953:hover,
.product-auto-5c29f5c8:hover
{
	background-color:var(--decoz-pink-dark, #b97f89);
	border-color:var(--decoz-pink-dark, #b97f89);
}

.product-auto-a9eae866
{
	font-family:'Garet';
	color:red;
}

.product-auto-c4b2bc0e
{
	font-weight:bold;
}

.product-auto-a2f93260
{
	clear:both;
	margin-bottom:50px;
}

.product-auto-0e5cf2d9
{
	margin-top:60px;
	margin-bottom:30px;
}

.product-auto-dac4fe6c
{
	text-align:center;
}

.product-auto-ff54fce6
{
	color:black;
	font-family: 'CaviarDreams';
}

.product-auto-995aa5a4
{
	font-family: 'Garet';
	color:black;
}

.product-auto-7dde5e56
{
	margin-bottom:20px;
}

.product-auto-4716711c
{
	padding:0px;
}

.product-auto-3c68f5b5
{
	font-family: 'CaviarDreams';
	font-weight: bold;
	color: #d6aab0;
}

.product-auto-d00a4399
{
	padding-bottom:20px;
	border-bottom:1px solid lightgrey;
}

.product-auto-b0771759
{
	float:left;
	margin-right:100px;
}

.product-auto-0d1bc127
{
	float:left;
}

.product-auto-3b7e40c0
{
	position:relative;
	float:left;
	width:200px;
	height:15px;
	background-color:white;
	border-radius:25px;
	border:2px solid lightgrey;
	margin-right:10px;
}

.product-auto-3180e5db
{
	clear:both;
	margin-bottom:40px;
}

.product-auto-3e3f9ace
{
	float:left;
	margin-left:10px;
}

.product-auto-777cea3e
{
	background-color:white;
	box-shadow: 2px 2px 2px 2px #78787842;
	border-radius: 5px;
}

.product-auto-481ed7e7
{
	padding:10px;
}

.product-auto-48cfa172
{
	float:left;
	height:25px;
	line-height:25px;
}

.product-auto-4868b343
{
	font-family: 'Quicksand';
	font-weight: bold;
}

.product-auto-252c1553
{
	float:right;
}

.product-auto-9d2e9ba6
{
	font-family: 'Garet';
	color: grey;
}

.product-auto-22e8cc1f
{
	font-family: 'Garet';
	color: grey;
	float:left;
}

.product-auto-58f9961f
{
	font-family:'Garet';
}

.product-auto-cad980f4
{
	width:100%;
}

.product-auto-603d35fc
{
	width:100%;
	max-width:640px;
	height:auto;
	max-height:420px;
}

.product-auto-09a85ceb
{
	margin-left:15px;
}

.product-auto-86197069
{
	color:#000;
	font-weight:bold;
	margin:0;
}

.product-auto-1eef6aba
{
	margin-right:15px;
}

.product-auto-a1c3577f
{
	width:20px;
	height:20px;
	cursor:pointer;
	position:relative;
}

.product-auto-8583d3c8
{
	width:100%;
	max-width:640px;
	height:auto;
	max-height:520px;
}

.product-auto-6905d34f
{
	clear:both;
	margin-bottom:8px;
}

.product-auto-4d071e1f
{
	color:grey;
	font-family:'Garet';
}

.product-video-frame
{
	border:0;
	position:absolute;
	inset:0;
	display:block;
	width:100%;
	height:100%;
	z-index:2;
	background-color:#000000;
	cursor:auto;
}

.product-main-img-hidden,
.product-hide
{
	display:none;
}

.product-zoom-img
{
	position:absolute;
}

.product-paypal-message-spaced
{
	margin-bottom:20px;
}

.product-star-large
{
	float:left;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:calc(var(--decoz-product-rating-size, 30px) + 4px);
	height:calc(var(--decoz-product-rating-size, 30px) + 6px);
	font-family:Arial, sans-serif;
	font-size:calc(var(--decoz-product-rating-size, 30px) + 3px);
	line-height:1;
	color:var(--decoz-white-shade, #f3f3f3);
	text-rendering:geometricPrecision;
}

.product-star-large-on
{
	color:var(--decoz-pink, #d6aab0);
}

.product-star-small
{
	float:left;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:calc(var(--decoz-product-rating-size, 30px) - 3px);
	height:calc(var(--decoz-product-rating-size, 30px) - 1px);
	font-family:Arial, sans-serif;
	font-size:calc(var(--decoz-product-rating-size, 30px) - 4px);
	line-height:1;
	color:var(--decoz-white-shade, #f3f3f3);
	text-rendering:geometricPrecision;
}

.product-star-small-on
{
	color:var(--decoz-pink, #d6aab0);
}

.product-text-input
{
	width:100%;
	max-width:100%;
	box-sizing:border-box;
	overflow:hidden;
	padding:0px;
	line-height:51px;
	resize:none;
	margin:0px;
	text-indent:10px;
	border:1px solid rgb(204, 204, 204);
	border-radius:0px;
	-webkit-appearance:none;
	-webkit-border-radius:0;
}

.product-text-input-font
{
	font-size:20px;
}

.product-field-error
{
	color:#721c24;
	font-family:"Garet", sans-serif;
	font-size:13px;
	display:none;
	margin-top:8px;
	background-color:#f8d7da;
	border-left:4px solid #d6aab0;
	padding:6px 10px;
	border-radius:4px;
}

.product-font-option
{
	cursor:default;
}

.product-share-row
{
	display:flex;
	align-items:center;
	gap:8px;
	flex-wrap:wrap;
}

.product-facebook-share
{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:7px;
	min-height:32px;
	padding:0 12px;
	border:1px solid #1877f2;
	border-radius:4px;
	background:#1877f2;
	color:#ffffff;
	font-family:Arial, sans-serif;
	font-size:13px;
	font-weight:bold;
	line-height:32px;
	text-decoration:none;
	box-sizing:border-box;
}

.product-facebook-share:hover
{
	background:#166fe5;
	border-color:#166fe5;
	color:#ffffff;
	text-decoration:none;
}

.product-facebook-mark
{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:16px;
	height:16px;
	border-radius:2px;
	background:#ffffff;
	color:#1877f2;
	font-family:Arial, sans-serif;
	font-size:15px;
	font-weight:bold;
	line-height:16px;
}

.product-share-count
{
	display:inline-flex;
	align-items:center;
	min-height:30px;
	padding:0 10px;
	border:1px solid #d8dfea;
	border-radius:4px;
	background:#ffffff;
	color:#4b5563;
	font-family:Arial, sans-serif;
	font-size:12px;
	font-weight:bold;
	line-height:30px;
	box-sizing:border-box;
}

.product-share-count:empty
{
	display:none;
}

.product-file-input
{
	width:100%;
	box-sizing:border-box;
	padding:10px;
	border:1px solid #ccc;
	border-radius:5px;
	font-family:"Garet";
	cursor:pointer;
}

.product-file-label
{
	margin-top:6px;
	color:#666;
	font-family:"Garet";
}

.product-preview-image
{
	max-width:100%;
	height:auto;
	margin-top:10px;
	border:1px solid #ccc;
	border-radius:5px;
}

.product-checkbox
{
	width:20px;
	height:20px;
	margin-right:10px;
}

.product-select
{
	width:100%;
	padding:10px;
	font-family:"Garet";
	border:1px solid #ccc;
	border-radius:0px;
	-webkit-appearance:none;
	-webkit-border-radius:0;
	background-color:white;
	color:black;
}

.product-base-preview
{
	float:left;
	width:25%;
}

.product-qty-button
{
	cursor:pointer;
	width:20px;
	height:20px;
}

.product-purchase-row
{
	clear:both;
	display:grid;
	grid-template-columns:max-content minmax(170px, 1fr);
	align-items:stretch;
	width:100%;
	max-width:440px;
	gap:10px;
	margin-top:4px;
	box-sizing:border-box;
}

.product-quantity-control
{
	display:grid;
	grid-template-columns:44px 52px 44px;
	align-items:stretch;
	box-sizing:border-box;
}

.product-qty-step
{
	width:44px;
	height:44px;
	padding:0;
	border:1px solid var(--decoz-pink, #d6aab0);
	background:var(--decoz-pink, #d6aab0);
	color:#000000;
	font-family:"Garet";
	font-size:24px;
	font-weight:bold;
	line-height:1;
	display:flex;
	align-items:center;
	justify-content:center;
	cursor:pointer;
	border-radius:0;
	margin:0;
	box-sizing:border-box;
	-webkit-appearance:none;
	-webkit-border-radius:0;
	transition:background 160ms ease, border-color 160ms ease, color 160ms ease;
}

.product-qty-step:hover
{
	background:var(--decoz-pink-dark, #b97f89);
	border-color:var(--decoz-pink-dark, #b97f89);
	color:#ffffff;
}

.product-qty-input
{
	float:none;
	height:44px;
	width:52px;
	margin:0;
	border-left:0px;
	border-right:0px;
	border-top:1px solid #d6aab0;
	border-bottom:1px solid #d6aab0;
	text-align:center;
	font-size:20px;
	font-family:"Garet";
	padding:0px 10px 0px 10px;
	border-radius:0px;
	box-sizing:border-box;
	-webkit-appearance:none;
	-webkit-border-radius:0;
}

.product-purchase-row .product-auto-5c29f5c8
{
	float:none;
	width:100%;
	min-width:160px;
	margin:0;
	box-sizing:border-box;
	text-align:center;
}

@media only screen and (max-width: 520px)
{
	.product-purchase-row
	{
		max-width:none;
		grid-template-columns:max-content minmax(120px, 1fr);
	}

	.product-quantity-control
	{
		grid-template-columns:40px 46px 40px;
	}

	.product-qty-step
	{
		width:40px;
		height:42px;
		font-size:22px;
	}

	.product-qty-input
	{
		height:42px;
		width:46px;
		font-size:18px;
	}

	.product-purchase-row .product-auto-5c29f5c8
	{
		height:42px;
		min-width:130px;
		padding:0 14px;
	}
}

.product-review-label
{
	float:left;
	margin-right:10px;
	line-height:19px;
	font-family:"Garet";
}

.product-review-count
{
	float:left;
	line-height:19px;
	font-family:"Garet";
}

.product-review-muted
{
	color:grey;
}

.product-review-active
{
	color:black;
}

.product-review-progress
{
	position:absolute;
	left:1px;
	top:1px;
	width:198px;
	height:13px;
	appearance:none;
	-webkit-appearance:none;
	border:0;
	border-radius:25px;
	overflow:hidden;
}

.product-review-progress::-webkit-progress-bar
{
	background:transparent;
}

.product-review-progress::-webkit-progress-value
{
	background-image:linear-gradient(to right, #d8ced8, #d6aab0);
}

.product-review-progress::-moz-progress-bar
{
	background-image:linear-gradient(to right, #d8ced8, #d6aab0);
}
