/*
 Theme Name:     Picart-Divi Child
 Theme URI:      https://www.loganweb.co.uk
 Description:    Picart - Divi Child Theme
 Author:         LoganWeb
 Author URI:     https://www.loganweb.co.uk
 Template:       Divi
 Version:        1.0.0
*/
 
 
/* =Theme customization starts here
------------------------------------------------------- */


/* Lightweight artwork catalogue (replaces Divi AJAX Filter on the Shop). */
.picart-catalogue {
	padding: 54px 0 80px;
	background: #fff;
}

.picart-catalogue__inner {
	width: 90%;
	max-width: 1500px;
	margin: 0 auto;
}

.picart-catalogue__header {
	margin-bottom: 30px;
	text-align: center;
}

.picart-catalogue__header h1 {
	margin-bottom: 12px;
	font-family: var(--et_global_heading_font);
	font-size: var(--gvid-oci7b1dq2q, 60px);
	font-weight: 700;
	line-height: 1.2em;
	color: var(--gcid-heading-color, #000);
}

.picart-catalogue__filters {
	display: flex;
	flex-wrap: wrap;
	align-items: end;
	gap: 14px;
	margin-bottom: 24px;
	padding: 22px;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.07);
}

.picart-catalogue__filters .picart-catalogue__field {
	flex: 1 1 150px;
	min-width: 0;
}

.picart-catalogue__filters .picart-catalogue__field--search {
	flex-basis: 210px;
}

.picart-catalogue__orientation {
	flex: 0 1 auto;
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
}

.picart-catalogue__orientation legend {
	width: 100%;
	margin: 0 0 8px;
	font-family: var(--et_global_body_font);
	font-size: 13px;
	font-weight: 700;
	text-align: center;
	color: #222;
}

.picart-catalogue__orientation-options {
	display: inline-flex;
	gap: 5px;
	padding: 5px;
	border: 1px solid #d7d7d7;
	border-radius: 28px;
	background: #f5f5f5;
}

.picart-catalogue__orientation-options label {
	position: relative;
	margin: 0;
	cursor: pointer;
}

.picart-catalogue__orientation-options input {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
	pointer-events: none;
}

.picart-catalogue__orientation-options span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 132px;
	min-height: 44px;
	padding: 9px 22px;
	border-radius: 23px;
	font-family: var(--et_global_body_font);
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	color: #333;
	transition: background-color 180ms ease, color 180ms ease, box-shadow 180ms ease;
}

.picart-catalogue__orientation-options label:hover span {
	background: #d3fafa;
	color: #000;
}

.picart-catalogue__orientation-options input:checked + span {
	background: #00dfde;
	color: #000;
	box-shadow: 0 4px 12px rgba(0, 184, 183, 0.25);
}

.picart-catalogue__orientation-options input:focus-visible + span {
	outline: 3px solid rgba(0, 223, 222, 0.35);
	outline-offset: 2px;
}

.picart-catalogue__field label {
	display: block;
	margin: 0 0 6px;
	font-size: 13px;
	font-weight: 700;
	color: #222;
}

.picart-catalogue__field input,
.picart-catalogue__field select {
	width: 100%;
	min-height: 46px;
	padding: 9px 14px;
	border: 1px solid #d7d7d7;
	border-radius: 8px;
	background: #fff;
	font-size: 15px;
	color: #222;
}

.picart-catalogue__field input:focus,
.picart-catalogue__field select:focus {
	border-color: #00b8b7;
	outline: 3px solid rgba(0, 223, 222, 0.2);
}

.picart-catalogue__actions {
	display: flex;
	flex: 0 1 auto;
	align-items: center;
	gap: 12px;
	min-height: 46px;
}

.picart-catalogue__actions button {
	min-height: 46px;
	padding: 10px 20px;
	border: 0;
	border-radius: 24px;
	background: var(--gcid-heading-color, #000);
	font-family: var(--et_global_body_font);
	font-weight: 700;
	color: #fff;
	cursor: pointer;
}

.picart-catalogue__actions button:hover {
	background: #00dfde;
	color: #000;
}

.picart-catalogue__actions a {
	font-weight: 600;
	color: #555;
}

.picart-catalogue__summary {
	margin: 0 0 18px;
	font-size: 15px;
	color: #555;
}

.picart-catalogue ul.products {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 23px 20px;
}

.picart-catalogue ul.products::before,
.picart-catalogue ul.products::after {
	display: none;
}

.picart-catalogue ul.products li.product {
	display: flex;
	flex-direction: column;
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 0 24px !important;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.07);
	text-align: center;
	overflow: hidden;
	transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

.picart-catalogue ul.products li.product > .woocommerce-loop-product__link {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
}

.picart-catalogue ul.products li.product:hover {
	border-color: rgba(0, 223, 222, 0.55);
	box-shadow: 0 16px 38px rgba(0, 0, 0, 0.12);
	transform: translateY(-5px);
}

.picart-catalogue ul.products li.product img {
	display: block;
	width: 100%;
	margin-bottom: 15px;
	transition: transform 350ms ease;
}

.picart-catalogue ul.products li.product:hover img {
	transform: scale(1.025);
}

.picart-catalogue ul.products li.product .woocommerce-loop-product__title {
	margin: 0;
	padding: 15px 10px 6px !important;
	font-family: var(--et_global_heading_font);
	font-size: var(--gvid-yh9bdftlq4, 16px) !important;
	font-weight: 700;
	line-height: 1.1em;
	color: var(--gcid-heading-color, #000) !important;
}

.picart-catalogue ul.products li.product .price {
	display: block;
	margin: 0;
	padding: 0 10px;
	font-family: var(--et_global_body_font);
	font-size: var(--gvid-yh9bdftlq4, 16px) !important;
	font-weight: 600;
	line-height: 1.3em;
	color: var(--gcid-2tcu6nirll, #00b8b7) !important;
}

.picart-catalogue ul.products li.product .price .amount {
	color: var(--gcid-2tcu6nirll, #00b8b7) !important;
}

.picart-catalogue ul.products li.product .button {
	display: inline-block !important;
	align-self: center;
	visibility: visible !important;
	opacity: 1 !important;
	margin: 18px auto 0 !important;
	padding: 10px 22px !important;
	border: 0 !important;
	border-radius: 25px !important;
	background: var(--gcid-heading-color, #000) !important;
	font-family: var(--et_global_body_font);
	font-size: var(--gvid-yh9bdftlq4, 16px);
	font-weight: 600;
	line-height: 1.2em !important;
	color: #fff !important;
	box-shadow: 0 5px 14px rgba(0, 0, 0, 0.15);
	transition: color 180ms ease, background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.picart-catalogue ul.products li.product .button:hover {
	padding: 10px 22px !important;
	background: #00dfde !important;
	color: #000 !important;
	box-shadow: 0 8px 20px rgba(0, 223, 222, 0.3);
	transform: translateY(-2px);
}

.picart-catalogue ul.products li.product .button::after {
	display: none !important;
}

.picart-catalogue .page-numbers {
	display: flex;
	justify-content: center;
	gap: 8px;
	margin: 46px 0 0;
	padding: 8px;
	border-radius: 32px;
	background: #fff;
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.08);
	list-style: none;
}

.picart-catalogue .page-numbers li {
	margin: 0;
}

.picart-catalogue .page-numbers a,
.picart-catalogue .page-numbers span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	height: 42px;
	padding: 0 12px;
	border-radius: 22px;
	background: #fff;
	font-family: var(--et_global_body_font);
	font-size: 15px;
	font-weight: 600;
	color: #222;
	transition: color 180ms ease, background-color 180ms ease, transform 180ms ease;
}

.picart-catalogue .page-numbers a:hover {
	background: #d3fafa;
	color: #000;
	transform: translateY(-1px);
}

.picart-catalogue .page-numbers .current {
	background: #00dfde;
	color: #000;
}

.picart-catalogue__empty {
	padding: 40px;
	border-radius: 14px;
	background: #fff;
	text-align: center;
}

@media (max-width: 1180px) {
	.picart-catalogue__orientation,
	.picart-catalogue__filters .picart-catalogue__field {
		flex-grow: 1;
	}
}

@media (max-width: 980px) {
	.picart-catalogue ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 700px) {
	.picart-catalogue {
		padding: 32px 0 56px;
	}

	.picart-catalogue__inner {
		width: calc(100% - 30px);
	}

	.picart-catalogue__header {
		margin-bottom: 22px;
	}

	.picart-catalogue__filters {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		padding: 16px;
	}

	.picart-catalogue__orientation {
		width: 100%;
		text-align: center;
	}

	.picart-catalogue__orientation-options {
		display: flex;
		width: 100%;
	}

	.picart-catalogue__orientation-options label {
		flex: 1 1 50%;
	}

	.picart-catalogue__orientation-options span {
		width: 100%;
		min-width: 0;
		padding-right: 16px;
		padding-left: 16px;
	}

	.picart-catalogue__filters .picart-catalogue__field,
	.picart-catalogue__filters .picart-catalogue__field--search {
		flex: 0 0 auto;
		width: 100%;
	}

	.picart-catalogue__actions {
		flex: 0 0 auto;
		justify-content: space-between;
		width: 100%;
	}

	.picart-catalogue__actions button {
		flex: 1 1 auto;
	}

	.picart-catalogue ul.products {
		display: flex !important;
		flex-direction: column;
		align-items: stretch;
		width: 100%;
		gap: 18px;
	}

	.picart-catalogue ul.products[class*="columns-"] li.product,
	.picart-catalogue ul.products li.product {
		flex: 0 0 100%;
		float: none !important;
		clear: both;
		width: 100% !important;
		max-width: none !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
	}

	.picart-catalogue ul.products li.product > a,
	.picart-catalogue ul.products li.product .woocommerce-loop-product__link,
	.picart-catalogue ul.products li.product .et_shop_image {
		display: block;
		width: 100% !important;
	}

	.picart-catalogue ul.products li.product img,
	.picart-catalogue ul.products[class*="columns-"] li.product img {
		display: block;
		width: 100% !important;
		max-width: none !important;
		height: auto;
	}

	.picart-catalogue ul.products li.product:hover {
		transform: none;
	}

	.picart-catalogue .page-numbers {
		flex-wrap: wrap;
		gap: 5px;
		padding: 6px;
	}

	.picart-catalogue .page-numbers a,
	.picart-catalogue .page-numbers span {
		min-width: 38px;
		height: 38px;
		padding: 0 10px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.picart-catalogue ul.products li.product,
	.picart-catalogue ul.products li.product img,
	.picart-catalogue ul.products li.product .button,
	.picart-catalogue .page-numbers a {
		transition: none;
		transform: none;
	}
}

/*
 * Product category archives
 *
 * The main Shop page uses Divi AJAX Filter's Archive Loop, while taxonomy
 * archives use Divi's native Shop module. Keep the native, term-aware query
 * and make its product grid visually match the Shop archive loop.
 */
body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop {
	text-align: center;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_row {
	width: 90% !important;
	max-width: 1500px !important;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	column-gap: 20px;
	row-gap: 23px;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products::before,
body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products::after {
	display: none;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product {
	display: flex !important;
	flex-direction: column;
	align-items: stretch;
	float: none;
	width: auto;
	height: 100%;
	margin: 0;
	padding: 0 0 24px !important;
	background: #fff !important;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 14px;
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.07);
	color: #000;
	text-align: center;
	overflow: hidden;
	transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product > .woocommerce-loop-product__link {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product:hover {
	padding: 0 0 24px !important;
	background: #fff !important;
	border-color: rgba(0, 223, 222, 0.55);
	box-shadow: 0 16px 38px rgba(0, 0, 0, 0.12);
	color: #000 !important;
	transform: translateY(-5px);
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product .et_shop_image {
	margin-bottom: 15px;
	overflow: hidden;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product .et_shop_image img {
	display: block;
	width: 100%;
	transition: transform 350ms ease;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product:hover .et_shop_image img {
	transform: scale(1.025);
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product .et_overlay {
	display: none !important;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product .woocommerce-loop-product__title {
	margin: 0;
	padding: 0 10px 6px;
	font-family: var(--et_global_heading_font);
	font-size: var(--gvid-yh9bdftlq4, 16px) !important;
	font-weight: 700;
	line-height: 1.1em;
	color: var(--gcid-heading-color, #000) !important;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product .woocommerce-product-details__short-description,
body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product .product-description,
body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product .post-content,
body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product .excerpt {
	margin: 0;
	padding: 0 10px 8px;
	font-family: var(--et_global_body_font);
	font-size: var(--gvid-yh9bdftlq4, 16px) !important;
	font-weight: 400;
	line-height: 1.3em;
	color: var(--gcid-heading-color, #000) !important;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product .price {
	display: block;
	margin: 0;
	padding: 0 10px;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product .price,
body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product .price .amount {
	font-family: var(--et_global_body_font);
	font-size: var(--gvid-yh9bdftlq4, 16px) !important;
	font-weight: 600;
	line-height: 1.3em;
	color: var(--gcid-2tcu6nirll, #00b8b7) !important;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product .button {
	display: inline-block !important;
	align-self: center;
	flex: 0 0 auto;
	position: relative;
	z-index: 1;
	visibility: visible !important;
	opacity: 1 !important;
	margin: 18px auto 0 !important;
	padding: 10px 22px !important;
	border: 0;
	border-radius: 25px;
	background: var(--gcid-heading-color, #000);
	font-family: var(--et_global_body_font);
	font-size: var(--gvid-yh9bdftlq4, 16px);
	font-weight: 600;
	line-height: 1.2em !important;
	color: #fff !important;
	box-shadow: 0 5px 14px rgba(0, 0, 0, 0.15);
	transition: color 180ms ease, background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product .button:hover {
	padding: 10px 22px !important;
	background: #00dfde;
	color: #000 !important;
	box-shadow: 0 8px 20px rgba(0, 223, 222, 0.3);
	transform: translateY(-2px);
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product .button::after {
	display: none;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product .button:focus-visible,
body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body nav.woocommerce-pagination a:focus-visible {
	outline: 3px solid rgba(0, 223, 222, 0.55);
	outline-offset: 3px;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .woocommerce-result-count {
	margin: 0 0 20px;
	font-size: 15px;
	color: #555;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .woocommerce-ordering {
	margin: 0 0 20px;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-pa_image_sizes) #page-container .et-l--body .picart-archive-orientation {
	float: right;
	margin: 0 12px 20px 0;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-pa_image_sizes) #page-container .et-l--body .picart-archive-orientation select,
body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .woocommerce-ordering select {
	min-height: 44px;
	padding: 8px 42px 8px 16px;
	border: 1px solid #d7d7d7;
	border-radius: 24px;
	background-color: #fff;
	font-family: var(--et_global_body_font);
	font-size: 15px;
	color: #222;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.05);
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-pa_image_sizes) #page-container .et-l--body .picart-archive-orientation select:focus,
body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .woocommerce-ordering select:focus {
	border-color: #00b8b7;
	outline: 3px solid rgba(0, 223, 222, 0.2);
}

@media (max-width: 767px) {
	body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-pa_image_sizes) #page-container .et-l--body .picart-archive-orientation,
	body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-pa_image_sizes) #page-container .et-l--body .woocommerce-ordering {
		float: left;
		width: calc(50% - 6px);
		margin: 0 0 16px;
	}

	body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-pa_image_sizes) #page-container .et-l--body .picart-archive-orientation {
		margin-right: 12px;
	}

	body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-pa_image_sizes) #page-container .et-l--body .picart-archive-orientation select,
	body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-pa_image_sizes) #page-container .et-l--body .woocommerce-ordering select {
		width: 100%;
	}
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body nav.woocommerce-pagination {
	margin-top: 46px;
	text-align: center;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body nav.woocommerce-pagination ul.page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin: 0;
	padding: 8px;
	border: 0;
	border-radius: 32px;
	background: #fff;
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.08);
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body nav.woocommerce-pagination ul.page-numbers li {
	margin: 0;
	border: 0;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body nav.woocommerce-pagination ul.page-numbers li a,
body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body nav.woocommerce-pagination ul.page-numbers li span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	height: 42px;
	padding: 0 12px;
	border-radius: 21px;
	font-family: var(--et_global_body_font);
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	color: #222;
	transition: color 180ms ease, background-color 180ms ease, transform 180ms ease;
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body nav.woocommerce-pagination ul.page-numbers li a:hover {
	background: #d3fafa;
	color: #000;
	transform: translateY(-1px);
}

body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body nav.woocommerce-pagination ul.page-numbers li span.current {
	background: #00dfde;
	color: #000;
}

@media (prefers-reduced-motion: reduce) {
	body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product,
	body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product .et_shop_image img,
	body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products li.product .button,
	body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body nav.woocommerce-pagination ul.page-numbers li a {
		transition: none;
		transform: none;
	}
}

@media (max-width: 980px) {
	body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 479px) {
	body:is(.tax-product_cat, .tax-product_tag, .tax-image-artist, .tax-frame-orientation, .tax-pa_image_sizes) #page-container .et-l--body .et_pb_shop ul.products {
		grid-template-columns: 1fr;
	}
}

/* Match the AJAX-powered /shop/ archive loop to the category card styling. */
body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop {
	width: 100%;
	text-align: center;
}

body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .divi-filter-loop-container,
body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .loop-grid {
	column-gap: 20px !important;
	row-gap: 23px !important;
}

body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .dmach-grid-item,
body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop li.product {
	padding-bottom: 24px !important;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 14px;
	background: #fff !important;
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.07);
	overflow: hidden;
	transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .dmach-grid-item:hover,
body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop li.product:hover {
	border-color: rgba(0, 223, 222, 0.55);
	box-shadow: 0 16px 38px rgba(0, 0, 0, 0.12);
	transform: translateY(-5px);
}

body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .et_shop_image,
body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .de_db_product_thumbnail {
	overflow: hidden;
}

body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .et_shop_image img,
body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .de_db_product_thumbnail img,
body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .woocommerce-loop-product__link img {
	display: block;
	width: 100%;
	transition: transform 350ms ease;
}

body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .dmach-grid-item:hover img,
body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop li.product:hover img {
	transform: scale(1.025);
}

body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .entry-title,
body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .woocommerce-loop-product__title {
	margin: 0;
	padding: 15px 10px 6px;
}

body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .price {
	display: block;
	margin: 0;
	padding: 0 10px;
}

body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .add_to_cart_button,
body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .button {
	display: inline-block;
	margin-top: 18px;
	padding: 10px 22px !important;
	border: 0 !important;
	border-radius: 25px !important;
	background: var(--gcid-heading-color, #000) !important;
	font-family: var(--et_global_body_font);
	font-weight: 600;
	line-height: 1.2em !important;
	color: #fff !important;
	box-shadow: 0 5px 14px rgba(0, 0, 0, 0.15);
	transition: color 180ms ease, background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

/*
 * Divi AJAX Filter sometimes leaves WooCommerce's hook-generated button in a
 * refreshed card after its own full-width button. The plugin button is the
 * canonical Shop action; never display a later duplicate in the same card.
 */
body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop li.product:has(.et_pb_button_fullwidth) .add_to_cart_button:not(.et_pb_button_fullwidth) {
	display: none !important;
}

body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .add_to_cart_button:hover,
body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .button:hover {
	padding: 10px 22px !important;
	background: #00dfde !important;
	color: #000 !important;
	box-shadow: 0 8px 20px rgba(0, 223, 222, 0.3);
	transform: translateY(-2px);
}

body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .add_to_cart_button::after,
body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .button::after {
	display: none !important;
}

body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .divi-filter-pagination {
	margin-top: 46px;
	text-align: center;
}

body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .divi-filter-pagination ul.page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin: 0;
	padding: 8px;
	border: 0;
	border-radius: 32px;
	background: #fff;
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.08);
}

body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .divi-filter-pagination ul.page-numbers li {
	margin: 0;
	border: 0;
	background: transparent;
}

body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .divi-filter-pagination a,
body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .divi-filter-pagination span.current {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	height: 42px;
	padding: 0 12px;
	border-radius: 21px;
	font-family: var(--et_global_body_font);
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	color: #222;
	transition: color 180ms ease, background-color 180ms ease, transform 180ms ease;
}

body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .divi-filter-pagination a:hover {
	background: #d3fafa;
	color: #000;
	transform: translateY(-1px);
}

body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .divi-filter-pagination span.current {
	background: #00dfde !important;
	color: #000;
}

@media (prefers-reduced-motion: reduce) {
	body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .dmach-grid-item,
	body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop li.product,
	body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop img,
	body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .button,
	body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_archive_loop .divi-filter-pagination a {
		transition: none;
		transform: none;
	}
}

/* Keep the Shop filters compact and side-by-side on phones. */
@media (max-width: 767px) {
	body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_filter_posts .divi-filter-container {
		display: flex !important;
		flex-flow: row wrap !important;
		align-items: stretch;
		gap: 8px !important;
	}

	body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_filter_posts .de_ajax_filter_filter_posts_item {
		flex: 1 1 calc(50% - 4px) !important;
		width: calc(50% - 4px) !important;
		min-width: 135px;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_filter_posts .search_filter_cont,
	body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_filter_posts fieldset,
	body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_filter_posts .divi-filter-item {
		width: 100%;
		margin: 0 !important;
		padding: 0;
		border: 0;
	}

	body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_filter_posts select,
	body.woocommerce-shop #page-container .et-l--body .de_ajax_filter_filter_posts input[type="text"] {
		width: 100% !important;
		min-height: 44px;
	}
}

/*
 * Single-product related products
 *
 * Match the card treatment used by the AJAX-powered Shop archive. This is
 * deliberately scoped to single-product pages so normal WooCommerce loops and
 * Divi modules elsewhere on the site are unaffected.
 */
body.single-product #page-container .et-l--body .et_pb_wc_related_products,
body.single-product #page-container .et-l--body section.related.products {
	width: 100%;
}

body.single-product #page-container .et-l--body .et_pb_wc_related_products > h2,
body.single-product #page-container .et-l--body section.related.products > h2 {
	margin: 0 0 22px;
	font-family: var(--et_global_heading_font);
	font-weight: 700;
	color: var(--gcid-heading-color, #000);
}

body.single-product #page-container .et-l--body .et_pb_wc_related_products ul.products,
body.single-product #page-container .et-l--body section.related.products ul.products {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: 20px;
	row-gap: 23px;
}

body.single-product #page-container .et-l--body .et_pb_wc_related_products ul.products::before,
body.single-product #page-container .et-l--body .et_pb_wc_related_products ul.products::after,
body.single-product #page-container .et-l--body section.related.products ul.products::before,
body.single-product #page-container .et-l--body section.related.products ul.products::after {
	display: none;
}

body.single-product #page-container .et-l--body .et_pb_wc_related_products ul.products li.product,
body.single-product #page-container .et-l--body section.related.products ul.products li.product {
	display: flex !important;
	flex-direction: column;
	align-items: stretch;
	float: none !important;
	width: auto !important;
	height: 100%;
	margin: 0 !important;
	padding: 0 0 24px !important;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 14px;
	background: #fff !important;
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.07);
	color: #000;
	text-align: center;
	overflow: hidden;
	transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

body.single-product #page-container .et-l--body .et_pb_wc_related_products ul.products li.product:hover,
body.single-product #page-container .et-l--body section.related.products ul.products li.product:hover {
	padding: 0 0 24px !important;
	border-color: rgba(0, 223, 222, 0.55);
	background: #fff !important;
	box-shadow: 0 16px 38px rgba(0, 0, 0, 0.12);
	color: #000 !important;
	transform: translateY(-5px);
}

body.single-product #page-container .et-l--body .et_pb_wc_related_products .et_shop_image,
body.single-product #page-container .et-l--body .et_pb_wc_related_products .woocommerce-loop-product__link,
body.single-product #page-container .et-l--body section.related.products .et_shop_image,
body.single-product #page-container .et-l--body section.related.products .woocommerce-loop-product__link {
	display: block;
	overflow: hidden;
}

body.single-product #page-container .et-l--body .et_pb_wc_related_products li.product > .woocommerce-loop-product__link,
body.single-product #page-container .et-l--body section.related.products li.product > .woocommerce-loop-product__link {
	flex: 1 1 auto;
}

body.single-product #page-container .et-l--body .et_pb_wc_related_products ul.products li.product img,
body.single-product #page-container .et-l--body section.related.products ul.products li.product img {
	display: block;
	width: 100%;
	margin: 0 0 15px !important;
	transition: transform 350ms ease;
}

body.single-product #page-container .et-l--body .et_pb_wc_related_products ul.products li.product:hover img,
body.single-product #page-container .et-l--body section.related.products ul.products li.product:hover img {
	transform: scale(1.025);
}

body.single-product #page-container .et-l--body .et_pb_wc_related_products .et_overlay,
body.single-product #page-container .et-l--body section.related.products .et_overlay {
	display: none !important;
}

body.single-product #page-container .et-l--body .et_pb_wc_related_products .woocommerce-loop-product__title,
body.single-product #page-container .et-l--body section.related.products .woocommerce-loop-product__title {
	margin: 0;
	padding: 0 10px 6px !important;
	font-family: var(--et_global_heading_font);
	font-size: var(--gvid-yh9bdftlq4, 16px) !important;
	font-weight: 700;
	line-height: 1.1em;
	color: var(--gcid-heading-color, #000) !important;
}

body.single-product #page-container .et-l--body .et_pb_wc_related_products .price,
body.single-product #page-container .et-l--body section.related.products .price {
	display: block;
	margin: 0;
	padding: 0 10px;
}

body.single-product #page-container .et-l--body .et_pb_wc_related_products .price,
body.single-product #page-container .et-l--body .et_pb_wc_related_products .price .amount,
body.single-product #page-container .et-l--body section.related.products .price,
body.single-product #page-container .et-l--body section.related.products .price .amount {
	font-family: var(--et_global_body_font);
	font-size: var(--gvid-yh9bdftlq4, 16px) !important;
	font-weight: 600;
	line-height: 1.3em;
	color: var(--gcid-2tcu6nirll, #00b8b7) !important;
}

body.single-product #page-container .et-l--body .et_pb_wc_related_products .star-rating,
body.single-product #page-container .et-l--body section.related.products .star-rating {
	float: none;
	margin: 8px auto 0 !important;
}

body.single-product #page-container .et-l--body .et_pb_wc_related_products li.product .button,
body.single-product #page-container .et-l--body section.related.products li.product .button {
	display: inline-block !important;
	align-self: center;
	flex: 0 0 auto;
	margin: 18px auto 0 !important;
	padding: 10px 22px !important;
	border: 0;
	border-radius: 25px;
	background: var(--gcid-heading-color, #000);
	font-family: var(--et_global_body_font);
	font-size: var(--gvid-yh9bdftlq4, 16px);
	font-weight: 600;
	line-height: 1.2em !important;
	color: #fff !important;
	box-shadow: 0 5px 14px rgba(0, 0, 0, 0.15);
	transition: color 180ms ease, background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

body.single-product #page-container .et-l--body .et_pb_wc_related_products li.product .button:hover,
body.single-product #page-container .et-l--body section.related.products li.product .button:hover {
	padding: 10px 22px !important;
	background: #00dfde;
	color: #000 !important;
	box-shadow: 0 8px 20px rgba(0, 223, 222, 0.3);
	transform: translateY(-2px);
}

body.single-product #page-container .et-l--body .et_pb_wc_related_products li.product .button::after,
body.single-product #page-container .et-l--body section.related.products li.product .button::after {
	display: none;
}

@media (prefers-reduced-motion: reduce) {
	body.single-product #page-container .et-l--body .et_pb_wc_related_products ul.products li.product,
	body.single-product #page-container .et-l--body .et_pb_wc_related_products ul.products li.product img,
	body.single-product #page-container .et-l--body section.related.products ul.products li.product,
	body.single-product #page-container .et-l--body section.related.products ul.products li.product img {
		transition: none;
		transform: none;
	}
}

@media (max-width: 980px) {
	body.single-product #page-container .et-l--body .et_pb_wc_related_products ul.products,
	body.single-product #page-container .et-l--body section.related.products ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 479px) {
	body.single-product #page-container .et-l--body .et_pb_wc_related_products ul.products,
	body.single-product #page-container .et-l--body section.related.products ul.products {
		grid-template-columns: 1fr;
	}
}

/* WooCommerce My Account */
body.woocommerce-account #main-content {
	background: #f7f9f9;
}

body.woocommerce-account #page-container .et-l--body .et_pb_row,
body.woocommerce-account #main-content .container {
	width: 90%;
	max-width: 1500px;
}

body.logged-in.woocommerce-account .woocommerce {
	display: grid;
	grid-template-columns: minmax(230px, 280px) minmax(0, 1fr);
	gap: 32px;
	align-items: start;
	padding: 36px 0 70px;
}

body.logged-in.woocommerce-account .woocommerce::before,
body.logged-in.woocommerce-account .woocommerce::after {
	display: none;
}

body.woocommerce-account .woocommerce-MyAccount-navigation {
	float: none;
	width: 100%;
	padding: 12px;
	border: 1px solid rgba(0, 0, 0, 0.07);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 10px 32px rgba(0, 0, 0, 0.07);
	position: sticky;
	top: 24px;
}

body.admin-bar.woocommerce-account .woocommerce-MyAccount-navigation {
	top: 56px;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li {
	margin: 3px 0;
	padding: 0;
	border: 0;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a {
	display: flex;
	align-items: center;
	min-height: 46px;
	padding: 10px 15px;
	border-radius: 10px;
	font-family: var(--et_global_body_font);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.25;
	color: #252525;
	transition: color 180ms ease, background-color 180ms ease, transform 180ms ease;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
	padding-left: 19px;
	background: #d3fafa;
	color: #000;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	background: #00dfde;
	color: #000;
	box-shadow: 0 5px 16px rgba(0, 223, 222, 0.24);
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid #ececec;
}

body.woocommerce-account .woocommerce-MyAccount-content {
	float: none;
	width: 100%;
	min-width: 0;
	padding: clamp(24px, 4vw, 46px);
	border: 1px solid rgba(0, 0, 0, 0.07);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 10px 32px rgba(0, 0, 0, 0.07);
}

body.woocommerce-account .woocommerce-MyAccount-content > :first-child {
	margin-top: 0;
}

body.woocommerce-account .woocommerce-MyAccount-content > :last-child {
	margin-bottom: 0;
}

body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3 {
	margin: 0 0 18px;
	font-family: var(--et_global_heading_font);
	font-weight: 700;
	line-height: 1.2;
	color: #111;
}

body.woocommerce-account .woocommerce-MyAccount-content p {
	line-height: 1.7;
}

body.woocommerce-account .woocommerce-MyAccount-content a:not(.button) {
	font-weight: 600;
	color: #008f8e;
	text-decoration-color: transparent;
	text-underline-offset: 3px;
	transition: color 180ms ease, text-decoration-color 180ms ease;
}

body.woocommerce-account .woocommerce-MyAccount-content a:not(.button):hover {
	color: #006f6e;
	text-decoration: underline;
	text-decoration-color: currentColor;
}

body.woocommerce-account .woocommerce form .form-row {
	margin: 0 0 20px;
}

body.woocommerce-account .woocommerce form .form-row label {
	margin-bottom: 7px;
	font-size: 14px;
	font-weight: 700;
	color: #292929;
}

body.woocommerce-account .woocommerce input.input-text,
body.woocommerce-account .woocommerce input[type="email"],
body.woocommerce-account .woocommerce input[type="password"],
body.woocommerce-account .woocommerce input[type="tel"],
body.woocommerce-account .woocommerce textarea,
body.woocommerce-account .woocommerce select {
	width: 100%;
	min-height: 48px;
	padding: 11px 15px;
	border: 1px solid #d8dddd;
	border-radius: 10px;
	background: #fff;
	font-family: var(--et_global_body_font);
	font-size: 16px;
	color: #222;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025);
	transition: border-color 180ms ease, box-shadow 180ms ease;
}

body.woocommerce-account .woocommerce textarea {
	min-height: 120px;
	resize: vertical;
}

body.woocommerce-account .woocommerce input:focus,
body.woocommerce-account .woocommerce textarea:focus,
body.woocommerce-account .woocommerce select:focus {
	border-color: #00b8b7;
	outline: 0;
	box-shadow: 0 0 0 4px rgba(0, 223, 222, 0.17);
}

body.woocommerce-account .woocommerce fieldset {
	margin: 30px 0 24px;
	padding: 24px;
	border: 1px solid #e1e6e6;
	border-radius: 12px;
}

body.woocommerce-account .woocommerce fieldset legend {
	padding: 0 10px;
	font-family: var(--et_global_heading_font);
	font-weight: 700;
	color: #222;
}

body.woocommerce-account .woocommerce .button,
body.woocommerce-account .woocommerce button.button,
body.woocommerce-account .woocommerce input.button {
	padding: 11px 22px !important;
	border: 0 !important;
	border-radius: 24px !important;
	background: #111 !important;
	font-family: var(--et_global_body_font);
	font-size: 15px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	color: #fff !important;
	box-shadow: 0 5px 14px rgba(0, 0, 0, 0.15);
	transition: color 180ms ease, background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

body.woocommerce-account .woocommerce .button:hover,
body.woocommerce-account .woocommerce button.button:hover,
body.woocommerce-account .woocommerce input.button:hover {
	padding: 11px 22px !important;
	background: #00dfde !important;
	color: #000 !important;
	box-shadow: 0 8px 20px rgba(0, 223, 222, 0.28);
	transform: translateY(-2px);
}

body.woocommerce-account .woocommerce .button::after,
body.woocommerce-account .woocommerce button.button::after {
	display: none !important;
}

body.woocommerce-account .woocommerce .button:focus-visible,
body.woocommerce-account .woocommerce-MyAccount-navigation a:focus-visible {
	outline: 3px solid rgba(0, 223, 222, 0.55);
	outline-offset: 3px;
}

body.woocommerce-account .woocommerce table.shop_table {
	width: 100%;
	margin: 22px 0;
	border: 1px solid #e1e6e6 !important;
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 12px;
	background: #fff;
	overflow: hidden;
}

body.woocommerce-account .woocommerce table.shop_table th {
	padding: 14px 16px;
	border: 0;
	border-bottom: 1px solid #dfe5e5;
	background: #f3f7f7;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #333;
}

body.woocommerce-account .woocommerce table.shop_table td {
	padding: 16px;
	border: 0;
	border-bottom: 1px solid #edf0f0;
	vertical-align: middle;
}

body.woocommerce-account .woocommerce table.shop_table tr:last-child td {
	border-bottom: 0;
}

body.woocommerce-account .woocommerce table.shop_table tbody tr {
	transition: background-color 160ms ease;
}

body.woocommerce-account .woocommerce table.shop_table tbody tr:hover {
	background: #f7fafa;
}

body.woocommerce-account .woocommerce .woocommerce-Addresses {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	margin-top: 24px;
}

body.woocommerce-account .woocommerce .woocommerce-Address {
	float: none;
	width: 100%;
	padding: 24px;
	border: 1px solid #e1e6e6;
	border-radius: 12px;
	background: #fbfdfd;
}

body.woocommerce-account .woocommerce .woocommerce-Address-title h3 {
	font-size: 19px;
}

body.woocommerce-account .woocommerce .woocommerce-Address address {
	line-height: 1.7;
	color: #555;
}

body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error {
	margin: 0 0 24px;
	padding: 17px 20px 17px 48px !important;
	border: 0;
	border-radius: 12px;
	background: #e9fbfb !important;
	color: #153b3b !important;
	box-shadow: none;
}

body.woocommerce-account .woocommerce-error {
	background: #fff0f0 !important;
	color: #7c2020 !important;
}

body.woocommerce-account .woocommerce-message::before,
body.woocommerce-account .woocommerce-info::before {
	color: #008f8e;
}

body.woocommerce-account .woocommerce-error::before {
	color: #c33;
}

@media (max-width: 980px) {
	body.logged-in.woocommerce-account .woocommerce {
		grid-template-columns: 1fr;
		gap: 22px;
		padding-top: 24px;
	}

	body.woocommerce-account .woocommerce-MyAccount-navigation {
		position: static;
	}

	body.woocommerce-account .woocommerce-MyAccount-navigation ul {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 6px;
	}

	body.woocommerce-account .woocommerce-MyAccount-navigation li,
	body.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout {
		margin: 0;
		padding: 0;
		border: 0;
	}
}

@media (max-width: 767px) {
	body.woocommerce-account #page-container .et-l--body .et_pb_row,
	body.woocommerce-account #main-content .container {
		width: 92%;
	}

	body.woocommerce-account .woocommerce-MyAccount-content {
		padding: 22px 18px;
	}

	body.woocommerce-account .woocommerce .woocommerce-Addresses {
		grid-template-columns: 1fr;
	}

	body.woocommerce-account .woocommerce table.shop_table_responsive thead {
		display: none;
	}

	body.woocommerce-account .woocommerce table.shop_table_responsive tr {
		display: block;
		padding: 10px 0;
	}

	body.woocommerce-account .woocommerce table.shop_table_responsive td {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 16px;
		padding: 10px 14px;
		text-align: right !important;
	}
}

@media (max-width: 479px) {
	body.woocommerce-account .woocommerce-MyAccount-navigation ul {
		grid-template-columns: 1fr;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.woocommerce-account .woocommerce-MyAccount-navigation a,
	body.woocommerce-account .woocommerce .button,
	body.woocommerce-account .woocommerce table.shop_table tbody tr {
		transition: none;
		transform: none;
	}
}

/* My Account: Favourite Categories */
body.woocommerce-account #shado_category_form {
	margin: 0 !important;
}

body.woocommerce-account #shado_category_form ul {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px !important;
	margin: 0 0 28px !important;
	padding: 0 !important;
	list-style: none !important;
}

body.woocommerce-account #shado_category_form ul li {
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 15px;
}

body.woocommerce-account #shado_category_form ul li label {
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 58px;
	padding: 12px 15px;
	border: 1px solid #dfe5e5;
	border-radius: 12px;
	background: #fbfdfd;
	font-family: var(--et_global_body_font);
	font-weight: 600;
	line-height: 1.3;
	color: #292929;
	cursor: pointer;
	user-select: none;
	transition: border-color 180ms ease, background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

body.woocommerce-account #shado_category_form ul li label:hover {
	border-color: rgba(0, 184, 183, 0.55);
	background: #f1ffff;
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.06);
	transform: translateY(-2px);
}

body.woocommerce-account #shado_category_form input[type="checkbox"] {
	width: 22px;
	height: 22px;
	min-width: 22px;
	margin: 0;
	border: 2px solid #aeb8b8;
	border-radius: 6px;
	background: #fff;
	appearance: none;
	-webkit-appearance: none;
	cursor: pointer;
	position: relative;
	transition: border-color 160ms ease, background-color 160ms ease, box-shadow 160ms ease;
}

body.woocommerce-account #shado_category_form input[type="checkbox"]::after {
	content: "";
	width: 10px;
	height: 6px;
	border-left: 2px solid #000;
	border-bottom: 2px solid #000;
	opacity: 0;
	position: absolute;
	top: 5px;
	left: 4px;
	transform: rotate(-45deg) scale(0.7);
	transition: opacity 140ms ease, transform 140ms ease;
}

body.woocommerce-account #shado_category_form input[type="checkbox"]:checked {
	border-color: #00dfde;
	background: #00dfde;
	box-shadow: 0 3px 10px rgba(0, 223, 222, 0.28);
}

body.woocommerce-account #shado_category_form input[type="checkbox"]:checked::after {
	opacity: 1;
	transform: rotate(-45deg) scale(1);
}

body.woocommerce-account #shado_category_form input[type="checkbox"]:focus-visible {
	outline: 3px solid rgba(0, 223, 222, 0.35);
	outline-offset: 3px;
}

body.woocommerce-account #shado_category_form ul li label:has(input:checked) {
	border-color: #00c7c6;
	background: #e9ffff;
	box-shadow: inset 0 0 0 1px rgba(0, 223, 222, 0.22), 0 6px 18px rgba(0, 223, 222, 0.1);
}

body.woocommerce-account #shado_category_form > div:last-child {
	display: flex;
	justify-content: flex-start;
	padding-top: 4px;
	text-align: left !important;
}

body.woocommerce-account #shado_category_form .button {
	min-width: 180px;
	text-align: center;
}

@media (max-width: 1200px) {
	body.woocommerce-account #shado_category_form ul {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	body.woocommerce-account #shado_category_form ul {
		grid-template-columns: 1fr;
	}

	body.woocommerce-account #shado_category_form .button {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.woocommerce-account #shado_category_form ul li label,
	body.woocommerce-account #shado_category_form input[type="checkbox"] {
		transition: none;
		transform: none;
	}
}

/* My Account: Favourite Images */
body.woocommerce-account #image-selection-form {
	margin-top: 0 !important;
}

body.woocommerce-account #image-selection-form #favourites-wrapper {
	margin-bottom: 30px;
	padding: 24px;
	border: 1px solid rgba(0, 223, 222, 0.35);
	border-radius: 14px;
	background: #f4ffff;
}

body.woocommerce-account #image-selection-form #favourites-wrapper > h3 {
	margin-bottom: 20px;
}

body.woocommerce-account #image-selection-form .productBoxlet {
	width: 100%;
	margin: 20px 0 0;
	padding: 0;
	border: 0;
}

body.woocommerce-account #image-selection-form #image-thumbnails {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
	min-height: 120px;
	margin-top: 28px;
}

body.woocommerce-account #image-selection-form #combined-images-preview > h4 {
	width: 100%;
	margin: 22px 0 12px;
	padding-bottom: 8px;
	border-bottom: 1px solid rgba(0, 0, 0, 0.09);
	font-family: var(--et_global_heading_font);
	font-size: 16px;
	font-weight: 700;
	color: #222;
}

body.woocommerce-account #image-selection-form #combined-images-preview > h4:first-child {
	margin-top: 0;
}

body.woocommerce-account #image-selection-form .groupBox {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

body.woocommerce-account #image-selection-form .product-box {
	position: relative;
	display: block;
	width: 100%;
	max-width: none;
	margin: 0;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 7px 22px rgba(0, 0, 0, 0.07);
	overflow: hidden;
	cursor: default;
	transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease;
}

body.woocommerce-account #image-selection-form .product-box:hover {
	border-color: rgba(0, 223, 222, 0.6);
	box-shadow: 0 13px 30px rgba(0, 0, 0, 0.12);
	transform: translateY(-4px);
}

body.woocommerce-account #image-selection-form .product-box > a {
	display: block;
	width: 100%;
	overflow: hidden;
}

body.woocommerce-account #image-selection-form .product-box img {
	display: block;
	width: 100%;
	height: auto;
	float: none;
	transition: transform 350ms ease;
}

body.woocommerce-account #image-selection-form .product-box:hover img {
	transform: scale(1.03);
}

body.woocommerce-account #image-selection-form .product-box .heart-wrapper {
	position: absolute;
	top: 10px;
	right: 10px;
	width: 42px;
	height: 42px;
	z-index: 5;
}

body.woocommerce-account #image-selection-form .favourite-heart {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.94);
	font-size: 21px;
	line-height: 1;
	text-shadow: none;
	box-shadow: 0 5px 16px rgba(0, 0, 0, 0.18);
	cursor: pointer;
	backdrop-filter: blur(4px);
	transition: background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

body.woocommerce-account #image-selection-form .favourite-heart:hover {
	background: #d3fafa;
	box-shadow: 0 7px 20px rgba(0, 223, 222, 0.3);
	transform: scale(1.08);
}

body.woocommerce-account #image-selection-form .favourite-heart:focus-visible {
	outline: 3px solid rgba(0, 223, 222, 0.55);
	outline-offset: 3px;
}

body.woocommerce-account #image-selection-form .image-filter-controls {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 280px));
	gap: 16px;
	align-items: end;
	margin: 30px 0 0;
	padding: 20px;
	border: 1px solid #e1e6e6;
	border-radius: 14px;
	background: #f8fbfb;
}

body.woocommerce-account #image-selection-form .image-filter {
	display: flex;
	flex-direction: column;
	gap: 7px;
}

body.woocommerce-account #image-selection-form .image-filter label {
	font-size: 13px;
	font-weight: 700;
	color: #333;
}

body.woocommerce-account #image-selection-form .image-filter select {
	width: 100%;
	min-width: 0;
	min-height: 46px;
	padding: 10px 40px 10px 14px;
	border: 1px solid #d6dddd;
	border-radius: 10px;
	background-color: #fff;
	font-size: 15px;
	box-shadow: 0 3px 10px rgba(0, 0, 0, 0.04);
}

body.woocommerce-account #image-selection-form .image-filter select:hover {
	border-color: #00b8b7;
}

body.woocommerce-account #image-selection-form .image-filter select:focus {
	border-color: #00b8b7;
	outline: 0;
	box-shadow: 0 0 0 4px rgba(0, 223, 222, 0.17);
}

body.woocommerce-account #image-selection-form > div:nth-of-type(3) {
	margin: 24px 0 !important;
}

body.woocommerce-account #image-selection-form #shado-favourites-notice {
	margin-bottom: 24px;
}

body.woocommerce-account #image-selection-form button[disabled] {
	opacity: 0.6;
	cursor: wait;
	transform: none;
}

@media (max-width: 1200px) {
	body.woocommerce-account #image-selection-form #image-thumbnails,
	body.woocommerce-account #image-selection-form .groupBox {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	body.woocommerce-account #image-selection-form #image-thumbnails,
	body.woocommerce-account #image-selection-form .groupBox {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
	}

	body.woocommerce-account #image-selection-form .image-filter-controls {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 479px) {
	body.woocommerce-account #image-selection-form #image-thumbnails,
	body.woocommerce-account #image-selection-form .groupBox {
		grid-template-columns: 1fr;
	}

	body.woocommerce-account #image-selection-form #favourites-wrapper,
	body.woocommerce-account #image-selection-form .image-filter-controls {
		padding: 16px;
	}

	body.woocommerce-account #image-selection-form button[type="submit"] {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.woocommerce-account #image-selection-form .product-box,
	body.woocommerce-account #image-selection-form .product-box img,
	body.woocommerce-account #image-selection-form .favourite-heart {
		transition: none;
		transform: none;
	}
}
