/* ==========================================================================
   Jamp product: gallery + lightbox + buy box (sizes / cart)
   ========================================================================== */

/* ---- Gallery (слева) ---- */
/* главное фото: не шире 1200px и не больше 90% колонки — lightbox не трогаем */
.jamp-pg {
	width: 100%;
	max-width: min(1200px, 90%);
	position: relative;
	box-sizing: border-box;
}
.jamp-pg-layout { display: block; width: 100%; max-width: 100%; }

.jamp-pg-thumbs {
	display: none;
}
.jamp-pg-thumbs-inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 8px;
}
.jamp-pg-main { width: 100%; position: relative; }

.jamp-pg-stage {
	position: relative;
	width: 100%;
	background: #f2f2f2;
	overflow: hidden;
	cursor: zoom-in;
	/* надёжная высота 3:4 без aspect-ratio bugs */
	padding-bottom: 133.333%;
	height: 0;
}

.jamp-pg-track {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-transition: -webkit-transform 0.35s ease;
	transition: transform 0.35s ease;
	will-change: transform;
}

.jamp-pg-slide {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
}

.jamp-pg-slide img,
.jamp-pg-img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover;
	object-position: center top;
	pointer-events: none;
	border: 0;
	visibility: visible !important;
	opacity: 1 !important;
}

.jamp-pg-counter {
	position: absolute;
	top: 14px;
	left: 14px;
	z-index: 15;
	font-size: 11px;
	letter-spacing: 0.12em;
	color: #fff;
	background: rgba(0,0,0,0.45);
	padding: 5px 10px;
	border-radius: 12px;
	font-weight: 500;
	pointer-events: none;
}

.jamp-prod-video-btn {
	position: absolute;
	top: 14px;
	right: 14px;
	z-index: 20;
	width: 48px;
	height: 48px;
	border: 0;
	border-radius: 50%;
	background: rgba(0,0,0,0.55);
	cursor: pointer;
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	box-shadow: 0 4px 16px rgba(0,0,0,0.25);
}
.jamp-prod-video-btn:hover { background: rgba(0,0,0,0.75); }
.jamp-prod-video-btn svg { display: block; margin-left: 2px; }

.jamp-pg-expand {
	position: absolute;
	left: 14px;
	bottom: 14px;
	z-index: 15;
	border: 0;
	border-radius: 20px;
	background: rgba(0,0,0,0.5);
	color: #fff;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	cursor: pointer;
	padding: 8px 14px;
}
.jamp-pg-expand:hover { background: rgba(0,0,0,0.7); }

.jamp-pg-nav {
	position: absolute;
	top: 50%;
	margin-top: -20px;
	z-index: 15;
	width: 40px;
	height: 40px;
	border: 0;
	border-radius: 50%;
	background: rgba(255,255,255,0.92);
	color: #111;
	cursor: pointer;
	display: none;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	box-shadow: 0 2px 12px rgba(0,0,0,0.12);
	padding: 0;
	line-height: 1;
}
.jamp-pg-nav svg {
	width: 18px;
	height: 18px;
	stroke: currentColor;
	fill: none;
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.jamp-pg-nav-prev { left: 10px; }
.jamp-pg-nav-next { right: 10px; }

.jamp-pg-dots {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	gap: 7px;
	padding: 12px 0 4px;
}
.jamp-pg-dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	border: 0;
	padding: 0;
	background: rgba(0,0,0,0.18);
	cursor: pointer;
}
.jamp-pg-dot.is-active {
	background: #111;
	width: 18px;
	border-radius: 4px;
}

.jamp-pg-thumb {
	display: block;
	width: 100%;
	padding: 0;
	border: 1px solid #e8e8e8;
	background: #f4f4f4;
	cursor: pointer;
	line-height: 0;
	overflow: hidden;
	margin: 0;
	border-radius: 2px;
	-webkit-transition: border-color 0.2s, box-shadow 0.2s, opacity 0.2s;
	transition: border-color 0.2s, box-shadow 0.2s, opacity 0.2s;
	opacity: 0.72;
	/* 3:4 */
	position: relative;
	height: 0;
	padding-bottom: 133.333%;
}
.jamp-pg-thumb img {
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
}
.jamp-pg-thumb:hover {
	opacity: 1;
	border-color: #bbb;
}
.jamp-pg-thumb.is-active {
	border-color: #111;
	opacity: 1;
	box-shadow: 0 0 0 1px #111;
}

@media (min-width: 992px) {
	.jamp-pg-layout {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		gap: 14px;
		/* высота колонки миниатюр = высоте главного фото */
		-webkit-box-align: stretch;
		-ms-flex-align: stretch;
		align-items: stretch;
	}
	.jamp-pg-thumbs {
		display: block;
		width: 84px;
		-ms-flex-negative: 0;
		flex-shrink: 0;
		-ms-flex-item-align: stretch;
		align-self: stretch;
		/* высота тянется за .jamp-pg-main (стадия 3:4) */
		max-height: none;
		height: auto;
		overflow: hidden;
		position: relative;
	}
	.jamp-pg-thumbs-inner {
		position: absolute;
		left: 0;
		top: 0;
		right: 0;
		bottom: 0;
		overflow-y: auto;
		overflow-x: hidden;
		padding-right: 4px;
		gap: 10px;
		/* красивый тонкий скролл */
		scrollbar-width: thin;
		scrollbar-color: #ccc transparent;
	}
	.jamp-pg-thumbs-inner::-webkit-scrollbar {
		width: 4px;
	}
	.jamp-pg-thumbs-inner::-webkit-scrollbar-track {
		background: transparent;
		border-radius: 4px;
	}
	.jamp-pg-thumbs-inner::-webkit-scrollbar-thumb {
		background: #ccc;
		border-radius: 4px;
	}
	.jamp-pg-thumbs-inner::-webkit-scrollbar-thumb:hover {
		background: #999;
	}
	.jamp-pg-main {
		-webkit-box-flex: 1;
		-ms-flex: 1 1 auto;
		flex: 1 1 auto;
		min-width: 0;
		max-width: 100%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}
	/* стадия 3:4 внутри потолка 1200 / 90% */
	.jamp-pg-stage {
		max-width: 100%;
	}
	.jamp-pg-dots { display: none !important; }
	.jamp-pg-nav {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.jamp-pg-stage {
		/* без max-height — иначе thumbs не совпадут по высоте */
		max-height: none;
	}
}

/* ---- Lightbox ФОТО: белый экран, поверх ВСЕЙ страницы (шапка, правая колонка, тикер) ---- */
.jamp-lb,
#jamp-lightbox.jamp-lb {
	position: fixed !important;
	left: 0 !important;
	top: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	width: 100vw !important;
	height: 100vh !important;
	/* выше header 1005, modal 100050, promo-ticker 1004, splash 99999 */
	z-index: 2147483000 !important;
	background: #fff !important;
	display: none;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	/* свой stacking context поверх всего */
	isolation: isolate;
	transform: translateZ(0);
	-webkit-transform: translateZ(0);
}
.jamp-lb.is-open,
#jamp-lightbox.jamp-lb.is-open {
	display: -webkit-box !important;
	display: -ms-flexbox !important;
	display: flex !important;
}
body.jamp-lb-open {
	overflow: hidden !important;
}
/* на всякий случай правая колонка/хедер не перекрывают lightbox */
body.jamp-lb-open .header-wrapper,
body.jamp-lb-open .premium-header,
body.jamp-lb-open .promo-ticker,
body.jamp-lb-open #singel-product .product-in,
body.jamp-lb-open #singel-product .col-md-5 {
	z-index: 0 !important;
	pointer-events: none !important;
}

.jamp-lb-top {
	position: absolute;
	top: 0; left: 0; right: 0;
	z-index: 5;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 14px 16px;
	pointer-events: none;
}
.jamp-lb-top > * { pointer-events: auto; }
.jamp-lb-counter {
	color: #111;
	font-size: 13px;
	letter-spacing: 0.14em;
	font-weight: 600;
	background: rgba(255,255,255,0.9);
	padding: 6px 12px;
	border-radius: 20px;
	border: 1px solid #eee;
}
.jamp-lb-close {
	width: 42px;
	height: 42px;
	border: 1px solid #e5e5e5;
	border-radius: 50%;
	background: #fff;
	color: #111;
	cursor: pointer;
	font-size: 28px;
	line-height: 1;
	padding: 0;
	box-shadow: 0 2px 12px rgba(0,0,0,0.08);
}
.jamp-lb-close:hover { background: #f5f5f5; }

.jamp-lb-viewport {
	-webkit-box-flex: 1;
	-ms-flex: 1 1 auto;
	flex: 1 1 auto;
	position: relative;
	overflow: hidden;
	cursor: grab;
	touch-action: none;
	width: 100%;
	height: 100%;
	min-height: 100vh;
	background: #fff;
	-webkit-user-select: none;
	user-select: none;
}
.jamp-lb-viewport.is-dragging { cursor: grabbing; }
.jamp-lb-viewport.is-zoomed { cursor: move; }
/* во время drag — крестик/move, без «залипания» системного drag */
.jamp-lb-viewport.is-dragging,
.jamp-lb-viewport.is-dragging * {
	cursor: grabbing !important;
}

.jamp-lb-pan {
	/* размер/позиция задаёт JS = точный fit картинки (не весь viewport) */
	position: absolute;
	left: 0;
	top: 0;
	margin: 0;
	padding: 0;
	display: block;
	will-change: transform;
	-webkit-transform-origin: center center;
	transform-origin: center center;
	-webkit-transition: none !important;
	transition: none !important;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-perspective: 1000px;
	perspective: 1000px;
}
.jamp-lb-img {
	width: 100%;
	height: 100%;
	/* размер оболочки ≤1200 и ≤90% viewport задаёт layoutPanShell в jamp-product.js */
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	display: block;
	pointer-events: none;
	-webkit-user-select: none;
	user-select: none;
	-webkit-user-drag: none;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.jamp-lb-nav {
	position: absolute;
	top: 50%;
	margin-top: -22px;
	z-index: 5;
	width: 44px;
	height: 44px;
	border: 1px solid #e5e5e5;
	border-radius: 50%;
	background: #fff;
	color: #111;
	cursor: pointer;
	font-size: 20px;
	line-height: 1;
	box-shadow: 0 2px 12px rgba(0,0,0,0.08);
}
.jamp-lb-nav:hover { background: #f5f5f5; }
.jamp-lb-prev { left: 12px; }
.jamp-lb-next { right: 12px; }

/* подсказки внизу убраны */
.jamp-lb-hint { display: none !important; }

/* ---- Lightbox filmstrip: карусель снизу, активная по центру ---- */
.jamp-lb-film {
	display: none;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 6;
	height: 96px;
	padding: 12px 0 18px;
	background: linear-gradient(to top, rgba(255,255,255,0.98) 55%, rgba(255,255,255,0.7) 85%, transparent 100%);
	overflow: hidden;
	pointer-events: none;
}
.jamp-lb-film-track {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	gap: 10px;
	height: 100%;
	will-change: transform;
	-webkit-transition: -webkit-transform 0.35s cubic-bezier(0.25, 0.8, 0.25, 1);
	transition: transform 0.35s cubic-bezier(0.25, 0.8, 0.25, 1);
	pointer-events: auto;
}
.jamp-lb-film-item {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
	width: 48px;
	height: 64px; /* 3:4 */
	padding: 0;
	border: 2px solid transparent;
	border-radius: 3px;
	overflow: hidden;
	background: #f0f0f0;
	cursor: pointer;
	opacity: 0.55;
	-webkit-transition: opacity 0.25s, border-color 0.25s, -webkit-transform 0.25s, width 0.25s, height 0.25s;
	transition: opacity 0.25s, border-color 0.25s, transform 0.25s, width 0.25s, height 0.25s;
	line-height: 0;
}
.jamp-lb-film-item img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
	pointer-events: none;
}
.jamp-lb-film-item.is-active {
	width: 60px;
	height: 80px;
	opacity: 1;
	border-color: #111;
	box-shadow: 0 4px 16px rgba(0,0,0,0.12);
	-webkit-transform: translateY(-2px);
	transform: translateY(-2px);
}
.jamp-lb-film-item:hover {
	opacity: 0.9;
}

@media (min-width: 992px) {
	/* filmstrip только desktop */
	.jamp-lb.is-open .jamp-lb-film {
		display: block;
	}
	.jamp-lb-viewport {
		/* место под ленту миниатюр */
		padding-bottom: 100px;
		min-height: calc(100vh - 0px);
		box-sizing: border-box;
	}
}

@media (max-width: 991.98px) {
	.jamp-lb-film { display: none !important; }
}

@media (max-width: 767px) {
	.jamp-lb-nav { width: 40px; height: 40px; }
}

/* ---- Buy box (right column) ---- */
#singel-product .product-in {
	padding-left: 24px;
}
@media (max-width: 991px) {
	#singel-product .product-in { padding-left: 0; }
}

#singel-product .product-in > h1 {
	font-size: 22px;
	font-weight: 400;
	letter-spacing: 0.06em;
	line-height: 1.35;
	margin: 0 0 12px 0;
	text-align: left !important;
}

#singel-product .product-in > .text-secondary.small {
	font-size: 12px;
	letter-spacing: 0.04em;
	color: #888 !important;
	margin-bottom: 18px !important;
	text-align: left;
}

#singel-product .product-price {
	text-align: left !important;
	margin: 8px 0 20px 0 !important;
}
#singel-product .product-price .price-line .value {
	font-size: 26px;
	font-weight: 600;
	letter-spacing: 0.02em;
	color: #111;
}
#singel-product .product-price .price-line .currency {
	font-size: 16px;
	font-weight: 500;
	margin-left: 4px;
}
#singel-product .product-price .striked,
#singel-product .product-price .price-line .striked {
	opacity: 0.45;
	text-decoration: line-through;
	font-size: 15px;
	margin-right: 8px;
}

#singel-product .product-variants {
	text-align: left !important;
	margin-top: 24px !important;
}
#singel-product .product-variants > p {
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: #888;
	margin: 0 0 14px 0;
}

/* Size pills — oval / capsule */
#singel-product .product-variants input[type=radio] {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
	pointer-events: none;
}
/* Пилюли размеров — как на mobile-концепте (капсулы) */
#singel-product .product-variants {
	display: block !important;
}
#singel-product .product-variants label.option-saiz,
#singel-product .product-variants .option-saiz,
#singel-product .product-in .product-variants label.option-saiz,
html.jamp-inner #singel-product label.option-saiz {
	display: inline-flex !important;
	-webkit-box-align: center !important;
	-ms-flex-align: center !important;
	align-items: center !important;
	-webkit-box-pack: center !important;
	-ms-flex-pack: center !important;
	justify-content: center !important;
	min-width: 52px !important;
	height: 40px !important;
	line-height: 1 !important;
	padding: 0 18px !important;
	margin: 0 8px 10px 0 !important;
	border: 1.5px solid #d0d0d0 !important;
	border-radius: 999px !important;
	-webkit-border-radius: 999px !important;
	background: #fff !important;
	background-color: #fff !important;
	background-image: none !important;
	color: #111 !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	letter-spacing: 0.04em !important;
	text-align: center !important;
	cursor: pointer !important;
	-webkit-transition: border-color 0.2s, background 0.2s, color 0.2s, box-shadow 0.2s;
	transition: border-color 0.2s, background 0.2s, color 0.2s, box-shadow 0.2s;
	box-shadow: none !important;
	vertical-align: middle !important;
	float: none !important;
}
/* Активный размер — ТОЛЬКО :checked (is-active больше не используем — залипал на первом) */
#singel-product .product-variants input[type=radio]:checked + label.option-saiz,
#singel-product .product-in .product-variants input[type=radio]:checked + label.option-saiz,
html.jamp-inner #singel-product .product-variants input[type=radio]:checked + label.option-saiz {
	background: #111 !important;
	background-color: #111 !important;
	border-color: #111 !important;
	color: #fff !important;
	box-shadow: 0 2px 10px rgba(0,0,0,0.12) !important;
}
/* старый is-active без :checked — не красить (на случай кэша HTML) */
#singel-product .product-variants label.option-saiz.is-active {
	background: #fff !important;
	background-color: #fff !important;
	border-color: #d0d0d0 !important;
	color: #111 !important;
	box-shadow: none !important;
}
#singel-product .product-variants input[type=radio]:checked + label.option-saiz.is-active {
	background: #111 !important;
	background-color: #111 !important;
	border-color: #111 !important;
	color: #fff !important;
	box-shadow: 0 2px 10px rgba(0,0,0,0.12) !important;
}
#singel-product .product-variants label.option-saiz:hover {
	border-color: #111 !important;
}
@media (max-width: 767px) {
	#singel-product .product-variants label.option-saiz,
	#singel-product .product-in .product-variants label.option-saiz {
		min-width: 48px !important;
		height: 42px !important;
		padding: 0 16px !important;
		font-size: 14px !important;
	}
}

/* Color swatches */
#singel-product .product-variants label.option-color {
	display: inline-block;
	width: 44px;
	height: 44px;
	margin: 0 8px 10px 0;
	border-radius: 50%;
	overflow: hidden;
	border: 2px solid transparent;
	padding: 2px;
	cursor: pointer;
	vertical-align: middle;
}
#singel-product .product-variants label.option-color img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
}
#singel-product .product-variants input[type=radio]:checked + label.option-color {
	border-color: #111;
}

/* Cart button */
#singel-product [id^="sv-button-cart-"],
#singel-product .jamp-buy-btn,
#singel-product form#sv-product-form > .btn.btn-dark.btn-block {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: 52px !important;
	line-height: 52px !important;
	padding: 0 20px !important;
	margin: 22px 0 12px 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #111 !important;
	color: #fff !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	letter-spacing: 0.16em !important;
	text-transform: uppercase !important;
	text-align: center !important;
	cursor: pointer;
	-webkit-transition: background 0.2s, opacity 0.2s;
	transition: background 0.2s, opacity 0.2s;
}
#singel-product form#sv-product-form > .btn.btn-dark.btn-block:hover {
	background: #333 !important;
	color: #fff !important;
}

#singel-product form#sv-product-form > .btn.btn-primary.btn-block {
	display: block;
	width: 100%;
	height: 48px;
	line-height: 48px;
	padding: 0 20px;
	margin: 0 0 12px 0;
	border: 1px solid #111;
	border-radius: 0;
	background: #fff;
	color: #111;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	text-align: center;
}

/* Fitting / size table links */
#singel-product .jamp-side-actions {
	margin-top: 16px;
}
#singel-product .jamp-side-actions .btn,
#singel-product .jamp-fit-btn {
	width: 100%;
	max-width: 100%;
	border-radius: 0 !important;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	font-size: 11px;
	font-weight: 500;
}

/* ==========================================================================
   Video FULLSCREEN fixed popup (не bootstrap modal)
   Слои: backdrop (низ) → panel/video (верх)
   ========================================================================== */
.jamp-video-fs {
	position: fixed !important;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 2147483000 !important;
	display: none;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding: 0;
}
.jamp-video-fs.is-open {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
body.jamp-video-open {
	overflow: hidden !important;
}

/* подложка — НИЖНИЙ слой */
.jamp-video-fs-backdrop {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	background: rgba(255, 255, 255, 0.96);
	cursor: pointer;
}

/* панель видео — ВЕРХНИЙ слой поверх подложки */
.jamp-video-fs-panel {
	position: relative;
	z-index: 2;
	width: 100%;
	height: 100%;
	max-width: 100%;
	max-height: 100%;
	background: transparent;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	pointer-events: none;
}
.jamp-video-fs-stage {
	position: relative;
	width: 100%;
	height: 100%;
	max-width: 100vw;
	max-height: 100vh;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	pointer-events: auto;
	background: #fff;
}
.jamp-video-fs-el {
	display: block;
	position: relative;
	z-index: 2;
	width: 100%;
	height: 100%;
	max-width: 100vw;
	max-height: 100vh;
	object-fit: contain;
	background: #fff;
}
.jamp-video-fs-grad {
	pointer-events: none;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 18%;
	z-index: 3;
	background: linear-gradient(to top, rgba(255,255,255,0.85) 0%, transparent 100%);
}
.jamp-video-fs-close {
	position: absolute;
	top: 16px;
	right: 16px;
	z-index: 10;
	width: 44px;
	height: 44px;
	border: 1px solid #e5e5e5;
	border-radius: 50%;
	background: #fff;
	color: #111;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
	pointer-events: auto;
	padding: 0;
	box-shadow: 0 2px 12px rgba(0,0,0,0.08);
}
.jamp-video-fs-close:hover {
	background: #f5f5f5;
}

@media (min-width: 992px) {
	.jamp-video-fs-el {
		width: auto;
		height: auto;
		max-width: min(1100px, 96vw);
		max-height: 92vh;
	}
	.jamp-video-fs-stage {
		width: auto;
		height: auto;
		max-width: 96vw;
		max-height: 92vh;
	}
}

/* ---- Модалки карточки (примерка / размерная сетка) НАД backdrop ----
   backdrop часто 100040…100070 (анкета ставит inline).
   Окно примерочной — выше любого backdrop + pointer-events. */
#aiTryOnModal,
#aiTryOnModal.modal,
#aiTryOnModal.modal.fade,
#aiTryOnModal.modal.show,
#aiTryOnModal.modal.in,
#modal-saiz,
#modal-saiz.modal {
	z-index: 100090 !important;
	position: fixed !important;
	/* iOS: pointer-events auto + scroll на .modal (см. jamp-modals.css) */
	pointer-events: auto !important;
}
#aiTryOnModal .modal-dialog,
#modal-saiz .modal-dialog {
	z-index: 100091 !important;
	position: relative !important;
	pointer-events: auto !important;
}
/* ширина/центр — jamp-modals.css (desktop 1300px по центру; mobile full) */
#aiTryOnModal .modal-content,
#modal-saiz .modal-content {
	pointer-events: auto !important;
	position: relative;
	z-index: 1;
}
/* backdrop по умолчанию 100040 (jamp-home). JS примерочной поднимает backdrop до 100080,
   окно — 100090. Не задаём body.modal-open .modal-backdrop глобально — сломает логин. */
body.modal-open #aiTryOnModal,
body.modal-open #aiTryOnModal.modal,
body.modal-open #modal-saiz.modal {
	z-index: 100090 !important;
}
/* когда открыта именно примерочная — класс вешает JS */
body.jamp-tryon-open .modal-backdrop {
	z-index: 100080 !important;
}
body.jamp-tryon-open #aiTryOnModal {
	z-index: 100090 !important;
}
