.swiper__image {
	width: 100%;
}

.swiper__thumb img {
	aspect-ratio: 1 / 1;
	/* display: flex;
	overflow: hidden; */
}

.swiper__thumb-image {
	width: 100%;
	height: 100%;
	max-height: 120px;
	max-width: 120px;
	object-fit: contain;
	background: var(--color-bg-primary);
	border: 1px solid #d4d4d4;
	border-radius: 6px;
}

.mySwiper {
	margin-top: 16px;
}

.product__question-heading {
    color: var(--color-text-primary);
	font-size: 1.125rem;
}

.product__question button {
	margin-top: 20px;
}

.items--wrapper {
    display: flex;
    flex-direction: column;
}

.items--wrapper {
    gap: 20px;
}

.block--product-info .row {
    display: grid;
    grid-template-columns: 1fr;
    justify-content: end;
    justify-items: end;
}

.block--product-info .row-2-column-lg {
	display: grid;
    grid-template-columns: auto 1fr;
    align-items: end;
    gap: 2%;
    justify-content: space-between;
    justify-items: stretch;
	margin-bottom: 2rem;
}

@media(max-width: 480px) {
	.block--product-info .row-2-column-lg {
    	grid-template-columns: 1fr;
		margin-top: 20px;
	}
}

.block--product-image {
	display: block;
	position: relative;
	padding: 0;
	background: unset;
}

.product__name {
	font-size: 1.875rem;  
	color: var(--color-rkr-label-gray);
}

.product__code {
	font-size: 0.825rem;
	color: #626262;
}

.product__count-heading {
	margin: 0 0 5px;
	font-weight: 500;
	color: #222222;
	display: block;
	position: relative;
}

.product__description {
	margin-top: 10px;
	font-size: 1rem;
	font-weight: 300;
	line-height: 1.625rem;
	margin-bottom: 30px;
}

.product__badge-sale {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 9;
	background: var(--color-bg-button);
	display: flex;
	padding: 10px 14px;
	border-radius: 5px;
	color: #fff;
	font-size: 0.7rem;
}

.product_price-rr .product__price__wrapper .product__price__vat {
	color: #222;
	font-weight: 500;
	font-size: 1rem;
}

.product_price-rr .product__price__wrapper .product__price__old {
	font-size: 1.1rem;
	color: #999999CC;
	text-decoration: line-through;
	font-weight: 400;
}

.product__stock table {
	max-width: 450px;
}

.in-stock {
	color: #00e316;
}

.out-of-stock {
	color: var(--color-text-error);
}

.product__stock-qty {
	text-align: end;
}

.product__stock td {
	font-size: 0.9rem;
	padding: 2px 0;
}

.product__price__vat,
.product__badge-sale {
	margin-left: 12px;
}

.product__prices__wrapper {
    display: flex;
    flex-flow: column;
    gap: 10px;
}

.product__prices__wrapper:has(.product__price__old) {
	flex-flow: row nowrap;
	gap: 10px;
}

.product__video {
	width: 100%;
    height: 350px;
	margin-top: 30px;
}

@media(max-width: 480px) {
	.product__prices__wrapper {
		align-items: center;
	}

	.product__prices__wrapper:has(.product__price__old) {
		justify-content: space-between;
	}
}

.product_price-rr {
	display: flex;
	align-items: flex-start;
	gap: 5px;
	margin-bottom: 0;
}

.columns--2 .product_price-rr {
	flex-flow: column;
}

.product_price-rr > span {
	font-size: 1rem;
	line-height: 1rem;
	font-weight: 500;
	white-space: nowrap;
}

.product_price-rr > span.product__price__old.with-vat {
	font-size: 1.2rem;
}

.product__price__old {
	color: var(--product-price-old-color);
	text-decoration: line-through;
}

.product_price-rr.with-vat > span,
.product_price-rr > span.product__price-pricelist.with-vat:not(.product__price__old ) {
	font-size: 2rem;
	color: #CD6639;
	font-weight: 700;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

.product__price__label {
	font-size: 0.938rem;
	margin-bottom: 4px;
	font-weight: 500;
}

.product_price-wholesale {
	font-size: .9rem;
}

.product-options {
	margin-top: 15px;
	grid-column: 1 / -1;
}

.option-wrap {
	margin-bottom: 10px;
}

.option-wrap label {
	font-size: 0.8rem;
	margin-bottom: 3px;
}

.option-wrap > div {
	display: flex;
    flex-direction: column;
}

.product__actions {
    display: flex;
    flex-flow: row wrap;
    gap: 16px;
    margin-top: 16px;
    align-items: flex-end;
    justify-content: flex-end;
}

@media(max-width: 480px) {
	.product__count-heading {
		display: none;
	}

	.product__actions {
		justify-content: space-between;
	}
}

@media(max-width: 380px) {
	.product__actions {
		justify-content: center;
	}

	.product__button,
	.product__actions .qty-wrap {
		flex: 0 0 100%;
	}
}

.product__actions .qty-wrap {
	flex: 0 0 110px;
}

.product__actions .qty-wrap--package {
	flex: 0 0 130px;
}

.product__count {
	display: flex;
	width: 100%;
	border: 1px solid var(--border-color);
	border-radius: 5px;
	height: 40px;
}

.product__count-button {
	max-width: 33px;
	text-align: center;
	font-size: 1.5rem;
	font-weight: 400;
	width: 100%;
}

.product__count-input {
	text-align: center;
	font-size: 1rem;
	font-weight: 600;
	border-right: 0px solid var(-border-color);
	border-left: 0px solid var(-border-color);
	background: #fff;
}

.product__stock-badge {
	visibility: hidden;
	background: #999999CC;
	color: #fff;
	font-size: 0.625rem;
	white-space: nowrap;
	padding: 8px 17px;
	border-radius: 4px;
	min-height: 28px;
	text-align: center;
}

.product__button {
	font-size: 1rem;
	width: auto;
	min-width: 150px;
	color: #fff;
	background: #009331;
	min-height: 40px;
	max-width: 250px;
}

.js__product__ask-info {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 16px;
	margin-top: 16px;
	padding-left: 0;
	width: 100%;
}

.js__product__ask-info .product__button {
	margin-left: 0;
}

.js__product__ask-info.hidden {
    display: none;
}

.product__button:hover {
	color: #fff;
	background: #00822b;
}

.swiper-slide {
	border: 2px solid transparent;
	border-radius: 8px;
}

.swiper-slide-thumb-active .swiper__thumb-image {
	border: 2px solid var(--color-text-active);
}

.product-files {
	max-width: 600px;
	text-align: left;
}

.product-files .content {
	list-style: none;
	padding: 0;
	margin: 0;
}

.product-files .content li {
	list-style: none;
}

.product-files .content li p {
	margin: 0 0 5px 0;
}

.product-files .content li .file-name {
	font-weight: bold;
}

.product-files .content li .file-description {
	color: #666;
	font-size: 14px;
}

.product-files .content li a {
	color: #1a73e8;
	text-decoration: none;
	font-size: 14px;
}

.product-files .content li a:hover {
	color: #0056b3;
}

.product__price--package {
	margin-top: 2rem;
}

.product__actions--package {
	justify-content: flex-start;
	margin-bottom: 2rem;
}

.archived-status {
    color: var(--color-text-error);
    font-size: .825rem;
    font-weight: bold;
    margin: 10px 0;
    display: block;
}

.product__info {
	margin-top: 40px;
}

.tabs {
	flex-direction: column;
	gap: 0;
	margin: 0;
}

.tab {
	text-align: start;
	border-bottom: 1px solid grey;
	padding: 15px 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-right: 10px;
	color: var(--color-text-primary);
}

.tab--active:not(.tab__content) {
	border-bottom: 1px solid grey;
}

.tab__content {
	margin-top: 20px;
	font-weight: 300;
	margin-bottom: 30px;
}

.tab__content p {
	line-height: 1.6;
}

.table-2columns dt {
	font-weight: 500;
}

.block--widget {
	margin: 50px 0;

}

.block--widget[hidden] {
	display: none;
	margin: 0;
}

.swiper2 {
	position: relative;
	border: 1px solid #d4d4d4;
}

.swiper > svg {
	position: absolute;
	bottom: 38px;
	right: 38px;
	z-index: 1000;
	pointer-events: none;
}

.swiper.swiperMain--fullscreen {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    z-index: 9999;
    display: flex;
    padding: 85px 0;
}

.js__swiper-close {
    display: none;
}

.swiperMain--fullscreen .js__swiper-close {
    display: block;
    position: absolute;
    text-align: end;
    cursor: pointer;
    top: 15px;
    right: 15px;
    z-index: 100;
}

.swiperMain--fullscreen .swiper-slide {
    margin: 0 auto;
    max-height: 1000px;
}

.swiperMain--fullscreen .swiper__image {
    object-fit: contain;
    height: 100%;
}

.swiperMain--fullscreen .swiper-button-next {
    right: 25px;
}

.swiperMain--fullscreen .swiper-button-prev {
    left: 25px;
}

.fullscreen-slider {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    background-color: #fff;
    padding: 20px;
}

.fullscreen-slider .swiper-wrapper {
    display: flex;
    align-items: center;
}

.fullscreen-slider .swiper-container {
    width: 100%;
    height: 100%;
    display: flex;
}

.fullscreen-slider .swiper-slide {
    text-align: center;
    font-size: 18px;
    background: transparent;
    max-height: 1000px;
}

.fullscreen-slider .close-fullscreen {
    position: absolute;
    text-align: end;
    cursor: pointer;
    top: 15px;
    right: 15px;
    z-index: 100;
}

.fullscreen-slider .swiper-image {
    object-fit: contain;
}

@media(min-width:992px) {
	.blocks--product {
		display: grid;
		grid-template-columns: repeat(auto-fill, minmax(45%, 1fr));
		grid-auto-rows: auto;
		gap: 50px;
	}

	.block--product-image,
	.block--product-info {
		grid-column: span 1;
	}

	.block:nth-child(n+3) {
		grid-column: span 2;
	}
}