/* Страница детальной (новая версия): шапка секций, фильтр, отзывы, описание, карта.
   Вёрстка самой карточки ячейки и блока брони — в общем 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 {
	margin: 24px auto 0 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__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;
}

/* ниже 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;
	}
}
