/**
 * YThready — WooCommerce styles
 */

/* Override WooCommerce global image reset on header/footer logos */
.woocommerce .site-header img.custom-logo,
.woocommerce-page .site-header img.custom-logo,
.woocommerce .site-footer img.footer-logo__img,
.woocommerce-page .site-footer img.footer-logo__img,
body.woocommerce-page .site-header .custom-logo-link img,
body.woocommerce .site-header .custom-logo-link img {
	height: 40px !important;
	width: auto !important;
	max-width: 180px !important;
	object-fit: contain !important;
}

body.woocommerce-page .site-footer img.footer-logo__img,
body.woocommerce .site-footer img.footer-logo__img {
	height: 48px !important;
	max-width: 260px !important;
}

@media (max-width: 599px) {
	.woocommerce .site-header img.custom-logo,
	.woocommerce-page .site-header img.custom-logo,
	body.woocommerce-page .site-header .custom-logo-link img,
	body.woocommerce .site-header .custom-logo-link img {
		height: 32px !important;
		max-width: 140px !important;
	}
}

/* ——— Shared product card ——— */
.woocommerce ul.products,
.woocommerce-page ul.products {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.5rem 1rem;
	list-style: none;
	margin: 0 0 2rem;
	padding: 0;
	clear: both;
	width: 100%;
}

/* WooCommerce clearfix pseudo-elements break CSS grid — neutralize them */
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after {
	content: none !important;
	display: none !important;
}

@media (min-width: 768px) {
	.woocommerce ul.products,
	.woocommerce-page ul.products {
		grid-template-columns: repeat(3, 1fr);
		gap: 2rem 1.5rem;
	}

	.woocommerce ul.products.columns-4,
	.woocommerce-page ul.products.columns-4 {
		grid-template-columns: repeat(4, 1fr);
	}

	.woocommerce ul.products.columns-2,
	.woocommerce-page ul.products.columns-2 {
		grid-template-columns: repeat(2, 1fr);
	}

	.woocommerce ul.products.columns-1,
	.woocommerce-page ul.products.columns-1 {
		grid-template-columns: 1fr;
	}
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	position: relative;
	margin: 0 !important;
	width: 100% !important;
	max-width: none !important;
	float: none !important;
	clear: none !important;
	padding: 0;
	text-align: left;
}

.woocommerce ul.products li.product.first,
.woocommerce ul.products li.product.last,
.woocommerce-page ul.products li.product.first,
.woocommerce-page ul.products li.product.last {
	clear: none !important;
	margin: 0 !important;
}

ul.products li.product .woocommerce-loop-product__title {
	font-family: var(--yt-font-display);
	font-size: 1.2rem;
	font-weight: 600;
	margin: 0.85rem 0 0.35rem;
	padding: 0;
	color: var(--yt-black);
}

ul.products li.product a {
	color: inherit;
}

ul.products li.product .price {
	display: block;
	font-family: var(--yt-font-body);
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--yt-charcoal);
	margin-bottom: 0.85rem;
}

ul.products li.product .price .woocommerce-Price-amount,
.woocommerce div.product p.price .woocommerce-Price-amount,
.woocommerce div.product span.price .woocommerce-Price-amount,
.product-placeholder__price .woocommerce-Price-amount {
	font-weight: 600;
}

ul.products li.product .price .woocommerce-Price-currencySymbol,
.woocommerce div.product .price .woocommerce-Price-currencySymbol,
.product-placeholder__price .woocommerce-Price-currencySymbol {
	font-weight: 600;
	margin-inline-end: 0.05em;
}

ul.products li.product .price del {
	opacity: 0.5;
	font-weight: 400;
	margin-right: 0.35rem;
}

ul.products li.product .price ins {
	text-decoration: none;
	color: var(--yt-pink-deep);
}

/* Keep currency readable with multi-currency / tax suffixes */
.woocommerce .price .woocommerce-price-suffix {
	font-size: 0.75em;
	font-weight: 500;
	color: var(--yt-muted);
	margin-inline-start: 0.25em;
}

.product-media {
	position: relative;
	aspect-ratio: 4 / 5;
	overflow: hidden;
	background: var(--yt-surface);
}

.product-media__link {
	display: block;
	height: 100%;
}

.product-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.6s var(--yt-ease);
}

ul.products li.product:hover .product-media img {
	transform: scale(1.05);
}

.product-badge {
	position: absolute;
	top: 0.75rem;
	left: 0.75rem;
	z-index: 2;
	padding: 0.3rem 0.65rem;
	font-size: 0.625rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--yt-white);
	background: var(--yt-gradient);
}

.product-badge--soldout {
	background: var(--yt-charcoal);
	left: auto;
	right: 0.75rem;
}

ul.products li.product .button,
ul.products li.product .added_to_cart {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 0.75rem 1rem;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	background: var(--yt-black);
	color: var(--yt-white) !important;
	border: 0;
	border-radius: var(--yt-radius);
	transition: background 0.3s;
}

ul.products li.product .button:hover {
	background: var(--yt-pink-deep);
}

ul.products li.product .added_to_cart {
	margin-top: 0.4rem;
	background: transparent;
	color: var(--yt-pink-deep) !important;
	border: 1px solid var(--yt-pink);
}

/* ——— Shop toolbar ——— */
.woocommerce-products-header {
	margin-bottom: 2rem;
	text-align: center;
}

.woocommerce-products-header__title {
	font-size: clamp(2rem, 4vw, 2.75rem);
	margin: 0 0 0.5rem;
}

.woocommerce-result-count {
	float: none;
	margin: 0;
	font-size: 0.875rem;
	color: var(--yt-muted);
}

.woocommerce-ordering {
	float: none;
	margin: 0;
}

.woocommerce-ordering select {
	padding: 0.55rem 2rem 0.55rem 0.85rem;
	border: 1px solid var(--yt-line);
	background: var(--yt-white);
	border-radius: var(--yt-radius);
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%232a2a2a' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 0.75rem center;
}

.ythready-shop .woocommerce-notices-wrapper + .woocommerce-result-count,
.ythready-shop .woocommerce-notices-wrapper + .woocommerce-ordering,
.site-main--shop .woocommerce-result-count,
.site-main--shop .woocommerce-ordering {
	margin-bottom: 1.5rem;
}

.site-main--shop::before {
	content: none;
}

.woocommerce .woocommerce-breadcrumb {
	font-size: 0.8125rem;
	color: var(--yt-muted);
	margin: 0 0 1.5rem;
}

.woocommerce .woocommerce-breadcrumb a {
	color: var(--yt-muted);
}

.woocommerce .woocommerce-breadcrumb a:hover {
	color: var(--yt-pink);
}

/* Shop loop header layout */
.woocommerce-before-shop {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 2rem;
	padding-bottom: 1rem;
	border-bottom: 1px solid var(--yt-line);
}

/* ——— Single product ——— */
.ythready-product-single .site-main--shop {
	padding-block: 2.5rem 4rem;
}

.ythready-product-single .woocommerce-notices-wrapper {
	margin-bottom: 1.5rem;
}

.ythready-product-single .product {
	display: grid;
	gap: 2rem;
	margin-bottom: 4rem;
	align-items: start;
}

@media (min-width: 900px) {
	.ythready-product-single div.product {
		grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
		gap: 3.5rem 4rem;
	}
}

.woocommerce div.product div.images {
	width: 100% !important;
	float: none !important;
	margin: 0;
	position: relative;
}

.product-badge--single {
	position: absolute;
	top: 0.85rem;
	left: 0.85rem;
	z-index: 4;
}

.woocommerce div.product div.summary {
	width: 100% !important;
	float: none !important;
	margin: 0;
	padding-top: 0.25rem;
}

/* Gallery */
.woocommerce div.product .woocommerce-product-gallery {
	position: relative;
	opacity: 1 !important;
	background: var(--yt-surface);
}

.woocommerce div.product .woocommerce-product-gallery__wrapper {
	margin: 0;
}

.woocommerce div.product .woocommerce-product-gallery__image,
.woocommerce div.product .woocommerce-product-gallery__image--placeholder {
	aspect-ratio: 4 / 5;
	background: var(--yt-surface);
	overflow: hidden;
}

.woocommerce div.product .woocommerce-product-gallery__image a,
.woocommerce div.product .woocommerce-product-gallery__image--placeholder a {
	display: block;
	height: 100%;
}

.woocommerce div.product .woocommerce-product-gallery__image img,
.woocommerce div.product .woocommerce-product-gallery__image--placeholder img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	margin: 0;
}

.woocommerce div.product .woocommerce-product-gallery__trigger {
	top: 0.85rem !important;
	right: 0.85rem !important;
	left: auto !important;
	width: 2.25rem !important;
	height: 2.25rem !important;
	border-radius: 50% !important;
	background: rgba(255, 255, 255, 0.92) !important;
	box-shadow: 0 4px 16px rgba(10, 10, 10, 0.1);
	display: flex !important;
	align-items: center;
	justify-content: center;
	text-indent: -9999px !important;
	overflow: hidden;
	font-size: 0 !important;
	z-index: 3;
}

.woocommerce div.product .woocommerce-product-gallery__trigger::before {
	content: "" !important;
	position: absolute;
	width: 12px;
	height: 12px;
	border: 1.5px solid var(--yt-charcoal);
	border-radius: 50%;
	box-sizing: border-box;
	top: 50%;
	left: 50%;
	transform: translate(-60%, -60%);
	text-indent: 0;
}

.woocommerce div.product .woocommerce-product-gallery__trigger::after {
	content: "" !important;
	position: absolute;
	width: 6px;
	height: 1.5px;
	background: var(--yt-charcoal);
	top: 58%;
	left: 58%;
	transform: rotate(45deg);
	border: 0 !important;
	box-shadow: none !important;
}

/* Hide zoom when only the placeholder image is present */
.woocommerce div.product .woocommerce-product-gallery:has(.woocommerce-product-gallery__image--placeholder) .woocommerce-product-gallery__trigger {
	display: none !important;
}

.woocommerce div.product .woocommerce-product-gallery--with-images .flex-viewport {
	aspect-ratio: 4 / 5;
	background: var(--yt-surface);
}

.woocommerce div.product .product_title {
	font-family: var(--yt-font-display);
	font-size: clamp(1.85rem, 3.5vw, 2.65rem);
	font-weight: 600;
	letter-spacing: -0.01em;
	margin: 0 0 0.65rem;
	line-height: 1.15;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.45rem 0.65rem;
	font-size: 1.35rem;
	font-weight: 600;
	color: var(--yt-pink-deep);
	margin: 0 0 0.85rem;
}

.woocommerce div.product p.price del,
.woocommerce div.product span.price del {
	opacity: 0.45;
	font-weight: 400;
	font-size: 1rem;
	color: var(--yt-muted);
	order: -1;
}

.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins {
	text-decoration: none;
	color: var(--yt-pink-deep);
	font-weight: 600;
}

.woocommerce div.product .stock {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	margin: 0 0 1.25rem;
	padding: 0.35rem 0.7rem;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--yt-charcoal);
	background: var(--yt-surface);
	border-radius: var(--yt-radius);
}

.woocommerce div.product .stock.in-stock {
	color: #2d6a4f;
	background: rgba(45, 106, 79, 0.08);
}

.woocommerce div.product .stock.out-of-stock {
	color: #9b2226;
	background: rgba(155, 34, 38, 0.08);
}

.woocommerce div.product .woocommerce-product-details__short-description {
	color: var(--yt-muted);
	font-size: 0.9875rem;
	line-height: 1.7;
	margin: 0 0 1.5rem;
	max-width: 36rem;
}

.woocommerce div.product .woocommerce-product-details__short-description p:last-child {
	margin-bottom: 0;
}

.woocommerce div.product form.cart {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 0.75rem;
	margin-bottom: 1.75rem;
}

.woocommerce div.product form.cart .quantity {
	margin: 0;
}

.woocommerce div.product form.cart .quantity .qty {
	width: 4.75rem;
	height: 100%;
	min-height: 3.15rem;
	padding: 0.85rem;
	border: 1px solid var(--yt-line);
	text-align: center;
	border-radius: var(--yt-radius);
	background: var(--yt-white);
}

.woocommerce div.product form.cart .single_add_to_cart_button {
	flex: 1;
	min-width: 180px;
	padding: 1rem 1.75rem;
	background: var(--yt-gradient) !important;
	color: var(--yt-white) !important;
	border: 0 !important;
	border-radius: var(--yt-radius);
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	cursor: pointer;
	transition: filter 0.25s, transform 0.25s;
}

.woocommerce div.product form.cart .single_add_to_cart_button:hover {
	filter: brightness(1.05);
	transform: translateY(-1px);
}

.woocommerce div.product form.cart .single_add_to_cart_button.disabled,
.woocommerce div.product form.cart .single_add_to_cart_button:disabled {
	opacity: 0.55;
	cursor: not-allowed;
	transform: none;
	filter: none;
}

.woocommerce div.product .product_meta {
	font-size: 0.8125rem;
	color: var(--yt-muted);
	padding-top: 1.35rem;
	border-top: 1px solid var(--yt-line);
	display: grid;
	gap: 0.4rem;
}

.woocommerce div.product .product_meta > span {
	display: block;
}

.woocommerce div.product .product_meta a {
	color: var(--yt-charcoal);
	font-weight: 500;
}

.woocommerce div.product .product_meta a:hover {
	color: var(--yt-pink-deep);
}

.woocommerce div.product .woocommerce-tabs {
	grid-column: 1 / -1;
	margin-top: 1rem;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 0;
	list-style: none;
	padding: 0;
	margin: 0 0 1.5rem;
	border-bottom: 1px solid var(--yt-line);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	margin: 0;
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	display: block;
	padding: 0.85rem 1.25rem;
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--yt-muted);
	border-bottom: 2px solid transparent;
	margin-bottom: -1px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
	color: var(--yt-pink-deep);
	border-bottom-color: var(--yt-pink);
}

.woocommerce div.product .woocommerce-tabs .panel {
	padding: 0;
	margin: 0 0 2rem;
	border: 0;
	box-shadow: none;
}

.woocommerce div.product .flex-control-thumbs {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 0.5rem;
	margin-top: 0.75rem;
}

.woocommerce div.product .flex-control-thumbs li {
	width: auto !important;
	float: none !important;
	aspect-ratio: 1;
	overflow: hidden;
	background: var(--yt-surface);
}

.woocommerce div.product .flex-control-thumbs img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0.55;
	border: 1px solid transparent;
	cursor: pointer;
}

.woocommerce div.product .flex-control-thumbs img.flex-active,
.woocommerce div.product .flex-control-thumbs img:hover {
	opacity: 1;
	border-color: var(--yt-pink);
}

.related.products,
.upsells.products {
	grid-column: 1 / -1;
	margin-top: 2rem;
	padding-top: 3rem;
	border-top: 1px solid var(--yt-line);
}

.related.products > h2,
.upsells.products > h2 {
	font-size: 1.85rem;
	margin-bottom: 1.75rem;
	text-align: center;
}

/* ——— Cart ——— */
.woocommerce-cart table.cart,
.woocommerce-checkout table.shop_table {
	width: 100%;
	border-collapse: collapse;
	border: 0;
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
	border: 0;
	border-bottom: 1px solid var(--yt-line);
	padding: 1rem 0.75rem;
	background: transparent;
}

.woocommerce table.shop_table thead th {
	font-size: 0.75rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--yt-muted);
	font-weight: 600;
}

.woocommerce a.remove {
	color: var(--yt-muted) !important;
	font-size: 1.25rem;
}

.woocommerce a.remove:hover {
	color: var(--yt-pink-deep) !important;
	background: transparent !important;
}

.woocommerce .cart .button,
.woocommerce .coupon .button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce #place_order,
.woocommerce button.button.alt,
.woocommerce a.button.alt,
.woocommerce button.button,
.woocommerce a.button {
	background: var(--yt-black) !important;
	color: var(--yt-white) !important;
	border: 0 !important;
	border-radius: var(--yt-radius) !important;
	padding: 0.85rem 1.5rem !important;
	font-size: 0.75rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	transition: background 0.25s !important;
}

.woocommerce .cart .button:hover,
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce button.button.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce #place_order:hover {
	background: var(--yt-pink-deep) !important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce #place_order {
	background: var(--yt-gradient) !important;
	width: 100%;
	text-align: center;
	display: block;
}

.cart_totals h2,
.woocommerce-billing-fields h3,
.woocommerce-additional-fields h3,
#order_review_heading {
	font-size: 1.5rem;
}

/* ——— Checkout columns ——— */
@media (min-width: 900px) {
	.woocommerce-checkout .col2-set {
		width: 55%;
		float: left;
	}

	.woocommerce-checkout #order_review_heading,
	.woocommerce-checkout #order_review {
		width: 42%;
		float: right;
		clear: right;
	}

	.woocommerce-checkout #order_review {
		background: var(--yt-surface);
		padding: 1.5rem;
	}
}

/* ——— Notices ——— */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem 1.25rem;
	border-top: 0 !important;
	border-left: 3px solid var(--yt-pink) !important;
	background: var(--yt-surface) !important;
	padding: 1rem 1.15rem 1rem 1.15rem !important;
	list-style: none;
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--yt-charcoal);
}

.woocommerce-error {
	border-left-color: #c0392b !important;
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
	display: none !important;
}

.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button {
	margin: 0 !important;
	flex-shrink: 0;
	background: var(--yt-gradient) !important;
	color: var(--yt-white) !important;
	padding: 0.65rem 1.15rem !important;
}

.woocommerce-message .button:hover,
.woocommerce-info .button:hover,
.woocommerce-error .button:hover {
	background: var(--yt-pink-deep) !important;
}

/* ——— Pagination ——— */
.woocommerce nav.woocommerce-pagination ul {
	display: flex;
	justify-content: center;
	gap: 0.35rem;
	border: 0;
	list-style: none;
	margin: 2.5rem 0 0;
	padding: 0;
}

.woocommerce nav.woocommerce-pagination ul li {
	border: 0;
	overflow: visible;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	height: 42px;
	padding: 0 0.75rem;
	border: 1px solid var(--yt-line) !important;
	background: var(--yt-white);
	color: var(--yt-black);
	font-size: 0.875rem;
	font-weight: 600;
}

.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover {
	background: var(--yt-black);
	color: var(--yt-white);
	border-color: var(--yt-black) !important;
}

/* ——— Sale flash default hide (we use custom badge) ——— */
.woocommerce span.onsale {
	display: none;
}

/* ——— Empty cart ——— */
.cart-empty.woocommerce-info {
	text-align: center;
	justify-content: center;
	padding: 3rem 1rem !important;
}

.return-to-shop {
	text-align: center;
	margin-top: 1.5rem;
}

.return-to-shop .button {
	background: var(--yt-gradient) !important;
	padding: 0.95rem 1.75rem !important;
}

/* ——— Cart block (empty state + New in store) ——— */
.wp-block-woocommerce-cart,
.wc-block-cart {
	margin-bottom: 2rem;
}

.wc-block-cart__empty-cart__title,
.with-empty-cart-icon {
	font-family: var(--yt-font-display);
	font-size: clamp(1.75rem, 3.5vw, 2.35rem);
	font-weight: 600;
	color: var(--yt-black);
	margin: 0 0 1rem;
}

.with-empty-cart-icon::before {
	content: "";
	display: block;
	width: 4.5rem;
	height: 4.5rem;
	margin: 0 auto 1.25rem;
	border-radius: 50%;
	background:
		radial-gradient(circle at 35% 40%, var(--yt-white) 0 8%, transparent 9%),
		radial-gradient(circle at 65% 40%, var(--yt-white) 0 8%, transparent 9%),
		radial-gradient(circle at 50% 68%, transparent 0 18%, var(--yt-white) 19% 22%, transparent 23%),
		var(--yt-black);
}

.wc-block-cart .has-text-align-center a,
.wp-block-woocommerce-empty-cart-block .has-text-align-center a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0.5rem 0 2.5rem;
	padding: 0.85rem 1.5rem;
	background: var(--yt-gradient);
	color: var(--yt-white) !important;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	border-radius: var(--yt-radius);
	transition: filter 0.25s, transform 0.25s;
}

.wc-block-cart .has-text-align-center a:hover,
.wp-block-woocommerce-empty-cart-block .has-text-align-center a:hover {
	filter: brightness(1.05);
	transform: translateY(-1px);
	color: var(--yt-white) !important;
}

.wp-block-woocommerce-empty-cart-block .wp-block-heading,
.wc-block-cart .wp-block-heading {
	font-family: var(--yt-font-display);
	font-weight: 600;
	color: var(--yt-black);
}

.wp-block-woocommerce-product-collection,
.wc-block-product-template,
ul.wc-block-product-template {
	list-style: none;
	margin: 0;
	padding: 0;
}

.wp-block-woocommerce-product-collection .wc-block-product-template,
.wp-block-woocommerce-product-collection ul.wc-block-product-template,
.wc-block-product-template.is-product-collection-layout {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.5rem 1rem;
}

@media (min-width: 768px) {
	.wp-block-woocommerce-product-collection .wc-block-product-template,
	.wp-block-woocommerce-product-collection ul.wc-block-product-template,
	.wc-block-product-template.is-product-collection-layout {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 2rem 1.25rem;
	}
}

.wc-block-product,
.wc-block-product-template .wc-block-product {
	margin: 0 !important;
	width: 100% !important;
	max-width: none !important;
	text-align: left;
}

.wc-block-product .wc-block-components-product-image,
.wc-block-product .wc-block-components-product-image a,
.wc-block-product .wc-block-components-product-image img {
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	background: var(--yt-surface);
	margin: 0;
}

.wc-block-product .wc-block-components-product-image {
	position: relative;
	overflow: hidden;
	margin-bottom: 0.85rem;
}

.wc-block-product .wc-block-components-product-sale-badge,
.wc-block-product .onsale {
	display: inline-flex !important;
	position: absolute;
	top: 0.75rem;
	left: 0.75rem;
	right: auto;
	z-index: 2;
	padding: 0.3rem 0.65rem !important;
	font-size: 0.625rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--yt-white) !important;
	background: var(--yt-gradient) !important;
	border: 0 !important;
	border-radius: var(--yt-radius) !important;
}

.wc-block-product .wp-block-post-title,
.wc-block-product .wc-block-components-product-title,
.wc-block-product .wc-block-components-product-name {
	font-family: var(--yt-font-display) !important;
	font-size: 1.15rem !important;
	font-weight: 600 !important;
	line-height: 1.25;
	margin: 0 0 0.35rem !important;
	text-align: left !important;
}

.wc-block-product .wp-block-post-title a,
.wc-block-product .wc-block-components-product-title a,
.wc-block-product .wc-block-components-product-name a {
	color: var(--yt-black) !important;
	text-decoration: none !important;
}

.wc-block-product .wp-block-post-title a:hover,
.wc-block-product .wc-block-components-product-title a:hover {
	color: var(--yt-pink-deep) !important;
}

.wc-block-product .wc-block-components-product-price,
.wc-block-product .wp-block-woocommerce-product-price {
	display: block;
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--yt-charcoal);
	margin: 0 0 0.85rem;
	text-align: left !important;
}

.wc-block-product .wc-block-components-product-price del {
	opacity: 0.5;
	font-weight: 400;
	margin-right: 0.35rem;
}

.wc-block-product .wc-block-components-product-price ins {
	text-decoration: none;
	color: var(--yt-pink-deep);
}

.wc-block-product .wp-block-button__link,
.wc-block-product .wc-block-components-product-button .wp-block-button__link,
.wc-block-product .add_to_cart_button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 0.75rem 1rem !important;
	font-size: 0.75rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	background: var(--yt-black) !important;
	color: var(--yt-white) !important;
	border: 0 !important;
	border-radius: var(--yt-radius) !important;
	text-decoration: none !important;
	transition: background 0.3s !important;
}

.wc-block-product .wp-block-button__link:hover,
.wc-block-product .add_to_cart_button:hover {
	background: var(--yt-pink-deep) !important;
	color: var(--yt-white) !important;
}

/* ——— Star ratings (replaces WooCommerce font from dequeued general.css) ——— */
.woocommerce .star-rating {
	display: inline-block;
	position: relative;
	overflow: hidden;
	height: 1.15em;
	line-height: 1;
	width: 5.6em;
	font-size: 1rem;
	font-family: Arial, sans-serif;
	letter-spacing: 0.12em;
	color: transparent;
	float: none;
	vertical-align: middle;
}

.woocommerce .star-rating::before {
	content: "★★★★★";
	color: #e4ddd6;
	position: absolute;
	inset: 0;
	letter-spacing: 0.12em;
}

.woocommerce .star-rating span {
	overflow: hidden;
	position: absolute;
	inset: 0 auto 0 0;
	padding-top: 1.5em;
}

.woocommerce .star-rating span::before {
	content: "★★★★★";
	color: var(--yt-pink);
	position: absolute;
	inset: 0 auto auto 0;
	letter-spacing: 0.12em;
}

.woocommerce .woocommerce-product-rating {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem 0.75rem;
	margin: 0 0 1rem;
	line-height: 1.4;
}

.woocommerce .woocommerce-product-rating .star-rating {
	margin: 0;
}

.woocommerce .woocommerce-review-link {
	font-size: 0.875rem;
	color: var(--yt-muted);
}

.woocommerce .woocommerce-review-link:hover {
	color: var(--yt-pink-deep);
}

.woocommerce ul.products li.product .star-rating {
	display: block;
	margin: 0 0 0.5rem;
}

/* Interactive review stars */
.woocommerce p.stars {
	display: block;
	margin: 0.35rem 0 1.25rem;
}

.woocommerce p.stars a {
	position: relative;
	display: inline-block;
	width: 1.65rem;
	height: 1.65rem;
	margin-right: 0.2rem;
	font-size: 0 !important;
	text-indent: -9999px;
	overflow: hidden;
	text-decoration: none !important;
	color: transparent !important;
	vertical-align: middle;
}

.woocommerce p.stars a::before {
	content: "★";
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.55rem;
	line-height: 1;
	text-indent: 0;
	color: #e4ddd6;
	transition: color 0.2s var(--yt-ease), transform 0.2s var(--yt-ease);
}

.woocommerce p.stars:hover a::before {
	color: var(--yt-pink);
}

.woocommerce p.stars:hover a:hover ~ a::before {
	color: #e4ddd6;
}

.woocommerce p.stars.selected a:not(.active)::before {
	color: var(--yt-pink);
}

.woocommerce p.stars.selected a.active::before {
	color: var(--yt-pink-deep);
	transform: scale(1.08);
}

.woocommerce p.stars.selected a.active ~ a::before {
	color: #e4ddd6;
	transform: none;
}

.woocommerce p.stars a:focus-visible {
	outline: 2px solid var(--yt-pink);
	outline-offset: 2px;
	border-radius: 2px;
}

/* ——— Reviews panel ——— */
.woocommerce #reviews.woocommerce-Reviews {
	display: grid;
	gap: 2rem;
}

@media (min-width: 900px) {
	.woocommerce #reviews.woocommerce-Reviews {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
		gap: 2.5rem 3.5rem;
		align-items: start;
	}

	.woocommerce #reviews .woocommerce-Reviews-title,
	.woocommerce #reviews #comments {
		grid-column: 1;
	}

	.woocommerce #reviews #review_form_wrapper {
		grid-column: 2;
		grid-row: 1 / span 3;
	}
}

.woocommerce #reviews .woocommerce-Reviews-title {
	font-family: var(--yt-font-display);
	font-size: clamp(1.75rem, 3vw, 2.25rem);
	margin: 0 0 1rem;
}

.woocommerce #reviews .woocommerce-noreviews {
	margin: 0 0 1.5rem;
	padding: 1.25rem 1.35rem;
	background: var(--yt-surface);
	color: var(--yt-muted);
	font-size: 0.9375rem;
	border-left: 3px solid var(--yt-line);
}

.woocommerce #reviews .commentlist {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 1.25rem;
}

.woocommerce #reviews .commentlist .comment,
.woocommerce #reviews .commentlist .review {
	display: grid;
	grid-template-columns: 52px 1fr;
	gap: 0.85rem 1rem;
	padding: 1.25rem;
	background: var(--yt-surface);
	border: 1px solid var(--yt-line);
}

.woocommerce #reviews .comment_container {
	display: contents;
}

.woocommerce #reviews .avatar {
	width: 52px;
	height: 52px;
	border-radius: 50%;
	object-fit: cover;
	grid-column: 1;
	grid-row: 1 / span 2;
}

.woocommerce #reviews .comment-text {
	grid-column: 2;
	margin: 0;
	border: 0;
	padding: 0;
}

.woocommerce #reviews .meta {
	margin: 0 0 0.35rem;
	font-size: 0.8125rem;
	color: var(--yt-muted);
}

.woocommerce #reviews .woocommerce-review__author {
	font-family: var(--yt-font-display);
	font-size: 1.05rem;
	font-weight: 600;
	color: var(--yt-black);
}

.woocommerce #reviews .description {
	font-size: 0.9375rem;
	color: var(--yt-charcoal);
	line-height: 1.65;
}

.woocommerce #reviews .description p:last-child {
	margin-bottom: 0;
}

/* Review form */
.woocommerce #review_form_wrapper {
	background: var(--yt-surface);
	border: 1px solid var(--yt-line);
	padding: clamp(1.35rem, 3vw, 2rem);
}

.woocommerce #review_form #respond {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	width: auto;
}

.woocommerce #review_form #reply-title {
	font-family: var(--yt-font-display);
	font-size: clamp(1.35rem, 2.5vw, 1.75rem);
	font-weight: 600;
	margin: 0 0 1.25rem;
	line-height: 1.25;
}

.woocommerce #review_form .comment-form-rating,
.woocommerce #review_form .comment-form-comment,
.woocommerce #review_form .comment-form-author,
.woocommerce #review_form .comment-form-email {
	margin: 0 0 1.15rem;
}

.woocommerce #review_form label {
	display: block;
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.02em;
	color: var(--yt-charcoal);
	margin-bottom: 0.45rem;
}

.woocommerce #review_form .required {
	color: var(--yt-pink-deep);
}

.woocommerce #review_form textarea,
.woocommerce #review_form input[type="text"],
.woocommerce #review_form input[type="email"] {
	width: 100%;
	padding: 0.9rem 1rem;
	border: 1px solid var(--yt-line);
	border-radius: var(--yt-radius);
	background: var(--yt-white);
	color: var(--yt-ink);
	font: inherit;
	line-height: 1.5;
	transition: border-color 0.2s, box-shadow 0.2s;
	resize: vertical;
	min-height: 8rem;
}

.woocommerce #review_form input[type="text"],
.woocommerce #review_form input[type="email"] {
	min-height: 0;
}

.woocommerce #review_form textarea:focus,
.woocommerce #review_form input[type="text"]:focus,
.woocommerce #review_form input[type="email"]:focus {
	outline: 0;
	border-color: var(--yt-pink);
	box-shadow: 0 0 0 3px var(--yt-pink-soft);
}

.woocommerce #review_form .form-submit {
	margin: 0.5rem 0 0;
}

.woocommerce #review_form #respond .form-submit input,
.woocommerce #review_form #respond input#submit,
.woocommerce #review_form input[type="submit"] {
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 160px;
	padding: 0.95rem 1.75rem !important;
	border: 0 !important;
	border-radius: var(--yt-radius) !important;
	background: var(--yt-gradient) !important;
	color: var(--yt-white) !important;
	font-size: 0.75rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.1em !important;
	text-transform: uppercase !important;
	cursor: pointer;
	transition: filter 0.25s, transform 0.25s;
}

.woocommerce #review_form #respond .form-submit input:hover,
.woocommerce #review_form #respond input#submit:hover,
.woocommerce #review_form input[type="submit"]:hover {
	filter: brightness(1.05);
	transform: translateY(-1px);
}

.woocommerce div.product .woocommerce-tabs .panel > h2:first-child {
	font-family: var(--yt-font-display);
	font-size: clamp(1.5rem, 2.5vw, 1.85rem);
	margin: 0 0 1rem;
}

.woocommerce div.product .woocommerce-Tabs-panel--description,
.woocommerce div.product .woocommerce-Tabs-panel--additional_information {
	max-width: 48rem;
	color: var(--yt-charcoal);
	line-height: 1.7;
}

.woocommerce table.shop_attributes {
	width: 100%;
	border-collapse: collapse;
}

.woocommerce table.shop_attributes th,
.woocommerce table.shop_attributes td {
	padding: 0.85rem 0;
	border-bottom: 1px solid var(--yt-line);
	text-align: left;
	font-size: 0.9375rem;
}

.woocommerce table.shop_attributes th {
	width: 35%;
	font-weight: 600;
	color: var(--yt-muted);
}

/* ——— Cart page polish ——— */
.woocommerce-cart .site-main--shop,
.woocommerce-checkout .site-main--shop,
.woocommerce-account .site-main--shop {
	padding-block: 2.5rem 4.5rem;
}

.woocommerce-cart-form {
	margin-bottom: 2rem;
}

.woocommerce-cart table.cart img {
	width: 72px;
	height: 90px;
	object-fit: cover;
	background: var(--yt-surface);
}

.woocommerce-cart table.cart .product-name a {
	font-family: var(--yt-font-display);
	font-size: 1.15rem;
	font-weight: 600;
	color: var(--yt-black);
}

.woocommerce-cart table.cart .product-name a:hover {
	color: var(--yt-pink-deep);
}

.woocommerce-cart .cart-collaterals {
	margin-top: 1rem;
}

.woocommerce-cart .cart_totals {
	background: var(--yt-surface);
	padding: clamp(1.35rem, 3vw, 1.85rem);
	border: 1px solid var(--yt-line);
}

.woocommerce-cart .cart_totals h2 {
	font-family: var(--yt-font-display);
	font-size: 1.65rem;
	margin: 0 0 1.25rem;
}

.woocommerce-cart .cart_totals table {
	margin-bottom: 1.25rem;
}

.woocommerce .coupon {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	align-items: stretch;
}

.woocommerce .coupon .input-text {
	flex: 1;
	min-width: 160px;
	padding: 0.85rem 1rem;
	border: 1px solid var(--yt-line);
	border-radius: var(--yt-radius);
	background: var(--yt-white);
}

.woocommerce-cart .actions {
	padding-top: 1rem !important;
}

@media (min-width: 900px) {
	.woocommerce-cart .woocommerce {
		display: grid;
		grid-template-columns: minmax(0, 1.4fr) minmax(280px, 0.7fr);
		gap: 2.5rem;
		align-items: start;
	}

	.woocommerce-cart .woocommerce-notices-wrapper {
		grid-column: 1 / -1;
	}

	.woocommerce-cart .woocommerce-cart-form {
		grid-column: 1;
		margin: 0;
	}

	.woocommerce-cart .cart-collaterals {
		grid-column: 2;
		margin: 0;
		width: 100% !important;
	}

	.woocommerce-cart .cart-collaterals .cart_totals {
		width: 100% !important;
		float: none !important;
	}
}

/* ——— Checkout polish ——— */
.woocommerce-checkout .col2-set::after,
.woocommerce-checkout #customer_details::after {
	content: "";
	display: table;
	clear: both;
}

.woocommerce-checkout h3 {
	font-family: var(--yt-font-display);
	font-size: 1.5rem;
	margin: 0 0 1rem;
}

.woocommerce-checkout #order_review_heading {
	margin-top: 0;
}

.woocommerce-checkout #order_review {
	border: 1px solid var(--yt-line);
}

.woocommerce-checkout #payment {
	background: transparent;
	border-radius: 0;
	padding: 0;
}

.woocommerce-checkout #payment ul.payment_methods {
	list-style: none;
	padding: 0 0 1rem;
	margin: 0 0 1rem;
	border-bottom: 1px solid var(--yt-line);
}

.woocommerce-checkout #payment ul.payment_methods li {
	margin: 0 0 0.75rem;
	padding: 0.85rem 1rem;
	background: var(--yt-white);
	border: 1px solid var(--yt-line);
}

.woocommerce-checkout #payment div.payment_box {
	background: var(--yt-surface);
	border: 0;
	padding: 0.85rem 1rem;
	margin: 0.75rem 0 0;
	font-size: 0.875rem;
	color: var(--yt-muted);
}

.woocommerce-checkout #payment div.payment_box::before {
	display: none;
}

.woocommerce-checkout .woocommerce-privacy-policy-text {
	font-size: 0.8125rem;
	color: var(--yt-muted);
	margin-bottom: 1rem;
}

/* ——— My account / login ——— */
.woocommerce-account .woocommerce {
	max-width: 100%;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
	float: none;
	width: 100%;
	margin-bottom: 2rem;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	list-style: none;
	padding: 0;
	margin: 0;
	border-bottom: 1px solid var(--yt-line);
}

.woocommerce-account .woocommerce-MyAccount-navigation li a {
	display: block;
	padding: 0.75rem 1rem;
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--yt-muted);
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
	color: var(--yt-pink-deep);
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	box-shadow: inset 0 -2px 0 var(--yt-pink);
}

.woocommerce-account .woocommerce-MyAccount-content {
	float: none;
	width: 100%;
	max-width: 640px;
}

.woocommerce-account .woocommerce-MyAccount-content > p,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info {
	margin-bottom: 1.25rem;
}

.woocommerce form .form-row {
	margin: 0 0 1.15rem;
	padding: 0;
}

.woocommerce form .form-row label {
	display: block;
	font-size: 0.8125rem;
	font-weight: 600;
	margin-bottom: 0.4rem;
	color: var(--yt-charcoal);
}

.woocommerce form .form-row .required {
	color: var(--yt-pink-deep);
}

.woocommerce form .form-row-first,
.woocommerce form .form-row-last {
	float: none;
	width: 100%;
}

@media (min-width: 640px) {
	.woocommerce form .form-row-first,
	.woocommerce form .form-row-last {
		display: inline-block;
		vertical-align: top;
		width: calc(50% - 0.5rem);
	}

	.woocommerce form .form-row-first {
		margin-right: 1rem;
	}
}

.woocommerce form .form-row-wide {
	clear: both;
	width: 100%;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce form input.input-text,
.woocommerce-Input.input-text {
	display: block;
	width: 100%;
	min-height: 3rem;
	height: 3rem;
	padding: 0.75rem 1rem;
	border: 1px solid var(--yt-line);
	border-radius: var(--yt-radius);
	background: var(--yt-white);
	color: var(--yt-ink);
	font: inherit;
	line-height: 1.4;
	box-sizing: border-box;
}

.woocommerce form .form-row textarea,
.woocommerce form textarea.input-text {
	height: auto;
	min-height: 8rem;
	resize: vertical;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus,
.woocommerce form input.input-text:focus {
	outline: 0;
	border-color: var(--yt-pink);
	box-shadow: 0 0 0 3px var(--yt-pink-soft);
}

/* Password visibility wrapper (was in dequeued woocommerce-layout) */
.woocommerce form .password-input,
.woocommerce-page .password-input {
	display: block;
	position: relative;
	width: 100%;
}

.woocommerce form .password-input input[type="password"],
.woocommerce form .password-input input[type="text"],
.woocommerce-page .password-input input[type="password"],
.woocommerce-page .password-input input[type="text"] {
	width: 100%;
	height: 3rem !important;
	min-height: 3rem !important;
	max-height: 3.25rem !important;
	padding-right: 2.75rem;
	line-height: 1.4;
}

.woocommerce form .password-input input::-ms-reveal,
.woocommerce-page .password-input input::-ms-reveal {
	display: none;
}

.woocommerce .show-password-input,
.woocommerce-page .show-password-input {
	appearance: none;
	position: absolute;
	top: 50%;
	right: 0.7rem;
	transform: translateY(-50%);
	width: 1.5rem;
	height: 1.5rem;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 1.25rem;
	background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.3 3.3C16.9 2.9 16.2 2.9 15.7 3.3L13.3 5.7C12.2437 5.3079 11.1267 5.1048 10 5.1C6.2 5.2 2.8 7.2 1 10.5C1.2 10.9 1.5 11.3 1.8 11.7C2.6 12.8 3.6 13.7 4.7 14.4L3 16.1C2.6 16.5 2.5 17.2 3 17.7C3.4 18.1 4.1 18.2 4.6 17.7L17.3 4.9C17.7 4.4 17.7 3.7 17.3 3.3ZM6.7 12.3L5.4 13.6C4.2 12.9 3.1 11.9 2.3 10.7C3.5 9 5.1 7.8 7 7.2C5.7 8.6 5.6 10.8 6.7 12.3ZM10.1 9C9.6 8.5 9.7 7.7 10.2 7.2C10.7 6.8 11.4 6.8 11.9 7.2L10.1 9ZM18.3 9.5C17.8 8.8 17.2 8.1 16.5 7.6L15.5 8.6C16.3 9.2 17 9.9 17.6 10.8C15.9 13.4 13 15 9.9 15H9.1L8.1 16C8.8 15.9 9.4 16 10 16C13.3 16 16.4 14.4 18.3 11.7C18.6 11.3 18.8 10.9 19.1 10.5C18.8 10.2 18.6 9.8 18.3 9.5ZM14 10L10 14C12.2 14 14 12.2 14 10Z' fill='%236b6b6b'/%3E%3C/svg%3E");
	color: transparent;
	font-size: 0;
	line-height: 0;
	cursor: pointer;
	z-index: 2;
}

.woocommerce .show-password-input.display-password,
.woocommerce-page .show-password-input.display-password {
	background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18.3 9.49999C15 4.89999 8.50002 3.79999 3.90002 7.19999C2.70002 8.09999 1.70002 9.29999 0.900024 10.6C1.10002 11 1.40002 11.4 1.70002 11.8C5.00002 16.4 11.3 17.4 15.9 14.2C16.8 13.5 17.6 12.8 18.3 11.8C18.6 11.4 18.8 11 19.1 10.6C18.8 10.2 18.6 9.79999 18.3 9.49999ZM10.1 7.19999C10.6 6.69999 11.4 6.69999 11.9 7.19999C12.4 7.69999 12.4 8.49999 11.9 8.99999C11.4 9.49999 10.6 9.49999 10.1 8.99999C9.60003 8.49999 9.60003 7.69999 10.1 7.19999ZM10 14.9C6.90002 14.9 4.00002 13.3 2.30002 10.7C3.50002 8.99999 5.10002 7.79999 7.00002 7.19999C6.30002 7.99999 6.00002 8.89999 6.00002 9.89999C6.00002 12.1 7.70002 14 10 14C12.2 14 14.1 12.3 14.1 9.99999V9.89999C14.1 8.89999 13.7 7.89999 13 7.19999C14.9 7.79999 16.5 8.99999 17.7 10.7C16 13.3 13.1 14.9 10 14.9Z' fill='%236b6b6b'/%3E%3C/svg%3E");
}

.woocommerce .show-password-input::before,
.woocommerce-page .show-password-input::before {
	display: none !important;
	content: none !important;
}

.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.lost_reset_password,
.woocommerce-EditAccountForm {
	max-width: 560px;
	padding: clamp(1.35rem, 3vw, 2rem);
	background: var(--yt-surface);
	border: 1px solid var(--yt-line);
}

.woocommerce-EditAccountForm fieldset {
	margin: 1.5rem 0 0;
	padding: 1.25rem 0 0;
	border: 0;
	border-top: 1px solid var(--yt-line);
}

.woocommerce-EditAccountForm fieldset legend {
	padding: 0;
	margin: 0 0 1rem;
	font-family: var(--yt-font-display);
	font-size: 1.25rem;
	font-weight: 600;
	color: var(--yt-black);
	float: none;
	width: auto;
}

.woocommerce-EditAccountForm #account_display_name_description {
	display: block;
	margin-top: 0.4rem;
	font-size: 0.8125rem;
	color: var(--yt-muted);
}

.woocommerce-EditAccountForm .woocommerce-Button,
.woocommerce form .woocommerce-Button,
.woocommerce-EditAccountForm button[type="submit"] {
	margin-top: 0.5rem;
	background: var(--yt-gradient) !important;
	min-width: 180px;
}

.woocommerce form.checkout_coupon {
	padding: 1.25rem;
	background: var(--yt-surface);
	border: 1px solid var(--yt-line);
	margin-bottom: 1.5rem;
}

.woocommerce-form-login__rememberme,
.woocommerce-form__label-for-checkbox {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	font-size: 0.875rem;
	color: var(--yt-muted);
}

.woocommerce-order {
	max-width: 720px;
}

.woocommerce-order .woocommerce-thankyou-order-received {
	font-family: var(--yt-font-display);
	font-size: clamp(1.5rem, 3vw, 2rem);
	font-weight: 600;
	color: var(--yt-black);
	margin-bottom: 1.25rem;
}

.woocommerce-order-overview {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
	gap: 1rem;
	list-style: none;
	padding: 1.25rem;
	margin: 0 0 2rem;
	background: var(--yt-surface);
	border: 1px solid var(--yt-line);
}

.woocommerce-order-overview li {
	margin: 0;
	padding: 0;
	border: 0 !important;
	font-size: 0.8125rem;
	color: var(--yt-muted);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.woocommerce-order-overview li strong {
	display: block;
	margin-top: 0.35rem;
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0;
	text-transform: none;
	color: var(--yt-black);
	font-family: var(--yt-font-body);
}

/* Quantity + global form polish */
.woocommerce .quantity .qty {
	appearance: textfield;
}

.woocommerce .quantity .qty::-webkit-outer-spin-button,
.woocommerce .quantity .qty::-webkit-inner-spin-button {
	appearance: none;
	margin: 0;
}

.woocommerce-page .site-main--shop .page-title,
.woocommerce-cart .entry-title,
.woocommerce-checkout .entry-title,
.woocommerce-account .entry-title {
	font-family: var(--yt-font-display);
	font-size: clamp(2rem, 4vw, 2.75rem);
	text-align: center;
	margin: 0 0 2rem;
}

/* Mobile cart table */
@media (max-width: 768px) {
	.woocommerce table.shop_table_responsive tr,
	.woocommerce-page table.shop_table_responsive tr {
		margin-bottom: 1rem;
		border: 1px solid var(--yt-line);
		background: var(--yt-white);
	}

	.woocommerce #reviews.woocommerce-Reviews {
		grid-template-columns: 1fr;
	}

	.woocommerce #reviews #review_form_wrapper {
		grid-column: auto;
		grid-row: auto;
	}
}
