.single-product-page {
	background-color: var(--color-background);
}

.single-product-page__header {
	display: flex;
	flex-direction: column;
	gap: var(--space-8);
}

.single-product-page__breadcrumbs {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--space-8);
}

.single-product-page__breadcrumbs a {
	text-decoration: none;
}

.single-product-page__layout {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
	column-gap: var(--space-64);
	align-items: start;
}

.single-product-page__gallery {
	display: flex;
	flex-direction: column;
	gap: var(--space-16);
	min-width: 0;
}

.single-product-page__image img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: var(--radius-base);
}

.single-product-page__sidebar {
	position: relative;
	min-width: 0;
}

.single-product-page__sidebar-inner {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	background-color: var(--color-background);
	padding-top: 64px;
}

.single-product-page__summary {
	display: flex;
	flex-direction: column;
	gap: var(--space-24);
}

.single-product-page__summary-header {
	display: flex;
	flex-direction: column;
	gap: var(--space-16);
}

.single-product-page__description > * {
	margin-top: 0;
}

.single-product-page__description > *:last-child {
	margin-bottom: 0;
}

.single-product-page__description--mobile,
.single-product-page__price--mobile {
	display: none;
}

.single-product-page__price .price {
	font-size: var(--font-size-24) !important;
	font-weight: var(--font-weight-bold) !important;
	line-height: var(--line-height-150) !important;
	color: var(--color-text) !important;
}

.single-product-page__specs {
	min-height: 120px;
}

.single-product-page__specs--mobile {
	display: none;
}

.single-product-page__spec-list {
	display: flex;
	flex-direction: column;
	gap: var(--space-24);
	margin-top: 32px;
}

.single-product-page__spec-row {
	display: grid;
	grid-template-columns: minmax(0, 160px) minmax(0, 1fr);
	column-gap: var(--space-24);
	align-items: start;
}

.single-product-page__spec-label,
.single-product-page__spec-value {
	margin: 0;
}

.single-product-page__add-to-cart form.cart,
.single-product-page__add-to-cart .cart {
	margin: 0;
}

.single-product-page__add-to-cart .stock {
	display: none;
}

.single-product-page__add-to-cart .single_add_to_cart_button {
	width: 100%;
	padding: var(--space-16) var(--space-24);
	border: 0;
	background-color: var(--color-primary);
	color: var(--color-background);
	font-family: var(--font-body);
	font-size: var(--font-size-16);
	font-weight: var(--font-weight-normal);
	line-height: 1.2;
	text-decoration: none;
	text-transform: uppercase;
	border-radius: var(--radius-base);
	cursor: pointer;
}

.single-product-page__add-to-cart .quantity,
.single-product-page__add-to-cart label,
.single-product-page__add-to-cart .woocommerce-variation-add-to-cart,
.single-product-page__add-to-cart .variations {
	margin-bottom: var(--space-16);
}

.single-product-page__sidebar.is-fixed .single-product-page__sidebar-inner {
	position: fixed;
	top: var(--space-32);
	left: var(--single-product-sidebar-left, auto);
	width: var(--single-product-sidebar-width, 100%);
}

.single-product-page__sidebar.is-bottom .single-product-page__sidebar-inner {
	position: absolute;
	top: auto;
	bottom: 0;
	left: 0;
	width: 100%;
}

.single-product-page__related {
	display: flex;
	flex-direction: column;
	gap: var(--space-24);
	background-color: var(--color-background);
}

.single-product-page__related .products-slider {
	--color-text-loop: var(--color-text);
}

.single-product-page__related .products-slider__button {
	color: var(--color-text);
}

.single-product-page__related .products-slider__button:disabled {
	color: var(--color-text-muted);
}

@media (max-width: 768px) {
	.single-product-page__layout {
		grid-template-columns: minmax(0, 1fr);
		row-gap: var(--space-24);
	}

	.single-product-page__sidebar-inner {
		padding: 0 0;
	}

	.single-product-page__summary {
		gap: 0;
	}

	.single-product-page__summary-header {
		flex-direction: row;
		align-items: flex-end;
		justify-content: space-between;
		gap: var(--space-16);
	}

	.single-product-page__summary-header h2 {
		flex: 1 1 auto;
	}

	.single-product-page__price--mobile {
		flex: 0 0 auto;
		align-self: flex-end;
	}

	.single-product-page__specs {
		min-height: 0;
	}

	.single-product-page__spec-row {
		grid-template-columns: minmax(0, 1fr);
		row-gap: var(--space-4);
	}

	.single-product-page__specs--desktop {
		display: none;
	}

	.single-product-page__description--desktop,
	.single-product-page__price--desktop {
		display: none;
	}

	.single-product-page__description--mobile,
	.single-product-page__price--mobile {
		display: block;
	}

	.single-product-page__description--mobile {
		margin-top: 0;
		padding-top: calc(var(--single-product-sidebar-inner-height, 0px) + var(--space-24));
	}

	.single-product-page__specs--mobile {
		display: block;
		margin-top: var(--space-24);
		padding-top: 0;
	}

	.single-product-page__sidebar.is-fixed .single-product-page__sidebar-inner {
		top: auto;
		bottom: 0;
		left: var(--single-product-sidebar-left, 0);
		width: var(--single-product-sidebar-width, 100%);
		padding-top: var(--space-24);
		padding-bottom: var(--space-24);
		box-sizing: border-box;
	}

	.single-product-page__spec-list {
	gap: var(--space-16);
	}

	.single-product-page__price .price {
	font-size: var(--font-size-16) !important;
}
}
