

/* Start:/local/components/prokladovki/detail.catalog.test/templates/.default/style.css?179206220727285*/
/* Страница детальной (новая версия): шапка секций, фильтр, отзывы, описание, карта.
   Вёрстка самой карточки ячейки и блока брони — в общем box-card/card.css. */

.boxes-test__head .section-title,
.reviews-test__head .section-title {
	margin: 0;
	font-family: "RobotoDetailBold", Arial, sans-serif;
	font-size: 24px;
	font-weight: 700;
	line-height: 120%;
	letter-spacing: -0.03em;
	color: rgba(0, 0, 0, 0.92);
}

.boxes-test__head {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 16px;
	margin-bottom: 24px;
}

.boxes-test__filters {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 12px;
	width: 100%;
}
.boxes-test__filter {
	flex: 0 1 220px;
	min-width: 200px;
	max-width: 240px;
}
.boxes-test__filter .catalog-filter__toggle {
	font-family: var(--font-HelveticaNeue);
	font-size: 16px;
	font-weight: 400;
	line-height: 130%;
	letter-spacing: 0;
	color: #707070;
}
.boxes-test__deposit-filter {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-height: 44px;
	margin-left: auto;
	padding: 0 8px;
	color: #2e2f33;
	font-family: var(--font-HelveticaNeue);
	font-size: 15px;
	line-height: 20px;
	white-space: nowrap;
	cursor: pointer;
}
.boxes-test__deposit-filter input {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
}
.boxes-test__deposit-track {
	position: relative;
	width: 38px;
	height: 22px;
	flex: 0 0 38px;
	border-radius: 999px;
	background: #d5d7da;
	transition: background .18s ease;
}
.boxes-test__deposit-track::after {
	position: absolute;
	top: 3px;
	left: 3px;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: #fff;
	content: "";
	transition: transform .18s ease;
}
.boxes-test__deposit-filter input:checked + .boxes-test__deposit-track {
	background: #2e2f33;
}
.boxes-test__deposit-filter input:checked + .boxes-test__deposit-track::after {
	transform: translateX(16px);
}
.boxes-test__deposit-filter input:focus-visible + .boxes-test__deposit-track {
	outline: 2px solid #2e2f33;
	outline-offset: 2px;
}

.boxes-test__more {
	width: 100%;
	max-width: 274px;
	min-height: 36px;
	padding: 0 16px;
	margin: 24px auto 0;
}

.boxes-test-map {
	padding-bottom: 40px;
}
.boxes-test-map__canvas {
	height: 480px;
	border-radius: 16px;
	overflow: hidden;
	background: #dfe7ef;
}
@media (max-width: 767.98px) {
	.boxes-test__more {
		max-width: none;
	}
	.boxes-test__deposit-filter {
		width: 100%;
		margin-left: 0;
		padding-left: 0;
	}
	.boxes-test-map__canvas {
		height: 400px;
	}
}
.boxes-test-map__stub {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 480px;
	background: #eef1f4;
	border-radius: 16px;
	color: #8b9096;
	font-size: 16px;
}

.reviews-test {
	padding-bottom: 40px;
}
.reviews-test__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 24px;
}
.reviews-test__nav {
	display: flex;
	gap: 8px;
	flex-shrink: 0;
}
.reviews-test__arrow {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	background: #fff;
	border: 1px solid #e3e6ea;
	border-radius: 10px;
	cursor: pointer;
}
.reviews-test__arrow.swiper-button-disabled {
	opacity: .4;
	cursor: default;
}
.reviews-test__slider {
	overflow: hidden;
}
.reviews-test__slider .swiper-slide {
	height: auto;
}
.reviews-card__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 12px;
}
.reviews-card__company {
	font-weight: 700;
	color: #2e2f33;
}

@media (min-width: 768px) {
	#js-detail-catalog .product-descr__bottom {
		gap: 6px;
	}
}

.product-descr__bottom .product-descr__suptitle {
	font-family: var(--font-HelveticaNeue);
	font-weight: 400;
	line-height: 130%;
	letter-spacing: 0;
	color: #707070;
}

.product-descr__about .product-descr__suptitle {
	margin-bottom: 8px;
}

.product-descr__bottom p.product-descr__address {
	font-family: "HelveticaNeueDetailMedium", "HelveticaNeue", Arial, sans-serif;
	font-size: 16px;
	font-weight: 500;
	line-height: 140%;
	letter-spacing: 0;
	color: #2e2f33;
}

.product-descr__bottom p.product-descr__value-cond {
	font-family: var(--font-RobotoCondensed);
	font-weight: 900;
	font-size: 20px;
	text-transform: uppercase;
}

.catalog-card__distance {
	display: flex;
	align-items: center;
	gap: 6px;
	color: #6b7280;
	font-size: 14px;
	letter-spacing: 0;
}
.catalog-card__distance .icon {
	width: 16px;
	height: 16px;
}

.product-descr__top-fav {
	display: flex;
	justify-content: flex-end;
}

/* резервируем итоговую высоту галереи (кадр + 10px + превью, высоты из getThumbSizes в index.js), чтобы блоки ниже не прыгали при запуске fotorama */
#js-detail-catalog .gallersbox {
	min-height: 439px;
}
#js-detail-catalog .product__gallersbox[data-gallery-count="1"] .gallersbox {
	min-height: 348px;
}
/* до запуска fotorama показываем только первое фото в размер кадра, а не все столбиком */
#js-detail-catalog .gallers:not(.fotorama) img {
	display: block;
	width: 100%;
	height: 348px;
	object-fit: contain;
}
#js-detail-catalog .gallers:not(.fotorama) img:not(:first-child) {
	display: none;
}
/* на первом кадре после запуска fotorama сцена ещё нулевой высоты и превью подскакивают вверх */
#js-detail-catalog .gallers:not(.fotorama--fullscreen) .fotorama__stage {
	min-height: 348px;
}
@media (max-width: 1279.98px) {
	#js-detail-catalog .gallersbox {
		min-height: 480px;
	}
	#js-detail-catalog .gallers:not(.fotorama--fullscreen) .fotorama__stage {
		min-height: 400px;
	}
	#js-detail-catalog .product__gallersbox[data-gallery-count="1"] .gallersbox {
		min-height: 400px;
	}
	#js-detail-catalog .gallers:not(.fotorama) img {
		height: 400px;
		object-fit: cover;
	}
}
/* index.js меряет ширину без полосы прокрутки (порог 660), поэтому мобильный резерв берём с запасом - больший резерв дал бы пустоту под галереей */
@media (max-width: 679.98px) {
	#js-detail-catalog .gallersbox {
		min-height: 238px;
	}
	#js-detail-catalog .product__gallersbox[data-gallery-count="1"] .gallersbox {
		min-height: 180px;
	}
	#js-detail-catalog .gallers:not(.fotorama--fullscreen) .fotorama__stage {
		min-height: 180px;
	}
	#js-detail-catalog .gallers:not(.fotorama) img {
		height: 180px;
	}
}

/* ниже 1280 колонки складываются в стек и галерея тянется на всю ширину — держим её по пропорции кропа 572x348 при height 400 от fotorama */
@media (max-width: 1279.98px) {
	/* ниже 1280 (xl этой сетки) глобальный CSS делает .product__content прозрачным (display: contents) и уводит инфоблок в конец через order —
	   заголовок и инфоблок попадают в .product__inner напрямую, а width: 100% Bootstrap даёт только прямым детям .row, поэтому они сжимаются по контенту:
	   галерея встаёт рядом с заголовком, инфоблок уезжает под неё. Растягиваем оба на всю строку — получаем стек заголовок → галерея → инфоблок */
	#js-detail-catalog .product-descr__top,
	#js-detail-catalog .product-descr__bottom {
		width: 100%;
	}

	/* заголовок с кнопкой избранного держим в ширине галереи, чтобы кнопка стояла над правым краем фото, а не у края экрана */
	#js-detail-catalog .product-descr__top,
	#js-detail-catalog .product__gallersbox {
		max-width: 656px;
	}

	/* глобальный width:100% !important ломает fit contain — сохраняем пропорции через object-fit */
	#js-detail-catalog .gallersbox .fotorama__stage__frame .fotorama__img {
		top: 0 !important;
		left: 0 !important;
		width: 100% !important;
		height: 100% !important;
		max-width: none !important;
		object-fit: cover !important;
		transform: none !important;
	}

	/* Планшет/мобилка */
	/* заголовок и кнопка избранного в одну строку — col-xl-* ниже 1280 не работают, и кнопка падала под заголовок */
	.product-descr__top {
		flex-wrap: nowrap !important;
		align-items: flex-start;
		gap: 16px;
	}
	.product-descr__top > [class*="col-"]:first-child {
		flex: 1 1 auto !important;
		max-width: none !important;
		min-width: 0;
		margin-bottom: 0 !important;
	}
	.product-descr__top-fav {
		flex: 0 0 auto !important;
		width: auto !important;
		max-width: none !important;
	}
	.product-descr__btn-favorites {
		flex: 0 0 36px;
		width: 36px;
		min-width: 36px;
		height: 36px;
		padding: 8px !important;
		border-radius: 12px;
		justify-content: center;
	}
	.product-descr__btn-favorites .icon {
		width: 20px !important;
		height: 20px !important;
	}
	.product-descr__btn-favorites::after {
		content: none !important;
	}
}

@media (max-width: 767px) {
	#js-detail-catalog .gallersbox .fotorama__stage,
	#js-detail-catalog .gallersbox .fotorama__stage__frame {
		border-radius: 8px;
		overflow: hidden;
	}
	#js-detail-catalog .gallersbox .fotorama__thumb {
		height: 100%;
		border-radius: 8px;
		overflow: hidden;
	}
	#js-detail-catalog .gallersbox .fotorama__thumb .fotorama__img {
		top: 0 !important;
		left: 0 !important;
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
		transform: none !important;
	}
	.product-descr__top .section-title-big {
		font-family: var(--font-RobotoCondensed);
		font-weight: 900;
		font-size: 30px;
		line-height: 100%;
		letter-spacing: -0.02em;
		text-transform: uppercase;
	}

	.product-descr__bottom p.product-descr__value-cond {
		font-size: 22px;
		line-height: 120%;
		letter-spacing: -0.03em;
	}

	.boxes-test__filters {
		flex-direction: column;
		gap: 8px;
	}

	.boxes-test__filter {
		width: 100%;
		max-width: none;
	}

	.reviews-test__nav {
		display: none;
	}
	.reviews-test__slider.swiper {
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		padding-bottom: 12px;
	}
	.reviews-test__slider .swiper-wrapper {
		display: flex;
		gap: 12px;
		transform: none !important;
	}
	.reviews-test__slider .swiper-slide {
		flex: 0 0 88%;
		width: 88%;
		height: auto;
	}
	.reviews-test__slider::-webkit-scrollbar {
		height: 6px;
	}
	.reviews-test__slider::-webkit-scrollbar-track {
		background: #ebebee;
		border-radius: 999px;
	}
	.reviews-test__slider::-webkit-scrollbar-thumb {
		background: #a8a8ad;
		border-radius: 999px;
	}
}

/* Прежняя вёрстка карточки каталога — только для слайдера «Ближайшие кладовки».
   Каталог перешёл на новый макет («adress card»), его style.css подключён и здесь,
   поэтому базовые правила карточки восстановлены под .nearby-test и шаблоном card-nearby.php. */
.nearby-test .catalog-card{
	font-size: 16px;
	display: grid;
	grid-template-columns: 18.75em 1fr;
	flex-shrink: 0;
	border: 1px solid #ececec;
	border-radius: 1em;
	overflow: hidden;
	text-decoration: none;
	color: inherit;
	cursor: pointer;
	line-height: 1.2;
	transition: box-shadow .2s;
}
.nearby-test .catalog-card:hover{
	box-shadow: 0 8px 24px rgba(0,0,0,.08);
}
.nearby-test .catalog-card__media{
	position: relative;
	overflow: hidden;
	background: #f3f4f6;
	/* сбрасываем новую раскладку каталога: фото здесь сверху и по содержимому */
	order: 0;
	flex: 0 0 auto;
}
.nearby-test .catalog-card__img{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.nearby-test .catalog-card__fav{
	position: absolute;
	left: .75em;
	bottom: .75em;
	right: auto;
}
.nearby-test .catalog-card__body{
	min-width: 0;
	padding: .625em 1.125em;
	display: flex;
	flex-direction: column;
	gap: .25em;
}
.nearby-test .catalog-card__title{
	margin: 0;
	font-size: 1.125em;
	font-weight: 700;
	line-height: 1.18;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
/* Ссылка заголовка не должна отличаться от прежнего текста заголовка */
.nearby-test .catalog-card__title-link{
	color: inherit;
	text-decoration: none;
}
.nearby-test .catalog-card__distance{
	display: flex;
	align-items: center;
	gap: .375em;
	color: #6b7280;
	font-size: .875em;
}
.nearby-test .catalog-card__distance .icon{
	width: 1em;
	height: 1em;
}
.nearby-test .catalog-card__row{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: .75em;
	padding-top: .375em;
	font-size: .9375em;
}
.nearby-test .catalog-card__row + .catalog-card__row{
	border-top: 1px solid #f0f0f0;
}
.nearby-test .catalog-card__row-label{
	color: #2e2f33;
}
.nearby-test .catalog-card__size{
	display: flex;
	gap: 2.5em;
}
.nearby-test .catalog-card__features{
	display: flex;
	gap: .5em;
}
.nearby-test .catalog-card__chip{
	padding: .25em .75em;
	background: #f4f5f7;
	border-radius: 1.25em;
	font-size: .8125em;
	font-weight: 300;
	line-height: 1.2;
	color: var(--gray-dark);
}
.nearby-test .catalog-card__footer{
	display: flex;
	align-items: center;
	gap: 1em;
	margin-top: .125em;
}
.nearby-test .catalog-card .catalog-card__more{
	padding: .625em 1.375em;
	font-size: .9375em;
	min-height: 0;
	height: auto;
	line-height: 1.2;
	border-radius: .5em;
}
.nearby-test .catalog-card__variants{
	font-size: .875em;
}
.nearby-test .catalog-card__variants.is-ok{
	color: #1aa053;
}
.nearby-test .catalog-card__variants.is-low{
	color: #f0851a;
}
.nearby-test .catalog-card__variants::before{
	content: "\2022\00a0";
}

@media (max-width: 767.98px){
	.nearby-test .catalog-card{
		display: flex;
		flex-direction: column;
		min-height: 0;
		border: 0;
		border-radius: 0;
		overflow: visible;
	}
	.nearby-test .catalog-card:hover{
		box-shadow: none;
	}
	.nearby-test .catalog-card__media{
		height: 160px;
		border-radius: 8px;
		overflow: hidden;
	}
	.nearby-test .catalog-card__fav{
		top: 10px;
		right: 10px;
		bottom: auto;
		left: auto;
		width: 38px;
		height: 38px;
		padding: 8px;
		border: 0;
		border-radius: 8px;
		background: #fff;
	}
	.nearby-test .catalog-card__body{
		padding: 10px 0 18px;
		gap: 5px;
	}
	.nearby-test .catalog-card__title{
		font-size: 18px;
		line-height: 1.15;
		display: block;
		-webkit-line-clamp: none;
		overflow: visible;
	}
	.nearby-test .catalog-card__distance{
		margin-bottom: 2px;
		font-size: 12px;
	}
	.nearby-test .catalog-card__row{
		min-height: 32px;
		padding-top: 6px;
		font-size: 14px;
	}
	.nearby-test .catalog-card__size{
		gap: 38px;
	}
	.nearby-test .catalog-card__features{
		gap: 5px;
	}
	.nearby-test .catalog-card__chip{
		padding: 4px 9px;
		font-size: 12px;
		line-height: 1;
	}
	.nearby-test .catalog-card__footer{
		gap: 14px;
		margin-top: 7px;
	}
	.nearby-test .catalog-card__more{
		display: inline-flex;
		align-items: center;
		justify-content: center;
		padding: 10px 16px;
		border-radius: 7px;
		font-size: 14px;
		text-align: center;
	}
	.nearby-test .catalog-card__variants{
		font-size: 12px;
	}
	.nearby-test .catalog-card--skeleton .catalog-card__media{
		height: 160px;
	}
}

@media (min-width: 768px){
	.nearby-test .catalog-card{
		min-height: var(--catalog-card-height, 180px);
		font-size: var(--catalog-card-font-size, 16px);
		/* фото и текст делим флексом, а не жёсткой сеткой: колонка фото задана в em и растёт вместе
		   с масштабом карточки, поэтому при нехватке ширины ужимаем её, а не режем текст */
		display: flex;
	}
	.nearby-test .catalog-card__media{
		flex: 0 1 18.75em;
		min-width: 8em;
	}
	.nearby-test .catalog-card__body{
		flex-grow: 1;
		/* ужимаем в первую очередь тело (заголовок переносится), фото — только когда телу уже некуда */
		flex-shrink: 100;
		flex-basis: auto;
		/* на планшетной ширине тело должно ужиматься вместе с карточкой, а не расширять страницу */
		min-width: 0;
		padding-top: var(--catalog-card-body-pt, 8px);
		padding-bottom: var(--catalog-card-body-pb, 8px);
		display: grid;
		grid-template-areas:
			"title"
			"distance"
			"price"
			"size"
			"features"
			"."
			"footer";
		/* строки по содержимому, спейсер 1fr прижимает кнопку вниз когда контента мало; карточка растёт при избытке */
		grid-template-rows: auto 0 auto auto auto 1fr auto;
		gap: 0;
		overflow: hidden;
	}
	.nearby-test .catalog-card__body:has(.catalog-card__distance){
		grid-template-rows: auto auto auto auto auto 1fr auto;
	}
	.nearby-test .catalog-card__title{
		grid-area: title;
		min-height: 0;
		margin-bottom: var(--catalog-card-title-mb, 2px);
	}
	/* без метро держим 8px отступ от заголовка до цены */
	.nearby-test .catalog-card__body:not(:has(.catalog-card__distance)) .catalog-card__title{
		margin-bottom: var(--catalog-card-row-gap, 8px);
	}
	.nearby-test .catalog-card__distance{
		grid-area: distance;
		min-height: 0;
		align-self: start;
		margin-bottom: var(--catalog-card-distance-mb, 18px);
	}
	.nearby-test .catalog-card__row_price{
		grid-area: price;
	}
	.nearby-test .catalog-card__row_size{
		grid-area: size;
	}
	.nearby-test .catalog-card__row_features{
		grid-area: features;
	}
	.nearby-test .catalog-card__row{
		min-height: 0;
		padding-top: 0;
		align-self: stretch;
	}
	.nearby-test .catalog-card__row_size,
	.nearby-test .catalog-card__row_features{
		border-top: 1px solid #f0f0f0;
		padding-top: var(--catalog-card-row-gap, 8px);
	}
	.nearby-test .catalog-card__footer{
		grid-area: footer;
		min-height: 0;
		margin-top: var(--catalog-card-footer-mt, 3px);
	}
	.nearby-test .catalog-card .catalog-card__more{
		padding: var(--catalog-card-button-py, 8px) var(--catalog-card-button-px, 16px);
	}
	/* строки карточки не переносим: их полная ширина и есть min-content тела, по нему флекс делит место */
	.nearby-test .catalog-card__row-label,
	.nearby-test .catalog-card__row-value,
	.nearby-test .catalog-card__chip,
	.nearby-test .catalog-card .catalog-card__more,
	.nearby-test .catalog-card__variants{
		white-space: nowrap;
	}
}

.nearby-test { padding: 0 0 40px; }
.nearby-test__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.nearby-test__head .section-title { margin: 0; }
.nearby-test__nav { display: flex; gap: 8px; }
.nearby-test__arrow { display: grid; place-items: center; width: 32px; height: 32px; padding: 0; border: 1px solid var(--gray-200); border-radius: 8px; background: var(--white); color: var(--black-light); cursor: pointer; }
.nearby-test__arrow svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.nearby-test__arrow.swiper-button-disabled { opacity: .4; cursor: default; }
.nearby-test__slider { overflow: hidden; }
.nearby-test__slider .swiper-slide { height: auto; }
.nearby-test .catalog-card { height: 100%; }
.nearby-test__more { display: none !important; }

@media (min-width: 768px) {
	.nearby-test .catalog-card {
		display: flex;
		flex-direction: column;
		font-size: 12px;
	}
	.nearby-test .catalog-card__media { min-height: 150px; height: 150px; }
	.nearby-test .catalog-card__body { flex: 1; padding: 10px; gap: 3px; }
	.nearby-test .catalog-card__title { font-size: 14px; }
	.nearby-test .catalog-card__row { padding-top: 6px; font-size: 11px; }
	.nearby-test .catalog-card__size { gap: 12px; }
	.nearby-test .catalog-card__row_features { display: none; }
	.nearby-test .catalog-card__footer { gap: 8px; margin-top: auto; }
	.nearby-test .catalog-card .catalog-card__more { padding: 7px 12px; font-size: 11px; }
	.nearby-test .catalog-card__variants { font-size: 10px; }
}

@media (max-width: 767.98px) {
	.nearby-test { padding-bottom: 28px; }
	.nearby-test__nav { display: none; }
	.nearby-test__slider { overflow: visible; }
	.nearby-test__slider .swiper-wrapper { display: block; transform: none !important; }
	.nearby-test__slider .swiper-slide { width: auto !important; margin-bottom: 16px; }
	.nearby-test__slider .swiper-slide:nth-child(n+4) { display: none; }
	.nearby-test__slider .swiper-slide.is-visible { display: block; }
	.nearby-test__more { display: block !important; width: 100%; margin: 0; }
}

/* Детальная во всю ширину экрана, как каталог: в макете контент 1840 при экране 1920 */
/* боковые отступы держим равными шапке (--header-test-inner-px) */
.detail-test__container {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0 24px;
}

/* Лейаут новой детальной: слева сведения об объекте, справа список ячеек.
   Пропорции колонок - из макета (сетка 1840 на 6 колонок: 2 под сайдбар, 4 под список). */
/* секции .section добавляют 100px сверху - здесь заголовок идёт сразу под хлебными крошками */
.detail-test {
	padding: 0 0 40px;
}
/* крошки прижимаем к заголовку - у блока свои section_pb40 */
#js-detail-catalog .cookies {
	padding-bottom: 16px;
}
/* заголовок объекта и шапка списка стоят на одной горизонтали: равняемся по первой строке заголовка,
   поэтому многострочный адрес не сдвигает «Все кладовки по адресу» вниз */
.detail-test__head {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-bottom: 16px;
}
.detail-test__title {
	margin: 0;
}
.detail-test__actions {
	display: flex;
	align-items: center;
	gap: 8px;
	/* высота строки заголовка - иконки стоят вровень с его первой строкой */
	height: 30px;
	margin-left: auto;
}
.detail-test__action {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 36px;
	height: 36px;
	padding: 0;
	background: var(--gray-300);
	border: 0;
	border-radius: 10px;
	color: #2e2f33;
	cursor: pointer;
}
.detail-test__action .icon {
	width: 20px;
	height: 20px;
	fill: none;
	stroke: currentColor;
}
/* объект в избранном - сердце закрашено */
.detail-test__action.action .icon {
	fill: currentColor;
}

.detail-test__grid {
	display: grid;
	grid-template-columns: minmax(0, 592fr) minmax(0, 1216fr);
	/* вторая строка гибкая: список ячеек занимает обе строки, и без неё его высота растягивала строку с заголовком */
	grid-template-rows: auto 1fr;
	column-gap: 32px;
	row-gap: 0;
	align-items: start;
	align-content: start;
}
.detail-test__head {
	grid-column: 1;
	grid-row: 1;
}
.detail-test__side {
	grid-column: 1;
	grid-row: 2;
	display: flex;
	flex-direction: column;
	gap: 24px;
}
/* шапка списка живёт в одной строке с заголовком объекта, поэтому галерея и первая карточка стартуют вместе;
   при длинном заголовке прижимаем её к низу строки, иначе над карточками зияет пустота */
.detail-test__grid .boxes-test__head {
	grid-column: 2;
	grid-row: 1;
	align-self: end;
}
.detail-test__boxes {
	grid-column: 2;
	grid-row: 2;
}
/* fotorama вписывает фото в кадр (fit: contain) и центрует по вертикали: сверху оно отходило от
   первой карточки, снизу оставалась дыра до миниатюр. Растягиваем на весь кадр - размеры пишутся инлайном, отсюда important */
.detail-test__side .fotorama__img {
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
}
.detail-test__side .product__gallersbox {
	width: 100%;
	max-width: none;
	padding: 0;
}
/* в узком сайдбаре подпись и значение идут одной строкой, без бутстрап-колонок */
.detail-test__side .product-descr__bottom .row {
	margin: 0;
}
.detail-test__boxes {
	min-width: 0;
}
/* заголовок списка и сортировка - в одну строку, как в макете */
.detail-test__grid .boxes-test__head {
	flex-direction: row;
	align-items: flex-start;
	justify-content: space-between;
	margin-bottom: 16px;
}
/* тот же «рост» строки, что у заголовка объекта - тексты садятся на одну горизонталь */
.detail-test__grid .boxes-test__head .section-title {
	display: flex;
	align-items: center;
	height: 30px;
}
.detail-test__boxes .boxes-test__sort {
	align-self: center;
}
.boxes-test__sort {
	min-width: 220px;
	max-width: 260px;
}

@media (max-width: 1199px) {
	.detail-test__grid {
		grid-template-columns: 1fr;
		grid-template-rows: auto auto auto auto;
	}
	.detail-test__grid .boxes-test__head {
		grid-column: 1;
		grid-row: 3;
	}
	.detail-test__head {
		grid-column: 1;
		grid-row: 1;
	}
	.detail-test__side {
		grid-column: 1;
		grid-row: 2;
		margin-bottom: 24px;
	}
	.detail-test__boxes {
		grid-column: 1;
		grid-row: 4;
	}
}

@media (max-width: 767px) {
	.detail-test__head {
		align-items: flex-start;
	}
	.detail-test__grid .boxes-test__head {
		flex-direction: column;
		align-items: flex-start;
	}
	.boxes-test__sort {
		max-width: none;
		width: 100%;
	}
}

@media (max-width: 959.98px) {
	.detail-test__container {
		padding: 0 12px;
	}
}

@media (max-width: 991px) {
	/* длинные адреса на узких экранах переносим, иначе строка распирает страницу */
	.detail-test__title,
	.detail-test__side .product-descr__bottom p {
		overflow-wrap: anywhere;
	}
	/* шапка списка становится колонкой - сортировку прижимаем к левому краю */
	.detail-test__grid .boxes-test__head {
		flex-direction: column;
		align-items: flex-start;
	}
	.detail-test__boxes .boxes-test__sort {
		align-self: flex-start;
		width: 100%;
		max-width: 260px;
	}
}

/* End */


/* Start:/local/templates/prokladovki/includs/box-card/card.css?179163442134118*/
/* Единая карточка ячейки (box-card): вёрстка карточки, блока брони и календаря.
   Переиспользуется всеми местами вывода ячеек новой версии (см. row.php). */

@font-face {
	font-family: "RobotoDetailBold";
	src: url("/local/templates/prokladovki/assets/fonts/Roboto-Bold.subset.woff2") format("woff2"),
		url("/local/templates/prokladovki/assets/fonts/Roboto-Bold.woff") format("woff");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "RobotoDetailItalic";
	/* подмножество woff2 содержит только толщины 700–900 */
	src: url("/local/templates/prokladovki/assets/fonts/Roboto-Italic-Variable.subset.woff2") format("woff2"),
		url("/local/templates/prokladovki/assets/fonts/Roboto-Italic-Variable.ttf") format("truetype");
	font-weight: 700 900;
	font-style: italic;
	font-display: swap;
}
@font-face {
	font-family: "HelveticaNeueDetailMedium";
	src: url("/local/templates/prokladovki/assets/fonts/HelveticaNeueMedium.subset.woff2") format("woff2"),
		url("/local/templates/prokladovki/assets/fonts/HelveticaNeueMedium.woff") format("woff");
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

#js-detail-catalog{
	font-family: var(--font-HelveticaNeue, "HelveticaNeue", Arial, sans-serif);
	font-weight: 400;
}

.catalog-filter {
	position: relative;
}
.catalog-filter__toggle {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	min-width: 150px;
	width: 100%;
	padding: 12px 16px;
	background: #fff;
	border: 1px solid #e3e6ea;
	border-radius: 10px;
	color: #2e2f33;
	font-size: 15px;
	cursor: pointer;
}
.catalog-filter[data-value=""] .catalog-filter__toggle {
	color: #969696;
}
.catalog-filter__toggle::after {
	content: "";
	width: 9px;
	height: 9px;
	border-right: 1.6px solid #9aa3ad;
	border-bottom: 1.6px solid #9aa3ad;
	transform: rotate(45deg) translateY(-2px);
	transition: transform .2s;
}
.catalog-filter.is-open .catalog-filter__toggle::after {
	transform: rotate(-135deg) translateY(-2px);
}
.catalog-filter__menu {
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	min-width: 100%;
	margin: 0;
	padding: 8px;
	list-style: none;
	background: rgba(243, 243, 246, 1);
	border-radius: 12px;
	box-shadow: 0 10px 30px rgba(0,0,0,.12);
	z-index: 20;
	display: none;
	white-space: nowrap;
}
.catalog-filter.is-open .catalog-filter__menu {
	display: block;
}
.catalog-filter__menu li {
	padding: 10px 14px;
	border-radius: 8px;
	cursor: pointer;
	font-size: 15px;
}
.catalog-filter__menu li:hover,
.catalog-filter__menu li.is-active {
	background: #f4f5f7;
}

/* Список ячеек */
.boxes-test__list {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.box-row {
	position: relative;
	display: grid;
	grid-template-columns: 180px minmax(220px, 1.1fr) minmax(300px, 1.5fr) minmax(200px, 0.85fr);
	gap: 20px;
	align-items: stretch;
	padding: 14px 24px;
	background: #fff;
	border: 1px solid #eceef1;
	border-radius: 16px;
	box-shadow: 0 2px 10px 1px rgba(0, 0, 0, 0.08);
}
.box-row__media img {
	width: 100%;
	max-width: 130px;
	height: auto;
	border-radius: 10px;
}

.box-row__badge {
	position: absolute;
	top: -18px;
	left: 16px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	padding: 9px 18px;
	background: #54b8f0;
	color: #fff;
	font-family: "RobotoDetailItalic", "Roboto", Arial, sans-serif;
	font-size: 20px;
	font-weight: 700;
	font-style: italic;
	line-height: 100%;
	letter-spacing: -0.02em;
	vertical-align: middle;
	text-transform: uppercase;
	white-space: nowrap;
	border-radius: 8px;
}
.box-row__area {
	font-family: var(--font-RobotoCondensed);
	font-size: 30px;
	font-weight: 900;
	line-height: 1.1;
	text-transform: uppercase;
	margin-bottom: 4px;
}
.box-row__category {
	font-family: var(--font-RobotoCondensed);
	font-size: 30px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #707070;
	margin-bottom: 10px;
}

.box-row__main,
.box-row__features {
	display: flex;
	flex-direction: column;
}
.box-row__features {
	padding-right: 12px;
	padding-left: 12px;
}
.box-row__params {
	display: flex;
	flex-direction: column;
	margin-top: auto;
}
.box-row__param {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	padding: 5px 0;
	font-size: 15px;
}
.box-row__param + .box-row__param {
	border-top: 1px solid #eceef1;
}
.box-row__param-name {
	color: #2e2f33;
	font-family: var(--font-HelveticaNeue);
	font-size: 14px;
	font-weight: 400;
	line-height: 140%;
	white-space: nowrap;
}
.box-row__param-value {
	color: #2e2f33;
	font-family: "HelveticaNeueDetailMedium", "HelveticaNeue", Arial, sans-serif;
	font-size: 14px;
	font-weight: 600;
	line-height: 140%;
	text-align: right;
}
/* габариты в строку через запятую, переносим только между парами «подпись: значение» */
.box-row__dims {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	column-gap: 0.3em;
}
.box-row__dim {
	white-space: nowrap;
}
.box-row__dim:not(:last-child)::after {
	content: ",";
}

.box-row__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 10px;
}
.box-row__chip {
	padding: 4px 10px;
	background: #f4f5f7;
	border-radius: 8px;
	font-family: var(--font-HelveticaNeue, "HelveticaNeue", Arial, sans-serif);
	font-size: 16px;
	font-weight: 400;
	line-height: 130%;
	letter-spacing: 0;
	color: #707070;
}
.box-row__chip--deposit {
	background: #fff1ed;
	color: #eb8258;
}

.box-row__buy {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
/* Период тянем на всю ширину блока покупки, как кнопку «Забронировать»:
   снимаем max-width из общих стилей .catalog-filter каталога */
.box-row__buy .box-row__period {
	width: 100%;
	max-width: none;
	/* снимаем flex: 1 1 0 из стилей каталога - иначе контейнер растягивается по высоте карточки
	   и выпадающий список (top: 100%) уезжает далеко вниз от кнопки */
	flex: 0 0 auto;
}
.box-row__period .catalog-filter__toggle {
	color: #2e2f33 !important;
	font-weight: 400;
}
.box-row__price-block {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 10px;
}
.box-row__price-label {
	color: #707070;
	font-family: var(--font-HelveticaNeue);
	font-size: 18px;
	font-weight: 400;
	line-height: 130%;
	letter-spacing: 0;
}
.box-row__price-wrap {
	display: inline-flex;
	align-items: baseline;
	gap: 8px;
}
.box-row__deposit {
	position: relative;
	display: flex;
	align-items: center;
	gap: 4px;
	margin-top: 2px;
	font-family: var(--font-HelveticaNeue, "HelveticaNeue", Arial, sans-serif);
	font-size: 16px;
	font-weight: 400;
	line-height: 130%;
	letter-spacing: 0;
	font-style: normal;
	color: #707070;
}
.box-row__deposit > span:nth-child(2) {
	white-space: nowrap;
}
.box-row__deposit-help {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: #b5b5b5;
	cursor: help;
}
.box-row__deposit-icon {
	display: block;
	flex: 0 0 auto;
	width: 12px;
	height: 12px;
}
.box-row__deposit-help:focus-visible {
	outline: 2px solid #54b8f0;
	outline-offset: 2px;
	border-radius: 50%;
}
.box-row__deposit-tooltip {
	position: absolute;
	right: 0;
	bottom: calc(100% + 10px);
	z-index: 5;
	box-sizing: border-box;
	width: min(350px, calc(100vw - 32px));
	max-width: calc(100vw - 32px);
	padding: 12px 52px;
	border-radius: 14px;
	background: #2e2f33;
	box-shadow: 0 8px 20px rgba(46, 47, 51, 0.18);
	font-family: var(--font-HelveticaNeue, "HelveticaNeue", Arial, sans-serif);
	font-size: 16px;
	font-weight: 400;
	line-height: 130%;
	letter-spacing: 0;
	font-style: normal;
	text-align: center;
	color: #fff;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(4px);
	transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
}
.box-row__deposit-tooltip::after {
	content: "";
	position: absolute;
	right: 8px;
	top: 100%;
	width: 0;
	height: 0;
	border-top: 8px solid #2e2f33;
	border-right: 7px solid transparent;
	border-left: 7px solid transparent;
}
.box-row__deposit:hover .box-row__deposit-tooltip,
.box-row__deposit:focus-within .box-row__deposit-tooltip,
.box-row__deposit.is-open .box-row__deposit-tooltip {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
.box-row__price {
	font-family: var(--font-RobotoCondensed, "Roboto_Condensed", sans-serif);
	font-size: 30px;
	font-weight: 900;
	line-height: 100%;
	letter-spacing: -0.02em;
	text-align: right;
	text-transform: uppercase;
	color: #2e2f33;
}
/* Старая (зачёркнутая) цена рядом со скидочной */
.box-row__price-old {
	font-family: var(--font-RobotoCondensed, "Roboto_Condensed", sans-serif);
	font-size: 30px;
	font-weight: 900;
	line-height: 100%;
	letter-spacing: -0.02em;
	text-transform: uppercase;
	text-decoration: line-through;
	color: var(--gray-middle);
}
.box-row__price-old[hidden] {
	display: none;
}
.box-row__sale-badge {
	display: inline-flex;
	align-items: center;
	padding: 4px 8px;
	background: #54b8f0;
	color: #fff;
	font-family: var(--font-HelveticaNeue);
	font-size: 12px;
	font-weight: 400;
	line-height: 120%;
	border-radius: 8px;
	white-space: nowrap;
}
.box-row__sale-badge[hidden] {
	display: none;
}

.box-row__period .catalog-filter__toggle [data-period-badge] {
	margin-right: auto;
}
.box-row__period .catalog-filter__menu li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}
.box-row__period .catalog-filter__menu,
.boxes-test__filter .catalog-filter__menu {
	background: #fff;
}
.box-row__period .catalog-filter__menu li.is-active,
.boxes-test__filter .catalog-filter__menu li.is-active {
	background: transparent;
}
.box-row__period .catalog-filter__menu li:hover,
.boxes-test__filter .catalog-filter__menu li:hover {
	background: #f4f5f7;
}
.box-row__submit {
	width: 100%;
	/* фиксируем высоту, чтобы при замене текста на стрелку (загрузка) кнопка не ужималась */
	min-height: 36px;
	/* прижимаем кнопку к низу блока покупки - раньше её опускало растянутое поле периода */
	margin-top: auto;
}

/* Сданная ячейка: изображение приглушаем и накладываем штамп */
.box-row_sold .box-row__media {
	position: relative;
	align-self: start;
	width: 130px;
	height: 130px;
}
.box-row_sold .box-row__media img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	opacity: 0.45;
}
.box-row__stamp {
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 1;
	padding: 6px 12px;
	border-radius: 8px;
	background: #707070;
	font-family: var(--font-primary, Arial, sans-serif);
	font-size: 20px;
	font-style: italic;
	font-weight: 900;
	line-height: 100%;
	letter-spacing: -0.02em;
	text-transform: uppercase;
	white-space: nowrap;
	color: #fff;
	transform: translate(-50%, -50%) rotate(-31.28deg);
}

.boxes-test__empty {
	color: #8b9096;
	letter-spacing: 0;
}

.box-row > .booking {
	grid-column: 1 / -1;
	margin: 20px -14px -4px -14px;
	padding: 24px;
	background: #f4f5f7;
	border-radius: 10px;
}
.booking__inner {
	display: grid;
	grid-template-columns: 1fr minmax(300px, 360px);
	gap: 32px;
	/* колонки одной высоты: кнопка прижимается к низу и встаёт в ряд с инпутами */
	align-items: stretch;
}
.booking__title {
	font-family: "RobotoDetailBold", Arial, sans-serif;
	font-size: 22px;
	font-weight: 700;
	margin-bottom: 20px;
}
.booking__legal {
	margin: -4px 0 20px;
	color: #707070;
}
.booking__legal-text {
	margin: 0 0 14px;
	font-size: 15px;
	line-height: 140%;
}
.booking__legal-text strong {
	color: #2e2f33;
}

.booking__help {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0;
	border: 0;
	background: transparent;
	color: #2e2f33;
	font-family: var(--font-HelveticaNeue, "HelveticaNeue", Arial, sans-serif);
	font-size: 15px;
	font-weight: 600;
	line-height: 140%;
	cursor: pointer;
}
.booking__help:hover {
	color: #eb8258;
}
.booking__help-icon {
	flex: 0 0 auto;
}
/* три обязательных поля брони: дата, телефон, почта */
/* подписи занимают разное число строк, поэтому колонки равняем по низу - инпуты стоят в одну линию */
.booking__fields {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: 20px;
	row-gap: 8px;
	align-items: end;
}
.booking__moving-assistance {
	grid-column: 1;
	grid-row: 1;
}
.booking__field--date {
	grid-column: 1;
	grid-row: 2;
}
.booking__field--phone {
	grid-column: 2;
	grid-row: 2;
}
.booking__field--email {
	grid-column: 3;
	grid-row: 2;
}
.booking__label {
	display: block;
	margin-bottom: 8px;
	font-family: var(--font-HelveticaNeue, "HelveticaNeue", Arial, sans-serif);
	font-size: 16px;
	font-weight: 700;
	line-height: 130%;
	letter-spacing: 0;
}
.booking__input {
	width: 100%;
	padding: 14px 16px;
	background: #fff;
	border: 1px solid #e3e6ea;
	border-radius: 10px;
	font-size: 15px;
}
.booking__input::placeholder {
	font-size: 16px;
	font-weight: 300;
	line-height: 140%;
	letter-spacing: 0;
	color: var(--gray-middle);
}
.booking__date,
.booking__control {
	position: relative;
	display: flex;
	align-items: center;
}
.booking__date-icon {
	position: absolute;
	right: 14px;
	width: 18px;
	height: 18px;
	pointer-events: none;
}
.booking__date-icon .icon {
	width: 18px;
	height: 18px;
	stroke: #9aa3ad;
	fill: transparent;
}
.booking__control .booking__input {
	background: #fff !important;
}
/* readonly-контакт у авторизованного - серый, как плейсхолдер */
.booking__control .booking__input[readonly] {
	color: var(--gray-middle);
}
.booking__date .booking__input {
	padding-right: 42px;
	cursor: pointer;
	background: #fff !important;
}
.booking__right {
	display: flex;
	flex-direction: column;
	gap: 18px;
	align-items: flex-end;
	align-self: stretch;
}
.booking__offers {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	width: 100%;
}
.booking__offer {
	font-size: 15px;
}
.booking__offer.basket-offer {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-family: var(--font-HelveticaNeue);
	line-height: 140%;
	color: var(--black-light);
}
.booking__offer .basket-offer__input {
	width: 1px;
	height: 1px;
}
.booking__offer .basket-offer__checkbox {
	flex: 0 0 20px;
	width: 20px !important;
	height: 20px !important;
}
.booking__offer .basket-offer__checkbox::before {
	width: 20px !important;
	height: 20px !important;
	border-radius: 4px !important;
	background-size: 16px 16px !important;
	background-color: #fff !important;
}
.booking__offer .basket-offer__input:checked + .basket-offer__checkbox::before {
	background-color: var(--blue-middle) !important;
}
.booking__offer .basket-offer__label {
	margin: 0;
	cursor: pointer;
}
.booking__offer-link {
	font-weight: 700;
	text-decoration: underline;
}
/* единая кнопка перехода к подтверждению и оплате */
.booking__continue.btn {
	margin-top: auto;
	width: 100%;
	padding: 16px 24px;
	background: rgba(235, 130, 88, 1);
	color: #fff;
	font-size: 16px;
	font-weight: 500;
	border: none;
	border-radius: 10px;
	white-space: nowrap;
}
.booking__continue.btn:hover {
	background: #e86a3d;
}
.booking__continue.btn:disabled,
.booking__continue.btn:disabled:hover {
	background: #f4f4f5;
	color: #c2c2c2;
	border: 1px solid #e3e6ea;
	cursor: not-allowed;
}
/* подпись-блокировка продления под кнопкой (ЛК, снятая с сайта ячейка) */
.booking__locked-note {
	width: 100%;
	margin: 0;
	font-size: 13px;
	line-height: 1.3;
	text-align: center;
	color: #e8542f;
}
.booking__error {
	display: block;
	margin-top: 8px;
	color: #e8542f;
	font-size: 14px;
	white-space: nowrap;
}
/* Информационная модалка только для карточек онлайн-брони. На мобильном — нижний лист. */
.booking-how-modal {
	box-sizing: border-box;
	width: min(700px, calc(100vw - 32px));
	max-height: min(760px, calc(100vh - 48px));
	padding: 36px 40px 32px;
	overflow: hidden;
}
/* Fancybox добавляет собственный close внутрь inline-контента; у этой modal
   уже есть кнопка закрытия из макета. */
.booking-how-modal > .f-button[data-fancybox-close] {
	display: none;
}
.booking-how-modal__inner {
	display: flex;
	flex-direction: column;
	min-height: 0;
	max-height: calc(100vh - 120px);
}
.booking-how-modal__close {
	position: absolute;
	top: 20px;
	right: 20px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 0;
	background: transparent;
	color: #707070;
	cursor: pointer;
}
.booking-how-modal__close:hover {
	color: #2e2f33;
}
.booking-how-modal__title {
	margin: 0 48px 24px 0;
	font-family: "RobotoDetailBold", Arial, sans-serif;
	font-size: 26px;
	font-weight: 700;
	line-height: 115%;
	color: #2e2f33;
}
.booking-how-modal__text {
	min-height: 0;
	overflow-y: auto;
	padding-right: 8px;
	font-family: var(--font-HelveticaNeue, "HelveticaNeue", Arial, sans-serif);
	font-size: 16px;
	line-height: 145%;
	color: #707070;
}
.booking-how-modal__text p {
	margin: 0 0 16px;
}
.booking-how-modal__text p:last-child {
	margin-bottom: 0;
}
.booking-how-modal button.booking-how-modal__close-button {
	flex: 0 0 auto;
	width: 180px;
	margin-top: 28px;
	padding: 14px 24px;
	background: #2e2f33;
	color: #fff;
	border: 0;
	border-radius: 10px;
	font-size: 16px;
}
.booking-how-modal__close-button:hover {
	background: #1f2022;
}
.booking .booking__input.error {
	border-color: #e8542f !important;
}
.booking__offer .basket-offer__checkbox.is-error::before {
	border: 1px solid #e8542f !important;
}

.daterangepicker.drp-booking {
	box-sizing: border-box;
	width: 400px;
	max-width: calc(100vw - 24px);
	border: none;
	border-radius: 16px;
	padding: 12px;
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
	font-family: var(--font-HelveticaNeue, "HelveticaNeue", Arial, sans-serif);
}
.daterangepicker.drp-booking::before,
.daterangepicker.drp-booking::after {
	display: none;
}
.daterangepicker.drp-booking .drp-calendar {
	width: 100%;
	min-width: 0;
	max-width: none;
	padding: 0;
	margin-right: 0;
}
.daterangepicker.drp-booking .calendar-table {
	box-sizing: border-box;
	width: 100%;
	border: none;
	padding: 0;
}
.daterangepicker.drp-booking .calendar-table table {
	width: 100%;
	table-layout: fixed;
	border-collapse: separate;
	border-spacing: 4px;
}
.daterangepicker.drp-booking .calendar-table thead tr:first-child {
	display: none;
}
.daterangepicker.drp-booking .drp-nav {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 12px;
}
.daterangepicker.drp-booking .drp-title {
	flex: 1 1 auto;
	font-family: var(--font-HelveticaNeue, "Helvetica Neue", Arial, sans-serif);
	text-align: center;
	vertical-align: middle;
	font-size: 16px;
	font-weight: 400;
	font-style: normal;
	line-height: 130%;
	letter-spacing: 0;
	color: #1c1c1c;
}
.daterangepicker.drp-booking .drp-prev,
.daterangepicker.drp-booking .drp-next {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 40px;
	width: 40px;
	height: 40px;
	border: 1px solid #e3e6ea;
	border-radius: 10px;
	background: #fff;
	cursor: pointer;
}
.daterangepicker.drp-booking .drp-prev:hover,
.daterangepicker.drp-booking .drp-next:hover {
	background: #f3f4f6;
}
.daterangepicker.drp-booking .drp-prev.is-hidden {
	visibility: hidden;
}
.daterangepicker.drp-booking .drp-prev svg,
.daterangepicker.drp-booking .drp-next svg {
	display: block;
	width: 20px;
	height: 20px;
}
/* Топбар: поле ввода + «Сегодня» */
.daterangepicker.drp-booking .drp-topbar {
	display: flex;
	gap: 8px;
	margin-bottom: 12px;
}
.daterangepicker.drp-booking .drp-typed {
	flex: 1 1 auto;
	min-width: 0;
	padding: 12px 14px;
	border: 1px solid #e3e6ea;
	border-radius: 10px;
	font-size: 15px;
	color: #1c1c1c;
	text-align: left;
}
.daterangepicker.drp-booking .drp-typed::placeholder {
	font-family: var(--font-HelveticaNeue, "HelveticaNeue", Arial, sans-serif);
	font-size: 16px;
	font-weight: 400;
	font-style: normal;
	line-height: 130%;
	letter-spacing: 0;
	color: #707070;
	opacity: 1;
}
.daterangepicker.drp-booking .drp-today {
	flex: 0 0 auto;
	padding: 12px 20px;
	border: none;
	border-radius: 10px;
	background: #eef0f2;
	font-family: var(--font-primary, "Roboto", sans-serif);
	font-size: 14px;
	font-weight: 500;
	font-style: normal;
	line-height: 140%;
	letter-spacing: -0.01em;
	text-align: center;
	color: #1c1c1c;
	cursor: pointer;
}
.daterangepicker.drp-booking .drp-today:hover {
	background: #e3e6ea;
}
/* Дни недели */
.daterangepicker.drp-booking thead th:not(.month):not(.prev):not(.next) {
	font-size: 14px;
	font-weight: 400;
	color: var(--gray-middle);
	padding-bottom: 6px;
}
/* Ячейки дней */
.daterangepicker.drp-booking td {
	width: 40px;
	height: 40px;
	border-radius: 10px;
	font-size: 15px;
	color: #1c1c1c;
}
.daterangepicker.drp-booking td.available:hover {
	background: #eef0f2;
	border-radius: 10px;
}
.daterangepicker.drp-booking td.off {
	color: #c5cad0;
	background: transparent;
}
.daterangepicker.drp-booking td.active,
.daterangepicker.drp-booking td.active:hover {
	background: #54b8f0;
	color: #fff;
	border-radius: 10px;
}
.daterangepicker.drp-booking td.disabled {
	color: #c5cad0;
	text-decoration: line-through;
}

/* Планшет/мобилка */
@media (max-width: 1199px) {
	.box-row {
		grid-template-columns: 110px 1fr 1fr;
	}
	.box-row__buy {
		grid-column: 1 / -1;
	}
	.booking__inner {
		grid-template-columns: 1fr;
	}
	.booking__right {
		align-items: stretch;
	}
}
@media (max-width: 767px) {
	.box-row__deposit {
		font-size: 16px;
		line-height: 130%;
		letter-spacing: 0;
		color: #707070;
	}
	.box-row__deposit-tooltip {
		right: auto;
		left: 0;
		width: min(350px, calc(100vw - 32px));
		max-width: calc(100vw - 32px);
		padding: 12px 52px;
		font-size: 16px;
		line-height: 130%;
		letter-spacing: 0;
	}
	.box-row__deposit-tooltip::after {
		right: auto;
		left: 8px;
	}

	.box-row__price,
	.box-row__price-old {
		font-family: var(--font-RobotoCondensed, "Roboto_Condensed", sans-serif);
		font-size: 24px;
		font-weight: 900;
		font-style: normal;
		line-height: 120%;
		letter-spacing: -0.03em;
		text-align: right;
		vertical-align: middle;
		text-transform: uppercase;
	}

	.box-row {
		grid-template-columns: auto 1fr;
		gap: 16px;
		padding: 16px;
	}
	.box-row__media {
		grid-column: 1;
		grid-row: 1;
	}
	.box-row__media img {
		max-width: 120px;
	}
	.box-row_sold .box-row__media {
		width: 120px;
		height: 120px;
	}
	.box-row__stamp {
		padding: 4px 8px;
		font-size: 14px;
	}
	.box-row__main {
		grid-column: 2;
		grid-row: 1;
		padding-top: 8px;
	}
	.box-row__features {
		grid-column: 1 / -1;
		padding-left: 0;
		padding-right: 0;
		padding-bottom: 8px;
		border-bottom: 1px solid #eceef1;
	}
	.box-row__features .box-row__param {
		flex-direction: column;
		align-items: flex-start;
		gap: 2px;
	}
	.box-row__features .box-row__param-value {
		text-align: left;
	}
	.box-row__param-name,
	.box-row__param-value {
		font-size: 14px;
	}
	.box-row__chip {
		font-size: 16px;
	}
	.box-row__buy {
		grid-column: 1 / -1;
	}
	.booking__fields {
		grid-template-columns: 1fr;
		row-gap: 12px;
	}
	.booking__moving-assistance {
		grid-column: 1;
		grid-row: 1;
	}
	.booking__field--date {
		grid-column: 1;
		grid-row: 2;
	}
	.booking__field--phone {
		grid-column: 1;
		grid-row: 3;
	}
	.booking__field--email {
		grid-column: 1;
		grid-row: 4;
	}
	.booking__right {
		align-items: flex-start;
		align-self: stretch;
	}
	.booking__offers {
		align-items: flex-start;
	}
	.booking__legal-text,
	.booking__help {
		font-size: 14px;
	}
	.booking-how-modal {
		width: 100%;
		max-width: 100%;
		max-height: 88vh;
		padding: 28px 16px 20px;
		border-radius: 16px 16px 0 0;
	}
	.fancybox__slide:has(> .booking-how-modal) {
		align-items: stretch;
		padding: 0;
	}
	.fancybox__slide:has(> .booking-how-modal)::after {
		margin-top: 0;
	}
	.booking-how-modal__inner {
		max-height: calc(88vh - 48px);
	}
	.booking-how-modal__title {
		margin-right: 36px;
		font-size: 20px;
	}
	.booking-how-modal__text {
		font-size: 14px;
		line-height: 145%;
	}
	.booking-how-modal__close {
		top: 14px;
		right: 10px;
	}
	.booking-how-modal button.booking-how-modal__close-button {
		width: 100%;
		margin-top: 20px;
		background: #fff;
		color: #2e2f33;
		border: 1px solid #e3e6ea;
	}
}

.modal-booking__form {
	text-align: center;
}

.modal-booking .modal-header__text {
	font-size: 16px;
	line-height: 130%;
	letter-spacing: 0;
	color: var(--gray-dark);
}

.modal-booking__contact {
	color: var(--black-light);
}
.modal-booking__code {
	display: flex;
	justify-content: center;
	gap: 10px;
	margin: 0 !important;
}
.modal-booking__code .modal-password__item {
	width: 54px;
	padding: 0;
}
.modal-booking__code .modal-password__item input {
	padding: 0;
	text-align: center;
	font-size: 20px;
	font-weight: 600;
	color: var(--black-light);
}
.modal-booking__code .modal-password__item input.is-invalid,
.modal-booking__code .modal-password__item input.is-invalid:focus {
	border-color: #e8542f !important;
}
.modal-booking__error {
	display: block;
	color: #e8542f;
	font-size: 14px;
	line-height: 140%;
}
.modal-booking__error:empty {
	display: none;
}
.modal-booking__submit.btn {
	font-family: var(--font-primary);
	letter-spacing: -0.01em;
}
.modal-booking__submit.btn:disabled,
.modal-booking__submit.btn:disabled:hover {
	background: #f4f4f5;
	color: #c2c2c2;
	border: 1px solid #e3e6ea;
	cursor: not-allowed;
}
.modal-booking__resend,
.modal-booking__resend-btn {
	width: 100%;
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	font-family: var(--font-HelveticaNeue);
	font-size: 14px;
	font-weight: 400;
	line-height: 140%;
	text-align: center;
	color: var(--gray-middle);
}
.modal-booking__resend-btn {
	cursor: pointer;
}
.modal-booking--payment .modal-content__inner {
	gap: 20px;
}
.modal-booking--payment .modal-content__form {
	gap: 0;
}
.modal-booking--payment .modal-booking__total {
	margin-bottom: 20px;
}
.modal-booking--payment .modal-booking__promo {
	margin-bottom: 40px;
}
.modal-booking__total-label {
	display: block;
	font-family: var(--font-HelveticaNeue);
	font-size: 16px;
	font-weight: 400;
	line-height: 130%;
	color: var(--gray-dark);
}
.modal-booking__total-value {
	display: flex;
	justify-content: center;
	align-items: baseline;
	gap: 10px;
	margin-top: 4px;
}
.modal-booking__price {
	font-family: var(--font-RobotoCondensed);
	font-size: 40px;
	font-weight: 900;
	line-height: 100%;
	letter-spacing: -0.02em;
	color: var(--black-light);
}
.modal-booking__price-old {
	font-family: var(--font-RobotoCondensed);
	font-size: 30px;
	font-weight: 900;
	line-height: 100%;
	letter-spacing: -0.02em;
	text-decoration: line-through;
	color: var(--gray-middle);
}
.modal-booking__price-old[hidden] {
	display: none;
}
.modal-booking__promo {
	position: relative;
	display: flex;
	align-items: center;
}
.modal-booking__promo-input.form-item {
	padding-right: 110px;
	font-size: 18px;
	font-weight: 400;
	line-height: 130%;
	letter-spacing: -0.02em;
	cursor: text;
}
.modal-booking__promo-input.form-item::placeholder {
	font-weight: 400;
	color: var(--gray-middle);
}
.modal-booking__promo-apply {
	position: absolute;
	right: 23px;
	background: none;
	border: none;
	font-family: var(--font-primary);
	font-size: 14px;
	font-weight: 500;
	line-height: 140%;
	letter-spacing: -0.01em;
	color: var(--black-light);
	cursor: pointer;
}

.modal-booking__promo-result { display:flex; justify-content:space-between; align-items:center; margin-top:-28px; margin-bottom:28px; color:#079a49; font-size:14px; }
.modal-booking__promo-result button { border:0; background:transparent; color:#4d4d4d; text-decoration:underline; cursor:pointer; }
.modal-booking__pay-row {
	display: flex;
	gap: 12px;
}
.modal-booking__pay-methods {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.modal-booking__pay-row--services {
	display: grid;
	/* Ряд сам сжимается до числа включенных pay-методов: после отключения
	 * T-Pay не остается пустой третьей ячейки. */
	grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
}
.modal-booking__pay-row--base {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
.modal-booking__pay.btn {
	min-width: 0;
	min-height: 64px;
	padding: 14px 8px;
	font-family: var(--font-primary);
	font-size: 18px;
	font-weight: 500;
	line-height: 140%;
	letter-spacing: -0.01em;
	white-space: nowrap;
}
.modal-booking__pay-brand {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	font-weight: 700;
	line-height: 1;
}
.modal-booking__pay-brand-mark {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	font-size: 15px;
}
.modal-booking__pay-brand--sber {
	font-size: 18px;
}
.modal-booking__pay-brand--sber .modal-booking__pay-brand-mark {
	background: #fff;
	color: #13a94d;
}
.modal-booking__pay-brand--tpay {
	gap: 4px;
	font-size: 18px;
}
.modal-booking__pay-brand--tpay .modal-booking__pay-brand-mark {
	width: 23px;
	height: 23px;
	border-radius: 4px;
	background: #ffd200;
	color: #1d1d1d;
	font-size: 15px;
}
.modal-booking__pay--sberpay.btn {
	background: #16bb4d;
	color: #fff;
}
.modal-booking__pay--sberpay.btn:hover {
	background: #0fa640;
}
.modal-booking__pay--tpay.btn {
	background: #292929;
	color: #fff;
}
.modal-booking__pay--tpay.btn:hover {
	background: #1d1d1d;
}
.modal-booking__pay--alfapay.btn {
	background: #ef3124;
	color: #fff;
}
.modal-booking__pay--alfapay.btn:hover {
	background: #d92a1f;
}
.modal-booking__pay--sbp.btn {
	background: var(--gray-light);
	color: var(--black-light);
}
.modal-booking__pay--card.btn {
	background: rgba(235, 130, 88, 1);
	color: #fff;
}
.modal-booking__pay--card.btn:hover {
	background: #e86a3d;
}
.modal-booking__pay.btn:disabled,
.modal-booking__pay.btn:disabled:hover {
	background: #f4f4f5;
	color: #c2c2c2;
	border: 1px solid #e3e6ea;
	cursor: not-allowed;
}
.modal-booking__pay-logo {
	display: block;
	width: auto;
	height: 26px;
}
.modal-booking__pay:focus-visible {
	outline: 3px solid rgba(18, 119, 255, .45);
	outline-offset: 2px;
}
/* Если СБП временно отключат настройкой, сохраняем макетный фон и приглушаем логотип */
.modal-booking__pay--sbp.btn:disabled,
.modal-booking__pay--sbp.btn:disabled:hover {
	background: var(--gray-light);
	border: 1px solid transparent;
}
.modal-booking__pay--sbp.btn:disabled .modal-booking__pay-logo {
	opacity: 0.5;
}
@media (max-width: 767.98px) {
	.fancybox__slide:has(> .modal-booking) {
		align-items: stretch;
		padding-left: 0;
		padding-right: 0;
		padding-bottom: 0;
	}
	.fancybox__slide:has(> .modal-booking)::after {
		margin-top: 0;
	}
	.modal-booking.modal-content {
		width: 100%;
		max-width: 100%;
		padding: 24px 16px 28px;
		border-radius: 16px 16px 0 0;
	}
	.modal-booking .modal-header {
		align-items: flex-start;
	}
	.modal-booking .modal-title,
	.modal-booking .modal-header__text,
	.modal-booking__form {
		text-align: left;
	}
	.modal-booking__total-value {
		justify-content: flex-start;
	}
	.modal-booking__pay.btn {
		min-height: 56px;
		font-size: 16px;
	}
	.modal-booking__pay-brand--sber,
	.modal-booking__pay-brand--tpay {
		font-size: 16px;
	}
	.modal-booking__pay-row--services,
	.modal-booking__pay-row--base {
		gap: 8px;
	}
	/* на узком экране текст переносится сам - макетный перенос только мешает */
	.modal-booking .modal-header__text br {
		display: none;
	}
	/* ячейки кода растягиваем на всю ширину листа */
	.modal-booking__code {
		justify-content: space-between;
		gap: 8px;
	}
	.modal-booking__code .modal-password__item {
		flex: 1;
		width: auto;
	}
	.modal-booking__code .modal-password__item input {
		height: 48px;
	}
}

/* End */


/* Start:/local/components/prokladovki/catalog.test/templates/.default/style.css?179069597942685*/
#js-catalog{
	font-family: var(--font-HelveticaNeue, "HelveticaNeue", Arial, sans-serif);
	font-weight: 400;

	/* размеры считаем из двух множителей: card-scale (карточка тянется по высоте контейнера) и ui-scale (хром, не больше эталона). js пишет только множители, базы живут тут. множитель не задан → 1 → эталонный размер (мобилка/прочие страницы) */
	--catalog-card-height: calc(180px * var(--catalog-card-scale, 1));
	--catalog-card-gap: calc(10px * var(--catalog-card-scale, 1));
	--catalog-card-font-size: calc(16px * var(--catalog-card-scale, 1));
	--catalog-card-row-min: calc(18px * var(--catalog-card-scale, 1));
	--catalog-card-row-gap: calc(8px * var(--catalog-card-scale, 1));
	--catalog-card-title-mb: calc(2px * var(--catalog-card-scale, 1));
	--catalog-card-distance-mb: calc(18px * var(--catalog-card-scale, 1));
	--catalog-card-footer-mt: calc(11px * var(--catalog-card-scale, 1));
	--catalog-card-body-pt: calc(8px * var(--catalog-card-scale, 1));
	--catalog-card-body-pb: calc(8px * var(--catalog-card-scale, 1));
	--catalog-card-button-py: calc(8px * var(--catalog-card-scale, 1));
	--catalog-card-button-px: calc(16px * var(--catalog-card-scale, 1));
	--catalog-search-width: calc(616px * var(--catalog-ui-scale, 1));
	--catalog-search-height: calc(41px * var(--catalog-ui-scale, 1));
	--catalog-search-gap: calc(8px * var(--catalog-ui-scale, 1));
	--catalog-search-padding-y: calc(10px * var(--catalog-ui-scale, 1));
	--catalog-search-padding-x: calc(16px * var(--catalog-ui-scale, 1));
	--catalog-search-mb: calc(16px * var(--catalog-ui-scale, 1));
	--catalog-search-icon-size: calc(20px * var(--catalog-ui-scale, 1));
	--catalog-search-font-size: calc(16px * var(--catalog-ui-scale, 1));
	--catalog-control-font-size: calc(16px * var(--catalog-ui-scale, 1));
	--catalog-control-radius: calc(8px * var(--catalog-ui-scale, 1));
	--catalog-list-head-gap: calc(16px * var(--catalog-ui-scale, 1));
	--catalog-list-head-mb: calc(16px * var(--catalog-ui-scale, 1));
	--catalog-title-font-size: calc(24px * var(--catalog-ui-scale, 1));
	--catalog-sort-width: calc(200px * var(--catalog-ui-scale, 1));
	--catalog-sort-height: calc(36px * var(--catalog-ui-scale, 1));
	--catalog-sort-padding-y: calc(10px * var(--catalog-ui-scale, 1));
	--catalog-sort-padding-x: calc(10px * var(--catalog-ui-scale, 1));
	--catalog-filters-gap: calc(8px * var(--catalog-ui-scale, 1));
	--catalog-filters-pr: calc(8px * var(--catalog-ui-scale, 1));
	--catalog-filters-pb: calc(16px * var(--catalog-ui-scale, 1));
	--catalog-filters-pl: calc(24px * var(--catalog-ui-scale, 1));
	--catalog-filter-min-width: calc(150px * var(--catalog-ui-scale, 1));
	--catalog-filter-max-width: calc(200px * var(--catalog-ui-scale, 1));
	--catalog-filter-toggle-gap: calc(10px * var(--catalog-ui-scale, 1));
	--catalog-filter-height: calc(41px * var(--catalog-ui-scale, 1));
	--catalog-filter-padding-y: calc(10px * var(--catalog-ui-scale, 1));
	--catalog-filter-padding-x: calc(16px * var(--catalog-ui-scale, 1));
	--catalog-filter-arrow-size: calc(9px * var(--catalog-ui-scale, 1));
	--catalog-filter-arrow-border: calc(1.6px * var(--catalog-ui-scale, 1));
	--catalog-filter-menu-padding: calc(8px * var(--catalog-ui-scale, 1));
	--catalog-filter-menu-radius: calc(12px * var(--catalog-ui-scale, 1));
	--catalog-filter-menu-item-padding-x: calc(14px * var(--catalog-ui-scale, 1));
	--catalog-reset-font-size: calc(15px * var(--catalog-ui-scale, 1));
}

body:has(#js-catalog){
	overflow: hidden;
	height: 100vh;
	display: flex;
	flex-direction: column;
}
body:has(#js-catalog) .page__wrapper{
	flex: 1;
	min-height: 0;
	display: flex;
	flex-direction: column;
}
body:has(#js-catalog) .footer{
	display: none;
}

.catalog{
	flex: 1;
	min-height: 0;
	display: grid;
	grid-template-columns: 1.3fr 1fr;
}

.catalog__left{
	display: flex;
	flex-direction: column;
	min-height: 0;
	min-width: 0;
}
.catalog__filters{
	position: relative;
	z-index: 10;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	align-items: start;
	gap: var(--catalog-filters-gap, 8px);
	padding: 0 var(--catalog-filters-pr, 8px) var(--catalog-filters-pb, 16px) var(--catalog-filters-pl, 24px);
}
.catalog__filters > .catalog-filter{
	min-width: 0;
	max-width: none;
}
.catalog__filters > .catalog-filter .catalog-filter__toggle span{
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.catalog__filters > .catalog-filter .catalog-filter__toggle::after{
	flex-shrink: 0;
}
.catalog__filters > .catalog-filter[data-filter="metro"]{
	grid-column: 4;
	grid-row: 1;
}
@media (min-width: 1360px){
	.catalog__filters{
		grid-template-columns: repeat(4, minmax(0, 1fr)) 140px 140px;
		align-items: center;
	}
	.catalog__filters--no-metro{
		grid-template-columns: repeat(3, minmax(0, 1fr)) 140px 140px;
	}
	.catalog__filters > .catalog-filter .catalog-filter__toggle{
		padding-right: 10px;
		padding-left: 10px;
	}
	.catalog__filters > .catalog__deposit-switch{
		grid-column: 5;
		grid-row: 1;
		justify-self: end;
		min-height: 41px;
		gap: 6px;
		padding: 0;
		font-size: 13px;
	}
	.catalog__filters > .catalog__reset{
		grid-column: 6;
		grid-row: 1;
		justify-self: end;
		min-height: 41px;
		padding: 0;
		white-space: nowrap;
		font-size: 12px;
	}
	.catalog__filters--no-metro > .catalog__deposit-switch{
		grid-column: 4;
	}
	.catalog__filters--no-metro > .catalog__reset{
		grid-column: 5;
	}
}
@media (min-width: 960px) and (max-width: 1359.98px){
	.catalog__filters--no-metro{
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	.catalog__filters > .catalog__deposit-switch{
		grid-column: 3;
		grid-row: 2;
		justify-self: end;
		gap: 6px;
		padding: 0;
		font-size: 13px;
	}
	.catalog__filters > .catalog__reset{
		grid-column: 4;
		grid-row: 2;
		justify-self: end;
		white-space: nowrap;
		font-size: 13px;
	}
	.catalog__filters--no-metro > .catalog__deposit-switch{
		grid-column: 2;
	}
	.catalog__filters--no-metro > .catalog__reset{
		grid-column: 3;
	}
}
@media (min-width: 768px) and (max-width: 959.98px){
	.catalog__filters{
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	.catalog__filters > .catalog-filter[data-filter="metro"]{
		grid-column: 1;
		grid-row: 2;
	}
	.catalog__filters > .catalog__deposit-switch{
		grid-column: 2;
		grid-row: 2;
		justify-self: end;
		gap: 4px;
		padding: 0;
		font-size: 12px;
	}
	.catalog__filters > .catalog__reset{
		grid-column: 3;
		grid-row: 2;
		justify-self: end;
		white-space: nowrap;
		font-size: 12px;
	}
}
.catalog__map{
	position: relative;
	flex: 1;
	min-height: 0;
	min-width: 0;
	padding: 0 8px 24px 24px;
}
.catalog__map-loader{
	position: absolute;
	inset: 0 8px 24px 24px;
	display: none;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 16px;
	border-radius: 16px;
	background: #f7f8fa;
	color: #6b7280;
	font-size: 18px;
}
.catalog.is-loading .catalog__map-loader{
	display: flex;
}
.catalog__spinner{
	width: 34px;
	height: 34px;
	border: 3px solid #d7dbe0;
	border-top-color: #9aa3ad;
	border-radius: 50%;
	animation: catalog-spin .8s linear infinite;
}
@keyframes catalog-spin{
	to{ transform: rotate(360deg); }
}

.skeleton{
	position: relative;
	overflow: hidden;
	background: #eef1f4;
	border-radius: 8px;
}
.skeleton::after{
	content: "";
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent, rgba(255,255,255,.65), transparent);
	animation: catalog-shimmer 1.3s infinite;
}
@keyframes catalog-shimmer{
	100%{ transform: translateX(100%); }
}
.skeleton--media{
	height: 100%;
	border-radius: 0;
}
.skeleton--title{
	height: 22px;
	width: 65%;
	margin-bottom: 14px;
}
.skeleton--line{
	height: 14px;
	margin: 12px 0;
}
.skeleton--chip{
	height: 28px;
	width: 130px;
	border-radius: 20px;
	margin-top: 6px;
}
/* Канвас карты заполняет область карты (как лоадер, с учётом паддингов колонки) */
.catalog__map-canvas{
	position: absolute;
	inset: 0 8px 24px 24px;
	border-radius: 16px;
	overflow: hidden;
	/* фон-плейсхолдер под цвет стиля карты, пока тайлы грузятся */
	background: #dfe7ef;
}

/* размер текста в ценнике-метке — только на test-каталоге, общий модуль карты не трогаем */
#js-catalog .pk-map-marker__price{
	font-size: 11px;
}

/* Бар и шторка фильтра — только в полноэкранной карте на мобилке */
.catalog__map-bar,
.catalog__map-sheet{
	display: none;
}

.catalog-filter{
	position: relative;
	flex: 1 1 0;
	min-width: var(--catalog-filter-min-width, 150px);
	max-width: var(--catalog-filter-max-width, 200px);
}
.catalog-filter__toggle{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--catalog-filter-toggle-gap, 10px);
	width: 100%;
	height: var(--catalog-filter-height, 41px);
	padding: var(--catalog-filter-padding-y, 10px) var(--catalog-filter-padding-x, 16px);
	background: #fff;
	border: 1px solid #e3e6ea;
	border-radius: var(--catalog-control-radius, 8px);
	color: #2e2f33;
	font-family: var(--font-HelveticaNeue, "HelveticaNeue", Arial, sans-serif);
	font-size: var(--catalog-control-font-size, 16px);
	font-weight: 400;
	line-height: 130%;
	letter-spacing: 0;
	cursor: pointer;
}
.catalog-filter[data-value=""] .catalog-filter__toggle,
.catalog-filter[data-filter="metro"][data-value="0"] .catalog-filter__toggle{
	color: #adadad;
}
.catalog-filter__toggle::after{
	content: "";
	width: var(--catalog-filter-arrow-size, 9px);
	height: var(--catalog-filter-arrow-size, 9px);
	border-right: var(--catalog-filter-arrow-border, 1.6px) solid #9aa3ad;
	border-bottom: var(--catalog-filter-arrow-border, 1.6px) solid #9aa3ad;
	transform: rotate(45deg) translateY(-2px);
	transition: transform .2s;
}
.catalog-filter.is-open .catalog-filter__toggle::after{
	transform: rotate(-135deg) translateY(-2px);
}
.catalog-filter__menu{
	position: absolute;
	top: calc(100% + var(--catalog-filters-gap, 8px));
	left: 0;
	min-width: 100%;
	margin: 0;
	padding: var(--catalog-filter-menu-padding, 8px);
	list-style: none;
	background: #fff;
	border-radius: var(--catalog-filter-menu-radius, 12px);
	box-shadow: 0 10px 30px rgba(0,0,0,.12);
	z-index: 20;
	display: none;
	white-space: nowrap;
}
.catalog-filter__menu--metro{
	width: max(100%, 280px);
	max-width: min(420px, calc(100vw - 32px));
	max-height: min(52vh, 420px);
	padding: 8px;
	white-space: normal;
	overflow: hidden;
}
.catalog-filter__metro-search-label{
	display: block;
	margin-bottom: 6px;
}
.catalog-filter__metro-search{
	width: 100%;
	min-height: 42px;
	padding: 9px 12px;
	border: 1px solid #e3e6ea;
	border-radius: 8px;
	font: inherit;
}
.catalog-filter__metro-options{
	max-height: min(42vh, 340px);
	margin: 0;
	padding: 0;
	overflow-y: auto;
	overscroll-behavior: contain;
	list-style: none;
}
.catalog-filter__metro-options li{
	min-height: 44px;
	display: flex;
	align-items: center;
	white-space: normal;
	line-height: 1.25;
}
.catalog-filter__metro-options li[aria-selected="true"]{
	background: #eef7fc;
}
.catalog-filter__metro-options li:focus-visible,
.catalog-filter__metro-search:focus-visible{
	outline: 2px solid var(--blue-middle, #54b8f0);
	outline-offset: 1px;
}
.catalog-filter__metro-empty{
	margin: 8px 12px;
	color: #777;
	font-size: 14px;
}
.catalog-filter--metro .catalog-filter__toggle:disabled{
	color: #999;
	cursor: default;
}
.catalog-filter.is-open .catalog-filter__menu{
	display: block;
}
.catalog-filter__menu li{
	padding: var(--catalog-filter-padding-y, 10px) var(--catalog-filter-menu-item-padding-x, 14px);
	border-radius: var(--catalog-control-radius, 8px);
	cursor: pointer;
	font-family: var(--font-HelveticaNeue, "HelveticaNeue", Arial, sans-serif);
	font-size: var(--catalog-control-font-size, 16px);
	font-weight: 400;
	line-height: 130%;
	letter-spacing: 0;
}
.catalog-filter__menu li:hover,
.catalog-filter__menu li.is-active{
	background: #f4f5f7;
}
.catalog-filter__metro-options li a{
	display: block;
	margin: calc(-1 * var(--catalog-filter-padding-y, 10px)) calc(-1 * var(--catalog-filter-menu-item-padding-x, 14px));
	padding: var(--catalog-filter-padding-y, 10px) var(--catalog-filter-menu-item-padding-x, 14px);
	color: inherit;
	text-decoration: none;
}

.catalog__filters .catalog__reset{
	background: none;
	border: none;
	color: #999;
	font-size: var(--catalog-reset-font-size, 15px);
	cursor: pointer;
}
.catalog__filters .catalog__reset:hover{
	color: #2e2f33;
}
.catalog__deposit-switch,
.boxes-test__deposit-filter {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-height: 44px;
	padding: 0 8px;
	color: #2e2f33;
	font-family: var(--font-HelveticaNeue, "Helvetica Neue", Arial, sans-serif);
	font-size: 15px;
	line-height: 20px;
	white-space: nowrap;
	cursor: pointer;
}
.catalog__deposit-switch input,
.boxes-test__deposit-filter input {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
}
.catalog__deposit-switch-track,
.boxes-test__deposit-track {
	position: relative;
	width: 38px;
	height: 22px;
	flex: 0 0 38px;
	border-radius: 999px;
	background: #d5d7da;
	transition: background .18s ease;
}
.catalog__deposit-switch-track::after,
.boxes-test__deposit-track::after {
	position: absolute;
	top: 3px;
	left: 3px;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: #fff;
	content: "";
	transition: transform .18s ease;
}
.catalog__deposit-switch input:checked + .catalog__deposit-switch-track,
.boxes-test__deposit-filter input:checked + .boxes-test__deposit-track {
	background: #2e2f33;
}
.catalog__deposit-switch input:checked + .catalog__deposit-switch-track::after,
.boxes-test__deposit-filter input:checked + .boxes-test__deposit-track::after {
	transform: translateX(16px);
}
.catalog__deposit-switch input:focus-visible + .catalog__deposit-switch-track,
.boxes-test__deposit-filter input:focus-visible + .boxes-test__deposit-track {
	outline: 2px solid #2e2f33;
	outline-offset: 2px;
}

.catalog__right{
	display: flex;
	flex-direction: column;
	min-height: 0;
	min-width: 0;
	padding: 0 24px 0 8px;
}
.catalog__search{
	position: relative;
	display: flex;
	align-items: center;
	gap: var(--catalog-search-gap, 8px);
	width: var(--catalog-search-width, 616px);
	max-width: 100%;
	height: var(--catalog-search-height, 41px);
	padding: var(--catalog-search-padding-y, 10px) var(--catalog-search-padding-x, 16px);
	margin-left: auto;
	margin-bottom: var(--catalog-search-mb, 16px);
	border: 1px solid #e3e6ea;
	border-radius: var(--catalog-control-radius, 8px);
	background: #fff;
}
.catalog__search-icon{
	flex: 0 0 auto;
	width: var(--catalog-search-icon-size, 20px);
	height: var(--catalog-search-icon-size, 20px);
}
.catalog__search-input{
	flex: 1 1 auto;
	min-width: 0;
	width: 100%;
	height: auto;
	padding: 0;
	border: 0;
	border-radius: 0;
	font-family: var(--font-HelveticaNeue, "HelveticaNeue", Arial, sans-serif);
	font-size: var(--catalog-search-font-size, 16px);
	font-weight: 400;
	line-height: 130%;
	letter-spacing: 0;
}
.catalog__search-input:focus{
	outline: none;
}
.catalog__search-input::placeholder{
	color: #adadad;
	opacity: 1;
}
/* Крестик сброса выбранного адреса в поле поиска */
.catalog__search-clear{
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: var(--catalog-search-icon-size, 20px);
	height: var(--catalog-search-icon-size, 20px);
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
}
.catalog__search-clear:hover svg circle,
.catalog__search-clear:hover svg path{
	stroke: #2e2f33;
}
/* display:flex перебивает атрибут hidden — прячем явно */
.catalog__search-clear[hidden]{
	display: none;
}
/* Выпадающий список подсказок адресов DaData под строкой поиска */
.catalog__suggest{
	position: absolute;
	top: calc(100% + 4px);
	left: 0;
	right: 0;
	z-index: 30;
	margin: 0;
	padding: 4px 0;
	list-style: none;
	background: #fff;
	border: 1px solid #e3e6ea;
	border-radius: var(--catalog-control-radius, 8px);
	box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
	max-height: 320px;
	overflow-y: auto;
}
.catalog__suggest-item{
	padding: 10px 16px;
	font-family: var(--font-HelveticaNeue, "HelveticaNeue", Arial, sans-serif);
	font-size: var(--catalog-search-font-size, 16px);
	line-height: 130%;
	color: #2e2f33;
	cursor: pointer;
}
.catalog__suggest-item:hover,
.catalog__suggest-item.is-active{
	background: #f4f6f8;
}
.catalog__list-head{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--catalog-list-head-gap, 16px);
	margin-bottom: var(--catalog-list-head-mb, 16px);
}
.catalog__title{
	margin: 0;
	font-family: var(--font-HelveticaNeue, "HelveticaNeue", Arial, sans-serif);
	font-size: var(--catalog-title-font-size, 24px);
	font-weight: 700;
	line-height: 120%;
	letter-spacing: -0.03em;
	color: #2e2f33;
}
/* Выбранный адрес в заголовке списка — акцент синим по макету */
.catalog__title-addr,
.catalog__title-location{
	color: #54b8f0;
}
.catalog-sort{
	flex: 0 0 var(--catalog-sort-width, 200px);
	width: var(--catalog-sort-width, 200px);
	max-width: var(--catalog-sort-width, 200px);
}
.catalog-sort .catalog-filter__toggle{
	height: auto;
	padding: var(--catalog-sort-padding-y, 10px) var(--catalog-sort-padding-x, 10px);
	justify-content: space-between;
	border: 1px solid #e3e6ea;
	border-radius: var(--catalog-control-radius, 8px);
	background: #fff;
	white-space: nowrap;
}

.catalog__list{
	flex: 1;
	min-height: 0;
	min-width: 0;
	overflow-y: auto;
	padding-right: 6px;
	padding-bottom: 16px;
}
.catalog__cards{
	display: flex;
	flex-direction: column;
	min-width: 0;
	gap: var(--catalog-card-gap);
}
.catalog__empty{
	color: #9aa3ad;
}
.catalog__seo-text{
	margin-top: 24px;
	padding: 20px 0 4px;
	border-top: 1px solid #ececec;
	color: #59636d;
	font-size: 14px;
	line-height: 1.5;
}
.catalog__seo-text h2{
	margin: 0 0 10px;
	color: #20252a;
	font-size: 20px;
	line-height: 1.2;
}
.catalog__seo-text p{
	margin: 0 0 10px;
}

.catalog-card{
	font-size: 16px;
	display: grid;
	grid-template-columns: 18.75em 1fr;
	flex-shrink: 0;
	border: 1px solid #ececec;
	border-radius: 1em;
	overflow: hidden;
	text-decoration: none;
	color: inherit;
	cursor: pointer;
	line-height: 1.2;
	transition: box-shadow .2s;
}
.catalog-card:hover{
	box-shadow: 0 8px 24px rgba(0,0,0,.08);
}
.catalog-card__media{
	position: relative;
	overflow: hidden;
	background: #f3f4f6;
}
.catalog-card__img{
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.catalog-card__fav{
	position: absolute;
	left: .75em;
	bottom: .75em;
	right: auto;
}
.catalog-card__body{
	min-width: 0;
	padding: .625em 1.125em;
	display: flex;
	flex-direction: column;
	gap: .25em;
}
.catalog-card__title{
	margin: 0;
	font-size: 1.125em;
	font-weight: 700;
	line-height: 1.18;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
/* Ссылка заголовка не должна отличаться от прежнего текста заголовка */
.catalog-card__title-link{
	color: inherit;
	text-decoration: none;
}
.catalog-card__distance{
	display: flex;
	align-items: center;
	gap: .375em;
	color: #6b7280;
	font-size: .875em;
}
.catalog-card__distance .icon{
	width: 1em;
	height: 1em;
}
.catalog-card__row{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: .75em;
	padding-top: .375em;
	font-size: .9375em;
}
.catalog-card__row + .catalog-card__row{
	border-top: 1px solid #f0f0f0;
}
.catalog-card__row-label{
	color: #2e2f33;
}
.catalog-card__size{
	display: flex;
	gap: 2.5em;
}
.catalog-card__features{
	display: flex;
	gap: .5em;
}
.catalog-card__chip{
	padding: .25em .75em;
	background: #f4f5f7;
	border-radius: 1.25em;
	font-size: .8125em;
	font-weight: 300;
	line-height: 1.2;
	color: var(--gray-dark);
}
.catalog-card__footer{
	display: flex;
	align-items: center;
	gap: 1em;
	margin-top: .125em;
}
.catalog-card .catalog-card__more{
	padding: .625em 1.375em;
	font-size: .9375em;
	min-height: 0;
	height: auto;
	line-height: 1.2;
	border-radius: .5em;
}
.catalog-card__variants{
	font-size: .875em;
}
.catalog-card__variants.is-ok{
	color: #1aa053;
}
.catalog-card__variants.is-low{
	color: #f0851a;
}
.catalog-card__variants::before{
	content: "\2022\00a0";
}

.catalog__show-results,
.catalog-map-stub__mobile{
	display: none;
}

/* Баннер «Подберем кладовку» — один промо-элемент в общей ленте адресов. */
.catalog-pick-banner{
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
	width: 100%;
	height: var(--catalog-pick-banner-height, var(--catalog-card-height, 180px));
	min-height: var(--catalog-pick-banner-height, var(--catalog-card-height, 180px));
	flex-shrink: 0;
	padding: 0;
	overflow: hidden;
	border: 1px solid #d7e9f3;
	border-radius: 1em;
	background: #eaf6fc;
	color: #2e2f33;
	font: inherit;
	line-height: 1.1;
	text-align: left;
	cursor: pointer;
	transition: box-shadow .2s, border-color .2s;
}
.catalog-pick-banner:hover{
	border-color: #b9dff1;
	box-shadow: 0 8px 24px rgba(0, 0, 0, .08);
}
.catalog-pick-banner:focus-visible{
	outline: 3px solid rgba(84, 184, 240, .45);
	outline-offset: 2px;
}
.catalog-pick-banner__content{
	display: flex;
	min-width: 0;
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;
	padding: calc(14px * var(--catalog-card-scale, 1)) calc(18px * var(--catalog-card-scale, 1));
	background: #edf8fd;
}
.catalog-pick-banner__title{
	display: flex;
	min-width: 0;
	flex-direction: column;
	font-family: var(--font-RobotoCondensed, "Roboto_Condensed", Arial, sans-serif);
	font-size: clamp(22px, calc(29px * var(--catalog-card-scale, 1)), 42px);
	font-weight: 900;
	line-height: .92;
	letter-spacing: -.03em;
}
.catalog-pick-banner__title strong{
	color: #2da8e6;
}
.catalog-pick-banner__cta{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	max-width: 100%;
	padding: calc(7px * var(--catalog-card-scale, 1)) calc(14px * var(--catalog-card-scale, 1));
	border-radius: calc(8px * var(--catalog-card-scale, 1));
	background: #45afe3;
	color: #fff;
	font-family: var(--font-HelveticaNeue, "HelveticaNeue", Arial, sans-serif);
	font-size: clamp(13px, calc(15px * var(--catalog-card-scale, 1)), 20px);
	font-weight: 700;
	line-height: 1.1;
	white-space: nowrap;
}
.catalog-pick-banner__visual{
	min-width: 0;
	background: #d9eef8 url(/local/templates/prokladovki/assets/img/podbor-kladovki.jpg) right center / auto 100% no-repeat;
}

/* Кнопка «Показать еще» — по центру под карточками, вид 1в1 как .nm-faq__btn («Связаться с менеджером») */
.catalog__more{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin: 16px auto 0;
	padding: 8px 16px;
	border: 1px solid var(--gray-200);
	border-radius: 8px;
	background: #fff;
	font-family: var(--font-primary);
	font-weight: 500;
	font-size: 14px;
	line-height: 140%;
	letter-spacing: -0.01em;
	color: var(--black-light);
	cursor: pointer;
	transition: background .2s ease;
}
.catalog__more:hover{
	background: var(--gray-300);
}
.catalog__more[disabled]{
	cursor: default;
}
/* Индикатор подгрузки: спиннер справа от текста, пока идёт запрос */
.catalog__more.is-loading::after{
	content: "";
	width: 14px;
	height: 14px;
	border: 2px solid var(--gray-200);
	border-top-color: var(--black-light);
	border-radius: 50%;
	animation: catalog-more-spin .7s linear infinite;
}
@keyframes catalog-more-spin{
	to{
		transform: rotate(360deg);
	}
}

/* FAQ под выдачей: колонка одна (по макету) */
.catalog .nm-faq__cols{
	grid-template-columns: minmax(0, 1fr);
}

/* Шапка FAQ по макету каталога: кнопка под заголовком слева, до кнопки и до вопросов по 10px */
.catalog .nm-faq__head{
	flex-direction: column;
	align-items: flex-start;
	gap: 10px;
	margin-bottom: 10px;
}

/* Мобилка: те же паддинги кнопки 8/16 (глобальный стиль ≤575 ставит 8px по кругу с !important) */
@media (max-width: 767.98px){
	.catalog .nm-faq__btn{
		padding: 8px 16px !important;
	}
}

/* Десктоп: FAQ и кнопка подгрузки масштабируются множителем ui-scale, как остальной хром каталога (эталонные размеры — из styles.css) */
@media (min-width: 768px){
	.catalog__more{
		margin-top: calc(16px * var(--catalog-ui-scale, 1));
		padding: calc(8px * var(--catalog-ui-scale, 1)) calc(16px * var(--catalog-ui-scale, 1));
		font-size: calc(14px * var(--catalog-ui-scale, 1));
	}
	.catalog .nm-faq{
		padding: calc(40px * var(--catalog-ui-scale, 1)) 0 calc(24px * var(--catalog-ui-scale, 1));
	}
	.catalog .nm-faq__head{
		/* между заголовком и кнопкой — 10px; до вопросов — ровно 10px без масштаба (задано в общем правиле) */
		gap: calc(10px * var(--catalog-ui-scale, 1));
	}
	.catalog .nm-faq__eyebrow{
		font-size: calc(16px * var(--catalog-ui-scale, 1));
		margin-bottom: calc(16px * var(--catalog-ui-scale, 1));
	}
	.catalog .nm-faq__title{
		/* колонка каталога уже главной — на узких окнах дополнительно зажимаем по ширине, чтобы заголовок не переносился */
		font-size: min(calc(50px * var(--catalog-ui-scale, 1)), 3.3vw);
	}
	.catalog .nm-faq__btn{
		padding: calc(8px * var(--catalog-ui-scale, 1)) calc(16px * var(--catalog-ui-scale, 1));
		border-radius: calc(8px * var(--catalog-ui-scale, 1));
		font-size: calc(14px * var(--catalog-ui-scale, 1));
	}
	.catalog .nm-faq__cols{
		gap: calc(24px * var(--catalog-ui-scale, 1));
	}
	.catalog .nm-faq__col{
		gap: calc(16px * var(--catalog-ui-scale, 1));
	}
	.catalog .nm-faq .faq-item{
		border-radius: calc(20px * var(--catalog-ui-scale, 1));
	}
	.catalog .nm-faq .faq-item__header{
		padding: calc(20px * var(--catalog-ui-scale, 1));
		gap: calc(16px * var(--catalog-ui-scale, 1));
	}
	.catalog .nm-faq .faq-item__question{
		font-size: calc(26px * var(--catalog-ui-scale, 1));
	}
	.catalog .nm-faq .faq-item__toggle{
		width: calc(36px * var(--catalog-ui-scale, 1));
		height: calc(36px * var(--catalog-ui-scale, 1));
		border-radius: calc(8px * var(--catalog-ui-scale, 1));
	}
	.catalog .nm-faq .faq-item__toggle svg{
		width: calc(20px * var(--catalog-ui-scale, 1));
		height: calc(20px * var(--catalog-ui-scale, 1));
	}
	.catalog .nm-faq .faq-item__answer-inner{
		padding: 0 calc(20px * var(--catalog-ui-scale, 1)) calc(20px * var(--catalog-ui-scale, 1));
		font-size: calc(18px * var(--catalog-ui-scale, 1));
	}
}

@media (max-width: 767.98px){
	body:has(#js-catalog){
		height: auto;
		min-height: 100vh;
		overflow: visible;
		display: block;
	}
	body:has(#js-catalog) .page__wrapper{
		display: block;
		min-height: 100vh;
	}

	.catalog{
		display: flex;
		flex-direction: column;
		min-height: auto;
		padding: 0 12px 32px;
	}
	.catalog__left,
	.catalog__right{
		display: contents;
	}

	.catalog__search{
		order: 2;
		display: block;
		width: 100%;
		max-width: none;
		height: auto;
		padding: 0;
		margin: 0 0 4px;
		border: 0;
		border-radius: 0;
		background: transparent;
	}
	.catalog__search-input{
		height: auto;
		/* правый отступ — под абсолютный крестик сброса адреса */
		padding: 10px 44px 10px 50px;
		border: 1px solid #e4e4e4;
		border-color: #e4e4e4;
		border-radius: 14px;
		font-size: 16px;
		color: #2e2f33;
		text-overflow: ellipsis;
	}
	.catalog__search-icon{
		position: absolute;
		top: 50%;
		left: 18px;
		width: 20px;
		height: 20px;
		transform: translateY(-50%);
	}
	/* Крестик сброса адреса — внутри поля справа (рамка на мобилке у самого инпута) */
	.catalog__search-clear{
		position: absolute;
		top: 50%;
		right: 14px;
		transform: translateY(-50%);
	}
	/* Радиус подсказок — как у мобильного поля */
	.catalog__suggest{
		border-radius: 14px;
	}

	.catalog__filters{
		order: 3;
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 4px;
		padding: 0;
	}
	.catalog__filters .catalog-filter{
		min-width: 0;
		max-width: none;
	}
	.catalog__filters .catalog-filter[data-filter="type"]{
		grid-column: 1;
		grid-row: 1;
	}
	.catalog__filters > .catalog__deposit-switch {
		grid-column: 1 / -1;
		grid-row: 3;
		justify-self: start;
		gap: 6px;
		min-width: 0;
		padding: 0;
		font-size: 14px;
	}
	.catalog__filters .catalog-filter[data-filter="size"]{
		grid-column: 2;
		grid-row: 1;
	}
	.catalog__filters .catalog-filter[data-filter="price"]{
		grid-column: 1;
		grid-row: 2;
	}
	.catalog__filters .catalog-filter[data-filter="metro"]{
		grid-column: 2;
		grid-row: 2;
	}
	.catalog__filters--no-metro .catalog-filter[data-filter="price"]{
		grid-column: 1 / -1;
	}
	.catalog__filters .catalog-filter__toggle{
		width: 100%;
		min-width: 0;
		height: auto;
		padding: 10px 18px;
		border-color: #e4e4e4;
		border-radius: 14px;
		font-size: 16px;
	}
	.catalog__filters .catalog-filter__toggle span{
		min-width: 0;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
	.catalog__filters .catalog-filter__toggle::after{
		flex-shrink: 0;
	}
	.catalog-filter__menu{
		z-index: 60;
	}
	.catalog-filter__menu--metro{
		left: auto;
		right: 0;
		width: calc(200% + 4px);
		max-width: calc(100vw - 24px);
		max-height: min(52vh, 380px);
	}
	.catalog-filter__metro-options{
		max-height: min(42vh, 300px);
	}
	.catalog__filters .catalog__reset{
		grid-column: 1 / -1;
		min-height: 36px;
		padding: 6px;
		color: #999;
		font-size: 15px;
		text-align: center;
	}
	.catalog__reset[hidden]{
		display: none;
	}
	.catalog .catalog__show-results{
		display: block;
		grid-column: 1 / -1;
		height: 64px;
		margin-top: 6px;
		border: 0;
		border-radius: 14px;
		background: var(--blue-middle, #54b8f0);
		color: #fff;
		font-size: 18px;
		font-weight: 400;
	}

	/* Превью карты на мобилке — статичная картинка (как макет), без живой карты */
	.catalog__map{
		order: 4;
		position: relative;
		height: 64px;
		min-height: 64px;
		margin-top: 14px;
		padding: 0;
		border-radius: 14px;
		overflow: hidden;
		background: url(/local/templates/prokladovki/assets/img/map_image.png) center / cover no-repeat;
	}
	/* В полосе живую карту прячем — она только для полноэкранного режима */
	.catalog__map-canvas{
		display: none;
	}
	/* Пилюля «Показать на карте» по центру превью */
	.catalog-map-stub__mobile{
		display: block;
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
		width: auto;
		z-index: 2;
		text-decoration: none;
	}
	.catalog-map-pill{
		display: inline-flex;
		align-items: center;
		gap: 8px;
		padding: 0 16px;
		height: 36px;
		background: #fff;
		border-radius: 12px;
		box-shadow: 0 4px 14px rgba(0, 0, 0, .15);
	}
	.catalog-map-pill__text{
		font-family: var(--font-primary);
		font-size: 14px;
		font-weight: 500;
		line-height: 140%;
		letter-spacing: -0.01em;
		color: var(--black-light);
	}
	.catalog__map-loader{
		inset: 0;
		gap: 8px;
		border-radius: 0;
		font-size: 12px;
		text-align: center;
	}
	.catalog__spinner{
		width: 22px;
		height: 22px;
	}

	/* Полноэкранная карта по тапу на пилюлю */
	.catalog__map.is-fullscreen{
		position: fixed;
		inset: 0;
		height: 100vh;
		min-height: 100vh;
		width: 100vw;
		margin: 0;
		border-radius: 0;
		z-index: 9999;
		background: #dfe7ef;
	}
	.catalog__map.is-fullscreen .catalog__map-canvas{
		display: block;
		inset: 0;
		border-radius: 0;
		/* свой контекст наложения — чтобы внутренние слои карты не перекрывали бар/шторку */
		z-index: 1;
	}
	.catalog__map.is-fullscreen .catalog-map-stub__mobile{
		display: none;
	}
	body.catalog-map-open{
		overflow: hidden;
	}

	/* Бар «Назад» / «Поиск» поверх полноэкранной карты — по умолчанию снизу */
	.catalog__map.is-fullscreen .catalog__map-bar{
		display: flex;
		align-items: center;
		justify-content: space-between;
		position: absolute;
		left: 14px;
		right: 14px;
		/* приподнят над нижними плашками (виджет чата) */
		bottom: calc(84px + env(safe-area-inset-bottom));
		z-index: 4;
	}
	/* При открытом фильтре «Назад» уходит наверх, «Поиск» прячется */
	.catalog__map.is-fullscreen.is-filters-open .catalog__map-bar{
		bottom: auto;
		top: 14px;
	}
	.catalog__map.is-fullscreen.is-filters-open .catalog__map-search{
		display: none;
	}
	.catalog__map-back,
	.catalog__map-search{
		display: inline-flex;
		align-items: center;
		gap: 8px;
		height: 40px;
		padding: 0 16px;
		border: 0;
		border-radius: 12px;
		background: #fff;
		color: var(--black-light);
		box-shadow: 0 2px 10px rgba(0, 0, 0, .15);
		cursor: pointer;
	}
	.catalog__map-back span,
	.catalog__map-search span{
		font-family: var(--font-primary);
		font-size: 15px;
		font-weight: 500;
		color: var(--black-light);
	}

	/* Шторка фильтра снизу */
	.catalog__map.is-fullscreen .catalog__map-sheet{
		display: block;
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 5;
		padding: 22px 18px calc(18px + env(safe-area-inset-bottom));
		background: #fff;
		border-radius: 20px 20px 0 0;
		box-shadow: 0 -6px 24px rgba(0, 0, 0, .15);
		transform: translateY(110%);
		transition: transform .3s ease;
	}
	.catalog__map.is-fullscreen.is-filters-open .catalog__map-sheet{
		transform: none;
	}
	.catalog__map-sheet-title{
		margin: 0 0 16px;
		font-family: var(--font-HelveticaNeue);
		font-size: 18px;
		font-weight: 700;
		line-height: 1.3;
		letter-spacing: -0.03em;
		color: var(--black-light);
	}
	.catalog__map-sheet-close{
		position: absolute;
		top: 18px;
		right: 16px;
		width: 24px;
		height: 24px;
		padding: 0;
		border: 0;
		background: transparent;
		color: var(--black-light);
		cursor: pointer;
	}
	/* Переехавшие в шторку поиск и фильтры */
	.catalog__map-sheet-body .catalog__search{
		order: 0;
		width: 100%;
		margin: 0 0 12px;
	}

	.catalog__list-head{
		order: 5;
		display: block;
		margin: 48px 0 18px;
	}
	.catalog__title{
		max-width: none;
		margin-bottom: 16px;
		font-family: var(--font-RobotoCondensed, "Roboto_Condensed", sans-serif);
		font-size: 30px;
		font-weight: 900;
		line-height: 100%;
		letter-spacing: -1px;
		text-transform: uppercase;
		vertical-align: middle;
	}
	.catalog-sort{
		width: 100%;
		max-width: 390px;
	}
	.catalog-sort .catalog-filter__toggle{
		height: auto;
		padding: 10px 18px;
		color: #2e2f33;
		font-size: 16px;
	}

	.catalog__list{
		order: 6;
		overflow: visible;
		min-height: auto;
		padding: 0;
	}
	.catalog__cards{
		gap: 10px;
	}
	.catalog-card{
		display: flex;
		flex-direction: column;
		min-height: 0;
		border: 0;
		border-radius: 0;
		overflow: visible;
	}
	.catalog-card:hover{
		box-shadow: none;
	}
	.catalog-card__media{
		height: 160px;
		border-radius: 8px;
		overflow: hidden;
	}
	.catalog-card__fav{
		top: 10px;
		right: 10px;
		bottom: auto;
		left: auto;
		width: 38px;
		height: 38px;
		padding: 8px;
		border: 0;
		border-radius: 8px;
		background: #fff;
	}
	.catalog-card__body{
		padding: 10px 0 18px;
		gap: 5px;
	}
	.catalog-card__title{
		font-size: 18px;
		line-height: 1.15;
		display: block;
		-webkit-line-clamp: none;
		overflow: visible;
	}
	.catalog-card__distance{
		margin-bottom: 2px;
		font-size: 12px;
	}
	.catalog-card__row{
		min-height: 32px;
		padding-top: 6px;
		font-size: 14px;
	}
	.catalog-card__size{
		gap: 38px;
	}
	.catalog-card__features{
		gap: 5px;
	}
	.catalog-card__chip{
		padding: 4px 9px;
		font-size: 12px;
		line-height: 1;
	}
	.catalog-card__footer{
		gap: 14px;
		margin-top: 7px;
	}
	.catalog-card__more{
		display: inline-flex;
		align-items: center;
		justify-content: center;
		padding: 10px 16px;
		border-radius: 7px;
		font-size: 14px;
		text-align: center;
	}
	.catalog-card__variants{
		font-size: 12px;
	}
	.catalog-card--skeleton .catalog-card__media{
		height: 160px;
	}

	.catalog-pick-banner{
		grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
		/* Горизонтальный ассет не должен растягиваться до высоты мобильной карточки. */
		height: clamp(220px, 50vw, 280px);
		min-height: clamp(220px, 50vw, 280px);
		border-radius: 8px;
	}
	.catalog-pick-banner__content{
		padding: 16px 14px;
	}
	.catalog-pick-banner__title{
		font-size: clamp(22px, 6.1vw, 28px);
		line-height: .94;
	}
	.catalog-pick-banner__cta{
		padding: 8px 10px;
		border-radius: 7px;
		font-size: 13px;
	}
	.catalog-pick-banner__visual{
		background-size: auto 100%;
	}

	/* Кнопка «Показать еще» — мобилка */
	.catalog__more{
		margin-top: 22px;
	}

	/* Футер показываем только на мобилке */
	body:has(#js-catalog) .footer{
		display: block;
	}
}

/* Планшет: справа мало места для заголовка и сортировки в одну строку. */
@media (min-width: 768px) and (max-width: 959.98px){
	.catalog__list-head{
		align-items: flex-start;
		flex-direction: column;
		gap: 10px;
	}
	.catalog-sort{
		width: 100%;
		max-width: 100%;
		flex-basis: auto;
	}
}

@media (min-width: 768px){
	.catalog-card{
		min-height: var(--catalog-card-height, 180px);
		font-size: var(--catalog-card-font-size, 16px);
		/* фото и текст делим флексом, а не жёсткой сеткой: колонка фото задана в em и растёт вместе
		   с масштабом карточки, поэтому при нехватке ширины ужимаем её, а не режем текст */
		display: flex;
	}
	.catalog-card__media{
		flex: 0 1 18.75em;
		min-width: 8em;
	}
	.catalog-card__body{
		flex-grow: 1;
		/* ужимаем в первую очередь тело (заголовок переносится), фото — только когда телу уже некуда */
		flex-shrink: 100;
		flex-basis: auto;
		/* на планшетной ширине тело должно ужиматься вместе с карточкой, а не расширять страницу */
		min-width: 0;
		padding-top: var(--catalog-card-body-pt, 8px);
		padding-bottom: var(--catalog-card-body-pb, 8px);
		display: grid;
		grid-template-areas:
			"title"
			"distance"
			"price"
			"size"
			"features"
			"."
			"footer";
		/* строки по содержимому, спейсер 1fr прижимает кнопку вниз когда контента мало; карточка растёт при избытке */
		grid-template-rows: auto 0 auto auto auto 1fr auto;
		gap: 0;
		overflow: hidden;
	}
	.catalog-card__body:has(.catalog-card__distance){
		grid-template-rows: auto auto auto auto auto 1fr auto;
	}
	.catalog-card__title{
		grid-area: title;
		min-height: 0;
		margin-bottom: var(--catalog-card-title-mb, 2px);
	}
	/* без метро держим 8px отступ от заголовка до цены */
	.catalog-card__body:not(:has(.catalog-card__distance)) .catalog-card__title{
		margin-bottom: var(--catalog-card-row-gap, 8px);
	}
	.catalog-card__distance{
		grid-area: distance;
		min-height: 0;
		align-self: start;
		margin-bottom: var(--catalog-card-distance-mb, 18px);
	}
	.catalog-card__row_price{
		grid-area: price;
	}
	.catalog-card__row_size{
		grid-area: size;
	}
	.catalog-card__row_features{
		grid-area: features;
	}
	.catalog-card__row{
		min-height: 0;
		padding-top: 0;
		align-self: stretch;
	}
	.catalog-card__row_size,
	.catalog-card__row_features{
		border-top: 1px solid #f0f0f0;
		padding-top: var(--catalog-card-row-gap, 8px);
	}
	.catalog-card__footer{
		grid-area: footer;
		min-height: 0;
		margin-top: var(--catalog-card-footer-mt, 3px);
	}
	.catalog-card .catalog-card__more{
		padding: var(--catalog-card-button-py, 8px) var(--catalog-card-button-px, 16px);
	}
	/* строки карточки не переносим: их полная ширина и есть min-content тела, по нему флекс делит место */
	.catalog-card__row-label,
	.catalog-card__row-value,
	.catalog-card__chip,
	.catalog-card .catalog-card__more,
	.catalog-card__variants{
		white-space: nowrap;
	}
}

/* Единый шрифт текста фильтров — десктоп и мобилка (токен HelveticaNeue из типографики) */
.catalog .catalog-filter__toggle,
.catalog .catalog-filter__menu li,
.catalog .catalog__search-input,
.catalog .catalog__reset{
	font-family: "Helvetica Neue", var(--font-HelveticaNeue), Arial, sans-serif;
	font-size: var(--catalog-control-font-size, 16px);
	font-weight: 300;
	line-height: 1.3;
	letter-spacing: 0;
}

/* На странице России карта и список прокручиваются вместе. */
/* На витринах партнёров Россия - главная, поэтому оставляем раскладку городского каталога */
@media (min-width: 768px){
	body:has(#js-catalog[data-city="rossiya"]:not([data-white-label="Y"])){
		height: auto;
		min-height: 100vh;
		overflow: visible;
		display: block;
	}
	body:has(#js-catalog[data-city="rossiya"]:not([data-white-label="Y"])) .page__wrapper{
		min-height: 0;
		display: block;
	}
	body:has(#js-catalog[data-city="rossiya"]:not([data-white-label="Y"])) .catalog{
		min-height: 0;
		align-items: start;
	}
	body:has(#js-catalog[data-city="rossiya"]:not([data-white-label="Y"])) .catalog__map{
		flex: 0 0 auto;
		height: clamp(520px, calc(100vh - 160px), 760px);
	}
	body:has(#js-catalog[data-city="rossiya"]:not([data-white-label="Y"])) .catalog__list{
		overflow: visible;
		padding-bottom: 32px;
	}
}

/* End */


/* Start:/local/templates/prokladovki/includs/map/map.css?17864414469275*/
/* Общий слой карты новой версии (метки, инлайн-карточка, маркер «Вы»).
   Вёрстка контейнера/высоты карты — на стороне страницы, тут только сами объекты карты. */

.pk-map-marker {
	transform: translate(-50%, -100%);
	cursor: pointer;
	white-space: nowrap;
}

.pk-map-marker__price {
	display: inline-block;
	padding: 4px 6px;
	/* Полупрозрачный #54B8F0 по макету. Без backdrop-filter: размытие живого канваса карты
	   пересчитывается на каждый кадр для каждой метки и роняет FPS при пане/зуме */
	background: rgba(84, 184, 240, .8);
	color: #fff;
	font-family: var(--font-HelveticaNeue);
	font-size: 14px;
	font-weight: 400;
	line-height: 140%;
	border-radius: 10px;
	box-shadow: 0 2px 6px rgba(0, 0, 0, .25);
}

/* Хвостик плашки вниз к точке — треугольником, чтобы полупрозрачный фон не накладывался на плашку */
.pk-map-marker__price::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -5px;
	width: 12px;
	height: 5px;
	background: rgba(84, 184, 240, .8);
	transform: translateX(-50%);
	clip-path: polygon(0 0, 100% 0, 50% 100%);
}

.pk-map-marker:hover {
	z-index: 5;
}

/* Кластер каталога: тёмная плашка из desktop/mobile-макетов.
   Острие привязывает плашку к координате, а увеличенная невидимая зона помогает попасть пальцем. */
.pk-map-cluster {
	position: relative;
	transform: translate(-50%, -100%);
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 3px 9px 3px 3px;
	background: #2e2f33;
	border-radius: 8px;
	box-shadow: 0 2px 6px rgba(0, 0, 0, .24);
	color: #fff;
	font-family: var(--font-HelveticaNeue);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.2;
	white-space: nowrap;
	cursor: pointer;
	user-select: none;
	transition: transform .16s ease, background-color .16s ease, box-shadow .16s ease;
	animation: pk-map-cluster-in .18s ease-out both;
}

.pk-map-cluster::before {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -7px;
	width: 14px;
	height: 8px;
	background: #2e2f33;
	transform: translateX(-50%);
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	transition: background-color .16s ease;
}

/* Невидимая зона не меняет макет, но даёт минимум 44px для тапа. */
.pk-map-cluster::after {
	content: "";
	position: absolute;
	inset: -7px -4px -10px;
}

.pk-map-cluster__count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 24px;
	height: 24px;
	padding: 0 4px;
	background: #f7f7f8;
	border-radius: 7px;
	color: #2e2f33;
	font-weight: 700;
}

.pk-map-cluster__price {
	padding-left: 6px;
	color: #fff;
	font-weight: 400;
	line-height: 1.2;
}

.pk-map-cluster:hover,
.pk-map-cluster:focus-visible {
	background: #202125;
	box-shadow: 0 4px 12px rgba(0, 0, 0, .3);
	outline: 2px solid rgba(255, 255, 255, .95);
	outline-offset: 2px;
}

.pk-map-cluster:hover::before,
.pk-map-cluster:focus-visible::before,
.pk-map-cluster.is-active::before {
	background: #202125;
}

.pk-map-cluster:hover,
.pk-map-cluster.is-active {
	transform: translate(-50%, -100%) scale(1.04);
}

/* Одиночная точка — ценник без ложного счётчика «1». */
.pk-map-cluster--single {
	padding-left: 9px;
}

@keyframes pk-map-cluster-in {
	from { opacity: 0; transform: translate(-50%, calc(-100% + 4px)) scale(.96); }
	to { opacity: 1; transform: translate(-50%, -100%) scale(1); }
}

.pk-map-cluster-list-wrap {
	transform: translate(-50%, -100%);
	padding-bottom: 16px;
}

.pk-map-cluster-list {
	position: relative;
	width: min(340px, 84vw);
	max-height: min(390px, 70vh);
	padding: 18px 8px 8px;
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 6px 24px rgba(0, 0, 0, .2);
	font-family: var(--font-HelveticaNeue);
	overflow: hidden;
}

.pk-map-cluster-list__title {
	padding: 0 34px 10px 8px;
	color: var(--black-light);
	font-size: 16px;
	font-weight: 700;
}

.pk-map-cluster-list__items {
	max-height: min(320px, 58vh);
	overflow-y: auto;
	overscroll-behavior: contain;
}

.pk-map-cluster-list__item {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	padding: 10px 8px;
	border-radius: 10px;
	color: var(--black-light);
	text-decoration: none;
}

.pk-map-cluster-list__item:hover,
.pk-map-cluster-list__item:focus-visible {
	background: rgba(84, 184, 240, .12);
}

.pk-map-cluster-list__address {
	min-width: 0;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.3;
}

.pk-map-cluster-list__price {
	flex: 0 0 auto;
	color: #279fdf;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.3;
}

.pk-map-cluster-list__close {
	position: absolute;
	top: 8px;
	right: 8px;
	width: 40px;
	height: 40px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--gray-middle);
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
}

@media (max-width: 767.98px) {
	.pk-map-cluster {
		min-height: 40px;
		padding: 4px 10px 4px 4px;
		border-radius: 10px;
		font-size: 17px;
	}

	.pk-map-cluster__count {
		min-width: 32px;
		height: 32px;
		padding: 0 5px;
		border-radius: 9px;
		font-size: 16px;
	}

	.pk-map-cluster__price {
		padding-left: 8px;
	}

	.pk-map-cluster--single {
		padding-left: 10px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.pk-map-cluster {
		animation: none;
		transition: none;
	}
}

.pk-map-pin {
	position: relative;
	transform: translate(-50%, -100%);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	background: #2e2f33;
	border-radius: 50%;
	box-shadow: 0 3px 10px rgba(0, 0, 0, .3);
}

/* Острие пина */
.pk-map-pin::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -6px;
	z-index: -1;
	width: 18px;
	height: 18px;
	background: #2e2f33;
	transform: translateX(-50%) rotate(45deg);
	border-radius: 0 0 4px 0;
}

.pk-map-pin__icon {
	display: block;
	width: 20px;
	height: 31px;
}

.pk-map-user {
	transform: translate(-50%, -100%);
}

.pk-map-user__label {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	background: #ef7d4e;
	color: #fff;
	font-family: var(--font-HelveticaNeue);
	font-size: 16px;
	font-weight: 300;
	line-height: 1;
	border-radius: 50%;
	box-shadow: 0 2px 8px rgba(0, 0, 0, .25);
}

.pk-map-user__label::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -4px;
	z-index: -1;
	width: 16px;
	height: 16px;
	background: #ef7d4e;
	transform: translateX(-50%) rotate(45deg);
	border-radius: 0 0 3px 0;
}

/* Акцентный пин выбранного в поиске адреса */
.pk-map-selected {
	transform: translate(-50%, -100%);
	white-space: nowrap;
}

.pk-map-selected__label {
	position: relative;
	display: inline-block;
	padding: 4px 10px;
	background: #ef7d4e;
	color: #fff;
	font-family: var(--font-HelveticaNeue);
	font-size: 14px;
	font-weight: 400;
	line-height: 140%;
	border-radius: 10px;
	box-shadow: 0 2px 6px rgba(0, 0, 0, .25);
}

.pk-map-selected__label::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -4px;
	z-index: -1;
	width: 8px;
	height: 8px;
	background: #ef7d4e;
	transform: translateX(-50%) rotate(45deg);
	border-radius: 1px;
}

.pk-map-card-wrap {
	transform: translate(-50%, -100%);
	padding-bottom: 16px;
}

.pk-map-card {
	position: relative;
	display: flex;
	align-items: stretch;
	width: 23em;
	max-width: 80vw;
	background: #fff;
	border-radius: 1em;
	overflow: hidden;
	box-shadow: 0 0.4em 1.6em rgba(0, 0, 0, .18);
	cursor: pointer;
	font-family: var(--font-HelveticaNeue);
	font-size: clamp(13px, 1.6vh, 16px);
	opacity: 0;
	transform: translateY(0.4em) scale(0.96);
	transform-origin: bottom center;
	transition: opacity .45s ease, transform .45s ease;
}

/* Плавное появление карточки */
.pk-map-card.is-open {
	opacity: 1;
	transform: none;
}

.pk-map-card__img {
	flex: 0 0 8.5em;
	align-self: stretch;
	min-height: 6.3em;
}

.pk-map-card__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.pk-map-card__body {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 0.7em;
	padding: 0.9em 2.2em 0.9em 1.1em;
}

.pk-map-card__addr {
	font-family: var(--font-HelveticaNeue);
	font-size: 1em;
	font-weight: 700;
	line-height: 1.3;
	color: var(--black-light);
}

.pk-map-card__price {
	align-self: flex-start;
	padding: 0.5em 0.9em;
	background: var(--black-light);
	color: #fff;
	font-family: var(--font-primary);
	font-size: 0.875em;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: -0.01em;
	text-align: center;
	border-radius: 0.6em;
	text-decoration: none;
}

.pk-map-card__close {
	position: absolute;
	top: 0.5em;
	right: 0.6em;
	width: 1.4em;
	height: 1.4em;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--gray-middle);
	font-size: 1.2em;
	line-height: 1;
	cursor: pointer;
}

.pk-map-card__close:hover {
	color: var(--black-light);
}

/* End */
/* /local/components/prokladovki/detail.catalog.test/templates/.default/style.css?179206220727285 */
/* /local/templates/prokladovki/includs/box-card/card.css?179163442134118 */
/* /local/components/prokladovki/catalog.test/templates/.default/style.css?179069597942685 */
/* /local/templates/prokladovki/includs/map/map.css?17864414469275 */
