.product {
	display: flex;
	gap: 35px;
}

.product__left {
	flex: 0 0 550px;
}
.product__img img {
	display: block;
	margin: 0px 0px 0px 0px;
	width: 100%;
	height: auto;
	aspect-ratio: 550 / 550;
	object-fit: contain;
}

.product__right {
	flex: 1 1 auto;
	min-width: 0;
}
.product-options__row {
	display: flex;
	gap: 20px;
}
.product-options__row:not(:first-child) {
	margin-top: 25px;
}
.product-price.--mobile + .product-options__row {
	margin-top: 0;
}
.product-options__input, 
.product-options__select {
	flex: 0 0 calc((100% - 20px) / 2);
}
.product-options__input-label, 
.product-options__select-label {
	display: block;
	font-size: 15px;
	line-height: 15px;
	font-weight: 500;
	margin: 0px 0px 0px 0px;
	margin-top: -1px;
	margin-bottom: 18px;
}
.product-options__select select, 
.product-options__select option {
	font-size: 15px;
	line-height: 15px;
}
.product-options__select option {
	line-height: 19px;
}
.product-options__select select {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	width: 100%;
	height: 46px;
	padding: 12px calc(16px + 20px + 12px) 13px 16px;
	border: 1px solid var(--color-gray-06);
	border-radius: 6px;
	background-color: var(--color-white);
	font-size: 15px;
	line-height: 15px;
	cursor: pointer;
	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='M5 7.5L10 12.5L15 7.5' stroke='%2355585F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 13px center;
	background-size: 20px;
}
.product-options__select span.select2.select2-container {
	height: 46px;
}
.product-options__select span.select2-selection.select2-selection--single {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	width: 100%;
	padding: 12px 16px 13px 16px;
	font-size: 15px;
	line-height: 19px;
	height: auto !important;
}
.product-options__select .select2-selection__arrow {
	top: 0px;
}
.product-options__checkboxes {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 15px 20px;
}
.product-options__checkboxes-item {
	position: relative;
	flex: 0 0 calc((100% - 20px) / 2);
}
.product-options__checkboxes-label {
	display: inline-flex;
	align-items: center;
	gap: 14px; 
	cursor: pointer;
	font-family: inherit;
	font-size: 15px;
	line-height: 18px;
	position: relative;
	padding-left: 0;
}
.product-options__checkboxes-label > span > span {
	display: block;
	color: var(--color-gray-11);
}
.product-options__checkboxes-label::before {
	content: '';
	display: inline-block;
	flex: 0 0 30px;
	width: 30px;
	height: 30px;
	border-radius: 6px;
	border: 1px solid var(--color-gray-06);
	background-color: var(--color-white);
	transition: var(--transition);
}
.product-options__checkboxes-input:checked + .product-options__checkboxes-label::after {
	content: '';
	position: absolute;
	left: calc((30px / 2) - (19px / 2) + 1px);
	top: 50%;
	transform: translateY(-50%);
	width: 19px;
	height: 13px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19' height='13'%3E%3Cpath fill-rule='evenodd' fill='%23ffffff' d='M17.569,2.529 L7.563,12.534 C7.270,12.828 6.884,12.971 6.500,12.967 C6.115,12.971 5.730,12.828 5.436,12.534 L0.431,7.530 C-0.150,6.948 -0.150,6.009 0.431,5.427 C1.011,4.847 1.952,4.847 2.532,5.427 L6.500,9.395 L15.467,0.427 C16.047,-0.154 16.988,-0.154 17.569,0.427 C18.149,1.008 18.149,1.948 17.569,2.529 Z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}
.product-options__checkboxes-label:hover::before {
	border-color: var(--color-gray-20);
	cursor: pointer;
}
.product-options__checkboxes-input:focus + .product-options__checkboxes-label::before {
	border-color: var(--color-gray-20);
	outline: none;
}
.product-options__checkboxes-input:checked + .product-options__checkboxes-label::before {
	background-color: var(--color-red);
	border-color: var(--color-red);
}
.product-options__checkboxes-input {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
	pointer-events: none;
}
.product__info-attention {
	background: var(--color-attention-block);
	margin: 25px 0px 25px 0px;
	padding: calc(15px - 2px) 15px calc(15px - 2px) 15px;
	border-radius: 6px;
	position: relative;
	font-size: 14px;
	line-height: 18px;
	color: var(--color-gray-11);
}
.product__info-attention::before {
	content: '!';
	display: flex;
	justify-content: center;
	align-items: center;
	width: 20px;
	height: 20px;
	padding-left: 1px;
	border-radius: 50%;
	border: 1px solid var(--color-attention-text);
	font-size: 14px;
	line-height: 14px;
	font-weight: 500;
	color: var(--color-attention-text);
	position: absolute;
	top: 50%;
	left: 15px;
	transform: translateY(-50%);
}
.product__info-attention-inner {
	display: block;
	margin-left: calc(20px + 15px);
}
.product__info-summary {
	display: flex;
	flex-direction: column;
	margin-top: -3px;
}
.product__info-summary-item {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	font-size: 15px;
	line-height: 22px;
	position: relative;
	margin-top: 8px;
}
.product__info-summary-item:first-child {
	margin-top: 0px;
}
.product__info-summary-item::after {
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	background: var(--color-gray-16);
	position: absolute;
	left: 0;
	bottom: 5px;
	z-index: 10;
}
.product__info-summary-item-name {
	font-weight: 500;
	background: var(--color-white);
	padding-right: 8px;
	position: relative;
	z-index: 20;
}
.product__info-summary-item-value {
	color: var(--color-gray-11);
	background: var(--color-white);
	padding-left: 8px;
	position: relative;
	z-index: 20;
}
.product__info-summary-item-value a {
	text-decoration: underline;
	text-decoration-color: var(--color-red);
}
.product__info-summary-item-value a:hover, 
.product__info-summary-item-value a:active {
	text-decoration: underline;
	text-decoration-color: transparent;
}
.product__order.--mobile {
	display: none;
}

.page__content-wrapper[data-product] .page__content-aside {
	flex: 0 0 362px;
}
.product-aside {
	background: var(--color-white);
	border-radius: 16px;
	box-shadow: 0 10px 35px 0 rgba(32, 54, 75, .12);
}
.product-aside__info {
	padding: 25px 25px 25px 25px;
}
.product-aside__info .product-item__rating-total {
	margin-left: 10px;
}
.product-price {
	display: flex;
	align-items: center;
}
.product-price.--mobile {
	display: none;
}
.product-price__new {
	background: var(--color-red);
	padding: 8px 12px calc(8px - 1px) 12px;
	border-radius: 10px;
	color: var(--color-white);
	font-size: 26px;
	line-height: 26px;
	font-weight: 600;
	white-space: nowrap;
}
.product-price__new-prefix {
	font-size: 18px;
	line-height: 26px;
}
.product-price__old {
	margin-left: 15px;
	font-size: 18px;
	line-height: 26px;
	color: var(--color-gray-11);
	text-decoration: line-through;
	white-space: nowrap;
}
.product-price__discount {
	margin-left: 15px;
	font-size: 18px;
	line-height: 26px;
	font-weight: 500;
	color: var(--color-red);
}
.product-price__discount.--hidden {
	display: none;
}
.product-rating {
	display: flex;
	align-items: center;
	margin: 10px 0px 0px 0px;
	font-size: 14px;
	line-height: 22px;
	color: var(--color-gray-11);
	gap: 6px;
}
.product-rating__stars {
	display: flex;
	flex-direction: row;
	margin: 0 -1.5px;
	padding: 0;
	position: relative;
}
.product-rating__stars.--hover {}
.product-rating__star {
	display: inline-block;
	vertical-align: top;
	margin: 0;
	padding: 0 1.5px;
	position: relative;
	font-size: 0px;
	line-height: 0;
	cursor: pointer;
}
.product-rating__stars.--disabled .product-rating__star, 
.product-rating__stars.--voted .product-rating__star {
	cursor: default !important;
}
.product-rating__star.--hover {}
.product-rating__star > div {
	display: inline-block;
	vertical-align: top;
	margin: 0;
	padding: 0;
	position: relative;
	width: 14px;
	height: 14px;
	font-size: 0px;
	line-height: 0;
	background-image: url(../../images/icon-star-empty.svg);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 14px;
}
.product-rating__star > div > div {
	display: block;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 100%;
	background-image: url(../../images/icon-star-full.svg);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 14px;
}
.product-rating__stars.--hover:not(.--disabled) .product-rating__star > div > div, 
.product-rating__stars.--hover:not(.--voted) .product-rating__star > div > div {
	width: 0% !important;
}
.product-rating__stars.--hover:not(.--disabled) .product-rating__star.--hover > div > div, 
.product-rating__stars.--hover:not(.--voted) .product-rating__star.--hover > div > div {
	width: 100% !important;
}
.product-rating__stars.--voted .product-rating__star > div > div {
	width: 0% !important;
}
.product-rating__stars.--voted .product-rating__star.--active > div > div {
	width: 100% !important;
}
.product-rating__total {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 4px;
	color: var(--color-gray-11);
}
.product-rating__total-average {
	font-size: inherit;
	line-height: inherit;
	font-weight: 500;
}
.product-rating__total-count {
	font-size: inherit;
	line-height: inherit;
}
.product-benefits {
	display: block;
	margin: 15px 0px 0px 0px;
}
.product-benefits ul {
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.product-benefits ul li {
	padding-left: 20px;
	position: relative;
}
.product-benefits ul li::before {
	content: '';
	display: block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	border: 2px solid var(--color-red);
	position: absolute;
	top: 6px;
	left: 0;
}
.product-actions {
	margin-top: 20px;
	display: flex;
	gap: 15px;
}
.product-actions__btn.btn {
	flex: 1 1 auto;
	min-width: 0;
}
.product-actions__btn.--small {
	flex: 0 0 46px;
	width: 46px;
	height: 46px;
	background: var(--color-gray-02);
	border-radius: 6px;
	transition: var(--transition);
}
.product-actions__btn.--small.--disabled {
	cursor: default !important;
}
.product-actions__btn.--favorites {
	background-image: url('../../images/product/heart-default.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: 28px auto;
}
.product-actions__btn.--favorites.--active {
	background-image: url('../../images/product/heart-active.svg');
}
.product-actions__btn.--favorites:hover:not(.--active) {
	background-image: url('../../images/product/heart-hover.svg');
}
.product-actions__btn.--cart {
	background-image: url('../../images/product/cart-default.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	background-size: 28px auto;
}
.product-actions__btn.--cart.--active {
	background-image: url('../../images/product/cart-active.svg');
}
.product-actions__btn.--cart:hover:not(.--active) {
	background-image: url('../../images/product/cart-hover.svg');
}
.product-actions__btn.--cart.--disabled, 
.product-actions__btn.--cart.--disabled:hover {
	background-image: url('../../images/product/cart-disabled.svg') !important;
}
.product-contacts {
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 20px 25px 25px 25px;
	border-top: 1px solid var(--color-gray-16);
} 
.product-contacts__img {
	flex: 0 0 66px;
	width: 66px;
	height: 66px;
	border-radius: 50%;
	overflow: hidden;
	background: url('../../images/img-support.jpg') no-repeat center center / cover;
}
.product-contacts__content {
	width: 100%;
}
.product-contacts__content-title {
	font-size: 16px;
	line-height: 22px;
	font-weight: 500;
}
.product-contacts__content-info {
	display: flex;
	align-items: center;
	gap: 20px;
	margin-top: 3px;
	width: 100%;
}
.product-contacts__content-links {
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 0px;
	width: 100%;
}
.product-contacts__content-links a.phone-link {
	font-size: 15px;
	line-height: 22px;
	color: var(--color-black);
	text-decoration: none;
	white-space: nowrap;
}
.product-contacts__content-links a.phone-link:hover, 
.product-contacts__content-links a.phone-link:active {
	color: var(--color-red);
	text-decoration: none;
}
.product-contacts__content-links a.email-link {
	font-size: 15px;
	line-height: 22px;
	white-space: nowrap;
	text-decoration: underline;
	text-decoration-color: var(--color-red);
}
.product-contacts__content-links a.email-link:hover, 
.product-contacts__content-links a.email-link:active {
	text-decoration: underline;
	text-decoration-color: transparent;
}

.page__content-wrapper[data-product] .benefits__items {
	margin-top: 50px;
	padding-top: 50px;
}
.page__content-wrapper[data-product] .benefits__items.--cols-3 .benefits__item:nth-child(n+4) {
	display: none;
}

.product-tabs {
	margin: 40px 0px 0px 0px;
}

.product-content-text {
	margin: 40px 0px 0px 0px;
}

.product-links {
	margin: calc(22px + (22px - 15px)) 0px 0px 0px;
}
.product-links .catalog-tags {
	margin: 0px 0px 0px 0px;
}

@media (max-width: 1500px) {
	.product__left {
		flex: 0 0 450px;
	}
}
@media (min-width: 1241px) and (max-width: 1500px) {
	.tabs__navigation-item[data-slug="rassrochka"] {
		display: none;
	}
}
@media (max-width: 1240px) {
	.page__content-wrapper[data-product] .page__content-aside {
		display: none !important;
	}
	.product__left {
		flex: 0 0 300px;
	}
	.product-options__row {
		flex-wrap: wrap;
	}
	.product-price.--mobile + .product-options__row {
		margin-top: 25px;
	}
	.product-options__input, 
	.product-options__select {
		flex: 0 0 100%;
	}
	.product__order.--mobile {
		display: block;
	}
	.product-price.--mobile {
		display: flex;
	}
	.product-contacts {
		border-top: none;
		padding-left: 0px;
		padding-right: 0px;
		padding-bottom: 0px;
	}
}
@media (min-width: 769px) and (max-width: 1240px) {
	.page__content-wrapper[data-product] .benefits__items.--cols-3 {
		grid-template-columns: repeat(2, 1fr);
	}
	.page__content-wrapper[data-product] .benefits__items.--cols-3 .benefits__item:nth-child(n+4) {
		display: flex;
	}
}
@media (max-width: 768px) {
	.product {
		flex-direction: column;
	}
	.product__left {
		flex: 1 1 auto;
		width: 100%;
	}
	.product__right {
		width: 100%;
	}
	.page__content-wrapper[data-product] .benefits__items {
		margin-top: 35px;
		padding-top: 35px;
	}
	.product-tabs {
		margin: 30px 0px 0px 0px;
	}
	.product-content-text {
		margin: 30px 0px 0px 0px;
	}
}
@media (max-width: 549px) {
	.product-price__new {
		font-size: 24px;
		line-height: 24px;
	}
	.product-price__new-prefix {
		line-height: 24px;
	}
	.product-price__old {
		line-height: 24px;
	}
	.product-price__discount {
		display: none;
		line-height: 24px;
	}
	.product-actions {
		gap: 10px;
	}
	.page__content-wrapper[data-product] .benefits__items {
		display: none;
	}
	.product-tabs {
		border-top: 1px solid var(--color-gray-05);
		margin: 35px 0px 0px 0px;
		padding: 35px 0px 0px 0px;
	}
}
@media (max-width: 379px) {
    .product-contacts {
		gap: 15px;
    }
	.product-contacts__content-info {
		gap: 15px;
	}
}
@media (max-width: 359px) {
	.product-contacts .site-contacts__chat-button {
		display: none;
	}
}
@media (max-width: 349px) {
	.product-options__checkboxes-item {
		flex: 0 0 100%;
	}
}

.product-banner-zamer {
	display: block;
	margin: 40px 0px 0px 0px;
	padding: 40px 40px 40px 40px;
	position: relative;
	width: 100%;
	border-radius: 16px;
	background: var(--color-gray-05);
}
.product-banner-zamer__bg {
	display: block;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: top left;
	background-size: cover;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	border-radius: inherit;
}
.product-banner-zamer__person {
	display: block;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position-x: calc(100% - 83px);
	background-position-y: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
}
.product-banner-zamer__content {
	max-width: 560px;
	position: relative;
	z-index: 20;
}
.product-banner-zamer__content-title {
	font-size: 26px;
	line-height: 32px;
	font-weight: 600;
}
.product-banner-zamer__content-title.--offset-top {
	margin-top: calc((32px - 26px) * -1);
}
.product-banner-zamer__content-text {
	font-size: 18px;
	line-height: 26px;
	margin-top: 15px;
}
.product-banner-zamer__content-btns {
	display: flex;
	gap: 20px;
	margin-top: 25px;
}
.btn.product-banner-zamer__content-btn {
	padding: 14px 24px 15px 24px;
	height: 44px;
}
@media (max-width: 1500px) {
	.product-banner-zamer__person {
		background-position-x: calc(100% - 30px);
	}
}
@media (max-width: 1240px) {
	.product-banner-zamer__person {
		display: none;
	}
	.product-banner-zamer__content-title {
		font-size: 22px;
		line-height: 28px;
	}
	.product-banner-zamer__content-title.--offset-top {
		margin-top: calc((28px - 22px) * -1);
	}
	.product-banner-zamer__content-text {
		font-size: 16px;
		line-height: 22px;
	}
}
@media (max-width: 768px) {
	.product-banner-zamer {
		padding: 35px 35px 35px 35px;
	}
}
@media (max-width: 549px) {
	.product-banner-zamer {
		padding: 40px 25px 40px 25px;
		border-radius: 0;
		width: 100%;
		margin-left: 0px;
		margin-right: 0px;
	}
	.product-banner-zamer__content-title {
		font-size: 20px;
		line-height: 26px;
	}
	.product-banner-zamer__content-title.--offset-top {
		margin-top: calc((26px - 20px) * -1);
	}
	.product-banner-zamer__content-btns {
		flex-direction: column;
		gap: 15px;
	}
}
@media (max-width: 419px) {
	.product-banner-zamer {
		width: calc(100% + (25px * 2));
		margin-left: -25px;
		margin-right: -25px;
	}
}