/* woocommerce-product.css — Стили страницы товара WooCommerce (галерея, вариации/свотчи, блоки продукта). */
.single-product .site-main {
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 30px;
}

@media only screen and (max-width:1300px) {
	.single-product .site-main {
		padding-left: 20px;
		padding-right: 20px;
	}
}

.woocommerce div.product {
	display: flex;
	flex-wrap: wrap;
}

.woocommerce div.product div.images .woocommerce-product-gallery__image a {
	position: relative;
	display: block;
}

.woocommerce div.product div.images .woocommerce-product-gallery__image a::before {
	content: '';
	display: block;
	position: absolute;
	top: 10px;
	right: 10px;
	width: 26px;
	height: 26px;
	border-radius: 100%;
	background-color: var(--vi-white-color);
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 11 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.9147 9.19752C7.24285 9.19752 9.13018 7.29478 9.13018 4.94764C9.13018 2.60049 7.24285 0.697754 4.9147 0.697754C2.58655 0.697754 0.699219 2.60049 0.699219 4.94764C0.699219 7.29478 2.58655 9.19752 4.9147 9.19752Z' stroke='%231E306E' stroke-width='1.3953'/%3E%3Cpath d='M7.92578 7.98291L9.73232 9.80419' stroke='%231E306E' stroke-width='1.3953' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M4.86571 2.79932V7.00227M2.78125 4.90079H6.95018' stroke='%231E306E' stroke-width='1.3953'/%3E%3C/svg%3E%0A");
	background-size: 13px 13px;
	background-position: center center;
	background-repeat: no-repeat;
	z-index: 2;
}

.woocommerce #content div.product div.images,
.woocommerce div.product div.images,
.woocommerce-page #content div.product div.images,
.woocommerce-page div.product div.images,
.woocommerce #content div.product div.summary,
.woocommerce div.product div.summary,
.woocommerce-page #content div.product div.summary,
.woocommerce-page div.product div.summary {
	float: unset;
	width: 50%;
}

.woocommerce #content div.product div.images,
.woocommerce div.product div.images,
.woocommerce-page #content div.product div.images,
.woocommerce-page div.product div.images {
	padding-right: 20px;
}

.woocommerce #content div.product div.summary,
.woocommerce div.product div.summary,
.woocommerce-page #content div.product div.summary,
.woocommerce-page div.product div.summary {
	padding-left: 20px;
}

.woocommerce div.product .product_title {
	font-size: 36px;
	margin-bottom: 1.25rem;
}

.woocommerce-product-details__short-description {
	margin-bottom: 1.25rem;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price,
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
	margin-bottom: 1.25rem;
}

.vi-product-additional-description {
	margin-bottom: 1.25rem;
	padding-top: 1.25rem;
	padding-bottom: 1.25rem;
	border-top: 1px solid #e4e6ed;
	border-bottom: 1px solid #e4e6ed;
}

.vi-product-additional-description>*:not(:last-child) {
	margin-bottom: 1.25rem;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price,
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
	color: var(--vi-text-color);
	font-weight: 500;
}

.woocommerce div.product form.cart .variations tbody {
	display: flex;
	flex-direction: column;
	width: 100%;
	gap: 1rem;
}

.woocommerce div.product form.cart .variations tbody>tr {
	display: flex !important;
	flex-direction: column !important;
	align-items: start;
	width: 100%;
	margin: 0;
}

.woocommerce div.product form.cart .variations tbody>tr th.label,
.woocommerce div.product form.cart .variations tbody>tr td.value {
	display: flex !important;
	width: 100% !important;
	flex-direction: column;
	align-items: flex-start;
}

.woocommerce div.product form.cart .reset_variations {
	color: var(--vi-accent-color);
}

.swatchly-type-wrap {
	--cols: 4;
	--gap: 10px;
	display: flex;
	flex-wrap: wrap;
	gap: var(--gap);
	width: 100%;
}

.swatchly-swatch {
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 5px;
	margin: 0;
	border-width: 1px;
	border-style: solid;
	border-color: #e4e6ed;
	background-color: #fff;
	flex: 0 0 calc((100% - (var(--cols) - 1) * var(--gap)) / var(--cols));
	transition: all .3s linear;
}

.swatchly-shape-type-rounded .swatchly-swatch {
	border-radius: 50px;
}

.swatchly-swatch.swatchly-selected,
.swatchly-swatch:hover {
	border-width: 2px;
	border-color: #d6ac6a;
	background-color: #ece2d4;
}

.woocommerce div.product form.cart .button {
	display: flex;
	width: 100%;
	justify-content: center;
	align-items: center;
	min-height: 60px;
	border-radius: 50px;
	padding: 10px;
	border-width: 2px;
	border-style: solid;
	border-color: var(--vi-accent-color);
	background-color: var(--vi-accent-color);
	color: var(--vi-white-color);
	font-weight: 600;
	float: unset;
	transition: all .3s linear;
}

.woocommerce div.product form.cart .button:hover {
	background-color: var(--vi-white-color);
	color: var(--vi-accent-color);
}

.vi-product-stock-info:not(.vi-is-hidden) {
	display: flex;
	align-items: center;
	min-height: 64px;
	background-color: #f2f2f2;
	padding: 5px 20px;
	border-radius: 10px;
	gap: 10px;
	margin-bottom: 1.25rem;
}

.vi-subtotal {
	font-size: 30px;
	font-weight: 500;
	margin-bottom: 1.25rem;
}

.vi-summary__payments {
	--vi-summary-cols: 7;
	--vi-summary-gap: 5px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	align-content: center;
	gap: var(--vi-summary-gap);
	width: 100%;
	filter: grayscale(1);
}

.vi-summary__payments img {
	flex: 0 0 calc((100% - (var(--vi-summary-cols) - 1) * var(--vi-summary-gap)) / var(--vi-summary-cols));
	height: 26px;
	object-fit: contain;
	object-position: center;
	display: block;
}

@media only screen and (max-width:767px) {

	.woocommerce #content div.product div.images,
	.woocommerce div.product div.images,
	.woocommerce-page #content div.product div.images,
	.woocommerce-page div.product div.images {
		width: 100%;
		padding: 0;
	}

	.woocommerce #content div.product div.summary,
	.woocommerce div.product div.summary,
	.woocommerce-page #content div.product div.summary,
	.woocommerce-page div.product div.summary {
		width: 100%;
		padding: 0;
	}
}

.vi-product-lp {
	width: 100%;
	margin-bottom: 4rem;
}

.vi-product-testimonials {
	width: 100%;
	margin-bottom: 4rem;
}

.flex-viewport {
	overflow: hidden;
}

.flex-viewport .woocommerce-product-gallery__wrapper img {
	height: 70vw !important;
	object-fit: cover;
	-o-object-fit: cover;
	object-position: center;
	-o-object-position: center;
}

.woocommerce div.product div.images .flex-control-thumbs {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	column-gap: 10px;
	row-gap: 15px;
	margin-top: 15px;
}

.flex-viewport,
.woocommerce div.product div.images .flex-control-thumbs li {
	border-radius: 1rem;
}

.woocommerce div.product div.images .flex-control-thumbs li {
	float: unset;
	width: auto;
	overflow: hidden;
	transition: all .3s linear;
	position: relative;
}

.woocommerce div.product div.images .flex-control-thumbs li img {
	opacity: 1;
	height: 100%;
	object-fit: cover;
	-o-object-fit: cover;
	object-position: center;
	-o-object-position: center;
}

.woocommerce div.product div.images .flex-control-thumbs li:hover {
	filter: brightness(0.75);
}

.woocommerce div.product div.images .flex-control-thumbs li.vi-thumb--video::before {
	content: '';
	display: block;
	width: 40px;
	height: 40px;
	border-radius: 100%;
	overflow: hidden;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 42 41'%3E%3Cpath d='M20.8747 1.72607C10.5929 1.72607 2.25781 10.0612 2.25781 20.343C2.25781 30.6248 10.5929 38.9599 20.8747 38.9599C31.1566 38.9599 39.4916 30.6248 39.4916 20.343C39.4916 10.0612 31.1566 1.72607 20.8747 1.72607ZM16.8124 13.7697C16.6436 13.9951 16.6436 14.399 16.6436 15.2068V25.4788C16.6436 26.2866 16.6436 26.6905 16.8124 26.916C16.9595 27.1125 17.1847 27.2354 17.4295 27.2529C17.7105 27.273 18.0502 27.0546 18.7297 26.6178L26.7191 21.4817C27.3087 21.1027 27.6035 20.9132 27.7053 20.6722C27.7943 20.4616 27.7943 20.224 27.7053 20.0135C27.6035 19.7725 27.3087 19.583 26.7191 19.2039L18.7297 14.0679C18.0502 13.6311 17.7105 13.4127 17.4295 13.4327C17.1847 13.4502 16.9595 13.5732 16.8124 13.7697Z' fill='%23fff' fill-rule='evenodd' clip-rule='evenodd'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
}

@media only screen and (min-width:1025px) {
	.flex-viewport .woocommerce-product-gallery__wrapper img {
		height: 400px !important;
	}
}

@media only screen and (min-width:1280px) {
	.flex-viewport .woocommerce-product-gallery__wrapper img {
		height: 500px !important;
	}
}

.vi-accordion {
	margin-top: 16px;
}

.vi-accordion__item {
	border-bottom: 2px solid #e4e6ed;
}

.vi-accordion__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	cursor: pointer;
	padding: 16px 0;
}

.vi-accordion__title {
	font-size: 16px;
	line-height: 1.4;
	font-weight: 600;
}

.vi-accordion__icon {
	width: 32px;
	height: 32px;
	flex: 0 0 32px;
	border-radius: 100%;
	background: #e9ebf1;
	position: relative;
}

.vi-accordion__icon::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 2;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 7' width='8' height='7'%3E%3Cpath d='M1 1.86011L4 4.86011L7 1.86011' stroke='%231E306E' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-size: 8px 7px;
	background-position: center center;
	transition: all .3s linear;
}

.vi-accordion__content {
	height: 0;
	overflow: hidden;
}

.vi-accordion__content-inner {
	padding: 12px 0 16px 0;
}

.is-active .vi-accordion__icon::before {
	transform: rotate(180deg);
}

@media (min-width:1025px) {
	.vi-accordion__title {
		font-size: 18px;
	}
}

.vi-product-manager {
	border-radius: 1rem;
	background: #f2f2f2;
	padding: 1.25rem;
	margin-top: 1.25rem;
}

.vi-product-manager__top {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 12px;
}

.vi-product-manager__photo {
	width: 56px;
	height: 56px;
	border-radius: 100%;
	overflow: hidden;
	flex: 0 0 56px;
}

.vi-product-manager__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	border-radius: 100%;
}

.vi-product-manager__heading {
	font-weight: 500;
	font-size: 18px;
}

.vi-product-manager__title {
	margin-bottom: 0.5rem;
}

@media (min-width:1025px) {
	.vi-product-manager__heading {
		font-size: 20px;
	}

	.vi-product-manager__title {
		font-size: 18px;
	}
}

.woocommerce-breadcrumb {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
}

.woocommerce .woocommerce-breadcrumb::before {
	content: '';
	display: inline-flex;
	width: 15px;
	height: 13px;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 15 13' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.37327 0.619236L1.46875 5.93756H2.25069H2.81319V6.50006V11.7501C2.81319 11.8519 2.89885 11.9376 3.00069 11.9376H5.25069C5.35253 11.9376 5.43819 11.8519 5.43819 11.7501V8.00006V7.43756H6.00069H9.00069H9.56319V8.00006V11.7501C9.56319 11.8519 9.64884 11.9376 9.75069 11.9376H12.0007C12.1025 11.9376 12.1882 11.8519 12.1882 11.7501V6.50006V5.93756H12.7507H13.5326L7.62767 0.618832M7.37327 0.619236C7.37342 0.619101 7.37312 0.619371 7.37327 0.619236ZM7.37327 0.619236C7.44459 0.555846 7.55634 0.555442 7.62767 0.618832M7.62767 0.618832C7.62782 0.618967 7.62752 0.618697 7.62767 0.618832Z' stroke='%233E3E3E' stroke-width='1.125'/%3E%3C/svg%3E%0A");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	background-position: center center;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) .woocommerce-breadcrumb {
	margin: 0;
	padding-bottom: 2rem;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) .woocommerce-breadcrumb,
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) .woocommerce-breadcrumb a {
	color: var(--vi-text-color);
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) .woocommerce-breadcrumb a:hover {
	color: var(--vi-accent-color);
}

.woocommerce-breadcrumb-arrow {
	display: inline-flex;
	width: 6px;
	height: 10px;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 6 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0.488652 9.2928C0.364605 9.16387 0.296821 8.99096 0.300196 8.81207C0.303572 8.63319 0.37783 8.46296 0.506652 8.3388L4.05085 4.9998L0.506652 1.6608C0.439742 1.60011 0.385695 1.5266 0.347714 1.44464C0.309734 1.36267 0.288592 1.27392 0.285541 1.18363C0.282491 1.09335 0.297593 1.00337 0.329955 0.91903C0.362317 0.834689 0.411279 0.757703 0.47394 0.692632C0.536601 0.627561 0.611686 0.57573 0.694745 0.540209C0.777805 0.504689 0.86715 0.486203 0.957486 0.485845C1.04782 0.485488 1.13731 0.503267 1.22065 0.538128C1.30399 0.57299 1.37948 0.624226 1.44265 0.688799L5.49265 4.5138C5.55798 4.57677 5.60994 4.65226 5.64543 4.73576C5.68093 4.81926 5.69922 4.90907 5.69922 4.9998C5.69922 5.09053 5.68093 5.18033 5.64543 5.26384C5.60994 5.34734 5.55798 5.42283 5.49265 5.4858L1.44265 9.3108C1.31372 9.43485 1.14081 9.50263 0.961927 9.49926C0.783041 9.49588 0.612814 9.42162 0.488652 9.2928Z' fill='%233E3E3E'/%3E%3C/svg%3E%0A");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}

.elementor-location-footer a {
	color: var(--vi-text-color-gray);
}

.vi-footer-company-info br {
	display: none;
}

@media only screen and (min-width:1025px) {
	.vi-footer-company-info br {
		display: block;
	}

	.vi-footer-top>* {
		width: auto;
		flex: 0 0 auto !important;
	}
}

@media only screen and (max-width:1024px) {
	.vi-footer-top {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.vi-footer-top .vi-footer-company {
		grid-column: 1 / -1;
	}
}

@media only screen and (max-width:576px) {
	.vi-footer-top {
		display: grid;
		grid-template-columns: repeat(1, minmax(0, 1fr));
		gap: 0 !important;
	}

	.vi-footer-top>*:not(:last-child, :nth-child(2)) {
		margin-bottom: 3rem !important;
	}

	.vi-footer-top>*:nth-child(2) {
		margin-bottom: 1.25rem;
	}
}


.woocommerce-cart-form__contents {
	border-top: 1px solid #e5e7eb;
}