:root {
	--ulanlove-ink: #111a27;
	--ulanlove-gold: #ae8b55;
	--ulanlove-line: #ddd4c7;
	--ulcr-product-canvas: #f7f2e9;
}

/* Remove oversized spacer blocks added by the theme above commerce content. */
body.single-product main > .wp-block-spacer,
body.single-product .wp-block-post-content > .wp-block-spacer:first-child,
body.woocommerce-cart main > .wp-block-spacer,
body.woocommerce-cart .wp-block-post-content > .wp-block-spacer:first-child,
body.woocommerce-shop main > .wp-block-spacer,
body.woocommerce-shop .wp-block-post-content > .wp-block-spacer:first-child {
	display: none !important;
	height: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.single-product .wp-site-blocks main,
body.woocommerce-cart .wp-site-blocks main,
body.woocommerce-shop .wp-site-blocks main,
body.post-type-archive-product .wp-site-blocks main {
	min-height: 0 !important;
	padding-top: 0 !important;
}

body.single-product main .has-global-padding,
body.woocommerce-cart main .has-global-padding,
body.woocommerce-shop main .has-global-padding,
body.post-type-archive-product main .has-global-padding {
	padding-top: 0 !important;
}

/* Single product: keep breadcrumb and product composition close together. */
body.single-product .woocommerce-breadcrumb {
	max-width: 1160px !important;
	margin: 22px auto 24px !important;
	padding: 0 24px !important;
}

body.single-product .woocommerce div.product,
body.single-product div.product {
	max-width: 1160px !important;
	margin: 0 auto 42px !important;
	padding: 0 24px !important;
}

body.single-product .woocommerce-breadcrumb + div.product,
body.single-product .woocommerce-breadcrumb + .product,
body.single-product .wp-block-post-content > .woocommerce {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* Cart: reduce the title-to-cart gap without crowding the header. */
body.woocommerce-cart main h1,
body.woocommerce-cart main .wp-block-post-title {
	max-width: 1160px !important;
	margin: 24px auto 28px !important;
	padding: 0 24px !important;
	line-height: 1.1 !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart,
body.woocommerce-cart .wc-block-cart,
body.woocommerce-cart .wp-block-post-content > .woocommerce {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

body.woocommerce-cart .wc-block-cart {
	max-width: 1160px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* Shop introduction and controls: editorial proportions and clear hierarchy. */
body.woocommerce-shop .woocommerce-products-header,
body.post-type-archive-product .woocommerce-products-header {
	margin: 0 0 30px !important;
	padding: 0 !important;
}

body.woocommerce-shop .woocommerce-products-header__title.page-title,
body.post-type-archive-product .woocommerce-products-header__title.page-title {
	font-size: clamp(42px, 4.6vw, 64px) !important;
	font-weight: 400 !important;
	line-height: 1.05 !important;
	letter-spacing: -0.025em !important;
	margin: 0 0 28px !important;
}

body.woocommerce-shop .woocommerce-result-count,
body.post-type-archive-product .woocommerce-result-count {
	float: left !important;
	width: auto !important;
	margin: 0 0 30px !important;
	padding: 12px 0 !important;
	font-size: 14px !important;
	line-height: 22px !important;
	white-space: nowrap !important;
}

body.woocommerce-shop .woocommerce-ordering,
body.post-type-archive-product .woocommerce-ordering {
	float: right !important;
	width: auto !important;
	margin: 0 0 30px !important;
}

body.woocommerce-shop .woocommerce-ordering select,
body.post-type-archive-product .woocommerce-ordering select {
	min-width: 220px !important;
	height: 48px !important;
	padding: 0 44px 0 16px !important;
	border: 1px solid var(--ulanlove-line) !important;
	border-radius: 0 !important;
	background-color: #fff !important;
	font-size: 14px !important;
}

body.woocommerce-shop ul.products,
body.post-type-archive-product ul.products {
	clear: both !important;
	margin-top: 0 !important;
	padding-top: 34px !important;
	border-top: 2px solid var(--ulanlove-gold) !important;
}

/* English meaning panel inserted on matched crystal products. */
.ulanlove-meaning-panel {
	clear: both;
	max-width: 1160px;
	margin: 42px auto 54px;
	padding: 42px 48px;
	background: var(--ulcr-product-canvas);
	border-top: 2px solid var(--ulanlove-gold);
	box-sizing: border-box;
}

.ulanlove-meaning-eyebrow {
	margin: 0 0 12px;
	color: #896a3e;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .18em;
}

.ulanlove-meaning-panel h2 {
	margin: 0 0 18px;
	font-family: Georgia, 'Times New Roman', serif;
	font-size: clamp(30px, 3vw, 44px);
	font-weight: 400;
	line-height: 1.15;
}

.ulanlove-meaning-copy {
	max-width: 900px;
	margin: 0;
	font-size: 17px;
	line-height: 1.85;
}

.ulanlove-meaning-note {
	max-width: 900px;
	margin: 22px 0 0;
	padding-top: 18px;
	border-top: 1px solid rgba(174, 139, 85, .38);
	color: #6d685f;
	font-size: 13px;
	line-height: 1.65;
}

@media (max-width: 782px) {
	body.single-product .woocommerce-breadcrumb {
		margin: 14px auto 18px !important;
		padding: 0 18px !important;
	}

	body.single-product .woocommerce div.product,
	body.single-product div.product {
		margin-bottom: 30px !important;
		padding: 0 18px !important;
	}

	body.woocommerce-cart main h1,
	body.woocommerce-cart main .wp-block-post-title {
		margin: 18px auto 22px !important;
		padding: 0 18px !important;
	}

	body.woocommerce-shop .woocommerce-products-header__title.page-title,
	body.post-type-archive-product .woocommerce-products-header__title.page-title {
		font-size: 42px !important;
		margin-bottom: 20px !important;
	}

	body.woocommerce-shop .woocommerce-result-count,
	body.post-type-archive-product .woocommerce-result-count,
	body.woocommerce-shop .woocommerce-ordering,
	body.post-type-archive-product .woocommerce-ordering {
		float: none !important;
		width: 100% !important;
		margin: 0 0 14px !important;
	}

	body.woocommerce-shop .woocommerce-ordering select,
	body.post-type-archive-product .woocommerce-ordering select {
		width: 100% !important;
		min-width: 0 !important;
	}

	body.woocommerce-shop ul.products,
	body.post-type-archive-product ul.products {
		padding-top: 24px !important;
	}

	.ulanlove-meaning-panel {
		margin: 30px 18px 38px;
		padding: 28px 22px;
	}

	.ulanlove-meaning-copy {
		font-size: 16px;
		line-height: 1.75;
	}
}

/* v1.0.3: continuous warm-ivory canvas across the complete product body */
body.single-product,
body.single-product .site,
body.single-product .wp-site-blocks,
body.single-product .wp-site-blocks > main,
body.single-product main,
body.single-product main > *,
body.single-product main .wp-block-post-content,
body.single-product main .woocommerce,
body.single-product main .woocommerce-notices-wrapper,
body.single-product main div.product,
body.single-product main .woocommerce-tabs,
body.single-product main .ulanlove-meaning-panel,
body.single-product main .related.products,
body.single-product main .related.products > ul.products{
 background-color:var(--ulcr-product-canvas)!important
}
body.single-product .wp-site-blocks > main,
body.single-product main,
body.single-product main .wp-block-post-content{
 margin-top:0!important;
 margin-bottom:0!important
}
body.single-product main .related.products{
 margin-top:0!important;
 margin-bottom:0!important;
 padding-top:54px!important;
 padding-bottom:64px!important
}
body.single-product main .ulanlove-meaning-panel{
 margin-bottom:0!important
}