

/* Start:/bitrix/components/sprint.editor/blocks/templates/.default/_style.css?17739928463514*/
/* Общие стили для блоков */
.sp-block-table table {
    width: 100%;
    border-collapse: collapse;
}

.sp-block-table table tr {
    background: #f7f7f7;
    color: #8a8a8a;
}

.sp-block-table table tr:nth-child(odd) {
    background: #e7e6e6;
}

.sp-block-table table tr:hover {
    background: #d4d4d4;
    color: #000;
}

.sp-block-table table td {
    text-align: left;
    border: 1px solid #ccc;
    padding: 5px;
}

.sp-block-table p {
    margin: 0;
}

.sp-image img {
    width: 100%;
}

.sp-video iframe,
.sp-video-gallery iframe {
    border-width: 0;
}

.sp-iblock-sections {
    padding: 10px;
    border: 1px solid #c3c3c3;
    margin: 10px 0;
}

.sp-iblock-elements {
    padding: 10px;
    border: 1px solid #c3c3c3;
    margin: 10px 0;
}

.sp-properties {
    width: 400px;
    border-collapse: collapse;
}

.sp-properties_title {
    border: 1px solid #ccc;
    padding: 0 5px;
    font-weight: bold;
}

.sp-properties_text {
    border: 1px solid #ccc;
    padding: 0 5px;
}

.sp-gallery-items {
    overflow: hidden;
}

.sp-gallery-item {
    float: left;
    height: 220px;
    padding: 5px;
    /*width: 20%;*/
}

.sp-gallery-item-img-wrapper {
    float: left;
    height: 100%;
    overflow: hidden;
    position: relative;
    width: 100%;
    display: block;
    color: inherit;
}

.sp-gallery-item img {
    display: block;
    max-width: 100%;
    left: 50%;
    max-height: 100%;
    max-width: none;
    position: relative;
    top: 50%;
    -webkit-transform: translate(-50%, -50%) translateZ(0);
    -moz-transform: translate(-50%, -50%) translateZ(0);
    -o-transform: translate(-50%, -50%) translateZ(0);
    -ms-transform: translate(-50%, -50%) translateZ(0);
    transform: translate(-50%, -50%) translateZ(0);
}

.sp-gallery-item-text {
    background-color: rgba(255, 255, 255, .7);
    cursor: pointer;
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    text-align: center;
    top: 0;
    -webkit-transition: all .2s linear;
    -moz-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
    width: 100%;
}

.sp-gallery-item-text:hover {
    opacity: 1;
}

.sp-gallery-item-text::after {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}

.sp-gallery-item-text-content {
    display: inline-block;
    vertical-align: middle;
    width: 90%;
}

.sp-button_link,
.sp-button_link:link,
.sp-button_link:visited {
    display: inline-block;
    padding: 10px 20px;
    margin: 10px 0;
    border-radius: 20px;
    text-decoration: none;
    background: #ccc;
    color: #333;
}

.sp-button_link:hover {
    text-decoration: none;
    background: #333;
    color: #ccc;
}

/*accordion*/
.sp-accordion {
    border: 1px solid #ccc;
    border-radius: 5px;
}

.sp-accordion-title {
    border-top: 1px solid #ccc;
    color: #444;
    cursor: pointer;
    padding: 10px;
    text-align: left;
}

.sp-accordion-title:first-child {
    border-top: none;
}

.sp-accordion-container {
    padding: 0 10px 10px;
    display: none;
    overflow: hidden;
}

.sp-accordion-title:after {
    content: '\02795';
    font-size: 12px;
    color: #777;
    float: right;
    margin: 2px 5px;
}

.sp-accordion-title__active:after {
    content: "\2796";
}

.sp-complex-table {
    display: table;
    table-layout: fixed;
    border-spacing: 10px;
}

.sp-complex-row {
    display: table-row;
}

.sp-complex-col {
    display: table-cell;
    vertical-align: top;
}

/* End */


/* Start:/local/templates/default/components/bitrix/catalog/preorders/style.css?1793622682214296*/
/* ==============================================
   SHOP PAGE — Catalog template styles
   ============================================== */

.shopPage {
	padding-top: 0;
	padding-bottom: 80px;
}

/* Лишний padding у крошек убран: он был БЕЗ скоупа и только на странице предзаказов делал крошки
   выше (40px вместо 20px) и опускал заголовок — из-за этого отступы отличались от каталога/events.
   Теперь как на других страницах (глобальный .bx-breadcrumb без вертикального padding). */

.shopPage__title {
	font-size: 32px;
	font-weight: 700;
	color: #0A0A0A;
	margin: 0 0 28px;
	line-height: 1.2;
}

/* --- Two-column layout: sidebar + content --- */

.shopPage__layout {
	display: grid;
	grid-template-columns: 256px 1fr;
	align-items: start;
	gap: 20px;
}

/* --- Sidebar --- */

.shopPage__sidebar {
	position: sticky;
	top: 100px;
}

.shopPage__sidebar-nav {
	display: flex;
	flex-direction: column;
	border-radius: 20px;
	background: #F7F7F7;
	padding: 20px;
}

.shopPage__sidebar-link {
	display: block;
	padding: 5px 0;
	font-size: 15px;
	color: #0A0A0A;
	text-decoration: none;
	line-height: 1.5;
	transition: opacity 0.15s;
}

.shopPage__sidebar-link:hover {
	opacity: 0.55;
}

.shopPage__sidebar-link--all {
	font-weight: 600;
	margin-bottom: 6px;
}

.shopPage__sidebar-link--active {
	font-weight: 600;
}

.shopPage__sidebar-sub {
	padding-left: 12px;
	display: flex;
	flex-direction: column;
}

.shopPage__sidebar-link--sub {
	font-size: 15px;
	color: #0A0A0A;
	padding: 3px 0;
}

.shopPage__sidebar-divider {
	height: 1px;
	background: #e8e8e8;
	margin: 10px 0;
}

/* --- Main content area --- */

.shopPage__content {
	min-width: 0;
}

/* --- Filter / sort row --- */

.shopPage__filters {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-bottom: 24px;
}

.shopPage__filter-chip {
	display: inline-flex;
	align-items: center;
	gap: 0;
	background: #0A0A0A;
	color: #fff;
	padding: 0;
	border-radius: 100px;
	font-size: 13px;
	font-weight: 500;
	white-space: nowrap;
	border: none;
	overflow: hidden;
	cursor: default;
}

.shopPage__filter-chip > span:first-child {
	padding: 5px 10px 5px 14px;
}

.shopPage__filter-chip__close {
	display: flex;
	align-items: center;
	justify-content: center;
	background: none;
	border: none;
	border-left: 1px solid rgba(255, 255, 255, 0.16);
	color: rgba(255, 255, 255, 0.7);
	cursor: pointer;
	padding: 5px 10px;
	font-size: 15px;
	line-height: 1;
	font-family: inherit;
	transition: color 0.12s, background 0.12s;
}

.shopPage__filter-chip__close:hover {
	color: #fff;
	background: rgba(255, 255, 255, 0.08);
}

.shopPage__filter-btn {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 5px 30px 5px 14px;
	border: 1px solid transparent;
	border-radius: 100px;
	background-color: #f2f2f2;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6' fill='none'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%230A0A0A' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 12px center;
	background-size: 10px 6px;
	font-size: 13px;
	color: #0A0A0A;
	cursor: pointer;
	white-space: nowrap;
	font-family: inherit;
	transition: border-color 0.15s;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	height: 34px;
	line-height: 1.2;
	min-width: 120px;
}

.shopPage__filter-btn:hover {
	border-color: #d0d0d0;
}

.shopPage__filter-dropdown.is-active .shopPage__filter-btn {
	background-color: #0A0A0A;
	border-color: #0A0A0A;
	color: #fff;
	background-image: none;
	padding-right: 14px;
	min-width: 1px !important;
}

.shopPage__filter-btn {
	justify-content: flex-start;
	gap: 4px;
}

.shopPage__filter-btn-chip {
	display: inline-flex;
	align-items: center;
	background: #0A0A0A;
	color: #fff;
	border-radius: 999px;
	margin-left: 2px;
	overflow: hidden;
	max-width: 100%;
}

.shopPage__filter-btn-chip [data-filter-chip-text] {
	padding: 3px 6px 3px 8px;
	line-height: 1.1;
}

.shopPage__filter-btn-chip-close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 3px 6px;
	border-left: 1px solid rgba(255, 255, 255, 0.16);
	color: rgba(255, 255, 255, 0.85);
	cursor: pointer;
	line-height: 1.1;
}

.shopPage__filter-btn-chip-close:hover {
	color: #fff;
	background: rgba(255, 255, 255, 0.08);
}

.shopPage__filter-btn-label[hidden],
.shopPage__filter-btn-chip[hidden] {
	display: none !important;
}

.shopPage__filter-btn svg,
.shopPage__filters-sort svg {
	flex-shrink: 0;
}

.shopPage__filters-sort {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 5px 30px 5px 14px;
	background-color: #f2f2f2;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6' fill='none'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%230A0A0A' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 12px center;
	background-size: 10px 6px;
	border: 1px solid transparent;
	border-radius: 100px;
	font-size: 13px;
	color: #0A0A0A;
	cursor: pointer;
	margin-left: auto;
	font-family: inherit;
	transition: border-color 0.15s;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	height: 34px;
	line-height: 1.2;
	min-width: 128px;
}

.shopPage__filters-sort:hover {
	border-color: #d0d0d0;
}

.shopPage__sort.is-open .shopPage__filters-sort {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6' fill='none'%3E%3Cpath d='M9 5L5 1 1 5' stroke='%230A0A0A' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Remove native browser focus rings for custom-styled buttons */
.shopPage__filters .shopPage__filter-btn:focus,
.shopPage__filters .shopPage__filters-sort:focus,
.shopPage__filters .shopPage__filter-btn:focus-visible,
.shopPage__filters .shopPage__filters-sort:focus-visible {
	outline: none !important;
	box-shadow: none !important;
	border-color: #d0d0d0 !important;
}

/* --- Custom filter dropdown (Component 57) --- */

.shopPage__filter-dropdown {
	position: relative;
}

.shopPage__price-range {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 4px 2px 2px;
	background: transparent;
	border-radius: 0;
	min-width: 240px;
}

.shopPage__price-range-title {
	font-size: 13px;
	color: #0A0A0A;
}

.shopPage__price-range-values {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	font-size: 12px;
	color: #626262;
	/* Совпадает с отступом слайдера: центр «точки» совпадает с краями дорожки */
	padding: 0 9px;
}

.shopPage__price-range-field {
	display: flex;
	align-items: center;
	gap: 4px;
}

.shopPage__price-range-input {
	width: 72px;
	padding: 4px 6px;
	font-size: 13px;
	font-weight: 500;
	color: #0a0a0a;
	border: 1px solid #d0d0d0;
	border-radius: 8px;
	background: #fff;
	-moz-appearance: textfield;
}

.shopPage__price-range-input::-webkit-outer-spin-button,
.shopPage__price-range-input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.shopPage__price-range-input:focus {
	outline: none;
	border-color: #2ec77f;
	box-shadow: 0 0 0 2px rgba(46, 199, 127, 0.2);
}

.shopPage__price-range-suffix {
	font-size: 13px;
	font-weight: 500;
	color: #626262;
	user-select: none;
}

.shopPage__price-range-sliders {
	position: relative;
	height: 22px;
	overflow: visible;
	isolation: isolate;
	padding: 0 9px;
	box-sizing: border-box;
}

.shopPage__price-range-sliders::before {
	content: "";
	position: absolute;
	left: 9px;
	right: 9px;
	top: 50%;
	transform: translateY(-50%);
	height: 4px;
	background: #d7d7d7;
	border-radius: 999px;
	z-index: 1;
}

.shopPage__filter-dropdown--price .shopPage__filter-menu {
	min-width: 260px;
}

.shopPage__price-range input[type="range"] {
	position: absolute;
	left: 9px;
	top: 50%;
	transform: translateY(-50%);
	width: calc(100% - 18px);
	height: 14px;
	appearance: none;
	background: transparent;
	pointer-events: none;
	z-index: 2;
}

.shopPage__price-range [data-price-min-range] {
	z-index: 4;
}

.shopPage__price-range [data-price-max-range] {
	z-index: 3;
}

.shopPage__price-range input[type="range"]::-webkit-slider-runnable-track {
	height: 4px;
	background: transparent;
	border-radius: 999px;
}

.shopPage__price-range input[type="range"]::-moz-range-track {
	height: 4px;
	background: transparent;
	border-radius: 999px;
}

.shopPage__price-range input[type="range"]::-moz-range-progress {
	height: 4px;
	background: transparent;
	border-radius: 999px;
}

.shopPage__price-range input[type="range"]::-webkit-slider-thumb {
	appearance: none;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	margin-top: -5px;
	background: #2EC77F;
	border: 2px solid #fff;
	box-shadow: 0 1px 4px rgba(0,0,0,.2);
	pointer-events: auto;
	cursor: pointer;
}

.shopPage__price-range input[type="range"]::-moz-range-thumb {
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: #2ec77f;
	border: 2px solid #fff;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
	cursor: pointer;
}

.shopPage__filter-menu {
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	min-width: 200px;
	background: #f2f2f2;
	border-radius: 14px;
	padding: 6px;
	z-index: 25;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.10);
}

.shopPage__filter-menu[hidden] {
	display: none !important;
}

.shopPage__filter-option {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	padding: 9px 12px;
	border: none;
	background: transparent;
	border-radius: 10px;
	font-size: 14px;
	color: #222;
	cursor: pointer;
	text-align: left;
	font-family: inherit;
	transition: background 0.12s;
}

.shopPage__filter-option:hover {
	background: #fff;
}

.shopPage__filter-option.is-selected {
	background: #e9e9e9;
}

.shopPage__filter-option.is-selected:hover {
	background: #e9e9e9;
}

.shopPage__filter-radio {
	width: 22px;
	height: 22px;
	border-radius: 50%;
	border: 1px solid #dcdcdc;
	flex-shrink: 0;
	background: #f7f7f7;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
	transition: box-shadow 0.12s, border-color 0.12s;
	position: relative;
}

.shopPage__filter-option:hover .shopPage__filter-radio {
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.16);
}

.shopPage__filter-option.is-selected .shopPage__filter-radio {
	border-color: #d8d8d8;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.12);
}

.shopPage__filter-option.is-selected .shopPage__filter-radio::after {
	content: '';
	position: absolute;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #0A0A0A;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}

.shopPage__filter-dropdown.is-open .shopPage__filter-btn {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6' fill='none'%3E%3Cpath d='M9 5L5 1 1 5' stroke='%230A0A0A' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	border-color: #d0d0d0;
}

.shopPage__sort {
	position: relative;
	margin-left: auto;
}

.shopPage__sort-menu {
	position: absolute;
	right: 0;
	top: calc(100% + 8px);
	min-width: 190px;
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
	padding: 8px;
	z-index: 20;
}

.shopPage__sort-menu[hidden] {
	display: none !important;
}

.shopPage__sort-menu:not([hidden]) {
	display: block;
}

.shopPage__sort-item {
	width: 100%;
	display: flex;
	align-items: center;
	gap: 10px;
	border: none;
	background: transparent;
	padding: 10px 12px;
	border-radius: 10px;
	font-size: 16px;
	color: #222;
	cursor: pointer;
	text-align: left;
}

.shopPage__sort-item:hover {
	background: #f5f5f5;
}

.shopPage__sort-item.is-active {
	display: none;
}

.shopPage__sort-icon {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	display: block;
}

.shopPage__sort-btn-icons {
	display: inline-flex;
	align-items: center;
	flex-shrink: 0;
}

.shopPage__sort-btn-icon {
	display: inline-flex;
	align-items: center;
}

.shopPage__sort-btn-icon.is-hidden {
	display: none;
}


/* --- Product Grid --- */

.shopPage__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.shopPage__grid-sliderRow {
	grid-column: 1 / -1;
}

.shopPage__sectionSlider--beforeFilters {
	margin-bottom: 24px;
}

.shopPage__sectionSlider--afterSix {
	margin: 4px 0 20px;
}

.shopPage__sectionSlider--afterFilter {
	margin: 0 0 24px;
}

.shopPage__sectionSlider--afterProducts {
	margin: 32px 0 0;
}

/* myMainSlider в каталоге: без min-height 540px главной; Slick adaptiveHeight */
.shopPage .myMainSlider__sliderWrap {
	position: relative;
	overflow: visible;
}

.shopPage .myMainSlider .container {
	overflow: visible;
}

.shopPage .shopPage__sectionSlider--beforeFilters,
.shopPage .shopPage__sectionSlider--afterFilter,
.shopPage .shopPage__sectionSlider--afterSix,
.shopPage .shopPage__sectionSlider--afterProducts {
	overflow: visible;
}

.shopPage .myMainSlider {
	overflow: visible;
	padding-top: 0;
}

.shopPage .myMainSlider.myMainSlider--shopBranch20 {
	padding-top: 0;
}

.shopPage .myMainSlider.myMainSlider--shopBranch20 .slick-prev {
	display: none !important;
}

.shopPage .myMainSlider__slider .slick-list,
.shopPage .myMainSlider__slider .slick-track {
	height: auto !important;
}

.shopPage .myMainSlider__slide {
	height: auto;
}

.shopPage .myMainSlider__item {
	display: block;
	min-height: 0;
	position: relative;
	overflow: hidden;
	border-radius: 40px;
}

/* Ветка 20: фиксированная высота баннера 340px, только «вперёд» в JS */
.shopPage .myMainSlider--shopBranch20 .myMainSlider__image {
	position: relative;
	inset: auto;
	width: 100%;
	height: 340px;
	min-height: 340px;
	max-height: 340px;
	aspect-ratio: auto;
}

/* Название раздела внутри .myMainSlider__item (ветка 20) */
.shopPage .myMainSlider--shopBranch20 .myMainSlider__content--shopSeries {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-end;
	pointer-events: none;
}

.shopPage .myMainSlider--shopBranch20 .myMainSlider__content--shopSeries .myMainSlider__seriesTitle {
	margin: 0;
	padding: 0;
	max-width: min(920px, 88%);
	color: var(--Secondary-White, #fff);
	font-family: RAYDIS, sans-serif;
	font-size: 48px;
	font-style: normal;
	font-weight: 700;
	line-height: 110%;
}

.shopPage .myMainSlider--shopBranch20 .myMainSlider__nav--forwardOnly {
	justify-content: flex-end;
	padding-right: 20px;
}

/* Ветка 20: на последнем слайде стрелку «вперёд» скрывает JS (класс myMainSlider__arrow--hidden; Slick может перенести кнопку внутрь .myMainSlider__slider) */
.shopPage .myMainSlider--shopBranch20 .myMainSlider__arrow--next.myMainSlider__arrow--hidden {
	display: none !important;
}

/* Остальные разделы каталога: минимум 380px по высоте медиаблока */
.shopPage .myMainSlider:not(.myMainSlider--shopBranch20) .myMainSlider__image {
	position: relative;
	inset: auto;
	width: 100%;
	min-height: 380px;
	aspect-ratio: 1200 / 380;
}

.shopPage .myMainSlider__image img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.shopPage .myMainSlider__content {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	min-height: 0;
	padding: clamp(16px, 3vw, 36px) clamp(16px, 5vw, 64px);
}

.shopPage .myMainSlider__title {
	font-size: clamp(28px, 5vw, 48px);
}

/* Слайд только с текстом (без блока картинки): не схлопывать высоту */
.shopPage .myMainSlider:not(.myMainSlider--shopBranch20) .myMainSlider__item:not(:has(.myMainSlider__image)) {
	min-height: 380px;
}

.shopPage .myMainSlider--shopBranch20 .myMainSlider__item:not(:has(.myMainSlider__image)) {
	min-height: 340px;
}

.shopPage .myMainSlider__item:not(:has(.myMainSlider__image)) .myMainSlider__content {
	position: relative;
	inset: auto;
	min-height: 100%;
}

/* Слайдер вне ветки 20: CTA без заливки, белый текст, 24px от правого и нижнего края слайда */
.shopPage .myMainSlider--shopOther .myMainSlider__action {
	position: absolute;
	right: 24px;
	bottom: 24px;
	margin: 0;
	z-index: 2;
}

.shopPage .myMainSlider--shopOther .myMainSlider__button {
	background: transparent !important;
	box-shadow: none !important;
	color: var(--Secondary-White, #fff) !important;
	font-weight: 500;
	padding: 15px 30px;
	border-radius: 12px;
	border: 1px solid var(--Secondary-White, #FFF);
}

.shopPage .myMainSlider--shopOther .myMainSlider__button .button__label,
.shopPage .myMainSlider--shopOther .myMainSlider__button .button__label--more {
	color: inherit;
}

/* --- Product Card --- */

.shopPage__card {
	display: flex;
	flex-direction: column;
	background: #fff;
	overflow: hidden;
	text-decoration: none;
	color: inherit;
}

.shopPage__card__photo {
	position: relative;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background: #F2F2F2;
	flex-shrink: 0;
	border-radius: 20px;
}

.shopPage__card__photo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
	display: block;
	transition: transform 0.35s ease;
}

.shopPage__card:hover .shopPage__card__photo img {
	transform: scale(1.04);
}

.shopPage__card__cta {
	position: absolute;
	left: 12px;
	right: 12px;
	bottom: 12px;
	height: 44px;
	border-radius: 999px;
	background: #2EC77F;
	color: #fff;
	font-size: 17px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	opacity: 0;
	transform: translateY(8px);
	transition: opacity 0.18s ease, transform 0.18s ease;
	border: none;
	cursor: pointer;
	pointer-events: auto;
}

.shopPage__card__cta::before {
	content: '';
	width: 18px;
	height: 21px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 18px 21px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='21' viewBox='0 0 18 21' fill='none'%3E%3Cpath d='M1.66675 21C1.20842 21 0.816 20.8368 0.4895 20.5105C0.163167 20.184 0 19.7916 0 19.3333V6.5C0 6.04167 0.163167 5.64933 0.4895 5.323C0.816 4.9965 1.20842 4.83325 1.66675 4.83325H4.16675C4.16675 3.50558 4.62642 2.36808 5.54575 1.42075C6.46525 0.473584 7.58892 0 8.91675 0C10.2769 0 11.4364 0.468083 12.3953 1.40425C13.3539 2.34025 13.8333 3.48325 13.8333 4.83325H16.3333C16.7916 4.83325 17.184 4.9965 17.5105 5.323C17.8368 5.64933 18 6.04167 18 6.5V19.3333C18 19.7916 17.8368 20.184 17.5105 20.5105C17.184 20.8368 16.7916 21 16.3333 21H1.66675ZM1.66675 19.3333H16.3333V6.5H1.66675V19.3333ZM12.4625 11.0458C13.432 10.0764 13.9168 8.92225 13.9168 7.58325H12.25C12.25 8.47225 11.9306 9.23617 11.2918 9.875C10.6528 10.5138 9.88883 10.8333 9 10.8333C8.11117 10.8333 7.34725 10.5138 6.70825 9.875C6.06942 9.23617 5.75 8.47225 5.75 7.58325H4.08325C4.08325 8.92225 4.568 10.0764 5.5375 11.0458C6.507 12.0153 7.66117 12.5 9 12.5C10.3388 12.5 11.493 12.0153 12.4625 11.0458ZM5.83325 4.83325H12.1667C12.1667 3.94442 11.8612 3.19442 11.25 2.58325C10.6388 1.97225 9.88883 1.66675 9 1.66675C8.11117 1.66675 7.36117 1.97225 6.75 2.58325C6.13883 3.19442 5.83325 3.94442 5.83325 4.83325Z' fill='white'/%3E%3C/svg%3E");
}

.shopPage__card:hover .shopPage__card__cta {
	opacity: 1;
	z-index: 1;
	transform: translateY(0);
}

.shopPage__card__cta:active {
	transform: translateY(1px);
}

.shopPage__card__badge {
	position: absolute;
	top: 12px;
	left: 12px;
	padding: 4px 12px;
	border-radius: 20px;
	color: var(--Secondary-White, #FFF);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	z-index: 1;
	pointer-events: none;
}

.shopPage__card__badge--hit      { background: #E95420; color: #fff; }
.shopPage__card__badge--sale     { background: #FFB800; color: #0A0A0A; }
.shopPage__card__badge--preorder { background: #6C5CE7; color: #fff; }
.shopPage__card__badge--new      { background: #00B894; color: #fff; }
.shopPage__card__badge--custom   { background: #0A0A0A; color: #fff; }

.shopPage__card__info {
	padding: 12px 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	gap: 12px;
	flex: 1;
}

/* Property row: 14+ · 3-6 · 45 мин. */

.shopPage__card__props {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-bottom: 2px;
}

.shopPage__card__prop {
	display: -webkit-inline-flex;
	display: -moz-inline-flex;
	display: -ms-inline-flex;
	display: -o-inline-flex;
	display: inline-flex;
	align-items: center;
	gap: 3px;
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 15px;
	font-style: normal;
	font-weight: 500;
	line-height: 100%;
	letter-spacing: -0.3px;
}

.shopPage__card__prop:not(:first-child):before {
	content: "\2022";
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.3px;
	margin-right: 2px;
}

.shopPage__card__name {
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 18px;
	font-style: normal;
	font-weight: 500;
	line-height: 100%;
	letter-spacing: -0.36px;
/*
	flex: 1;
	display: -webkit-box;
*/
	line-clamp: 3;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.shopPage__card__type {
	color: var(--Greys-Grey-4, #999);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.shopPage__card__footer {
	display: flex;
	flex-wrap: nowrap;
	align-items: baseline;
	gap: 8px;
}

.shopPage__card__price {
	color: var(--Basic-Green, #31C992);
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	letter-spacing: -0.36px;
}

.shopPage__card__price--old {
	font-size: 12px;
	font-weight: 400;
	color: #bbb;
	text-decoration: line-through;
}

/* --- Element (detail) page --- */

.shopPage--element .shopPage__product {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 48px;
	align-items: start;
}

.shopPage__product__gallery {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.shopPage__product__gallery-item img {
	width: 100%;
	border-radius: 12px;
	display: block;
}

.shopPage__product__gallery-empty {
	aspect-ratio: 1;
	background: #F2F2F2;
	border-radius: 12px;
}

.shopPage__product__details {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.shopPage__product__name {
	font-size: 28px;
	font-weight: 700;
	color: #0A0A0A;
	line-height: 1.2;
	margin: 0;
}

.shopPage__product__price {
	display: flex;
	align-items: baseline;
	gap: 12px;
}

.shopPage__product__price-value {
	font-size: 28px;
	font-weight: 700;
	color: #0A0A0A;
}

.shopPage__product__price-old {
	font-size: 18px;
	color: #bbb;
	text-decoration: line-through;
}

.shopPage__product__text {
	font-size: 15px;
	line-height: 1.6;
	color: #333;
}

.shopPage__product__buy {
	margin-top: 8px;
}

.shopPage__product__add-to-cart {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 14px 32px;
	background: #0A0A0A;
	color: #fff;
	border: none;
	border-radius: 100px;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	font-family: inherit;
	transition: opacity 0.2s;
}

.shopPage__product__add-to-cart:hover {
	opacity: 0.8;
}

.shopPage__product__props-title {
	font-size: 16px;
	font-weight: 600;
	color: #0A0A0A;
	margin: 0 0 12px;
}

.shopPage__product__props-list {
	margin: 0;
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 8px 16px;
}

.shopPage__product__props-name {
	font-size: 14px;
	color: #888;
}

.shopPage__product__props-value {
	font-size: 14px;
	color: #0A0A0A;
	font-weight: 500;
}

/* --- Empty / error states --- */

.shopPage__empty {
	font-size: 15px;
	color: #888;
	padding: 40px 0;
	padding-top: 0;
}

/* --- Pagination --- */

.shopPage__pagination {
	margin-top: 40px;
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: nowrap;
	justify-content: center;
}

.shopPage__pagination .newsPage__pagination-current,
.shopPage__pagination .newsPage__pagination-page,
.shopPage__pagination .newsPage__pagination-ellipsis,
.shopPage__pagination .newsPage__pagination-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	font-weight: 500;
	font-size: 15px;
	line-height: 1;
	color: #0a0a0a;
}

.shopPage__pagination .newsPage__pagination-current {
	min-width: 40px;
	height: 40px;
	border-radius: 8px;
	background: #03070b;
	color: #fff;
}

.shopPage__pagination .newsPage__pagination-page {
	min-width: 28px;
}

.shopPage__pagination .newsPage__pagination-ellipsis {
	letter-spacing: 2px;
}

.shopPage__pagination .newsPage__pagination-arrow {
	width: 40px;
}

.shopPage__pagination .newsPage__pagination-page:hover,
.shopPage__pagination .newsPage__pagination-arrow:hover {
	opacity: .65;
}

/* --- Responsive --- */

@media (max-width: 1200px) {
	.shopPage__grid {
		grid-template-columns: repeat(3, 1fr);
	}

	.shopPage__grid.shopProductBlock__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 960px) {
	.shopPage__layout {
		grid-template-columns: 1fr;
	}

	.shopPage__sidebar {
		position: static;
	}

	.shopPage__sidebar-nav {
		flex-direction: row;
		flex-wrap: wrap;
		gap: 6px;
	}

	.shopPage__sidebar-link {
		padding: 5px 12px;
		border-radius: 100px;
		border: 1px solid #e8e8e8;
		font-size: 13px;
	}

	.shopPage__sidebar-link--active,
	.shopPage__sidebar-link--all {
		background: #0A0A0A;
		color: #fff;
		border-color: #0A0A0A;
	}

	.shopPage__sidebar-sub {
		display: contents;
	}
}

.shopPage--preorders .shopPage__grid .shopPage__preFavFloating {
	display: none !important;
}

.shopPage--preorders .shopPage__preFavFloating {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 2;
	border: 0;
	background: #d81bff;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	cursor: pointer;
}

.shopPage--preorders .shopPage__preFavFloating:hover { filter: brightness(1.05); }

.shopPage--preorders .shopPage__preFinishedIcon {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
}

@media (max-width: 720px) {
	.shopPage__pagination {
		gap: 18px;
	}

	.shopPage__pagination .newsPage__pagination-current {
		width: 54px;
		height: 54px;
		border-radius: 12px;
	}

	.shopPage__pagination .newsPage__pagination-current,
	.shopPage__pagination .newsPage__pagination-page,
	.shopPage__pagination .newsPage__pagination-ellipsis,
	.shopPage__pagination .newsPage__pagination-arrow {
		font-size: 28px;
	}

	.shopPage__title {
		font-size: 24px;
	}

	.shopPage__grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 8px;
	}

	.shopPage__grid.shopProductBlock__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
	}

	.shopPage--element .shopPage__product {
		grid-template-columns: 1fr;
		gap: 24px;
	}
}

@media (max-width: 420px) {
	.shopPage__grid {
		grid-template-columns: 1fr 1fr;
		gap: 6px;
	}

	.shopPage__grid.shopProductBlock__grid {
		gap: 6px;
	}

	.shopPage__card__info {
		padding: 8px;
	}

	.shopPage__card__price {
		font-size: 14px;
	}
}

/* ==============================================
   ELEMENT PAGE v2 (Figma-like)
   ============================================== */

.shopProduct__back {
	display: inline-flex;
	align-items: center;
	margin: 4px 0 14px;
	font-size: 18px;
	color: #222;
	text-decoration: none;
}

.shopProduct__back svg {
	max-width: 20px;
}

.shopProduct {
	display: grid;
	grid-template-columns: 900px 440px;
	gap: 20px;
	align-items: start;
	padding-bottom: 64px;
}

.shopProduct__stage {
	position: relative;
	background: #f2f2f2;
	border-radius: 16px;
	padding: 20px;
	min-height: 520px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.shopProduct__stageSlides {
	position: relative;
	width: 100%;
	flex: 1 1 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 0;
	overflow: hidden;
}

.shopProduct__stageSlide {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.38s ease, visibility 0.38s ease;
	display: flex;
	align-items: center;
	justify-content: center;
}

.shopProduct__stageSlide.is-active {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	z-index: 1;
}

.shopProduct__main-img {
	max-width: 100%;
	max-height: 470px;
	object-fit: contain;
	display: block;
	margin: 0 auto;
}

.shopProduct__mainVideo {
	max-width: 100%;
	max-height: 470px;
	width: 100%;
	border-radius: 12px;
	background: #0a0a0a;
	vertical-align: middle;
}

.shopProduct__thumb--video {
	position: relative;
	padding: 0;
	overflow: hidden;
}

.shopProduct__thumbCanvas {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 10px;
}

.shopProduct__thumbPlay {
	position: absolute;
	inset: 0;
	margin: auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 14px 0 14px 22px;
	border-color: transparent transparent transparent rgba(255, 255, 255, 0.95);
	pointer-events: none;
	filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.35));
}

.shopProduct__main-empty {
	width: 100%;
	aspect-ratio: 1 / 1;
	background: #e9e9e9;
	border-radius: 12px;
}

.shopProduct__arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 60px;
	height: 60px;
	border: none;
	cursor: pointer;
	background-repeat: no-repeat;
	font-size: 0;
	z-index: 5;
	pointer-events: auto;
	transition: transform 0.2s ease, filter 0.2s ease, opacity 0.2s ease;
}

.shopProduct__arrow--prev {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 60 60' fill='none'%3E%3Cpath d='M10.4037 10.4037C-3.46789 24.2752 -3.46789 35.7248 10.4037 49.5963C24.2752 63.4679 35.7248 63.4679 49.5963 49.5963C63.4679 35.7248 63.4679 24.2752 49.5963 10.4037C35.7248 -3.46789 24.2752 -3.46789 10.4037 10.4037Z' fill='white'/%3E%3Cpath d='M37.6924 28.8462C38.3296 28.8462 38.8462 29.3627 38.8462 30C38.8462 30.6373 38.3296 31.1538 37.6924 31.1538V30V28.8462ZM21.4919 30.8159C21.0413 30.3653 21.0413 29.6347 21.4919 29.1841L28.8349 21.8411C29.2855 21.3905 30.0161 21.3905 30.4667 21.8411C30.9173 22.2917 30.9173 23.0223 30.4667 23.4729L23.9396 30L30.4667 36.5271C30.9173 36.9777 30.9173 37.7083 30.4667 38.1589C30.0161 38.6095 29.2855 38.6095 28.8349 38.1589L21.4919 30.8159ZM37.6924 30V31.1538H22.3078V30V28.8462H37.6924V30Z' fill='%23BFC7D6'/%3E%3C/svg%3E");
	left: 10px;
}

.shopProduct__arrow--next {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 60 60' fill='none'%3E%3Cpath d='M49.5963 10.4037C63.4679 24.2752 63.4679 35.7248 49.5963 49.5963C35.7248 63.4679 24.2752 63.4679 10.4037 49.5963C-3.46789 35.7248 -3.46789 24.2752 10.4037 10.4037C24.2752 -3.46789 35.7248 -3.46789 49.5963 10.4037Z' fill='white'/%3E%3Cpath d='M22.3076 28.8462C21.6704 28.8462 21.1538 29.3627 21.1538 30C21.1538 30.6373 21.6704 31.1538 22.3076 31.1538V30V28.8462ZM38.5081 30.8159C38.9587 30.3653 38.9587 29.6347 38.5081 29.1841L31.1651 21.8411C30.7145 21.3905 29.9839 21.3905 29.5333 21.8411C29.0827 22.2917 29.0827 23.0223 29.5333 23.4729L36.0604 30L29.5333 36.5271C29.0827 36.9777 29.0827 37.7083 29.5333 38.1589C29.9839 38.6095 30.7145 38.6095 31.1651 38.1589L38.5081 30.8159ZM22.3076 30V31.1538H37.6922V30V28.8462H22.3076V30Z' fill='%23BFC7D6'/%3E%3C/svg%3E");
	right: 10px;
}

.shopProduct__arrow--prev:hover {
	transform: translateY(-50%) scale(1.04);
	filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.2));
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 60 60' fill='none'%3E%3Cpath d='M10.4037 10.4037C-3.46789 24.2752 -3.46789 35.7248 10.4037 49.5963C24.2752 63.4679 35.7248 63.4679 49.5963 49.5963C63.4679 35.7248 63.4679 24.2752 49.5963 10.4037C35.7248 -3.46789 24.2752 -3.46789 10.4037 10.4037Z' fill='white'/%3E%3Cpath d='M37.6914 28.8462C38.3287 28.8462 38.8453 29.3627 38.8453 30C38.8453 30.6373 38.3287 31.1538 37.6914 31.1538V30V28.8462ZM21.4909 30.8159C21.0403 30.3653 21.0403 29.6347 21.4909 29.1841L28.8339 21.8411C29.2845 21.3905 30.0151 21.3905 30.4657 21.8411C30.9163 22.2917 30.9163 23.0223 30.4657 23.4729L23.9386 30L30.4657 36.5271C30.9163 36.9777 30.9163 37.7083 30.4657 38.1589C30.0151 38.6095 29.2845 38.6095 28.8339 38.1589L21.4909 30.8159ZM37.6914 30V31.1538H22.3068V30V28.8462H37.6914V30Z' fill='%230A0A0A'/%3E%3C/svg%3E");
}

.shopProduct__arrow--next:hover {
	transform: translateY(-50%) scale(1.04);
	filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.2));
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 60 60' fill='none'%3E%3Cpath d='M49.5963 10.4037C63.4679 24.2752 63.4679 35.7248 49.5963 49.5963C35.7248 63.4679 24.2752 63.4679 10.4037 49.5963C-3.46789 35.7248 -3.46789 24.2752 10.4037 10.4037C24.2752 -3.46789 35.7248 -3.46789 49.5963 10.4037Z' fill='white'/%3E%3Cpath d='M22.3086 28.8462C21.6713 28.8462 21.1547 29.3627 21.1547 30C21.1547 30.6373 21.6713 31.1538 22.3086 31.1538V30V28.8462ZM38.5091 30.8159C38.9597 30.3653 38.9597 29.6347 38.5091 29.1841L31.1661 21.8411C30.7155 21.3905 29.9849 21.3905 29.5343 21.8411C29.0837 22.2917 29.0837 23.0223 29.5343 23.4729L36.0614 30L29.5343 36.5271C29.0837 36.9777 29.0837 37.7083 29.5343 38.1589C29.9849 38.6095 30.7155 38.6095 31.1661 38.1589L38.5091 30.8159ZM22.3086 30V31.1538H37.6932V30V28.8462H22.3086V30Z' fill='%230A0A0A'/%3E%3C/svg%3E");
}

/* Телефон: стрелки слайдера компактнее (60px перекрывали картинку) */
@media (max-width: 767px) {
	.shopProduct__stage .shopProduct__arrow {
		width: 36px;
		height: 36px;
		background-size: 36px 36px;
	}
	.shopProduct__stage .shopProduct__arrow--prev { left: 8px; }
	.shopProduct__stage .shopProduct__arrow--next { right: 8px; }
}

.shopProduct__thumbs {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 10px;
}

.shopProduct__thumb {
	width: 110px;
	height: 80px;
	border-radius: 20px;
	border: 2px solid transparent;
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.05) 100%), url(/local/templates/default/components/bitrix/catalog/preorders/<path-to-image>) lightgray 50% / cover no-repeat;
	background-blend-mode: normal, multiply;
	overflow: hidden;
	cursor: pointer;
	position: relative;
	z-index: 1;
	pointer-events: auto;
}
.shopProduct__thumb.is-active { border: 2px solid var(--Basic-Purple, #6D15EC);}
.shopProduct__thumb img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}

.shopProduct__dots {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin-top: 12px;
}

.shopProduct__dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	border: none;
	background: rgba(255, 255, 255, 0.58);
	cursor: pointer;
	transition: transform 0.15s ease, background-color 0.15s ease;
}

.shopProduct__dot.is-active {
	background: #fff;
	transform: scale(1.06);
}

.shopProduct__dot:hover {
	background: rgba(255, 255, 255, 0.8);
}

.shopProduct__right {
	display: flex;
	flex-direction: column;
	gap: 10px;
	position: sticky;
	top: 120px;
	align-self: start;
	z-index: 1;
}

.shopProduct__topMeta {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	align-items: center;
}

.shopProduct__topMeta .shopPage__card__badge {
	position: relative;
	top: 0;
	left: 0;
	margin-right: 10px;
}

.shopProduct__metaItem {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	color: #333;
	font-size: 14px;
}

.shopProduct__metaItem ~ .shopProduct__metaItem:before {
	content: "\2022";
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.3px;
}

.shopProduct__name {
	color: var(--Black, #0A0A0A);
	font-size: 24px;
	font-style: normal;
	font-weight: 500;
	line-height: 110%;
	letter-spacing: -0.48px;
}

.shopProduct__subtitle {
	color: var(--Greys-Grey-4, #999);
	font-size: 18px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.shopProductBelow {
	margin-top: 0;
	display: flex;
	flex-direction: column;
	gap: 0;
}

.shopProductBlock {
	border-top: 1px solid var(--Greys-Grey-1, #ECECEC);
	padding: 64px 0;
}

.shopProductBlock__title {
	color: var(--Secondary-Black, #0A0A0A);
	font-family: RAYDIS, sans-serif;
	font-size: 32px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	margin: 0 0 48px;
}

.shopProductBlock__grid {
	margin-top: 0;
}

/* Карточки под товаром: 5 в ряд (остальной каталог — .shopPage__grid по 4) */
.shopPage__grid.shopProductBlock__grid {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.shopProductBlock__empty {
	margin: 0;
	font-size: 15px;
	color: #888;
	line-height: 1.5;
}

.shopProduct__priceRow {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-ms-align-items: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 8px;
}

.shopProduct__price {
	color: var(--Black, #0A0A0A);
	font-size: 40px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	letter-spacing: -0.8px;
	text-transform: uppercase;
}

.shopProduct__priceOld {
	color: var(--Greys-Grey-4, #999);
	font-size: 24px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	letter-spacing: -0.48px;
	text-decoration-line: line-through;
	text-transform: uppercase;
}

.shopProduct__bonus {
	background: #C2FF33;
	padding: 4px 10px;
	color: var(--Black, #0A0A0A);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	letter-spacing: -0.3px;
	position: relative;
}

.shopProduct__bonus:before,
.shopProduct__bonus:after {
	content: "";
	background: url("data:image/svg+xml,%0A%3Csvg width='4' height='8' viewBox='0 0 4 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 8C1.79086 8 0 6.20914 0 4C0 1.79086 1.79086 0 4 0V8Z' fill='white'/%3E%3C/svg%3E%0A") no-repeat;
	display: block;
	width: 4px;
	height: 8px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%) rotate(180deg);
	left: 0;
}

.shopProduct__bonus:before {
	right: 0;
	transform: translateY(-50%);
	left: auto;
}

.shopProduct__buyRow {
	display: flex;
	gap: 7px;
	align-items: center;
	margin-top: 8px;
}

.shopProduct__buyRow--oos {
	gap: 14px;
	flex-wrap: nowrap;
	align-items: center;
}

.shopProduct__buyRow--oos .shopProduct__stockBadge {
	flex: 0 0 auto;
}

.shopProduct__buyRow--oos .shopProduct__notifyBtn {
	flex: 0 1 auto;
	min-width: 0;
	white-space: nowrap;
}

.shopProduct__stockBadge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 12px 20px;
	border-radius: 999px;
	background: #f2f2f2;
	color: var(--Black, #0a0a0a);
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	line-height: 1;
	min-height: 54px;
	box-sizing: border-box;
}

.shopProduct__stockBadgeIcon {
	display: inline-flex;
	flex-shrink: 0;
}

.shopProduct__notifyBtn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 0;
	border: none;
	background: transparent;
	cursor: pointer;
	color: var(--Black, #0a0a0a);
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	line-height: 1;
	min-height: 54px;
	font-family: inherit;
}

.shopProduct__notifyBtn:hover {
	opacity: 0.88;
}

.shopProduct__notifyBtn:focus,
.shopProduct__notifyBtn:focus-visible {
	outline: none;
	box-shadow: none;
}

.shopProduct__notifyIcon {
	display: inline-flex;
	flex-shrink: 0;
}

.shopProduct__qty {
	display: -webkit-inline-flex;
	display: -moz-inline-flex;
	display: -ms-inline-flex;
	display: -o-inline-flex;
	display: inline-flex;
	align-items: center;
	gap: 4px;
	border-radius: 12px;
	border: 1px solid var(--Greys-Grey-1, #ECECEC);
	background: var(--Secondary-White, #FFF);
	padding: 12px 14px;
	height: 54px;
}

.shopProduct__qtyBtn {
	border: none;
	width: 18px;
	height: 18px;
	cursor: pointer;
	display: -webkit-inline-flex;
	display: -moz-inline-flex;
	display: -ms-inline-flex;
	display: -o-inline-flex;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background-repeat: no-repeat;
	padding: 0;
	font-size: 0;
}

.shopProduct__qtyBtn[data-dir="-"] {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18' fill='none'%3E%3Cpath d='M4.5 9.5H13.5V8.5H4.5V9.5ZM9.00325 18C7.75875 18 6.58867 17.7638 5.493 17.2915C4.3975 16.8192 3.4445 16.1782 2.634 15.3685C1.8235 14.5588 1.18192 13.6067 0.70925 12.512C0.236417 11.4175 0 10.2479 0 9.00325C0 7.75875 0.236167 6.58867 0.7085 5.493C1.18083 4.3975 1.82183 3.4445 2.6315 2.634C3.44117 1.8235 4.39333 1.18192 5.488 0.70925C6.5825 0.236417 7.75208 0 8.99675 0C10.2413 0 11.4113 0.236167 12.507 0.708501C13.6025 1.18083 14.5555 1.82183 15.366 2.6315C16.1765 3.44117 16.8181 4.39333 17.2908 5.488C17.7636 6.5825 18 7.75208 18 8.99675C18 10.2413 17.7638 11.4113 17.2915 12.507C16.8192 13.6025 16.1782 14.5555 15.3685 15.366C14.5588 16.1765 13.6067 16.8181 12.512 17.2908C11.4175 17.7636 10.2479 18 9.00325 18Z' fill='%23999999'/%3E%3C/svg%3E");
}

.shopProduct__qtyBtn[data-dir="+"] {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18' fill='none'%3E%3Cpath d='M8.5 13.5H9.5V9.5H13.5V8.5H9.5V4.5H8.5V8.5H4.5V9.5H8.5V13.5ZM9.00325 18C7.75875 18 6.58867 17.7638 5.493 17.2915C4.3975 16.8192 3.4445 16.1782 2.634 15.3685C1.8235 14.5588 1.18192 13.6067 0.70925 12.512C0.236417 11.4175 0 10.2479 0 9.00325C0 7.75875 0.236167 6.58867 0.7085 5.493C1.18083 4.3975 1.82183 3.4445 2.6315 2.634C3.44117 1.8235 4.39333 1.18192 5.488 0.70925C6.5825 0.236417 7.75208 0 8.99675 0C10.2413 0 11.4113 0.236167 12.507 0.708501C13.6025 1.18083 14.5555 1.82183 15.366 2.6315C16.1765 3.44117 16.8181 4.39333 17.2908 5.488C17.7636 6.5825 18 7.75208 18 8.99675C18 10.2413 17.7638 11.4113 17.2915 12.507C16.8192 13.6025 16.1782 14.5555 15.3685 15.366C14.5588 16.1765 13.6067 16.8181 12.512 17.2908C11.4175 17.7636 10.2479 18 9.00325 18Z' fill='%23999999'/%3E%3C/svg%3E");
}

.shopProduct__qtyInput {
	width: 24px;
	min-width: 24px;
	border: none;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	color: var(--Black, #0A0A0A);
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	line-height: 1;
	text-transform: uppercase;
	background: none;
	text-align: center;
	appearance: textfield;
	-moz-appearance: textfield;
}

.shopProduct__qtyInput::-webkit-outer-spin-button,
.shopProduct__qtyInput::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.shopProduct__qtyInput:focus,
.shopProduct__qtyInput:focus-visible {
	outline: none;
	box-shadow: none;
}

.shopProduct__buyBtn {
	border: none;
	height: 54px;
	border-radius: 12px;
	color: var(--Secondary-White, #FFF);
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	padding: 0 30px 0 60px;
	background: #31C992 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cmask id='mask0_13202_1819' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='24' height='24'%3E%3Crect width='24' height='24' fill='%231C1B1F'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_13202_1819)'%3E%3Cpath d='M4.66675 21C4.20842 21 3.816 20.8368 3.4895 20.5105C3.16317 20.184 3 19.7916 3 19.3333V6.5C3 6.04167 3.16317 5.64933 3.4895 5.323C3.816 4.9965 4.20842 4.83325 4.66675 4.83325H7.16675C7.16675 3.50558 7.62642 2.36808 8.54575 1.42075C9.46525 0.473584 10.5889 0 11.9168 0C13.2769 0 14.4364 0.468083 15.3953 1.40425C16.3539 2.34025 16.8333 3.48325 16.8333 4.83325H19.3333C19.7916 4.83325 20.184 4.9965 20.5105 5.323C20.8368 5.64933 21 6.04167 21 6.5V19.3333C21 19.7916 20.8368 20.184 20.5105 20.5105C20.184 20.8368 19.7916 21 19.3333 21H4.66675ZM4.66675 19.3333H19.3333V6.5H4.66675V19.3333ZM15.4625 11.0458C16.432 10.0764 16.9168 8.92225 16.9168 7.58325H15.25C15.25 8.47225 14.9306 9.23617 14.2918 9.875C13.6528 10.5138 12.8888 10.8333 12 10.8333C11.1112 10.8333 10.3472 10.5138 9.70825 9.875C9.06942 9.23617 8.75 8.47225 8.75 7.58325H7.08325C7.08325 8.92225 7.568 10.0764 8.5375 11.0458C9.507 12.0153 10.6612 12.5 12 12.5C13.3388 12.5 14.493 12.0153 15.4625 11.0458ZM8.83325 4.83325H15.1667C15.1667 3.94442 14.8612 3.19442 14.25 2.58325C13.6388 1.97225 12.8888 1.66675 12 1.66675C11.1112 1.66675 10.3612 1.97225 9.75 2.58325C9.13883 3.19442 8.83325 3.94442 8.83325 4.83325Z' fill='white'/%3E%3C/g%3E%3C/svg%3E") left 30px center no-repeat;
}

.shopProduct__buyBtn:disabled {
	opacity: 0.65;
	cursor: not-allowed;
}

.shopProduct__benefits {
	margin: 0 0 36px;
	color: var(--Black, #0A0A0A);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	letter-spacing: -0.3px;
	display: grid;
	gap: 5px;
}

.shopProduct__benefits div {
	padding-left: 28px;
}

.shopProduct__benefits div:nth-child(1) {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cmask id='mask0_11142_8725' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='20' height='20'%3E%3Crect width='20' height='20' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_11142_8725)'%3E%3Cpath d='M9.45866 17.4519V10.3173L3.41699 6.83333V13.181C3.41699 13.4267 3.4763 13.6501 3.59491 13.851C3.71352 14.0519 3.87755 14.2137 4.08699 14.3365L9.45866 17.4519ZM10.542 17.4519L15.9137 14.3365C16.1231 14.2137 16.2871 14.0519 16.4057 13.851C16.5244 13.6501 16.5837 13.4267 16.5837 13.181V6.83333L10.542 10.3173V17.4519ZM13.5803 7.28687L16.1749 5.80604L10.6701 2.64104C10.4608 2.51812 10.2375 2.45667 10.0003 2.45667C9.7631 2.45667 9.53984 2.51812 9.33053 2.64104L7.45866 3.7325L13.5803 7.28687ZM10.0003 9.36542L12.518 7.91354L6.33053 4.35417L3.82095 5.81083L10.0003 9.36542Z' fill='%231C1B1F'/%3E%3C/g%3E%3C/svg%3E");
}

.shopProduct__benefits div:nth-child(2) {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cmask id='mask0_11142_8731' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='20' height='20'%3E%3Crect width='20' height='20' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_11142_8731)'%3E%3Cpath d='M6.63241 8.84765C6.01824 8.84765 5.49546 8.63057 5.06408 8.1964C4.63269 7.76223 4.41699 7.23807 4.41699 6.6239C4.41699 6.00973 4.63408 5.48696 5.06824 5.05557C5.50241 4.62432 6.02658 4.40869 6.64074 4.40869C7.25491 4.40869 7.77769 4.62577 8.20908 5.05994C8.64046 5.49411 8.85616 6.01827 8.85616 6.63244C8.85616 7.24661 8.63908 7.76932 8.20491 8.20057C7.77074 8.63196 7.24658 8.84765 6.63241 8.84765ZM6.63616 7.76432C6.95158 7.76432 7.21984 7.6539 7.44095 7.43307C7.6622 7.21223 7.77283 6.94411 7.77283 6.62869C7.77283 6.31314 7.66241 6.0448 7.44158 5.82369C7.22074 5.60258 6.95255 5.49202 6.63699 5.49202C6.32158 5.49202 6.05324 5.60244 5.83199 5.82328C5.61088 6.04411 5.50033 6.31223 5.50033 6.62765C5.50033 6.94321 5.61074 7.21154 5.83158 7.43265C6.05241 7.65376 6.3206 7.76432 6.63616 7.76432ZM13.3678 15.5833C12.7537 15.5833 12.231 15.3662 11.7997 14.932C11.3683 14.4979 11.1526 13.9737 11.1526 13.3595C11.1526 12.7454 11.3697 12.2226 11.8039 11.7912C12.238 11.3598 12.7622 11.1441 13.3764 11.1441C13.9905 11.1441 14.5133 11.3612 14.9447 11.7954C15.376 12.2295 15.5916 12.7537 15.5916 13.3679C15.5916 13.982 15.3745 14.5048 14.9403 14.9362C14.5062 15.3676 13.982 15.5833 13.3678 15.5833ZM14.1766 14.1687C14.3977 13.9479 14.5082 13.6797 14.5082 13.3641C14.5082 13.0487 14.3978 12.7804 14.177 12.5593C13.9562 12.3381 13.688 12.2274 13.3726 12.2274C13.0571 12.2274 12.7887 12.3379 12.5676 12.5587C12.3465 12.7795 12.236 13.0477 12.236 13.3633C12.236 13.6787 12.3464 13.947 12.5672 14.1683C12.788 14.3894 13.0562 14.4999 13.3716 14.4999C13.6871 14.4999 13.9555 14.3895 14.1766 14.1687ZM5.26324 15.5031L4.4972 14.737L14.7455 4.48869L15.5116 5.25473L5.26324 15.5031Z' fill='%231C1B1F'/%3E%3C/g%3E%3C/svg%3E");
}

.shopProduct__related {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	gap: 10px;
	max-width: 440px;
}

.shopProduct__relatedTitle {
	color: var(--Black, #0A0A0A);
	font-size: 14px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	letter-spacing: -0.28px;
	text-transform: uppercase;
}

.shopProduct__relatedRow {
	display: grid;
	grid-template-columns: 66px minmax(0, 1fr) auto 40px;
	gap: 10px 12px;
	align-items: center;
	background: #f2f2f2;
	border-radius: 14px;
	padding: 10px;
	color: inherit;
}

.shopProduct__relatedThumb {
	display: block;
	flex-shrink: 0;
	text-decoration: none;
	color: inherit;
}

.shopProduct__relatedThumb img {
	width: 66px;
	height: 66px;
	object-fit: cover;
	border-radius: 10px;
	display: block;
}

.shopProduct__relatedThumb--empty {
	min-width: 66px;
	min-height: 66px;
	background: #e5e5e5;
	border-radius: 10px;
}

.shopProduct__relatedNameLink {
	text-decoration: none;
	color: inherit;
	min-width: 0;
}

.shopProduct__relatedName {
	overflow: hidden;
	color: #000;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.shopProduct__relatedPrice {
	color: var(--Basic-Green, #31C992);
	text-align: right;
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	letter-spacing: -0.36px;
	white-space: nowrap;
	justify-self: end;
}

.preorderRewardCard__priceBlock .shopProduct__relatedPrice {
	color: var(--Basic-Green, #31C992);
	text-align: right;
	leading-trim: both;
	text-edge: cap;
	font-family: "Google Sans";
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	letter-spacing: -0.48px;	
}

.preorderRewardCard__priceBlock .shopProduct__relatedPriceOld {
	color: #999;
	text-align: right;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.32px;
	text-decoration-line: line-through;
	white-space: nowrap;
}

.shopProduct__relatedCart {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border: none;
	border-radius: 8px;
	background: #20b486;
	color: #fff;
	cursor: pointer;
	padding: 0;
	flex-shrink: 0;
}

.shopProduct__relatedCart:hover {
	filter: brightness(1.05);
}

.shopProduct__relatedCart:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}

.shopProductTabs {
	margin-top: 40px;
	padding-bottom: 64px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	-ms-align-items: center;
	align-items: center;
}

.shopProductTabs__head {
	display: -webkit-inline-flex;
	display: -moz-inline-flex;
	display: -ms-inline-flex;
	display: -o-inline-flex;
	display: inline-flex;
	gap: 8px;
	background: #f2f2f2;
	padding: 6px;
	border-radius: 50px;
	border: 1px solid var(--Greys-Grey-1, #ECECEC);
}

.shopProductTabs__btn {
	border: none;
	background: transparent;
	padding: 12px 18px;
	border-radius: 999px;
	cursor: pointer;
	color: #999;
	font-size: 18px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.36px;
}

.shopProductTabs__btn.is-active {
	background: #0a0a0a;
	color: var(--Secondary-White, #FFF);
}

.shopProductTabs:not(.shopProductTabs--preorderAnchor) .shopProductTabs__content {
	width: 100%;
	display: none;
	margin-top: 40px;
	color: var(--Secondary-Black, #0A0A0A);
	text-align: justify;
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.shopProductTabs--preorderAnchor .shopProductTabs__content {
	width: 100%;
	display: block;
	margin-top: 48px;
	padding-top: 8px;
	scroll-margin-top: 230px;
	color: var(--Secondary-Black, #0A0A0A);
	text-align: left;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.shopProductTabs--preorderAnchor .shopProductTabs__content:first-of-type {
	margin-top: 28px;
}

.shopProductTabs--preorderWide .shopProductTabs__sectionTitle {
	margin: 0 0 18px;
	padding-bottom: 12px;
	border-bottom: 1px solid #dedede;
	color: var(--Secondary-Black, #0A0A0A);
	font-family: "Google Sans";
	font-size: 40px;
	font-style: normal;
	font-weight: 700;
	line-height: 110%;
	letter-spacing: -0.8px;
}

.shopProductTabs--preorderAnchor .shopProductTabs__content h1,
.shopProductTabs--preorderAnchor .shopProductTabs__content h2 {
	color: var(--Secondary-Black, #0A0A0A);
	font-family: "Google Sans";
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	leading-trim: both;
	text-edge: cap;
	margin: 0 0 24px;
}

.shopProductTabs--preorderAnchor .shopProductTabs__content p {
	margin: 0 0 18px;
	color: var(--Secondary-Black, #0A0A0A);
	font-family: "Google Sans";
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.shopProductTabs--preorderAnchor .shopProductTabs__content ul,
.shopProductTabs--preorderAnchor .shopProductTabs__content li {
	margin: 0 0 18px;
	color: var(--Secondary-Black, #0A0A0A);
	font-family: "Google Sans";
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.shopProductTabs--preorderAnchor .shopProductTabs__content li {
	margin-bottom: 5px;
}

.shopProductTabs--preorderAnchor .shopProductTabs__content ul,
.shopProductTabs--preorderAnchor .shopProductTabs__content ol {
	margin-left: 0;
	padding-left: 26px;
	list-style-position: outside;
}

/* Абзацы-«псевдосписок» (набраны вручную с «•» в текст-блоке) — тот же отступ, что у настоящего
   списка: маркер висит слева, перенос строки выравнивается по тексту (см. data-bullet в detail_tabs.php). */
.shopProductTabs--preorderAnchor .shopProductTabs__content p[data-bullet] {
	padding-left: 26px;
	text-indent: -14px;
}

.shopProductTabs--preorderAnchor .shopProductTabs__content img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	border-radius: 0;
}

.shopProductTabs__content p:not(:last-child) {
	margin-bottom: 20px;
}

.shopProductTabs:not(.shopProductTabs--preorderAnchor) .shopProductTabs__content.is-active {
	display: block;
}

.shopProductTabs__head--anchor {
	position: sticky;
	top: 120px;
	z-index: 5;
	max-width: 100%;
	box-sizing: border-box;
	padding: 8px;
	margin-bottom: 0;
	border: none;
	/* Закреплённые табы — белая «плавающая» пилюля с мягкой тенью. */
	border-radius: 50px;
	background: var(--Basic-White, #FFF);
	box-shadow: 0 6px 34px 0 rgba(0, 0, 0, 0.17);
}

.shopProductTabs__empty {
	margin: 0;
	color: #888;
	font-size: 16px;
}

.shopProductTabs__hint {
	margin: 0;
	color: #555;
	font-size: 15px;
	line-height: 1.45;
}

.shopProductTabs__hint code {
	font-size: 13px;
}

@media (max-width: 1200px) {
	.shopProduct__name { font-size: 32px; }
	.shopProduct__price { font-size: 40px; }
	.shopProduct__priceOld { font-size: 28px; }
	.shopProduct__buyBtn { min-width: 240px; font-size: 34px; }
	.shopProduct__qtyInput { font-size: 32px; }
	.shopProduct__qty { height: 72px; }
	.shopProduct__buyBtn { height: 72px; border-radius: 22px; }
	.shopProduct__qtyBtn { width: 40px; height: 40px; font-size: 28px; }
}

@media (max-width: 900px) {
	.shopProduct {
		grid-template-columns: 1fr;
	}
	.shopProduct__right {
		position: static;
		z-index: auto;
	}
	.shopProduct__stage {
		min-height: 420px;
	}
}

/* «Похожие серии» + блоки с главной под layout (ветка раздела 20) */
.shopPage__similarSeries {
	padding: 64px 0;
}

/* Отдельная секция с главной (my_main_gamesseries) сразу после «Похожие серии» */
/*
.shopPage .shopPage__similarSeries + .myMainGamesseries {
	margin-top: 48px;
}
*/

.shopSimilarSeries__title {
	margin: 0 0 24px;
	font-family: RAYDIS, sans-serif;
	font-size: 32px;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: #0a0a0a;
}

.shopSimilarSeries__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

.shopSimilarSeries__card {
	position: relative;
	display: block;
	height: 400px;
	border-radius: 40px;
	overflow: hidden;
	text-decoration: none;
	color: #fff;
}

.shopSimilarSeries__media {
	position: absolute;
	inset: 0;
	z-index: 0;
	background: #1a1a1a;
}

.shopSimilarSeries__media--empty {
	background: linear-gradient(135deg, #2a2a2a, #0a0a0a);
}

.shopSimilarSeries__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.shopSimilarSeries__card::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: rgba(0, 0, 0, 0.3);
	pointer-events: none;
}

.shopSimilarSeries__name {
	position: absolute;
	left: 40px;
	padding-right: 40px;
	bottom: 40px;
	z-index: 1;
	font-family: RAYDIS, sans-serif;
	font-size: clamp(18px, 2.2vw, 28px);
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	text-shadow: 0 1px 12px rgba(0, 0, 0, 0.45);
}

@media (max-width: 700px) {
	.shopSimilarSeries__grid {
		grid-template-columns: 1fr;
	}
}

/* «Отзывы»: UF_REVIEWS раздела → HL (ветка 20, под .container) */
.shopPage__reviews {
	margin-top: 48px;
	padding: 64px 0;
	background: var(--Greys-Grey-0, #F5F5F5);
	overflow-x: visible;
}

.shopReviews {
	overflow: hidden;
}

.shopReviews__title {
	margin: 0 0 32px;
	font-family: RAYDIS, sans-serif;
	font-size: 32px;
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: #0a0a0a;
}

.shopReviews__sliderWrap {
	position: relative;
	overflow: visible;
}

.shopReviews__sliderInner {
	position: relative;
	box-sizing: border-box;
	overflow-x: visible;
}

.shopReviews__slider {
	position: relative;
	overflow: hidden;
}

.shopReviews__slider:not(.slick-initialized) .shopReviews__slide {
	display: none;
}

.shopReviews__slider:not(.slick-initialized) .shopReviews__slide:first-child {
	display: block;
}

/* Без обрезки правого «полуслайда» (peek 4.5) */
.shopReviews__slider .slick-list,
.shopReviews__slider .slick-track {
	overflow: visible;
}

.shopReviews__slide {
	padding: 0 10px;
	box-sizing: border-box;
}

.slick-slide:focus {
	outline: none;
}

.shopReviews__card {
	min-width: 325px;
	max-width: 325px;
	margin: 0 auto;
	width: 100%;
	padding: 40px 36px 36px;
	text-align: center;
	background: #fff;
	border-radius: 40px;
	box-sizing: border-box;
	position: relative;
	border: 1px solid #f48812;
}

.shopReviews__ratingRow {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin-bottom: 20px;
	color: #f48812;
}

.shopReviews__stripe {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	line-height: 0;
}

.shopReviews__stripe svg {
	display: block;
	width: 40px;
	height: auto;
	max-height: 68px;
}

.shopReviews__point {
	color: var(--Basic-Orange, #F48812);
	text-align: center;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	line-height: 166%;
}

.shopReviews__text {
	margin: 0 0 24px;
	padding: 0;
	border: 0;
	color: var(--Black, #0A0A0A);
	text-align: center;
	font-size: 16px;
	font-style: italic;
	font-weight: 400;
	line-height: normal;
	letter-spacing: -0.32px;
}

.shopReviews__sep {
	width: 85px;
	height: 0;
	margin: 0 auto 20px;
	border: 0;
	border-top: 1px solid #f48812;
}

.shopReviews__author {
	margin: 0;
	color: #000;
	text-align: center;
	font-family: RAYDIS;
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
}

.shopReviews__sliderInner > .shopReviews__arrow--prev {
	position: absolute;
	top: 50%;
	left: -20px;
	transform: translateY(-50%);
	z-index: 2;
	pointer-events: auto;
}

.shopReviews__sliderInner > .shopReviews__arrow--next {
	position: absolute;
	top: 50%;
	right: -20px;
	transform: translateY(-50%);
	z-index: 2;
	pointer-events: auto;
}

.shopReviews__sliderInner:has(> .shopReviews__slider.slick-initialized) > .shopReviews__arrow {
	visibility: visible;
}

.shopReviews__slider .shopReviews__slide {
	width: 335px;
}

.shopReviews__arrow {
	width: 60px;
	height: 60px;
	border: 0;
	background: transparent;
	cursor: pointer;
	padding: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	pointer-events: auto;
}

.shopReviews__arrow svg {
	display: block;
	width: 100%;
	height: 100%;
}

.shopReviews__dots {
	position: relative;
	z-index: 2;
	margin-top: 20px;
	overflow: visible;
}

.shopReviews__sliderInner > .shopReviews__dots {
	margin-top: 24px;
	z-index: 8;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	padding: 0 12px;
	pointer-events: none;
	min-height: 12px;
}

.shopReviews__sliderInner > .shopReviews__dots .slick-dots,
.shopReviews__sliderInner > .shopReviews__dots .slick-dots li button {
	pointer-events: auto;
}

.shopReviews__dots .slick-dots {
	position: relative !important;
	bottom: auto !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
	transform: none !important;
	width: auto !important;
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	justify-content: center;
	align-items: center;
	gap: 10px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.shopReviews__dots .slick-dots li {
	margin: 0;
}

.shopReviews__dots .slick-dots li button {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	padding: 0;
	border: 0;
	font-size: 0;
	line-height: 0;
	color: transparent;
	background: #dcdcdc;
}

.shopReviews__dots .slick-dots li.slick-active button {
	background: #f48812;
}

.shopReviews .shopReviews__slider.slick-initialized > ul.slick-dots {
	position: relative !important;
	bottom: auto !important;
	display: flex !important;
	justify-content: center;
	gap: 10px;
	list-style: none;
	margin: 20px 0 0;
	padding: 0;
}

.shopReviews .shopReviews__slider.slick-initialized > ul.slick-dots li button {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	padding: 0;
	border: 0;
	font-size: 0;
	background: #dcdcdc;
}

.shopReviews .shopReviews__slider.slick-initialized > ul.slick-dots li.slick-active button {
	background: #f48812;
}

@media (max-width: 991px) {
	.shopReviews__sliderInner {
		padding: 0 52px 0;
	}

	.shopReviews__card {
		padding: 32px 24px 28px;
		border-radius: 32px;
	}
}

@media (max-width: 640px) {
	.shopPage__reviews {
		padding: 48px 0;
	}

	.shopReviews__title {
		font-size: 26px;
		margin-bottom: 24px;
	}

	.shopReviews__sliderInner {
		padding: 0 40px 0;
	}

	.shopReviews__sliderInner > .shopReviews__arrow--prev {
		left: 0;
	}

	.shopReviews__sliderInner > .shopReviews__arrow--next {
		right: 0;
	}

	.shopReviews__arrow {
		width: 46px;
		height: 46px;
	}

	.shopReviews__card {
		padding: 28px 18px 24px;
		border-radius: 28px;
	}

	.shopReviews__text {
		font-size: 16px;
	}
}

/* preorders custom visuals */
.shopPage--preorders .shopPage__sidebar {
	position: static;
	top: auto;
}
.shopPage--preorders .preordersSidebarFilters {
	background: #ececec;
	border-radius: 24px;
	padding: 20px;
	display: flex;
	flex-direction: column;
	gap: 18px;
	margin-bottom: 24px;
	position: static;
	top: auto;
}
.shopPage--preorders .preordersSidebarFilters__title {
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	text-decoration: none;
}
.shopPage--preorders a.preordersSidebarFilters__title:hover {
	opacity: .7;
}
.shopPage--preorders .preordersSidebarFilters__label {
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 14px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	margin-bottom: 10px;
}
.shopPage--preorders .preordersSidebarFilters__check {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 10px;
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}
.shopPage--preorders .preordersSidebarFilters__check input {
	width: 20px;
	height: 20px;
	aspect-ratio: 1/1;
	margin: 0;
	appearance: none;
	-webkit-appearance: none;
	border-radius: 4px;
	border: 1px solid #EDEDED;
	background: var(--Secondary-White, #FFF);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 20px 20px;
	cursor: pointer;
}
.shopPage--preorders .preordersSidebarFilters__check input:checked {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Crect x='0.5' y='0.5' width='19' height='19' rx='3.5' fill='white' stroke='%23ECECEC'/%3E%3Cpath d='M7 9.21053L9.69412 13L14 7' stroke='%230A0A0A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.shopPage--preorders .preordersSidebarFilters__actions {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.preordersSidebarFilters__actions.is-hidden {
	display: none !important;
}
.preordersSidebarFilters__group.is-hidden {
	display: none !important;
}
.preordersFeatured.is-hidden {
	display: none !important;
}
.shopPage--preorders .preordersSidebarFilters__apply {
	border: 0;
	border-radius: 12px;
	background: #0a0a0a;
	color: #fff;
	padding: 12px 14px;
	font-size: 18px;
	font-weight: 600;
	cursor: pointer;
}
.shopPage--preorders .preordersSidebarFilters__reset {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: var(--Greys-Grey-4, #999);
	font-family: "Google Sans";
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.3px;
	text-decoration: none;
}
.shopPage--preorders .preordersSidebarFilters__reset::before {
	content: "";
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 20px 20px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M6.0625 15L5 13.9375L8.9375 10L5 6.0625L6.0625 5L10 8.9375L13.9375 5L15 6.0625L11.0625 10L15 13.9375L13.9375 15L10 11.0625L6.0625 15Z' fill='%23999999'/%3E%3C/svg%3E");
}
.shopPage--preorders .preordersSidebarUpdates__title {
	color: var(--Secondary-Black, #0A0A0A);
	font-family: "Google Sans";
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	letter-spacing: -0.32px;
	margin: 0 0 12px;
}
.shopPage--preorders .preordersSidebarUpdates__item {
	display: block;
	background: #fff;
	border: 1px solid var(--Greys-Grey-1, #ECECEC);
	border-radius: 20px;
	padding: 16px;
	text-decoration: none;
	color: inherit;
	margin-bottom: 12px;
}
.shopPage--preorders .preordersSidebarUpdates__image {
	margin-bottom: 12px;
	border-radius: 16px;
	overflow: hidden;
}
.shopPage--preorders .preordersSidebarUpdates__image img {
	display: block;
	width: 100%;
	height: auto;
}
.shopPage--preorders .preordersSidebarUpdates__date {
	display: inline-flex;
	padding: 4px 10px;
	border-radius: 10px;
	background: #5f87aa;
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	margin-bottom: 10px;
}
.shopPage--preorders .preordersSidebarUpdates__name {
	font-size: 20px;
	font-weight: 600;
	line-height: 1.1;
	margin-bottom: 8px;
}
.shopPage--preorders .preordersSidebarUpdates__text {
	font-size: 16px;
	line-height: 1.25;
	color: #222;
}
.shopPage--preorders .shopPage__preHero--root {
	margin-bottom: 20px;
}
.shopPage--preorders .shopPage__preHero--root img {
	width: 100%;
	height: auto;
	border-radius: 24px;
	display: block;
}
.shopPage--preorders .shopPage__preInlineHero {
	grid-column: 1 / -1;
	border-radius: 24px;
	overflow: hidden;
}
.shopPage--preorders .shopPage__preInlineHero img {
	display: block;
	width: 100%;
	height: auto;
}
.shopPage--preorders [data-shop-products] > .shopPage__preInlineHero + .shopPage__grid {
	margin-top: 20px;
}

:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured {
	display: grid;
	/* Баннер делится пополам: контент слева, картинка справа фиксированной ячейкой 542×492. */
	grid-template-columns: 1fr 542px;
	/* Фикс-высота hero 440px (grid-template-rows задаёт высоту строки, иначе natural-height картинки
	   растянула бы hero). Картинка справа — object-fit:cover: заполняет всю ячейку 542×440 без полей. */
	height: 440px;
	grid-template-rows: 440px;
	background: #0a0a0a;
	color: #fff;
	border-radius: 28px;
	overflow: hidden;
	margin-bottom: 22px;
	text-decoration: none;
}
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured img { width: 100%; min-width: 0; height: 100%; object-fit: cover; transition: transform 0.5s ease; }
/* Ховер-зум картинки — как у обычных карточек предзаказа (.shopPage__card:hover img → scale). */
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured:hover img { transform: scale(1.04); }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__content { padding: 20px 28px 34px; display: flex; flex-direction: column; gap: 16px; min-height: 100%; align-items: flex-start; overflow: hidden}
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__title { color: var(--Secondary-White, #FFF);
font-size: 32px;
font-style: normal;
font-weight: 500;
line-height: 106.25%;
letter-spacing: -0.64px; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__desc { color: #fff; font-size: 15px; line-height: 1.25; margin: 0; }
/* Таймер последних суток в закрепе — центрирован, красный на тёмной карточке. */
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__countdown { align-self: center; text-align: center; color: #e01e37; display: flex; flex-direction: column; align-items: center; gap: 2px; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__countdownTitle { display: flex; align-items: center; justify-content: center; gap: 8px; font-size: 16px; font-weight: 500; line-height: 1; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__countdownRocket svg { display: block; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__countdownUnits { display: flex; justify-content: center; gap: 0; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__countdownUnit { display: flex; flex-direction: column; align-items: center; line-height: 1; min-width: 56px; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__countdownUnit b { font-size: 30px; font-weight: 700; line-height: 1; font-variant-numeric: tabular-nums; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__countdownUnit small { margin-top: 2px; font-size: 12px; font-weight: 400; line-height: 1; white-space: nowrap; text-transform: lowercase; }
/* Последние сутки: таймер часы/минуты/секунды под суммой «Собрано» — справа, красный. */
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__countdown--underSum { align-self: flex-end; text-align: right; margin-top: 22px; gap: 0; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__countdown--underSum .preordersFeatured__countdownUnits { justify-content: flex-end; }
/* Подписи таймера (часов/минут/секунд) — белые и жирные (цифры остаются красными). */
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__countdown--underSum .preordersFeatured__countdownUnit small { color: var(--Secondary-White, #FFF); font-weight: 700; }
/* Когда есть таймер (последние сутки) — плотнее вертикально, чтобы hero не растягивался. */
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_release .preordersFeatured__content { gap: 14px; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__foot { margin-top: auto; display: flex; justify-content: space-between; gap: 14px; align-items: flex-end; width: 100%; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__leftMeta { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
/* Активный проект: левый текст растащен на высоту правого блока — верхняя строка
   («N дней до завершения») по «Собрано», нижняя («N участников») по нижнему краю цифр. */
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--active .preordersFeatured__foot { align-items: stretch; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--active .preordersFeatured__leftMeta { justify-content: space-between; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__line { color: var(--Secondary-White, #FFF);
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 100%;
letter-spacing: -0.32px; display: inline-flex; align-items: center; gap: 8px; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__line--release { opacity: .95; font-weight: 700; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__line--participants { opacity: 1; font-weight: 700; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__line--urgent { color: #DE0028; }
/* «До завершения:» слева (последние сутки) — НЕ красный (белый), жирный. Сам таймер справа — красный. */
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__line--deadline { color: #e01e37; font-weight: 700; opacity: 1; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__line--start { color: #fff; align-items: flex-end; gap: 10px; flex-wrap: wrap; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__line .shopPage__preTimerHost { display: inline-block; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured .preTimer__part small {
	white-space: nowrap;
	min-width: 44px;
	display: block;
	text-align: center;
}
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__rightMeta { text-align: right; flex-shrink: 0; gap: 6px;
    display: flex;
    flex-direction: column; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__sumLabel { color: #31C992; font-size: 16px; line-height: 1; font-weight: 700; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__sum { color: var(--Basic-Green, #31C992);
text-align: right;
font-size: 36px;
font-style: normal;
font-weight: 700;
line-height: 100%;
letter-spacing: -0.72px; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__btn { display: inline-flex; justify-content: center; align-items: center; margin-top: 12px; border: 1px solid rgba(255,255,255,.9); border-radius: 14px; padding: 13px 18px; align-self: stretch; color: var(--Secondary-White, #FFF);
font-size: 18px;
font-style: normal;
font-weight: 700;
line-height: normal; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preordersFeatured__sum,
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preordersFeatured__sumLabel { color: #6d15ec; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--finished .preordersFeatured__sum,
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--finished .preordersFeatured__sumLabel { color: #f48812; }
:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured .shopPage__preStatusBadge { text-transform: uppercase; }

:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preordersFeatured__line--start {
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 16px;
}

:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preordersFeatured__line--start > span:first-child {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	white-space: nowrap;
}

:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preordersFeatured__line--start .shopPage__preTimerHost {
	margin-left: 0;
}

:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preordersFeatured__foot {
	align-items: flex-start;
}

:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preordersFeatured__rightMeta {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	align-self: flex-start;
}

:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preTimer__grid {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: max-content;
	gap: 0 18px;
	align-items: start;
	justify-content: end;
}

:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preTimer__part {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
}

:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preTimer__part b {
	color: #6d15ec;
	font-size: 44px;
	line-height: 0.92;
	font-weight: 700;
	letter-spacing: -0.02em;
}

:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preTimer__part small {
	color: rgba(255, 255, 255, 0.92);
	font-size: 16px;
	line-height: 1;
	font-weight: 400;
	text-transform: none;
	white-space: nowrap;
	min-width: 60px;
	display: block;
	text-align: center;
}

:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preTimer__part:last-of-type small {
	min-width: 80px;
	max-width: 80px;
}

/* Preorder listing cards (grid) */
.shopPage--preorders .shopPage__card--preorder,
.myMainPreorders .shopPage__card--preorder {
	background: transparent;
	border-radius: 24px;
	padding: 0;
	gap: 0;
}
.shopPage--preorders .shopPage__grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}
.shopPage--preorders .shopPage__card--preorder .shopPage__card__photo,
.myMainPreorders .shopPage__card--preorder .shopPage__card__photo {
	aspect-ratio: 532 / 300; /* обычный баннер 532×300 (загружать 1064×600) */
	border-radius: 20px;
}
.shopPage--preorders .shopPage__card--preorder .shopPage__card__info,
.myMainPreorders .shopPage__card--preorder .shopPage__card__info {
	padding: 24px;
	gap: 16px;
	border-radius: 20px;
	background: #f5f5f5;
}
.shopPage--preorders .shopPage__card__badgesCol,
.myMainPreorders .shopPage__card__badgesCol {
	position: absolute;
	top: 24px;
	left: 24px;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	max-width: calc(100% - 56px);
	pointer-events: none;
}
.shopPage--preorders .shopPage__card__badgesCol .shopPage__card__badge,
.myMainPreorders .shopPage__card__badgesCol .shopPage__card__badge {
	position: static;
}
.shopPage--preorders .shopPage__card__badge,
.shopPage--preorders .shopPage__card__cta,
.myMainPreorders .shopPage__card__badge,
.myMainPreorders .shopPage__card__cta {
	display: none !important;
}
:is(.shopPage--preorders, .lkPinnedPreorder, .myMainPreorders, .lkPreorder) .shopPage__preStatusBadge {
	display: inline-block;
	padding: 5px 12px;
	border-radius: 999px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0.02em;
	text-transform: uppercase;
}
:is(.shopPage--preorders, .lkPinnedPreorder, .myMainPreorders, .lkPreorder) .shopPage__preStatusBadge--active {
	background: #31C992;
	color: #0A0A0A;
}
:is(.shopPage--preorders, .lkPinnedPreorder, .myMainPreorders, .lkPreorder) .shopPage__preStatusBadge--soon_start {
	background: #7b2cbf;
	color: #fff;
}
:is(.shopPage--preorders, .lkPinnedPreorder, .myMainPreorders, .lkPreorder) .shopPage__preStatusBadge--soon_release {
	background: #DE0028;
	color: #fff;
}
:is(.shopPage--preorders, .lkPinnedPreorder, .myMainPreorders, .lkPreorder) .shopPage__preStatusBadge--finished {
	background: #f48812;
	color: #0A0A0A;
}
.shopPage--preorders .shopPage__card__metaRow {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-top: 2px;
}
.shopPage--preorders .shopPage__card__props--pill,
.myMainPreorders .shopPage__card__props--pill {
	flex: 0 0 auto;
	min-width: auto;
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	min-height: 32px;
	box-sizing: border-box;
	gap: 5px;
	padding: 6px 10px;
	background: transparent;
	border: 1px solid var(--Secondary-Black, #0A0A0A);
	border-radius: 7px;
	margin-bottom: 0;
}
.shopPage--preorders .shopPage__card__type--pill,
.myMainPreorders .shopPage__card__type--pill {
	flex: 0 0 auto;
	max-width: 60%;
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	box-sizing: border-box;
	padding: 6px 12px;
	border-radius: 8px;
	background: #1a1a1a;
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	white-space: normal;
	word-break: break-word;
}
.shopPage--preorders .shopPage__card--preorder .shopPage__card__name,
.myMainPreorders .shopPage__card--preorder .shopPage__card__name {
	font-size: 24px;
	font-weight: 700;
	line-height: 1.15;
	min-height: 48px;
}
.shopPage--preorders .shopPage__card__desc,
.myMainPreorders .shopPage__card__desc {
	font-size: 14px;
	line-height: 1.5;
	color: #555;
	margin-top: 6px;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
/* ВАЖНО: раньше здесь был ещё `.content-paragraph:has(> br:only-child)` — попытка спрятать
   пустой абзац-заглушку `<p><br></p>`, который иногда оставляют WYSIWYG-редакторы. Но CSS
   `:only-child` игнорирует ТЕКСТОВЫЕ узлы (считает только соседние элементы), поэтому селектор
   ложно матчил и абзацы с НАСТОЯЩИМ текстом в две строки через один `<br>` — например
   «Кольцо всевластия.<br>Стартовый набор» в заголовке слайда на главной. Правило было глобальным
   (без скоупа), поэтому прятало такие заголовки/описания на ЛЮБОЙ странице сайта, не только в
   предзаказах. Оставлен только безопасный `:empty` — он ловит абзацы без единого дочернего узла
   (совсем пустые), но не трогает абзацы с реальным текстом вокруг `<br>`. */
.content-paragraph:empty {
	display: none;
}
.shopPage--preorders .shopPage__preFoot,
.myMainPreorders .shopPage__preFoot {
	display: flex;
	justify-content: space-between;
	/* Растягиваем колонки на общую высоту: верхняя строка слева («N дней…») встаёт вровень
	   с «Собрано», нижняя («N участников») — по нижнему краю суммы (как в hero-баннере).
	   Для countdown-карточек своё правило (align-items:flex-end) ниже — их не трогаем. */
	align-items: stretch;
	gap: 12px;
	margin-top: auto;
	padding-top: 4px;
}
.shopPage--preorders .shopPage__preFoot__left,
.myMainPreorders .shopPage__preFoot__left {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 6px;
	min-width: 0;
	overflow: visible;
	flex: 1 1 auto;
}
/* Если слева всего одна строка (напр. «0 участников», без «N дней до завершения») —
   прижимаем её к низу, чтобы она была вровень с суммой «Собрано», а не висела вверху футера. */
.shopPage--preorders .shopPage__preFoot__left > :only-child,
.myMainPreorders .shopPage__preFoot__left > :only-child {
	margin-top: auto;
}
.shopPage--preorders .shopPage__preFoot__right,
.myMainPreorders .shopPage__preFoot__right {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	text-align: right;
	flex-shrink: 0;
	gap: 6px;
}
.shopPage--preorders .shopPage__preFinishedIcon {
	display: block;
	width: 40px;
	height: 40px;
}
.shopPage--preorders .shopPage__preIco {
	flex-shrink: 0;
	color: #0a0a0a;
}
.shopPage--preorders .shopPage__grid .shopPage__card--has-countdown .shopPage__card__info,
.myMainPreorders .shopPage__card--has-countdown .shopPage__card__info {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.shopPage--preorders .shopPage__grid .shopPage__card--has-countdown .shopPage__preFoot,
.myMainPreorders .shopPage__card--has-countdown .shopPage__preFoot {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 12px;
	margin-top: auto;
	padding-top: 4px;
}

.shopPage--preorders .shopPage__grid .shopPage__card--has-countdown .shopPage__preFoot__left,
.myMainPreorders .shopPage__card--has-countdown .shopPage__preFoot__left {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
}

.shopPage--preorders .shopPage__grid .shopPage__card--preorder .shopPage__preFoot__left .shopPage__preParticipants,
.shopPage--preorders .shopPage__grid .shopPage__card--has-countdown .shopPage__preParticipants,
.shopPage--preorders .shopPage__preParticipants,
.myMainPreorders .shopPage__card--preorder .shopPage__preFoot__left .shopPage__preParticipants,
.myMainPreorders .shopPage__card--has-countdown .shopPage__preParticipants,
.myMainPreorders .shopPage__preParticipants {
	display: inline-flex !important;
	align-items: center;
	gap: 5px;
	font-size: 16px;
	line-height: 1.2;
	color: #222;
	flex-shrink: 0;
	white-space: nowrap;
	visibility: visible;
	opacity: 1;
}

.shopPage--preorders .shopPage__grid .shopPage__card--preorder .shopPage__preFoot__left .shopPage__preParticipants svg,
.shopPage--preorders .shopPage__grid .shopPage__card--has-countdown .shopPage__preParticipants svg,
.myMainPreorders .shopPage__card--preorder .shopPage__preFoot__left .shopPage__preParticipants svg,
.myMainPreorders .shopPage__card--has-countdown .shopPage__preParticipants svg {
	flex-shrink: 0;
}

.shopPage--preorders .shopPage__grid .shopPage__card--has-countdown .shopPage__preFoot__right,
.myMainPreorders .shopPage__card--has-countdown .shopPage__preFoot__right {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	flex-shrink: 0;
}

.shopPage--preorders .shopPage__grid .shopPage__card--has-countdown .preTimer__grid,
.shopPage--preorders .shopPage__grid .shopPage__card--preorder-type-countdown .preTimer__grid,
.myMainPreorders .shopPage__card--has-countdown .preTimer__grid,
.myMainPreorders .shopPage__card--preorder-type-countdown .preTimer__grid {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: max-content;
	gap: 2px 12px;
	align-items: end;
	justify-items: center;
	justify-content: end;
}

.shopPage--preorders .shopPage__grid .shopPage__card--has-countdown .preTimer__part,
.shopPage--preorders .shopPage__grid .shopPage__card--preorder-type-countdown .preTimer__part,
.myMainPreorders .shopPage__card--has-countdown .preTimer__part,
.myMainPreorders .shopPage__card--preorder-type-countdown .preTimer__part {
	display: flex;
	flex-direction: column;
	gap: 4px;
	align-items: center;
	justify-content: flex-end;
	min-width: 2.6em;
}

.shopPage--preorders .shopPage__grid .shopPage__card--has-countdown .preTimer__part b,
.shopPage--preorders .shopPage__grid .shopPage__card--preorder-type-countdown .preTimer__part b,
.myMainPreorders .shopPage__card--has-countdown .preTimer__part b,
.myMainPreorders .shopPage__card--preorder-type-countdown .preTimer__part b {
	color: var(--Basic-Purple, #6d15ec);
	text-align: center;
	font-size: 36px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	letter-spacing: -0.72px;
	font-variant-numeric: tabular-nums;
	display: block;
}

.shopPage--preorders .shopPage__grid .shopPage__card--has-countdown .preTimer__part small,
.shopPage--preorders .shopPage__grid .shopPage__card--preorder-type-countdown .preTimer__part small,
.myMainPreorders .shopPage__card--has-countdown .preTimer__part small,
.myMainPreorders .shopPage__card--preorder-type-countdown .preTimer__part small {
	color: var(--Secondary-Black, #0a0a0a);
	text-align: center;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	text-transform: none;
	display: block;
	white-space: nowrap;
	min-width: 44px;
}

/* Таймер в любой карточке (в т.ч. AJAX-рендер без --has-countdown). Не задевает featured-hero (он .preordersFeatured). */
.shopPage__card .shopPage__preTimerHost .preTimer__grid {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: max-content;
	gap: 2px 12px;
	align-items: end;
	justify-items: center;
	justify-content: end;
}
.shopPage__card .shopPage__preTimerHost .preTimer__part {
	display: flex;
	flex-direction: column;
	gap: 4px;
	align-items: center;
	justify-content: flex-end;
	min-width: 2.6em;
}
.shopPage__card .shopPage__preTimerHost .preTimer__part b {
	color: var(--Basic-Purple, #6d15ec);
	text-align: center;
	font-size: 36px;
	font-weight: 700;
	line-height: 100%;
	letter-spacing: -0.72px;
	font-variant-numeric: tabular-nums;
	display: block;
}
.shopPage__card .shopPage__preTimerHost .preTimer__part small {
	color: var(--Secondary-Black, #0a0a0a);
	text-align: center;
	font-size: 12px;
	font-weight: 400;
	line-height: 100%;
	text-transform: none;
	display: block;
	white-space: nowrap;
	min-width: 44px;
}

.shopPage--preorders .shopPage__grid .shopPage__card--has-countdown .shopPage__preStartHint {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: var(--Secondary-Black, #0a0a0a);
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.32px;
}

.shopPage--preorders .shopPage__preStartHint {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	font-weight: 600;
	color: #0a0a0a;
}
.shopPage--preorders .shopPage__preRelease {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 16px;
	color: #0A0A0A;
}
.shopPage--preorders .shopPage__preRelease--urgent {
	color: #e01845;
}
.shopPage--preorders .shopPage__preRelease--muted {
	color: #666;
	font-weight: 500;
}
/* Таймер обратного отсчёта на карточке (последние сутки предзаказа) — простой текст,
   как «N дней до завершения»: тот же кегль и НЕ жирный, без лишних отступов между цифрами,
   gap как у строки «участников», чтобы обе строки были на одном уровне по левому краю. */
.shopPage--preorders .shopPage__preRelease--timer {
	gap: 6px;
	font-variant-numeric: tabular-nums;
}
.shopPage--preorders .shopPage__preRelease--timer .shopPage__preRelease__clock {
	font-weight: 400;
	letter-spacing: normal;
}
.shopPage--preorders .shopPage__preRelease--timer .shopPage__preRelease__clock b {
	font-weight: 400;
}
.shopPage--preorders .shopPage__preParticipants {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 16px;
	color: #222;
}
.shopPage--preorders .shopPage__preParticipants svg {
	flex-shrink: 0;
}
.shopPage--preorders .shopPage__preCollectedLabel {
	font-size: 16px;
	color: #31C992;
	line-height: 100%;
}
.shopPage--preorders .shopPage__preCollectedSum {
	font-size: 36px;
	font-weight: 700;
	color: #31C992;
	line-height: 100%;
	letter-spacing: -0.72px;
}
.shopPage--preorders .shopPage__preStatus--finished .shopPage__preCollectedLabel,
.shopPage--preorders .shopPage__preStatus--finished .shopPage__preCollectedSum {
	color: #F48812;
}
.shopPage--preorders .shopPage__preTimerHost {
	display: block;
}

.preorderPinnedReward {
	display: grid;
	grid-template-columns: 140px 1fr;
	gap: 12px;
	background: #f2f2f2;
	border-radius: 14px;
	padding: 12px;
}
.preorderPinnedReward img { width: 140px; height: 100px; border-radius: 10px; object-fit: cover; }
.preorderPinnedReward__title { font-size: 16px; font-weight: 600; }
.preorderPinnedReward__price { color: #31C992; font-weight: 700; margin-top: 4px; }
.preorderPinnedReward__actions { display: flex; gap: 8px; margin-top: 8px; }
.preorderPinnedReward__actions button, .preorderPinnedReward__more {
	background: #31C992; color: #fff; border: 0; border-radius: 8px; padding: 8px 10px; text-decoration: none; cursor: pointer;
}

@media (max-width: 1200px) {
	:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured {
		grid-template-columns: 1fr;
		/* На мобиле hero стакается (картинка сверху, контент снизу) — фикс-высота не нужна.
		   Сбрасываем унаследованные с десктопа строки (400px), иначе картинка попадала бы в фикс-строку. */
		height: auto;
		grid-template-rows: auto;
	}
	/* Картинка hero на мобиле: на всю ширину, высота по пропорции (видна ЦЕЛИКОМ, не обрезается),
	   ограничена сверху max-height; object-fit:contain страхует при клампе высоты. */
	:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured img {
		width: 100%;
		height: auto;
		min-width: 0;
		max-height: 360px;
		object-fit: contain;
		align-self: start;
	}

	:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__title {
		font-size: 20px;
		min-height: 34px;
		display: flex;
		align-items: center;
	}

	:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__sum {
		font-size: 20px;
	}

	:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__btn {
		font-size: 14px;
	}

	:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__content {
		padding: 20px;
		gap: 8px;
	}

	:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured__sumLabel {
		font-size: 14px;
	}

	.shopPage--preorders .shopPage__preCollectedSum {
		font-size: 24px;
	}

	.shopPage--preorders .shopPage__grid {
		gap: 14px;
	}
}

@media (max-width: 720px) {
	.shopPage--preorders .shopPage__grid {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.shopPage--preorders .shopPage__card--preorder .shopPage__card__photo {
		aspect-ratio: 532 / 300;
	}
}

.shopRuleFileCard {
	display: inline-flex;
	flex-direction: column;
	vertical-align: top;
	gap: 32px;
	width: 242px;
	border-radius: 20px;
	border: 1px solid #E7E9EE;
	padding: 24px;
	margin: 0 12px 12px 0;
}

.shopRuleFileCard--link {
	text-decoration: none;
}

.shopRuleFileCard__iconWrap {
	width: 44px;
	height: 44px;
}

.shopRuleFileCard__icon,
.shopRuleFileCard__iconFallback {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.shopRuleFileCard__title {
	color: var(--Black, #000);
	font-size: 15px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	letter-spacing: -0.15px;
	margin-bottom: auto;
}

.shopRuleFileCard__download {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--Basic-Green, #31C992);
	text-decoration: none;
	font-size: 15px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	letter-spacing: -0.15px;
}

.shopRuleFileCard__download:hover {
	text-decoration: underline;
}

.shopRuleFileCard__downloadIcon {
	will-change: transform;
}

.shopRuleFileCard--link:hover .shopRuleFileCard__downloadIcon,
.shopRuleFileCard--link:focus-visible .shopRuleFileCard__downloadIcon {
	animation: shopRuleDownloadIconDrop 0.55s ease-in-out;
}

@keyframes shopRuleDownloadIconDrop {
	0% {
		transform: translateY(-4px);
	}
	35% {
		transform: translateY(2px);
	}
	65% {
		transform: translateY(-1px);
	}
	100% {
		transform: translateY(0);
	}
}

@media (max-width: 991px) {
	.shopRuleFileCard {
		width: calc(50% - 12px);
		min-width: 220px;
	}
}

@media (max-width: 640px) {
	.shopRuleFileCard {
		width: 100%;
		margin-right: 0;
	}

	.shopRuleFileCard__title {
		font-size: 28px;
	}

	.shopRuleFileCard__download {
		font-size: 28px;
	}
}

/* Preorder detail (element): якорные табы — отступ под липкую навигацию */
.shopPage--preorders-detail {
	scroll-padding-top: 0;
}

/* Preorder detail (element) */
.shopProduct--preorderDetail {
	display: grid;
	grid-template-columns: 808px 530px;
	gap: 22px;
	align-items: start;
}

.preorderIntroSection {
	grid-column: 1 / -1;
	/* Растягиваем на всю ширину родителя (.shopProduct — flex). Без этого секция была
	   flex-элементом с flex-grow:0 и сжималась до ширины hero-картинки, оставляя белое поле
	   справа от первого экрана на средних ширинах (напр. ~981px). */
	width: 100%;
	display: grid;
	grid-template-columns: 808px 530px;
	gap: 22px;
	position: relative;
	z-index: 0;
	padding: 65px 0;
	background: transparent;
}

.preorderIntroSection::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	width: 100vw;
	transform: translateX(-50%);
	z-index: -1;
	background:
		radial-gradient(1200px 360px at 50% 100%, rgba(255, 184, 0, 0.18) 0%, rgba(255, 184, 0, 0) 70%),
		radial-gradient(950px 360px at 50% 0%, rgba(73, 56, 22, 0.35) 0%, rgba(20, 20, 20, 0.7) 72%),
		#0f1012;
}

/* Есть кадр кампании: ::before — размытая картинка, ::after — чёткое затемнение.
   Размытие «съедает» края слоя, поэтому растягиваем его за границы секции
   и возвращаем к ним через clip-path (он применяется уже после filter). */
.preorderIntroSection--hasBg::before {
	/* По вертикали растягиваем и обрезаем обратно — края остаются чёткими.
	   По горизонтали ширину не увеличиваем: слой попал бы в область прокрутки
	   и сдвинул страницу (clip-path из неё элемент не убирает). */
	top: -70px;
	bottom: -70px;
	width: 100vw;
	background: var(--preorder-intro-bg) center / cover no-repeat, #0f1012;
	filter: blur(22px);
	clip-path: inset(70px 0);
}

.preorderIntroSection--hasBg::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	width: 100vw;
	transform: translateX(-50%);
	z-index: -1;
	background:
		/* Непрозрачные края закрывают затухание размытия по бокам экрана. */
		linear-gradient(90deg, #0f1012 0, rgba(15, 16, 18, 0) 44px, rgba(15, 16, 18, 0) calc(100% - 44px), #0f1012 100%),
		radial-gradient(1200px 360px at 50% 100%, rgba(255, 184, 0, 0.16) 0%, rgba(255, 184, 0, 0) 70%),
		linear-gradient(180deg, rgba(15, 16, 18, 0.72) 0%, rgba(15, 16, 18, 0.82) 100%);
}

.shopProduct--preorderDetail .shopProductTabs--preorderWide {
	grid-column: 1 / -1;
}

.shopProduct--preorderDetail .shopProduct__left {
	width: 100%;
	min-width: 0;
}

.shopProduct--preorderDetail .shopProduct__stage {
	width: 100%;
	border-radius: 40px;
	overflow: hidden;
	padding: 0;
	min-height: 0;
	height: 471px;
	aspect-ratio: auto;
	background: #10151f;
}

.shopProduct--preorderDetail .shopProduct__stageSlides,
.shopProduct--preorderDetail .shopProduct__stageSlide {
	height: 100%;
}

.shopProduct--preorderDetail .shopProduct__main-img,
.shopProduct--preorderDetail .shopProduct__mainVideo {
	width: 100%;
	height: 100%;
	max-width: none;
	max-height: none;
	object-fit: cover;
}

.shopProduct--preorderDetail .shopProduct__thumbs {
	display: none;
}

.preorderDetailSummary {
	background: #fff;
	border-radius: 40px;
	padding: 24px;
	box-shadow: none;
	border: 1px solid #dfdfdf;
	height: 471px;
	display: flex;
	flex-direction: column;
}

/* Завершённый предзаказ: высота как у левой колонки (слайдера) — фиксированные 471px.
   Контент помещается за счёт гибкой hero-иконки (она ужимается, см. ниже). */
.preorderDetailSummary--finished {
	height: 471px;
	overflow: hidden;
}

.preorderDetailSummary__metaRow {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	gap: 10px;
	margin-bottom: 10px;
}

.preorderDetailSummary__specs {
	display: flex;
	flex-wrap: wrap;
	gap: 0 0;
	padding: 4px 8px;
	border: 1px solid #0a0a0a;
	border-radius: 7px;
	font-size: 16px;
	font-weight: 500;
	color: #0a0a0a;
	line-height: 1;
}

.preorderDetailSummary__spec {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.preorderDetailSummary__spec + .preorderDetailSummary__spec::before {
	content: "\2022";
	margin: 0 0 0 8px;
}

.preorderDetailSummary__spec svg {
	width: 18px;
	height: 18px;
}

.preorderDetailSummary__typeBadge {
	background: var(--Secondary-Black, #0A0A0A);
	color: var(--Secondary-White, #FFF);
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	padding: 6px 12px;
	border-radius: 8px;
}

.preorderDetailSummary__statusRow {
	margin-bottom: 8px;
}

.preorderDetailSummary__status {
	display: inline-block;
	font-size: 12px;
	font-weight: 700;
	padding: 4px 10px;
	border-radius: 999px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.preorderDetailSummary__status--active {
	background: #31c992;
	color: #fff;
}

.preorderDetailSummary__status--soon_start {
	background: #f2c94c;
	color: #0a0a0a;
}

.preorderDetailSummary__status--soon_release {
	background: #2f80ed;
	color: #fff;
}

.preorderDetailSummary__status--finished {
	background: #bdbdbd;
	color: #fff;
}

.preorderDetailSummary__title {
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 24px;
	font-style: normal;
	font-weight: 500;
	line-height: 100%;
	letter-spacing: -0.48px;
	min-height: 64px;
	margin: 0 0 8px;
}

.preorderDetailSummary__funding {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	gap: 6px;
}

.preorderDetailSummary__fundingLabel {
	color: var(--Basic-Green, #31C992);
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.32px;
	text-align: right;
}

.preorderDetailSummary__fundingVal {
	color: var(--Basic-Green, #31C992);
	text-align: right;
	font-size: 36px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	letter-spacing: -0.72px;
	margin-bottom: 8px;
}

.preorderDetailSummary--finished .preorderDetailSummary__fundingLabel,
.preorderDetailSummary--finished .preorderDetailSummary__fundingVal {
	color: #f58b12;
}

.preorderDetailSummary__fundingTarget {
	font-size: 13px;
	color: #888;
	margin-top: 2px;
}

.preorderDetailSummary__goalBar {
	height: 6px;
	background: #ececec;
	border-radius: 10px;
	overflow: hidden;
	margin-top: 8px;
}

.preorderDetailSummary__goalBarFill {
	height: 100%;
	background: #31c992;
	border-radius: 10px;
}

/* Статус «Успей купить» (soon_release) — дни до релиза выделяем красным,
   независимо от того, сколько именно дней осталось. */
.preorderDetailSummary--soon_release .preorderDetailSummary__stat--rocket {
	color: #d90429;
}

/* Компактный таймер последних суток «До завершения: Час/Минут/Секунд» (красный). */
.preorderDetailSummary__miniCountdown {
	color: #d90429;
	gap: 8px;
	white-space: nowrap;
}
.preorderDetailSummary__miniRocket svg {
	display: block;
}
.preorderDetailSummary__miniLabel {
	font-size: 16px;
	font-weight: 400;
	letter-spacing: -0.32px;
}
.preorderDetailSummary__miniClock {
	font-size: 16px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: -0.32px;
	font-variant-numeric: tabular-nums;
}
/* Цифры таймера лежат в <b> (UA даёт им bold) — возвращаем обычное начертание. */
.preorderDetailSummary__miniClock b {
	font-weight: 400;
}
.preorderDetailSummary__miniUnits {
	display: flex;
	align-items: flex-start;
	gap: 0;
}
/* Минимальная ширина под самую длинную подпись («Секунды») у всех юнитов —
   смена склонения не меняет габарит, таймер не «пляшет»; зазор задаёт сама ширина. */
.preorderDetailSummary__miniUnit {
	display: flex;
	flex-direction: column;
	align-items: center;
	line-height: 1;
	min-width: 48px;
}
.preorderDetailSummary__miniUnit b {
	font-size: 22px;
	font-weight: 700;
	line-height: 1;
	font-variant-numeric: tabular-nums;
}
.preorderDetailSummary__miniUnit small {
	margin-top: 2px;
	font-size: 11px;
	font-weight: 400;
	line-height: 1;
	white-space: nowrap;
	text-transform: lowercase;
}

.preorderDetailSummary__countdown {
	border: 1px solid #6d15ec;
	border-radius: 16px;
	padding: 16px;
	margin: 4px 0 16px;
}

.preorderDetailSummary__countdownTitle {
	font-size: 18px;
	font-weight: 500;
	line-height: 1;
	margin-bottom: 10px;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}

.preorderDetailSummary__countdownGrid {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: minmax(72px, max-content);
	justify-content: center;
	gap: 12px;
}

.preorderDetailSummary__countdownCell {
	display: grid;
	gap: 4px;
	text-align: center;
}

.preorderDetailSummary__countdownCell span {
	font-size: 56px;
	line-height: 1;
	font-weight: 700;
	color: #6d15ec;
}

.preorderDetailSummary__countdownCell small {
	font-size: 16px;
	line-height: 1;
	color: #0a0a0a;
	text-transform: lowercase;
}

.preorderDetailSummary__watchers {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 16px;
	font-size: 16px;
	line-height: 1.1;
}

.preorderDetailSummary--soon_start {
	display: flex;
	flex-direction: column;
}

.preorderDetailSummary--soon_start .preorderDetailSummary__countdown {
	margin-top: auto;
}

.preorderDetailSummary--soon_start .preorderDetailSummary__watchers {
	margin-top: 12px;
}

.preorderDetailSummary__countdownIcon,
.preorderDetailSummary__watchersIcon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.preorderDetailSummary__ctaRow--trackOnly {
	margin-bottom: 0;
}

.preorderDetailSummary__support.preorderDetailSummary__support--track {
	background: linear-gradient(180deg, #7d2cff 0%, #651de8 100%);
	border-radius: 20px;
	padding: 18px 20px;
	font-size: 18px;
	position: relative;
}

.preorderDetailSummary__support.preorderDetailSummary__support--track .button__label {
	font-size: 18px;
	line-height: 1;
	font-weight: 700;
}

/* Белая закладка справа на большой кнопке «Отслеживать проект» — визуальная связь с
   маленькой кнопкой-закладкой на активной карточке. Абсолют — чтобы текст оставался по центру. */
.preorderDetailSummary__trackIcon {
	position: absolute;
	right: 18px;
	top: 50%;
	transform: translateY(-50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
}

.preorderDetailSummary__trackIcon svg {
	display: block;
}

.preorderDetailSummary__stretch {
	border: 1px solid var(--Greys-Grey-1, #ECECEC);
	border-radius: 20px;
	padding: 8px 8px 8px 12px;
	margin-bottom: 16px;
}

.preorderDetailSummary__stretchHead {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 8px;
	font-size: 16px;
	margin-bottom: 10px;
	color: #0a0a0a;
	-ms-align-items: center;
	align-items: center;
}

.preorderDetailSummary__stretchTarget {
	font-weight: 500;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-ms-align-items: center;
	align-items: center;
	gap: 2px;
}

.preorderDetailSummary__lock {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	justify-content: center;
}

.preorderDetailSummary__stretchTitle {
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%; 
	letter-spacing: -0.3px;
}

.preorderDetailSummary__stretchBar {
	height: 8px;
	background: #f6f6f6;
	border-radius: 999px;
	overflow: hidden;
	margin-bottom: 12px;
}

.preorderDetailSummary__stretchBarFill {
	height: 100%;
	background: #31c992;
	border-radius: 8px;
}

/* Достигнутая сверхцель (следующей нет): замок ни к чему — цель открыта. */
.preorderDetailSummary__stretch--reached .preorderDetailSummary__lock { display: none; }
.preorderDetailSummary__stretch--reached .preorderDetailSummary__stretchTitle { color: #1a9d70; }

.preorderDetailSummary__stretchBody {
	display: flex;
	gap: 10px;
	align-items: center;
}

.preorderDetailSummary__stretchBody--hasImage .preorderDetailSummary__stretchText {
	flex: 1;
}

.preorderDetailSummary__stretchText {
	flex: 1;
	min-width: 0;
	overflow: hidden;
	color: #000;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 15px;
	font-style: normal;
	font-weight: 500;
	line-height: 100%;
}

.preorderDetailSummary__stretchDesc {
	margin: 0;
	/* Родитель .stretchText — nowrap; Chrome при line-clamp всё равно переносит, а Firefox — нет
	   (название обрезалось в одну строку). Явно разрешаем перенос. */
	white-space: normal;
	line-height: 1.2;
	display: -webkit-box;
	line-clamp: 2;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.preorderDetailSummary__stretchImg {
	width: 132px;
	height: 132px;
	border-radius: 18px;
	overflow: hidden;
	flex-shrink: 0;
	align-self: center;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
}

.preorderDetailSummary__stretchImg img {
	width: 100%;
	height: 100%;
	object-fit: cover; /* картинка на всю площадь фрейма, углы скруглены обрезкой контейнера — без сильного отступа */
	object-position: center;
}

.preorderDetailSummary__stats {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.32px;
	margin-top: auto;
	margin-bottom: 12px;
}

.preorderDetailSummary__stat {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-direction: row;
	-moz-flex-direction: row;
	-ms-flex-direction: row;
	-o-flex-direction: row;
	flex-direction: row;
	-ms-align-items: center;
	align-items: center;
	gap: 6px;
}

.preorderDetailSummary__stat--finished {
	color: #f58b12;
}

.preorderDetailSummary__finishedHero {
	flex: 1 1 auto;
	min-height: 120px;
	max-height: 197px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	overflow: hidden;
}

.preorderDetailSummary__finishedHero svg {
	width: auto;
	height: 100%;
	max-width: 100%;
	max-height: 197px;
	display: block;
}

.preorderDetailSummary__finishedMeta {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 10px;
	margin-top: -10px;
	margin-bottom: 16px;
}

.preorderDetailSummary--finished .preorderDetailSummary__finishedMeta .preorderDetailSummary__funding {
	margin-left: auto;
}

.preorderDetailSummary--finished .preorderDetailSummary__finishedMeta .preorderDetailSummary__fundingVal {
	margin-bottom: 0;
}

.preorderDetailSummary__finishedStatus {
	border: 1px dashed #e0be74;
	border-radius: 24px;
	padding: 14px 16px;
	text-align: center;
	color: var(--Basic-Orange, #F48812);
	font-family: "Google Sans", sans-serif;
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	letter-spacing: 0;
	white-space: normal;
	word-break: break-word;
}

.preorderDetailSummary__ctaRow {
	display: flex;
	gap: 10px;
	align-items: stretch;
	margin-top: 0;
	margin-bottom: 0;
}

.preorderDetailSummary__support {
	flex: 1;
	height: 54px;
	border: none;
	border-radius: 28px;
	background: #31c992;
	color: #fff;
	font-size: 49px;
	font-weight: 700;
	line-height: 1;
	padding: 0 18px;
	cursor: pointer;
}

.preorderDetailSummary__bookmark {
	width: 54px;
	height: 54px;
	border-radius: 16px;
	/* НЕ нажата: белый фон, фиолетовая обводка, фиолетовая звезда */
	border: 1.5px solid #6d15ec;
	background: #fff;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: background .15s ease, border-color .15s ease;
}
.preorderDetailSummary__bookmark svg path {
	fill: #6d15ec;
	transition: fill .15s ease;
}

.preorderDetailSummary__bookmark.is-active {
	/* Нажата: фиолетовый фон, белая звезда */
	background: #6d15ec;
	border-color: #6d15ec;
}
.preorderDetailSummary__bookmark.is-active svg path {
	fill: #fff;
}

/* Подписанная кнопка остаётся кликабельной (повторный клик снимает подписку),
   поэтому курсор не меняем. */

.preorderDetailSummary__allRewards {
	display: none;
}

.shopProductTabs--preorderWide {
	margin-top: 8px;
}

.shopProductTabs__body--preorder {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(280px, 348px);
	gap: 22px;
	align-items: start;
	width: 100%;
}

/* Завершённый проект: правой колонки нет (side-компонент её не рисует) — раскладка в одну
   колонку, а контент центрируем. */
.shopProductTabs__body--preorder.shopProductTabs__body--finished,
.shopProductTabs__body--preorder.shopProductTabs__body--noside {
	grid-template-columns: minmax(0, 1fr);
}

.shopProductTabs__body--finished .shopProductTabs__main,
.shopProductTabs__body--noside .shopProductTabs__main {
	margin-left: auto;
	margin-right: auto;
}

/* Узкое окно/планшет (≤1200px): правая панель «быстрый заказ» больше не помещается — убираем её,
   раскладка в одну колонку. Текст НЕ растягиваем (у .shopProductTabs__main max-width:900px),
   вместо панели — плавающая кнопка «Поддержать» (см. .preorderStickySupport + JS). */
@media (max-width: 1200px) {
	.shopProductTabs__body--preorder {
		grid-template-columns: minmax(0, 1fr);
	}
	.shopProductTabs__body--preorder .shopProductTabs__side {
		display: none;
	}
}

/* Плавающая (sticky) кнопка «Поддержать» на узких экранах — доступ к заказу без прокрутки. */
.preorderStickySupport {
	position: fixed;
	left: 16px;
	right: 16px;
	bottom: 16px;
	z-index: 60;
	display: none;
	padding: 17px 24px;
	border: none;
	border-radius: 16px;
	background: #31c992;
	color: #fff;
	font-size: 17px;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.22);
	transition: filter 0.15s ease;
}
.preorderStickySupport.is-visible {
	display: block;
}
.preorderStickySupport:hover {
	filter: brightness(1.05);
}
/* Страховка: на широких экранах кнопка не показывается, даже если JS ошибётся с классом. */
@media (min-width: 1201px) {
	.preorderStickySupport.is-visible {
		display: none;
	}
}

.shopProductTabs__main {
	min-width: 0;
	max-width: 900px;
}


.shopProductTabs__side {
	position: sticky;
	top: 120px;
	display: grid;
	gap: 12px;
	max-width: 348px;
}

.shopProduct--preorderDetail .shopProductTabs__side {
	gap: 16px;	
}

.shopProductTabs__pinnedReward {
	border: 1px solid #ececec;
	border-radius: 20px;
	background: #fff;
	padding: 0;
	display: grid;
	gap: 0;
	overflow: hidden;
}

/* display:grid/flex у классов перебивает браузерное [hidden]{display:none},
   поэтому атрибут hidden сам по себе блок не прятал — задаём явно. */
.shopProductTabs__pinnedReward[hidden],
.shopProductTabs__sideOr[hidden] {
	display: none;
}

.shopProductTabs__pinnedThumb {
	display: block;
	overflow: hidden;
	background: #f5f5f5;
}

.shopProductTabs__pinnedThumb img {
	display: block;
	width: 100%;
	height: auto;
}

.shopProductTabs__pinnedBody {
	display: grid;
	gap: 8px;
	padding: 20px;
	border-radius: 0 0 20px 20px;
	background: var(--greys-property-1-hover, #F5F5F5);
}

.shopProductTabs__pinnedName {
	color: #0a0a0a;
	text-decoration: none;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.15;
}

.shopProductTabs__pinnedPrice {
	color: var(--Basic-Green, #31C992);
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%; /* 18px */
	letter-spacing: -0.36px;
}

.shopProductTabs__pinnedSave {
	color: var(--Basic-Green, #31C992);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.2;
}

.shopProductTabs__pinnedPriceRow {
	display: flex;
	align-items: baseline;
	gap: 8px;
	flex-wrap: wrap;
}

.shopProductTabs__pinnedPriceOld {
	color: #999;
	font-size: 14px;
	font-weight: 500;
	text-decoration: line-through;
}

.shopProductTabs__pinnedCart,
.shopProductTabs__allRewardsBtn {
	height: 54px;
	border: none;
	border-radius: 16px;
	font-size: 18px;
	font-weight: 700;
	cursor: pointer;
}

.shopProductTabs__pinnedCart {
	background: #31c992;
	color: #fff;
}

.shopProductTabs__allRewardsBtn {
	border-radius: 16px;
	background: var(--Basic-Purple, #6D15EC);
	color: #FFF;
	font-family: "Google Sans";
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	letter-spacing: -0.36px;
}

.shopProductTabs__sideOr {
	display: flex;
	align-items: center;
	gap: 16px;
}

.shopProductTabs__sideOr::before,
.shopProductTabs__sideOr::after {
	content: "";
	flex: 1 1 auto;
	height: 1px;
	background: #d9d9d9;
}

.shopProductTabs__sideOr span {
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	letter-spacing: -0.36px;
	text-transform: lowercase;
}

.preorderSideCart {
	border-radius: 20px;
	background: var(--Greys-Grey-0, #F5F5F5);
	padding: 20px;
	display: grid;
	gap: 16px;
	/* Не даём содержимому раздвинуть колонку шире .shopProductTabs__side. */
	min-width: 0;
}

.preorderSideCart[hidden] {
	display: none !important;
}

.preorderSideCart [hidden] {
	display: none !important;
}

.preorderSideCart__title {
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 21px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	letter-spacing: -0.42px;
}

.preorderSideCart__section {
	display: grid;
	gap: 10px;
}

.preorderSideCart__sectionLabel {
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 15px;
	font-style: normal;
	font-weight: 500;
	line-height: 100%;
	letter-spacing: -0.3px;
}

.preorderSideCart__item {
	border-radius: 12px;
	border: 1px solid var(--Greys-Grey-0, #F5F5F5);
	background: var(--Secondary-White, #FFF);
	padding: 10px 12px;
	display: grid;
	gap: 10px;
	position: relative;
}

/* Вся цепочка обёрток должна уметь сжиматься: у grid/flex-потомков min-width по умолчанию
   равен auto, поэтому любое длинное название тянуло колонку по своему содержимому. */
.preorderSideCart__section,
.preorderSideCart__section > div,
.preorderSideCart__list,
.preorderSideCart__item,
.preorderSideCart__itemTop {
	min-width: 0;
}

.preorderSideCart__itemTop {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
}

.preorderSideCart__itemName {
	overflow: hidden;
	color: var(--Secondary-Black, #0A0A0A);
	text-overflow: ellipsis;
	white-space: nowrap;
	/* Без min-width:0 флекс-элемент не сжимается ниже min-content, а при nowrap это
	   вся строка целиком: многоточие не срабатывало и длинное название распирало колонку. */
	min-width: 0;
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	letter-spacing: -0.3px;
}

.preorderSideCart__itemPrice {
	color: var(--Basic-Green, #31C992);
	font-size: 15px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	letter-spacing: -0.3px;
}

.preorderSideCart__remove {
	border: none;
	padding: 0;
	background: transparent;
	width: 20px;
	height: 20px;
	cursor: pointer;
	flex: 0 0 20px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 20px 20px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cmask id='mask0_13318_9916' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='20' height='20'%3E%3Crect width='20' height='20' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_13318_9916)'%3E%3Cpath d='M6.5 17C6.0875 17 5.73438 16.8531 5.44062 16.5594C5.14687 16.2656 5 15.9125 5 15.5V5.5H4V4H8V3H12V4H16V5.5H15V15.491C15 15.9137 14.8531 16.2708 14.5594 16.5625C14.2656 16.8542 13.9125 17 13.5 17H6.5ZM13.5 5.5H6.5V15.5H13.5V5.5ZM8 14H9.5V7H8V14ZM10.5 14H12V7H10.5V14Z' fill='%231C1B1F'/%3E%3C/g%3E%3C/svg%3E");
	bottom: 10px;
	right: 12px;
	position: absolute;
}

.preorderSideCart__totalRow {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	margin-top: 4px;
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	text-transform: uppercase;
}

.preorderSideCart__payBtn {
	height: 54px;
	border: none;
	border-radius: 12px;
	background: #31c992;
	color: var(--Secondary-White, #FFF);
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	cursor: pointer;
}

.preorderSideCart__payBtn--selectReward {
	border-radius: 16px;
	background: #0A0A0A;
}

/* Сноска про доставку — один в один как в мини-корзине (.cartFilledModal__note):
   та же иконка-коробка фоном, тёмный текст #0A0A0A, иконка по центру по вертикали. */
.preorderSideCart__deliveryNote {
	margin-top: 14px;
	color: #0A0A0A;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.35;
	padding-left: 28px;
	min-height: 20px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cmask id='mask0_pre_deliv' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='20' height='20'%3E%3Crect width='20' height='20' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_pre_deliv)'%3E%3Cpath d='M9.45842 17.452V10.3174L3.41675 6.83345V13.1812C3.41675 13.4269 3.47605 13.6502 3.59466 13.8512C3.71328 14.052 3.8773 14.2138 4.08675 14.3366L9.45842 17.452ZM10.5417 17.452L15.9134 14.3366C16.1229 14.2138 16.2869 14.052 16.4055 13.8512C16.5241 13.6502 16.5834 13.4269 16.5834 13.1812V6.83345L10.5417 10.3174V17.452ZM13.5801 7.287L16.1747 5.80616L10.6699 2.64116C10.4606 2.51825 10.2373 2.45679 10.0001 2.45679C9.76286 2.45679 9.5396 2.51825 9.33029 2.64116L7.45842 3.73262L13.5801 7.287ZM10.0001 9.36554L12.5178 7.91366L6.33029 4.35429L3.82071 5.81095L10.0001 9.36554Z' fill='%231C1B1F'/%3E%3C/g%3E%3C/svg%3E") no-repeat left center;
}

.preorderSideCart__addonsOnlyNote {
	color: #999;
	font-family: "Google Sans";
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: 120%;
	display: flex;
	align-items: flex-start;
	gap: 8px;
}

.preorderSideCart__addonsOnlyNote::after {
	content: "i";
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #999;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	flex: 0 0 20px;
}

.preorderRewardsGrid {
	margin-top: 8px;
}

.preorderRewardsToolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 14px;
}

.preorderRewardsToolbar__chip {
	border-radius: 999px;
	border: none;
	background: #0a0a0a;
	color: #fff;
	font-size: 16px;
	font-weight: 500;
	padding: 10px 20px;
	cursor: default;
}

.preorderRewardsSort {
	position: relative;
}

.preorderRewardsGrid--cards {
	margin-top: 0;
}

/* Награды — по одной карточке в ряд (горизонтальная: картинка слева, тело справа) */
.preorderRewardsList {
	display: grid;
	grid-template-columns: 1fr;
	gap: 20px;
}

.preorderRewardCard {
	display: grid;
	/* Квадратная миниатюра 400px слева, тело справа. Высота карточки — по контенту. */
	grid-template-columns: 400px minmax(0, 1fr);
	border: none;
	border-radius: 0;
	padding: 0;
}

.preorderRewardCard__thumb {
	/* Квадратная миниатюра по ширине колонки; по высоте не тянется за телом. */
	width: 100%;
	height: auto;
	aspect-ratio: 1;
	align-self: start;
	min-height: 0;
	max-height: none;
	border-radius: 20px;
	overflow: hidden;
	background: var(--Greys-Grey-0, #F5F5F5);
}

/* Дополнения — по 3 карточки в ряд (вертикальные: картинка сверху, тело снизу) */
.preorderRewardsList.preorderAddonsList {
	grid-template-columns: repeat(3, 1fr);
	align-items: stretch;
}
.preorderRewardsList.preorderAddonsList .preorderAddonCard {
	max-width: none;
	width: 100%;
}
.preorderRewardsList.preorderAddonsList .preorderAddonCard__thumb {
	width: 100%;
	height: auto;
	aspect-ratio: 1;
	min-height: 0;
	max-height: none;
}
@media (max-width: 1100px) {
	.preorderRewardsList.preorderAddonsList {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 680px) {
	.preorderRewardsList.preorderAddonsList {
		grid-template-columns: 1fr;
	}
	.preorderRewardsList.preorderAddonsList .preorderAddonCard {
		max-width: 360px;
		margin-left: auto;
		margin-right: auto;
	}
}

.preorderRewardCard__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.shopProduct__relatedCardBody {
	display: flex;
	flex-direction: column;
	gap: 8px;
	flex: 1;
}

.preorderRewardCard__body {
	background: var(--Greys-Grey-0, #F5F5F5);
	border-radius: 20px;
	/* Поджатые отступы, чтобы 2 строки заголовка + 3 строки описания + лейблы гарантированно
	   влезали в высоту карточки (400px) и ничего не резалось. */
	padding: 16px 24px;
	min-width: 0;
	gap: 4px;
	max-height: 400px;
	overflow: hidden;
}
/* На узких экранах — вертикальная раскладка, без фикс-высоты 400px. */
@media (max-width: 860px) {
	.preorderRewardCard {
		grid-template-columns: 1fr;
		height: auto;
	}
	.preorderRewardCard__thumb {
		aspect-ratio: 1;
		height: auto;
	}
	.preorderRewardCard__body {
		height: auto;
		/* max-height 400px с десктопа здесь снимаем: иначе кнопка «Поддержать» вылезала
		   за карточку и наезжала на картинку следующей награды. */
		max-height: none;
		overflow: visible;
	}
	.preorderRewardCard__body .preorderRewardCard__desc {
		flex: 0 0 auto;
	}
}

.preorderAddonsList {
	gap: 16px;
}

.preorderAddonCard {
	max-width: 290px;
	display: block;
}

.preorderAddonCard__thumb {
	display: block;
	width: 100%;
	min-height: 291px;
	max-height: 291px;
	border-radius: 20px;
	overflow: hidden;
	background: #f2f2f2;
}

.preorderAddonCard__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.preorderAddonCard__thumb--empty {
	background: #ececec;
}

.preorderAddonCard__body {
	padding: 14px 0 0;
	background: transparent;
	border-radius: 0;
	gap: 0;
	display: flex;
	flex-direction: column;
}

.preorderAddonCard__nameLink {
	text-decoration: none;
}

.preorderAddonCard__name {
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 18px;
	font-style: normal;
	font-weight: 500;
	line-height: 100%;
	letter-spacing: -0.36px;
	display: block;
}

.preorderAddonCard__priceRow {
	justify-content: flex-start;
	margin: 8px 0 12px;
	display: flex;
}

.preorderAddonCard__prices {
	display: inline-flex;
	align-items: baseline;
	gap: 10px;
}

.preorderAddonCard__price {
	color: var(--Basic-Green, #31C992);
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	letter-spacing: -0.36px;
}

.preorderAddonCard__priceOld {
	color: #999;
	/* Была 32px против 18px у актуальной цены — зачёркнутая выглядела крупнее новой.
	   Делаем её второстепенной. */
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.3px;
	text-decoration: line-through;
	white-space: nowrap;
}

.preorderAddonCard__cart {
	width: 100%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 0 20px;
	background-image: none;
	background-color: #31C992;
}

.preorderAddonCard__cart::before {
	content: "";
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cmask id='mask0_13202_1819' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='24' height='24'%3E%3Crect width='24' height='24' fill='%231C1B1F'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_13202_1819)'%3E%3Cpath d='M4.66675 21C4.20842 21 3.816 20.8368 3.4895 20.5105C3.16317 20.184 3 19.7916 3 19.3333V6.5C3 6.04167 3.16317 5.64933 3.4895 5.323C3.816 4.9965 4.20842 4.83325 4.66675 4.83325H7.16675C7.16675 3.50558 7.62642 2.36808 8.54575 1.42075C9.46525 0.473584 10.5889 0 11.9168 0C13.2769 0 14.4364 0.468083 15.3953 1.40425C16.3539 2.34025 16.8333 3.48325 16.8333 4.83325H19.3333C19.7916 4.83325 20.184 4.9965 20.5105 5.323C20.8368 5.64933 21 6.04167 21 6.5V19.3333C21 19.7916 20.8368 20.184 20.5105 20.5105C20.184 20.8368 19.7916 21 19.3333 21H4.66675ZM4.66675 19.3333H19.3333V6.5H4.66675V19.3333ZM15.4625 11.0458C16.432 10.0764 16.9168 8.92225 16.9168 7.58325H15.25C15.25 8.47225 14.9306 9.23617 14.2918 9.875C13.6528 10.5138 12.8888 10.8333 12 10.8333C11.1112 10.8333 10.3472 10.5138 9.70825 9.875C9.06942 9.23617 8.75 8.47225 8.75 7.58325H7.08325C7.08325 8.92225 7.568 10.0764 8.5375 11.0458C9.507 12.0153 10.6612 12.5 12 12.5C13.3388 12.5 14.493 12.0153 15.4625 11.0458ZM8.83325 4.83325H15.1667C15.1667 3.94442 14.8612 3.19442 14.25 2.58325C13.6388 1.97225 12.8888 1.66675 12 1.66675C11.1112 1.66675 10.3612 1.97225 9.75 2.58325C9.13883 3.19442 8.83325 3.94442 8.83325 4.83325Z' fill='white'/%3E%3C/g%3E%3C/svg%3E") center/24px 24px no-repeat;
}

.preorderRewardCard__badge {
	align-self: flex-start;
	border-radius: 20px;
	background: var(--Secondary-Black, #0A0A0A);
	padding: 4px 12px;
	color: var(--Secondary-White, #FFF);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.preorderRewardCard__nameLink {
	text-decoration: none;
}

.preorderRewardCard__name {
	color: var(--Secondary-Black, #0A0A0A);
	font-family: "Google Sans";
	font-size: 24px;
	font-style: normal;
	font-weight: 500;
	line-height: 1.15;
	letter-spacing: -0.48px;
	/* Заголовок — максимум 2 строки, дальше многоточие. */
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	white-space: normal;
	overflow: hidden;
	text-overflow: ellipsis;
}

.preorderRewardCard__subtitle {
	color: var(--Greys-Grey-4, #999);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	padding: 4px 0;
}

.preorderRewardCard__desc {
	font-size: 15px;
	line-height: 1.35;
	margin-top: 8px;
	color: #0a0a0a;
	overflow: hidden;
	transition: max-height .28s ease;
	will-change: max-height;
}

.preorderRewardCard__desc.is-collapsed {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	line-clamp: 3;
	max-height: none;
	overflow: hidden;
}

.preorderRewardCard__toggle {
	border: none;
	padding: 0;
	background: transparent;
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	cursor: pointer;
	align-self: flex-start;
}

.preorderRewardCard__toggle[hidden] {
	display: none !important;
}

/* Режим подробного описания награды: в теле остаётся только описание и «Назад»,
   всё остальное (бейдж, заголовок, подзаголовок, короткое описание, цена, мета,
   кнопка) скрывается. Картинка карточки не трогается. */
.preorderRewardCard__detail {
	display: none;
}
.preorderRewardCard.is-desc-open .preorderRewardCard__detail {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	min-height: 0;
}
/* Высота карточки зафиксирована (JS) — подробное описание скроллится внутри,
   поэтому раскрытие не меняет высоту блока. */
.preorderRewardCard.is-desc-open .preorderRewardCard__body {
	min-height: 0;
	overflow: hidden;
}
.preorderRewardCard.is-desc-open .preorderRewardCard__detailText {
	flex: 1 1 auto;
	min-height: 0;
	overflow-y: auto;
}
.preorderRewardCard.is-desc-open .preorderRewardCard__badge,
.preorderRewardCard.is-desc-open .preorderRewardCard__nameLink,
.preorderRewardCard.is-desc-open .preorderRewardCard__subtitle,
.preorderRewardCard.is-desc-open .preorderRewardCard__desc,
.preorderRewardCard.is-desc-open .preorderRewardCard__toggle,
.preorderRewardCard.is-desc-open .preorderRewardCard__priceRow,
.preorderRewardCard.is-desc-open .preorderRewardCard__meta,
.preorderRewardCard.is-desc-open .preorderRewardCard__cart {
	display: none;
}

.preorderRewardCard__back {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: none;
	border: none;
	padding: 0;
	margin-bottom: 14px;
	cursor: pointer;
	color: var(--Greys-Grey-4, #999);
	font-size: 15px;
	font-weight: 400;
	letter-spacing: -0.3px;
}
.preorderRewardCard__back:hover {
	color: #0A0A0A;
}
.preorderRewardCard__back:hover svg path {
	fill: #0A0A0A;
}
.preorderRewardCard__detailText {
	font-size: 16px;
	line-height: 1.5;
	color: #0a0a0a;
}
.preorderRewardCard__detailText p {
	margin: 0 0 12px;
}
.preorderRewardCard__detailText ul,
.preorderRewardCard__detailText ol {
	margin: 0 0 12px;
	padding-left: 20px;
}
.preorderRewardCard__detailText li {
	margin-bottom: 6px;
}

.preorderRewardCard__toggleLabel {
	overflow: hidden;
	color: var(--Greys-Grey-4, #999);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.3px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.preorderRewardCard__toggleIcon {
	display: inline-flex;
	width: 20px;
	height: 20px;
	align-items: center;
	justify-content: center;
}

.preorderRewardCard__priceRow {
	display: flex;
	justify-content: flex-end;
	margin-top: auto;
}

.preorderRewardCard__priceBlock {
	text-align: right;
}

.preorderRewardCard__save {
	display: none;
	color: var(--Basic-Green, #31C992);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.3px;
	margin-bottom: 6px;
}

.preorderRewardCard__meta {
	display: flex;
	align-items: center;
	margin-bottom: 4px;
	margin-top: 8px;
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.3px;
	justify-content: space-between;
	margin-top: 16px;
}



.preorderRewardCard__meta span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

.preorderRewardCard__meta span::before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 20px 20px;
}

/* Иконки задаются классом, а не позицией: одиночный span был и first-, и last-child,
   из-за чего вместо иконки поддержавших показывался грузовик доставки. */
.preorderRewardCard__metaSupport::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cmask id='m1' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='20' height='20'%3E%3Crect width='20' height='20' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23m1)'%3E%3Cpath d='M5.5 16.3542V9H6.39583C6.60417 9 6.81597 9.01736 7.03125 9.05208C7.24653 9.08681 7.45139 9.13889 7.64583 9.20833L12.5625 10.9792C12.8958 11.1042 13.1736 11.3021 13.3958 11.5729C13.6181 11.8438 13.7292 12.1597 13.7292 12.5208C13.7292 12.6597 13.6771 12.7743 13.5729 12.8646C13.4688 12.9549 13.3403 13 13.1875 13H11.2917C11.1389 13 10.9896 12.9931 10.8438 12.9792C10.6979 12.9653 10.5486 12.9306 10.3958 12.875L9.33333 12.5L9 13.4375L10 13.7917C10.2083 13.8611 10.4201 13.9132 10.6354 13.9479C10.8507 13.9826 11.0694 14 11.2917 14H16.7292C17.1042 14 17.4097 14.1493 17.6458 14.4479C17.8819 14.7465 18 15.0972 18 15.5L11.5208 18L5.5 16.3542ZM1 18V9H4V18H1ZM13.25 10.4792L11.2917 8.6875C9.98611 7.47917 9.19444 6.58681 8.91667 6.01042C8.63889 5.43403 8.5 4.94444 8.5 4.54167C8.5 3.81944 8.74653 3.21528 9.23958 2.72917C9.73264 2.24306 10.3542 2 11.1042 2C11.5208 2 11.9132 2.09028 12.2812 2.27083C12.6493 2.45139 12.9722 2.69444 13.25 3C13.5139 2.68056 13.8333 2.43403 14.2083 2.26042C14.5833 2.08681 14.9792 2 15.3958 2C16.1181 2 16.7326 2.25347 17.2396 2.76042C17.7465 3.26736 18 3.88194 18 4.60417C18 5.00694 17.8681 5.49306 17.6042 6.0625C17.3403 6.63194 16.5556 7.50694 15.25 8.6875L13.25 10.4792Z' fill='%231C1B1F'/%3E%3C/g%3E%3C/svg%3E");
}

.preorderRewardCard__metaDelivery::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cmask id='m2' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='20' height='20'%3E%3Crect width='20' height='20' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23m2)'%3E%3Cpath d='M0.5 11.1667L0.875 9.66667H5L4.625 11.1667H0.5ZM3.97917 15.7708C3.49306 15.2847 3.25 14.6944 3.25 14H1.5L2.125 12.1667H5.39583L6.10417 9.33333H7.64583L8.52083 5.83333H4.375L4.66667 5C4.77778 4.69444 4.96181 4.45139 5.21875 4.27083C5.47569 4.09028 5.76389 4 6.08333 4H15.5L14.75 7H16.5L19 10.5L18 14H17C17 14.6944 16.7569 15.2847 16.2708 15.7708C15.7847 16.2569 15.1944 16.5 14.5 16.5C13.8056 16.5 13.2153 16.2569 12.7292 15.7708C12.2431 15.2847 12 14.6944 12 14H8.25C8.25 14.6944 8.00694 15.2847 7.52083 15.7708C7.03472 16.2569 6.44444 16.5 5.75 16.5C5.05556 16.5 4.46528 16.2569 3.97917 15.7708ZM2 8.33333L2.375 6.83333H7.25L6.875 8.33333H2ZM5.75 15C6.03333 15 6.27083 14.9042 6.4625 14.7125C6.65417 14.5208 6.75 14.2833 6.75 14C6.75 13.7167 6.65417 13.4792 6.4625 13.2875C6.27083 13.0958 6.03333 13 5.75 13C5.46667 13 5.22917 13.0958 5.0375 13.2875C4.84583 13.4792 4.75 13.7167 4.75 14C4.75 14.2833 4.84583 14.5208 5.0375 14.7125C5.22917 14.9042 5.46667 15 5.75 15ZM14.5 15C14.7833 15 15.0208 14.9042 15.2125 14.7125C15.4042 14.5208 15.5 14.2833 15.5 14C15.5 13.7167 15.4042 13.4792 15.2125 13.2875C15.0208 13.0958 14.7833 13 14.5 13C14.2167 13 13.9792 13.0958 13.7875 13.2875C13.5958 13.4792 13.5 13.7167 13.5 14C13.5 14.2833 13.5958 14.5208 13.7875 14.7125C13.9792 14.9042 14.2167 15 14.5 15ZM13.75 11H17.2917L17.3542 10.7708L15.7292 8.5H14.375L13.75 11Z' fill='%231C1B1F'/%3E%3C/g%3E%3C/svg%3E");
}

.preorderRewardCard__cart {
	width: 100%;
	border-radius: 14px;
	height: 58px;
	font-size: 18px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding-left: 0;
	background-image: none;
}

.preorderRewardCard__cart::before {
	content: "";
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 24px 24px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cmask id='cart' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='24' height='24'%3E%3Crect width='24' height='24' fill='%231C1B1F'/%3E%3C/mask%3E%3Cg mask='url(%23cart)'%3E%3Cpath d='M4.66675 21C4.20842 21 3.816 20.8368 3.4895 20.5105C3.16317 20.184 3 19.7916 3 19.3333V6.5C3 6.04167 3.16317 5.64933 3.4895 5.323C3.816 4.9965 4.20842 4.83325 4.66675 4.83325H7.16675C7.16675 3.50558 7.62642 2.36808 8.54575 1.42075C9.46525 0.473584 10.5889 0 11.9168 0C13.2769 0 14.4364 0.468083 15.3953 1.40425C16.3539 2.34025 16.8333 3.48325 16.8333 4.83325H19.3333C19.7916 4.83325 20.184 4.9965 20.5105 5.323C20.8368 5.64933 21 6.04167 21 6.5V19.3333C21 19.7916 20.8368 20.184 20.5105 20.5105C20.184 20.8368 19.7916 21 19.3333 21H4.66675ZM4.66675 19.3333H19.3333V6.5H4.66675V19.3333ZM15.4625 11.0458C16.432 10.0764 16.9168 8.93917 16.9168 7.63333H15.2501C15.2501 8.50001 14.9356 9.24306 14.3066 9.8625C13.6776 10.4821 12.9251 10.7918 12.0491 10.7918C11.1732 10.7918 10.4207 10.4821 9.79163 9.8625C9.16263 9.24306 8.84813 8.50001 8.84813 7.63333H7.18138C7.18138 8.93917 7.66617 10.0764 8.63575 11.0458C9.60533 12.0153 10.7425 12.5 12.0479 12.5C13.3538 12.5 14.492 12.0153 15.4625 11.0458ZM8.84813 4.83325H15.2083C15.2083 3.94992 14.8966 3.19617 14.2731 2.57199C13.6496 1.94782 12.8917 1.63574 12 1.63574C11.1084 1.63574 10.3496 1.94782 9.72363 2.57199C9.0978 3.19617 8.7893 3.94992 8.79813 4.83325H8.84813Z' fill='white'/%3E%3C/g%3E%3C/svg%3E");
}

@media (max-width: 1360px) {
	.shopProductTabs__body--preorder {
		grid-template-columns: 1fr;
	}

	.shopProductTabs__main {
		max-width: none;
	}

	.shopProductTabs__side {
		position: static;
		max-width: none;
	}
}

.shopProduct__relatedPriceRow {
	display: flex;
	align-items: baseline;
	gap: 10px;
}

.preorderRewardCard__priceBlock .shopProduct__relatedPriceRow {
	justify-content: flex-end;	
}

.shopProduct__relatedPriceOld {
	text-decoration: line-through;
	color: #999;
	font-size: 14px;
}

.shopProduct__relatedCart--full {
	width: 100%;
	border-radius: 12px;
	padding: 12px;
	font-weight: 700;
	border: none;
	background-color: #31c992;
	color: #fff;
	cursor: pointer;
	margin-top: auto;
}

.shopProduct__related--addonsGrid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 18px;
}

.shopProduct__relatedRow--addonCard {
	display: flex;
	flex-direction: column;
	border: 1px solid #ececec;
	border-radius: 18px;
	padding: 12px;
	gap: 10px;
}

.preorderStretchList {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.preorderStretchCard {
	background: #f6f6f6;
	border-radius: 18px;
	padding: 18px;
	border: 1px solid #ececec;
}

.preorderStretchCard__left {
	min-width: 0;
}

.preorderStretchCard__top {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	margin-bottom: 0;
	font-size: 15px;
}

.preorderStretchCard__collected {
	color: var(--Basic-Green, #31C992);
	font-size: 21px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	letter-spacing: -0.42px;
}

.preorderStretchCard__bar {
	height: 8px;
	background: #fff;
	border-radius: 10px;
	overflow: hidden;
	margin: 14px 0;
}

.preorderStretchCard__barFill {
	height: 100%;
	background: #31c992;
	border-radius: 10px;
}

.preorderStretchCard__target {
	display: flex;
	align-items: center;
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.3px;
	gap: 12px;
}

.preorderStretchCard__lock svg {
	display: block;
}

.preorderStretchCard__main {
	display: flex;
	gap: 14px;
	align-items: flex-start;
}

.preorderStretchCard__text {
	flex: 1;
	min-width: 0;
	font-size: 14px;
}

.preorderStretchCard__desc {
	margin: 0;
	font-size: 15px; /* как в карточке награды (.preorderRewardCard__desc) — единый межстрочный */
	line-height: 1.35;
	color: #0a0a0a;
	overflow: hidden;
	transition: max-height .28s ease;
	will-change: max-height;
}

.preorderStretchCard__desc.is-collapsed {
	max-height: 2.8em;
}

.preorderStretchCard__toggle {
	margin-top: 10px;
}

.preorderStretchCard__img {
	width: 100px;
	height: 100px;
	border-radius: 12px;
	overflow: hidden;
	flex-shrink: 0;
}

.preorderStretchCard__img img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.preorderStretchCard--withImage {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 200px;
	align-items: stretch;
	padding: 0;
	border: none;
	background: transparent;
	min-height: 200px;
}

.preorderStretchCard--withImage .preorderStretchCard__top,
.preorderStretchCard--withImage .preorderStretchCard__bar,
.preorderStretchCard--withImage .preorderStretchCard__main {
	grid-column: auto;
}

.preorderStretchCard--withImage .preorderStretchCard__left {
	grid-column: 1;
	display: flex;
	flex-direction: column;
	gap: 12px;
	background: var(--Greys-Grey-0, #F5F5F5);
	border-radius: 20px;
	padding: 18px;
}

.preorderStretchCard--withImage .preorderStretchCard__img {
	position: static;
	grid-column: 2;
	grid-row: 1;
	width: 200px;
	height: 200px;
	border-radius: 20px;
	background: #f2f2f2;
}

@media (max-width: 991px) {
	/* Картинку сверхцели НЕ роняем вниз — она остаётся СПРАВА (как в референсе gamefound),
	   просто колонка уже. Раньше здесь был display:block → картинка падала под текст. */
	/* ЕДИНАЯ карточка (как в референсе gamefound): один фон, картинка вплотную справа без
	   зазора, скруглена по внешним углам карточки. Раньше текст и картинка были двумя
	   отдельными «пилюлями» с зазором — выглядело развалено. */
	.preorderStretchCard--withImage {
		grid-template-columns: minmax(0, 1fr) 50%;
		gap: 0;
		min-height: 0;
		background: #fff;
		border: 1px solid #ececec;
		border-radius: 16px;
		overflow: hidden;
		align-items: stretch;
	}
	.preorderStretchCard--withImage .preorderStretchCard__left {
		background: transparent;
		border-radius: 0;
		padding: 16px;
	}
	/* Сумма и «Сверхцель: N₽» — в столбик (сумма сверху, цель снизу), чтобы не было переносов
	   строки в узкой левой колонке. */
	.preorderStretchCard--withImage .preorderStretchCard__top {
		flex-direction: column;
		align-items: flex-start;
		gap: 4px;
	}
	/* Сумма цели «350 000₽» — с новой строки (flex-basis:100% в wrap-контейнере) и не
	   ломается посередине числа (nowrap). Строка 1: «🔒 Сверхцель:», строка 2: сумма. */
	/* Сумма цели переносится на новую строку ТОЛЬКО если не влезает рядом со «Сверхцель:».
	   «Сверхцель: <сумма>» — единый текстовый блок __targetText после замка: сумма (nowrap)
	   не рвётся посередине числа и, если переносится, выравнивается под «Сверхцель:».
	   align-items:flex-start — замок к верху, когда текст в две строки. */
	.preorderStretchCard--withImage .preorderStretchCard__target {
		align-items: flex-start;
	}
	.preorderStretchCard--withImage .preorderStretchCard__targetSum {
		white-space: nowrap;
	}
	.preorderStretchCard--withImage .preorderStretchCard__img {
		position: static;
		width: 100%;
		height: auto;
		min-height: 0;
		align-self: stretch;
		border-radius: 0;
		background: transparent;
	}
	.preorderStretchCard--withImage .preorderStretchCard__img img {
		object-fit: contain;
	}
}

/* Телефон: картинка СВЕРХУ на всю ширину, ниже название/описание, затем сумма и шкала.
   Боковая картинка в узкой колонке ломала переносы («Сверхцель 350 / 000₽»). */
@media (max-width: 767px) {
	.preorderStretchCard--withImage {
		grid-template-columns: 1fr;
	}
	.preorderStretchCard--withImage .preorderStretchCard__img {
		grid-column: 1;
		grid-row: 1;
		aspect-ratio: auto;
		height: auto;
	}
	.preorderStretchCard--withImage .preorderStretchCard__img img {
		height: auto;
	}
	.preorderStretchCard--withImage .preorderStretchCard__left {
		grid-column: 1;
		grid-row: 2;
		padding: 14px 16px 16px;
		gap: 10px;
	}
	.preorderStretchCard--withImage .preorderStretchCard__main {
		order: -1;
	}
	.preorderStretchCard--withImage .preorderStretchCard__top {
		flex-direction: row;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
		gap: 4px 12px;
	}
}

.preorderStretchCard__name {
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 18px;
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: -0.36px;
	margin-bottom: 8px;
}

/* Описание сверхцели скрыто по умолчанию — раскрывается кнопкой «Подробнее». */
.preorderStretchCard__desc {
	display: none;
}

.preorderStretchCard__desc.is-expanded {
	display: block;
	overflow: visible;
}

.preorderStretchCard__moreBtn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 10px;
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
	color: var(--Greys-Grey-4, #999);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.3px;
	text-decoration: none;
}

.preorderStretchCard__moreBtn svg {
	flex: none;
}

/* Иконки кнопки: свёрнуто — шеврон «Подробнее», раскрыто — крестик «Скрыть описание». */
.preorderStretchCard__moreBtnIcon--close {
	display: none;
}
.preorderStretchCard__moreBtn[aria-expanded="true"] .preorderStretchCard__moreBtnIcon--close {
	display: inline-flex;
}
.preorderStretchCard__moreBtn[aria-expanded="true"] .preorderStretchCard__moreBtnIcon--chevron {
	display: none;
}

.preorderStretchCard__moreBtn:hover {
	color: #0A0A0A;
}

.preorderStretchCard__moreBtn:hover svg path {
	fill: #0A0A0A;
}
.preorderStretchCard__moreBtn:hover .preorderStretchCard__moreBtnIcon--close path {
	stroke: #0A0A0A;
}

/* Раскрытое описание: в карточке остаются только описание и кнопка —
   сумма, шкала и заголовок скрываются, при сворачивании возвращаются. */
.preorderStretchCard.is-desc-open .preorderStretchCard__top,
.preorderStretchCard.is-desc-open .preorderStretchCard__bar,
.preorderStretchCard.is-desc-open .preorderStretchCard__name {
	display: none;
}

/* Достигнутая сверхцель */
.preorderStretchCard__reachedLabel {
	display: flex;
	align-items: center;
	gap: 8px;
	color: var(--Basic-Green, #31C992);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.3px;
}

.preorderStretchCard__reachedLabel svg {
	flex: none;
}

/* ===== Завершённый проект: read-only вид ===== */
/* Кнопки наград и дополнений — серые и неактивные (нельзя нажать). */
.preorderRewardCard__cart--finished,
.preorderAddonCard__cart--finished {
	/* background-color (а НЕ шортхенд background) — иначе затирается background-image
	   с иконкой-сумкой у .shopProduct__buyBtn, и в сером состоянии иконка пропадает. */
	background-color: #999999 !important;
	color: #fff;
	cursor: not-allowed;
	pointer-events: none;
	filter: none;
}
/* Истёк «Окончание активности» награды/дополнения → цена жёлтым (акцент #F48812,
   как у завершённых кампаний). Кнопка при этом серая (--finished). */
.preorderRewardCard__priceBlock--expired .shopProduct__relatedPrice,
.preorderAddonCard__priceBlock--expired .preorderAddonCard__price,
.preorderSupportModal__priceBlock--expired .preorderSupportModal__price,
.shopProductTabs__pinnedPriceRow--expired .shopProductTabs__pinnedPrice {
	color: #F48812;
}
/* Счётчик количества у истёкшей награды — тоже заблокирован (как серая кнопка). */
.preorderSupportModal__qty--disabled {
	opacity: 0.5;
	pointer-events: none;
}
.preorderSupportModal__qty--disabled .preorderSupportModal__qtyBtn { cursor: not-allowed; }
/* Закреп: кнопка «Посмотреть все награды» — белый текст на #F48812. */
.shopProductTabs__pinnedCart--viewAll {
	background: #F48812;
	color: #fff;
}
.shopProductTabs__pinnedCart--viewAll:hover { filter: brightness(1.05); }
/* Сверхцели завершённого проекта: зелёный (собрано, сумма, иконка, полоска) → #F48812. */
.shopProductTabs--finished .preorderStretchCard__barFill { background: #F48812; }
.shopProductTabs--finished .preorderStretchCard__collected { color: #F48812; }
.shopProductTabs--finished .preorderStretchCard__reachedLabel { color: #F48812; }
.shopProductTabs--finished .preorderStretchCard__reachedLabel svg path { fill: #F48812; }
/* Все значения цен завершённого проекта — оранжевые (#F48812). */
.shopProductTabs--finished .shopProduct__relatedPrice,
.shopProductTabs--finished .preorderRewardCard__priceBlock .shopProduct__relatedPrice,
.shopProductTabs--finished .preorderAddonCard__price,
.shopProductTabs--finished .shopProductTabs__pinnedPrice { color: #F48812; }

/* Stretch Goal Modal */
.preorderStretchModal {
	position: fixed;
	inset: 0;
	z-index: 1400;
	padding: 16px;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
}

.preorderStretchModal[hidden] {
	display: none !important;
}

.preorderStretchModal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.62);
}

.preorderStretchModal__panel {
	position: relative;
	width: min(1460px, calc(100vw - 32px));
	max-width: 860px;
	max-height: 90vh;
	margin: 0 auto;
	background: #fff;
	border-radius: 28px;
	padding: 24px;
	box-shadow: 0 16px 48px rgba(0, 0, 0, 0.18);
	overflow: hidden;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
	box-sizing: border-box;
	z-index: 1;
	display: flex;
	flex-direction: column;
}

.preorderStretchModal.is-open .preorderStretchModal__panel {
	animation: preorderModalIn 0.2s ease-out;
}

.preorderStretchModal__close {
	position: absolute;
	top: 24px;
	right: 16px;
	width: 40px;
	height: 40px;
	border-radius: 16px;
	border: none;
	background: #0a0a0a;
	cursor: pointer;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	color: #fff;
}

.preorderStretchModal__close svg {
	display: block;
}

.preorderStretchModal__inner {
	/* Полоса прокрутки находится в отступе панели, вне текста и шкалы. */
	margin-right: -16px;
	padding-right: 16px;
	display: flex;
	flex-direction: column;
	gap: 24px;
	min-height: 0;
	flex: 1;
	overflow-y: auto;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
}

.preorderStretchModal__top {
	display: grid;
	grid-template-columns: 400px 1fr;
	gap: 20px;
	align-items: start;
	flex-shrink: 0;
}

/* Одна область прокрутки для всей карточки, включая изображение и описание. */
.preorderStretchModal__descWrap {
	display: flex;
	flex-direction: column;
	min-height: 0;
	flex: 0 0 auto;
}

.preorderStretchModal__media {
	border-radius: 24px;
	overflow: hidden;
	width: 400px;
	height: 400px;
	background: #f2f2f2;
}

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

.preorderStretchModal__title {
	margin: 0 0 8px;
	padding-right: 40px;
	font-size: 24px;
	font-weight: 600;
	line-height: 1.2;
	color: #0a0a0a;
}

.preorderStretchModal__type {
	color: #999;
	font-size: 16px;
	margin-bottom: 20px;
}
.preorderStretchModal__type[hidden] { display: none; }

.preorderStretchModal__progress {
	border: 1.5px solid #31c992;
	border-radius: 20px;
	padding: 11px 9px;
	margin-top: 20px;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.preorderStretchModal__progressRow {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 15px;
}
.preorderStretchModal__progressRow[hidden] { display: none; }
.preorderStretchModal__progressLabel { color: #0a0a0a; }
.preorderStretchModal__progressTarget {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #0a0a0a;
}
.preorderStretchModal__progressLock svg,
.preorderStretchModal__progressCheck svg { display: block; }
.preorderStretchModal__progressRow--reached {
	justify-content: flex-start;
	gap: 8px;
	color: #31c992;
	font-weight: 500;
}
.preorderStretchModal__progressCheck { display: inline-flex; }

.preorderStretchModal__bar {
	height: 10px;
	background: #ececec;
	border-radius: 10px;
	overflow: hidden;
}

.preorderStretchModal__barFill {
	height: 100%;
	background: #31c992;
	border-radius: 10px;
}

.preorderStretchModal__descTitle {
	font-weight: 700;
	font-size: 16px;
	color: #0a0a0a;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.preorderStretchModal__desc {
	font-size: 16px;
	line-height: 1.5;
	color: #0a0a0a;
	overflow: visible;
	flex-shrink: 0;
	min-height: 0;
	overscroll-behavior: contain;
}
/* Отступы описания сверхцели — как в модалке награды (preorderSupportModal__descText). */
.preorderStretchModal__desc p { margin: 0 0 14px; }
.preorderStretchModal__desc p:last-child { margin-bottom: 0; }

/* ВАЖНО: модалки/карточки наград и сверхцелей рендерятся внутри .shopProductTabs__content,
   чей глобальный `p { line-height: normal; margin: 18-20px }` перебивал межстрочный интервал
   в описаниях с абзацами <p> (напр. текст сверхцели из визуального редактора) — из-за чего
   расстояние между строк отличалось от описания награды (там текст на <br>, без <p>).
   Возвращаем <p> наследование line-height контейнера и единый отступ абзаца — теперь везде
   одинаково, как в карточках наград. !important — чтобы гарантированно перекрыть правило табов. */
.preorderStretchModal__desc p,
.preorderSupportModal__descText p,
.preorderStretchCard__desc p,
.preorderRewardCard__desc p {
	line-height: inherit !important;
	margin: 0 0 0.75em !important;
}
.preorderStretchModal__desc p:last-child,
.preorderSupportModal__descText p:last-child,
.preorderStretchCard__desc p:last-child,
.preorderRewardCard__desc p:last-child {
	margin-bottom: 0 !important;
}
.preorderStretchModal__desc ul,
.preorderStretchModal__desc ol { margin: 1.5em 0; padding-left: 20px; }
.preorderStretchModal__desc ul { list-style: disc; }
.preorderStretchModal__desc ol { list-style: decimal; }
.preorderStretchModal__desc li { margin-bottom: 6px; line-height: 1.5; }
.preorderStretchModal__desc strong,
.preorderStretchModal__desc b { font-weight: 700; }
.preorderStretchModal__desc em,
.preorderStretchModal__desc i { font-style: italic; }

.preorderFaq {
	border-top: none;
}

.preorderFaq__item {
	border-bottom: 1px solid #ececec;
}

.preorderFaq__q {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	padding: 16px 4px;
	border: none;
	background: transparent;
	color: var(--Secondary-Black, #0A0A0A);
	font-family: "Google Sans";
	font-size: 21px;
	font-style: normal;
	font-weight: 500;
	line-height: 120%;
	text-align: left;
	cursor: pointer;
}

.preorderFaq__icon::before {
	content: "";
	display: block;
	width: 24px;
	height: 24px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cmask id='mask0_13318_5905' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='24' height='24'%3E%3Crect width='24' height='24' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_13318_5905)'%3E%3Cpath d='M11 13H5V11H11V5H13V11H19V13H13V19H11V13Z' fill='%231C1B1F'/%3E%3C/g%3E%3C/svg%3E") center/24px 24px no-repeat;
	transition: transform .24s ease, opacity .2s ease;
}

.preorderFaq__item.is-open .preorderFaq__icon::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cmask id='mask0_13318_768' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='24' height='24'%3E%3Crect width='24' height='24' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_13318_768)'%3E%3Cpath d='M13.4142 11.9999L17.6569 16.2426L16.2426 17.6568L12 13.4141L7.75736 17.6568L6.34315 16.2426L10.5858 11.9999L6.34315 7.75728L7.75736 6.34307L12 10.5857L16.2426 6.34307L17.6569 7.75728L13.4142 11.9999Z' fill='%232460F6'/%3E%3C/g%3E%3C/svg%3E");
	transform: rotate(90deg);
}

.preorderFaq__a {
	padding: 0 24px 0;
	color: var(--Secondary-Black, #0A0A0A);
	font-family: "Google Sans";
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 140%;
	overflow: hidden;
	max-height: 0;
	opacity: 0;
	transition: max-height .28s ease, opacity .2s ease, padding-bottom .28s ease;
}

.preorderFaq__item.is-open .preorderFaq__a {
	padding-bottom: 16px;
	opacity: 1;
}

.preorderSupportModal {
	position: fixed;
	inset: 0;
	z-index: 1400;
	padding: 16px;
	box-sizing: border-box;
}

.preorderSupportModal[hidden] {
	display: none !important;
}

.preorderSupportModal__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.62);
}

.preorderSupportModal__panel {
	position: relative;
	width: min(1460px, calc(100vw - 32px));
	max-height: 90vh;
	margin: 0 auto;
	background: #fff;
	border-radius: 28px;
	padding: 24px;
	box-shadow: 0 16px 48px rgba(0, 0, 0, 0.18);
	overflow: hidden;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
	box-sizing: border-box;
	z-index: 1;
	max-width: 860px;
	display: flex;
	flex-direction: column;
}

.preorderSupportModal.is-open .preorderSupportModal__panel {
	animation: preorderModalIn 0.2s ease-out;
}

@keyframes preorderModalIn {
	from {
		transform: translateY(10px);
		opacity: 0.85;
	}
	to {
		transform: translateY(0);
		opacity: 1;
	}
}

/* Липкий блок «количество + Поддержать» в модалке (когда основной уходит вверх). */
.preorderSupportModal__sticky {
	position: sticky;
	bottom: 16px;
	z-index: 3;
	display: flex;
	align-items: center;
	gap: 12px;
	width: max-content;
	max-width: 100%;
	margin-left: auto;
	padding: 10px;
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.18);
}
.preorderSupportModal__sticky[hidden] { display: none; }
.preorderSupportModal__stickyQty {
	min-width: 28px;
	text-align: center;
	font-weight: 600;
	font-size: 16px;
}
.preorderSupportModal__sticky .preorderSupportModal__tocart { white-space: nowrap; }

.preorderSupportModal__inner {
	display: flex;
	flex-direction: column;
	min-height: 0;
	flex: 1;
	/* Прокручивается ВЕСЬ контент модалки (медиа + инфо + состав + описание).
	   overflow-x ЯВНО hidden: иначе overflow-y:auto делает overflow-x:auto (спека),
	   и появляется лишний горизонтальный скролл. Нужен ровно один вертикальный. */
	overflow-y: auto;
	overflow-x: hidden;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
	padding-right: 6px;
}
.preorderSupportModal__top {
	flex-shrink: 0;
}
/* Свой скролл убран — состав/описание крутятся вместе со всем содержимым. */
.preorderSupportModal__scroll {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
/* Закреплённый футер: количество + «Поддержать» всегда снизу справа, вне прокрутки. */
/* Футер-цель для закрепления кнопки. Пустой (кнопка на своём месте) — скрыт.
   JS переносит __buyRow сюда при прокрутке — тогда футер показывается снизу справа. */
.preorderSupportModal__footer {
	flex-shrink: 0;
	display: flex;
	/* Кнопка справа, но НЕ впритык к правому/нижнему краю: padding-right/bottom отводят её
	   от скругления панели (border-radius:28px), чтобы угол кнопки не «сливался» с углом фрейма. */
	justify-content: flex-end;
	align-items: center;
	padding-top: 16px;
	padding-right: 12px;
	padding-bottom: 12px;
	margin-top: 8px;
	border-top: 1px solid var(--Greys-Grey-1, #ECECEC);
	background: #fff;
}
.preorderSupportModal__footer:empty {
	display: none;
}
.preorderSupportModal__footer .preorderSupportModal__buyRow {
	margin: 0;
}

.preorderSupportModal__close {
	position: absolute;
	top: 24px;
	right: 16px;
	width: 40px;
	height: 40px;
	border-radius: 16px;
	border: none;
	background: #0a0a0a;
	cursor: pointer;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}

.preorderSupportModal__close svg {
	display: block;
	width: 17px;
	height: 17px;
}

.preorderSupportModal__top {
	display: grid;
	grid-template-columns: 400px 1fr;
	gap: 20px;
	margin-bottom: 20px;
	align-items: start;
}

.preorderSupportModal__media {
	background: #f2f2f2;
	border-radius: 24px;
	overflow: hidden;
	width: 400px;
	height: 400px;
}

.preorderSupportModal__media img {
	width: 100%;
	height: 100%;
	/* contain, а не cover — показываем картинку ПОЛНОСТЬЮ, без обрезки в квадрат
	   (сервер отдаёт пропорционально; фон #f2f2f2 заполняет поля у непрямоугольных). */
	object-fit: contain;
	display: block;
}

.preorderSupportModal__info {
}

.preorderSupportModal__badge {
	display: inline-flex;
	align-items: center;
	background: #0a0a0a;
	color: var(--Secondary-White, #FFF);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	padding: 8px 14px;
	border-radius: 999px;
	margin-bottom: 10px;
}

.preorderSupportModal__title {
	margin: 0 0 8px;
	padding-right: 50px;
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 24px;
	font-style: normal;
	font-weight: 500;
	line-height: 100%;
	letter-spacing: -0.48px;
}

.preorderSupportModal__subtitle {
	color: var(--Greys-Grey-4, #999);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin-bottom: 14px;
}

.preorderSupportModal__save {
	color: var(--Basic-Green, #31C992);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.3px;
	margin-bottom: 4px;
}

.preorderSupportModal__prices {
	display: flex;
	align-items: baseline;
	gap: 12px;
	margin-bottom: 14px;
}

.preorderSupportModal__price {
	color: var(--Basic-Green, #31C992);
	text-align: right;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%; /* 24px */
	letter-spacing: -0.48px;
}

.preorderSupportModal__priceOld {
	color: #999;
	text-align: right;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: -0.32px;
	text-decoration-line: line-through;
}

.preorderSupportModal__buyRow {
	display: flex;
	gap: 7px;
	margin-top: 10px;
	align-items: center;
	margin-bottom: 16px;
}

.preorderSupportModal__qty {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	border: 1px solid var(--Greys-Grey-1, #ECECEC);
	border-radius: 12px;
	padding: 12px 14px;
	height: 54px;
}

.preorderSupportModal__qtyBtn {
	border: none;
	width: 18px;
	height: 18px;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	font-size: 0;
	background-repeat: no-repeat;
	background-color: transparent;
}

.preorderSupportModal__qtyBtn[data-dir="-"] {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18' fill='none'%3E%3Cpath d='M4.5 9.5H13.5V8.5H4.5V9.5ZM9.00325 18C7.75875 18 6.58867 17.7638 5.493 17.2915C4.3975 16.8192 3.4445 16.1782 2.634 15.3685C1.8235 14.5588 1.18192 13.6067 0.70925 12.512C0.236417 11.4175 0 10.2479 0 9.00325C0 7.75875 0.236167 6.58867 0.7085 5.493C1.18083 4.3975 1.82183 3.4445 2.6315 2.634C3.44117 1.8235 4.39333 1.18192 5.488 0.70925C6.5825 0.236417 7.75208 0 8.99675 0C10.2413 0 11.4113 0.236167 12.507 0.708501C13.6025 1.18083 14.5555 1.82183 15.366 2.6315C16.1765 3.44117 16.8181 4.39333 17.2908 5.488C17.7636 6.5825 18 7.75208 18 8.99675C18 10.2413 17.7638 11.4113 17.2915 12.507C16.8192 13.6025 16.1782 14.5555 15.3685 15.366C14.5588 16.1765 13.6067 16.8181 12.512 17.2908C11.4175 17.7636 10.2479 18 9.00325 18Z' fill='%23999999'/%3E%3C/svg%3E");
}

.preorderSupportModal__qtyBtn[data-dir="+"] {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18' fill='none'%3E%3Cpath d='M8.5 13.5H9.5V9.5H13.5V8.5H9.5V4.5H8.5V8.5H4.5V9.5H8.5V13.5ZM9.00325 18C7.75875 18 6.58867 17.7638 5.493 17.2915C4.3975 16.8192 3.4445 16.1782 2.634 15.3685C1.8235 14.5588 1.18192 13.6067 0.70925 12.512C0.236417 11.4175 0 10.2479 0 9.00325C0 7.75875 0.236167 6.58867 0.7085 5.493C1.18083 4.3975 1.82183 3.4445 2.6315 2.634C3.44117 1.8235 4.39333 1.18192 5.488 0.70925C6.5825 0.236417 7.75208 0 8.99675 0C10.2413 0 11.4113 0.236167 12.507 0.708501C13.6025 1.18083 14.5555 1.82183 15.366 2.6315C16.1765 3.44117 16.8181 4.39333 17.2908 5.488C17.7636 6.5825 18 7.75208 18 8.99675C18 10.2413 17.7638 11.4113 17.2915 12.507C16.8192 13.6025 16.1782 14.5555 15.3685 15.366C14.5588 16.1765 13.6067 16.8181 12.512 17.2908C11.4175 17.7636 10.2479 18 9.00325 18Z' fill='%23999999'/%3E%3C/svg%3E");
}

.preorderSupportModal__qtyInput {
	width: 24px;
	min-width: 24px;
	border: none;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	color: var(--Black, #0A0A0A);
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	line-height: 1;
	text-transform: uppercase;
	background: none;
	text-align: center;
	appearance: textfield;
	-moz-appearance: textfield;
}

.preorderSupportModal__qtyInput::-webkit-outer-spin-button,
.preorderSupportModal__qtyInput::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.preorderSupportModal__qtyInput:focus,
.preorderSupportModal__qtyInput:focus-visible {
	outline: none;
	box-shadow: none;
}

.preorderSupportModal__tocart {
	border: none;
	height: 54px;
	border-radius: 12px;
	background-color: #31c992;
	color: #fff;
	font-weight: 700;
	font-size: 18px;
	line-height: normal;
	padding: 0 30px 0 60px;
	cursor: pointer;
}

.preorderSupportModal__meta {
	display: grid;
	gap: 8px;
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%; /* 15px */
	letter-spacing: -0.3px;
}

.preorderSupportModal__metaItem {
	display: inline-flex;
	align-items: center;
	gap: 10px;
}

.preorderSupportModal__metaIcon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
}

.preorderSupportModal__metaIcon svg {
	display: block;
	width: 20px;
	height: 20px;
}

.preorderSupportModal__included {
	margin: 18px 0 16px;
}

.preorderSupportModal__includedTitle {
	margin: 0 0 12px;
	color: var(--Black, #0A0A0A);
	font-size: 14px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	letter-spacing: -0.28px;
	text-transform: uppercase;
}

.preorderSupportModal__includedGrid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}

.preorderSupportModal__includedCard {
	display: grid;
	grid-template-columns: 76px 1fr;
	gap: 12px;
	align-items: center;
	background: #f4f4f4;
	border-radius: 20px;
	padding: 12px;
	text-decoration: none;
	color: inherit;
}

/* Квадратное превью: фото показывается ЦЕЛИКОМ (contain), без обрезки портретных обложек;
   белый фон заполняет поля вокруг непрямоугольного изображения. */
.preorderSupportModal__includedThumb {
	width: 76px;
	aspect-ratio: 1 / 1;
	background: #fff;
	border-radius: 12px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.preorderSupportModal__includedThumb img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
}

.preorderSupportModal__includedName {
	font-size: 16px;
	line-height: 1.2;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	line-clamp: 2;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.preorderSupportModal__includedQty {
	margin-top: 8px;
	font-size: 15px;
	color: #888;
}

.preorderSupportModal__descTitle {
	color: var(--Black, #0A0A0A);
	font-size: 14px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	letter-spacing: -0.28px;
	text-transform: uppercase;
	margin-bottom: 8px;
}

.preorderSupportModal__descText {
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 1.5;
}

.preorderSupportModal__descText p {
	margin: 0 0 14px;
}

.preorderSupportModal__descText p:last-child {
	margin-bottom: 0;
}

.preorderSupportModal__descText h2,
.preorderSupportModal__descText h3 {
	color: var(--Black, #0A0A0A);
	font-family: "Google Sans";
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.36px;
	margin: 20px 0 10px;
}

.preorderSupportModal__descText h2:first-child,
.preorderSupportModal__descText h3:first-child {
	margin-top: 0;
}

.preorderSupportModal__descText h4 {
	color: var(--Black, #0A0A0A);
	font-family: "Google Sans";
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
	margin: 16px 0 8px;
}

.preorderSupportModal__descText h4:first-child {
	margin-top: 0;
}

.preorderSupportModal__descText ul,
.preorderSupportModal__descText ol {
	/* Отступ до/после списка = одна строка (высота строки), как пустая строка между абзацами. */
	margin: 1.5em 0;
	padding-left: 20px;
}

.preorderSupportModal__descText ul {
	list-style: disc;
}

.preorderSupportModal__descText ol {
	list-style: decimal;
}

.preorderSupportModal__descText li {
	margin-bottom: 6px;
	line-height: 1.5;
}

.preorderSupportModal__descText strong,
.preorderSupportModal__descText b {
	font-weight: 700;
}

.preorderSupportModal__descText em,
.preorderSupportModal__descText i {
	font-style: italic;
}

.preorderSupportModal__descText a {
	color: var(--Green, #1DB954);
	text-decoration: underline;
}

@media (max-width: 991px) {
	.shopProduct--preorderDetail {
		grid-template-columns: 1fr;
	}

	.preorderIntroSection {
		grid-template-columns: 1fr;
		padding: 12px;
	}

	.preorderSupportModal__panel {
		width: calc(100vw - 20px);
		height: 90vh;
		max-height: 90vh;
		padding: 14px;
		border-radius: 18px;
	}

	.preorderSupportModal__top {
		grid-template-columns: 1fr;
	}

	.preorderSupportModal__includedGrid {
		grid-template-columns: 1fr;
	}

	/* Модалка сверхцели: в узком окне тоже одна колонка (медиа сверху, инфо снизу). Раньше
	   оставалась 400px + инфо, и правая часть (заголовок/крестик/прогресс) резалась за край. */
	.preorderStretchModal__top {
		grid-template-columns: 1fr;
	}
	/* Медиа обеих модалок — резиновая (квадрат по ширине панели, кап 400px), а не фикс 400px:
	   иначе на узких панелях (<400px) картинка вылезала за край. */
	.preorderSupportModal__media,
	.preorderStretchModal__media {
		width: 100%;
		height: auto;
		aspect-ratio: 1 / 1;
		max-width: 400px;
		margin-left: auto;
		margin-right: auto;
	}

	.shopProductTabs__body--preorder {
		grid-template-columns: 1fr;
	}

	.shopProductTabs__side {
		position: static;
	}

	/* Фиксированная высота 471px ломает layout на мобиле — ctaRow вылазит за карточку */
	.preorderDetailSummary {
		height: auto;
	}

	.preorderDetailSummary--finished {
		height: auto;
		overflow: visible;
	}
}

@media (max-width: 768px) {
	/* Заголовок секции "Описание" / "Награды" — 40px слишком много */
	.shopProductTabs--preorderWide .shopProductTabs__sectionTitle {
		font-size: 22px;
		letter-spacing: -0.4px;
	}

	/* Кнопка "В корзину" в аддон-карточках: наследует height:72px/font-size:34px от buyBtn@1200px */
	.preorderAddonCard__cart {
		height: 44px;
		font-size: 15px;
		border-radius: 12px;
		min-width: 0;
	}

	.preorderAddonCard__cart::before {
		width: 18px;
		height: 18px;
		flex: 0 0 18px;
		background-size: 18px 18px;
	}
}

/* Карточка награды: мета «N поддержали» + «доставка …» — в столбик на мобилке, чтобы две
   строки с иконками не переносились/не жались в одну строку. */
@media (max-width: 600px) {
	.preorderRewardCard__meta {
		flex-direction: column;
		align-items: flex-start;
		gap: 6px;
	}
}

/* Телефоны: закреплённый футер модалки — строка на всю ширину, кнопка тянется по остатку
   (иначе количество + «Поддержать» шире узкой панели и вылезают за край). */
@media (max-width: 560px) {
	/* Отступ слева, как справа: счётчик не прилипает к краю панели */
	.preorderSupportModal__footer {
		padding-left: 12px;
	}
	.preorderSupportModal__footer .preorderSupportModal__buyRow {
		width: 100%;
		gap: 8px;
	}
	.preorderSupportModal__footer .preorderSupportModal__tocart {
		flex: 1 1 auto;
		min-width: 0;
		padding-left: 44px;
		padding-right: 20px;
		font-size: 16px;
	}
	.preorderSupportModal__footer .preorderSupportModal__qty {
		flex: 0 0 auto;
	}
}

/* Планшет: тоже уменьшить кнопку В корзину */
@media (min-width: 769px) and (max-width: 1200px) {
	.preorderAddonCard__cart {
		height: 48px;
		font-size: 16px;
		border-radius: 14px;
		min-width: 0;
	}

	.shopProductTabs--preorderWide .shopProductTabs__sectionTitle {
		font-size: 28px;
	}
}

/* Preorder track modals */
.preorderTrackModal[hidden] {
	display: none !important;
}

.preorderTrackModal {
	position: fixed;
	inset: 0;
	z-index: 2100;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
	box-sizing: border-box;
}

.preorderTrackModal__overlay {
	position: absolute;
	inset: 0;
	background: var(--Secondary-Black, #0A0A0A);
	opacity: 0.8;
}

.preorderTrackModal__dialog {
	position: relative;
	z-index: 1;
	width: min(620px, 100%);
	max-height: calc(100vh - 32px);
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	-ms-overflow-style: none;
	background: #fff;
	border-radius: 24px;
	padding: 24px;
	box-sizing: border-box;
}

.preorderTrackModal__dialog::-webkit-scrollbar {
	display: none;
}

.preorderTrackModal__dialog--success {
	width: 406px;
	max-width: 406px;
	padding: 24px;
	box-sizing: border-box;
}

.preorderTrackModal__dialog--success .preorderTrackModal__title {
	margin: 0 48px 0 0;
	color: var(--Black, #000);
	font-size: 21px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
}

.preorderTrackModal__dialog--success .preorderTrackModal__lead {
	margin: 16px 0 0;
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.preorderTrackModal__dialog--success .preorderTrackModal__divider {
	height: 1px;
	margin: 20px 0;
	background: #999;
}

.preorderTrackModal__dialog--success .preorderTrackModal__community {
	display: grid;
	gap: 16px;
}

.preorderTrackModal__dialog--success .preorderTrackModal__communityTitle {
	color: var(--Black, #000);
	font-size: 21px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
}

.preorderTrackModal__dialog--success .preorderTrackModal__communityText {
	margin: 0;
	color: var(--Secondary-Black, #0A0A0A);
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.preorderTrackModal__close {
	position: absolute;
	right: 16px;
	top: 16px;
	border: 0;
	padding: 0;
	width: 40px;
	height: 40px;
	background: transparent;
	cursor: pointer;
	line-height: 0;
}

.preorderTrackModal__close svg {
	display: block;
}

.preorderTrackModal__section {
	display: grid;
	gap: 12px;
}

.preorderTrackModal__title {
	margin: 0 48px 0 0;
	color: var(--Black, #000);
	font-size: 21px;
	font-weight: 700;
	line-height: normal;
}

.preorderTrackModal__lead {
	margin: 0;
	color: var(--Black, #000);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.4;
}

.preorderTrackModal__divider {
	height: 1px;
	background: #ececec;
	margin: 20px 0;
}

.preorderTrackModal__field {
	display: grid;
	gap: 8px;
}

.preorderTrackModal__label {
	color: var(--Black, #000);
	font-size: 14px;
	font-weight: 500;
	line-height: normal;
}

.preorderTrackModal__req {
	color: #d90429;
	margin-left: 2px;
}

.preorderTrackModal__input {
	width: 100%;
	border: 1px solid var(--greys-property-1-default-stroke, #ECECEC);
	border-radius: 8px;
	padding: 12px 14px;
	font: inherit;
	font-size: 15px;
	box-sizing: border-box;
}

.preorderTrackModal__check {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-size: 14px;
	line-height: 1.35;
	color: var(--Black, #000);
	cursor: pointer;
}

.preorderTrackModal__check input {
	margin-top: 2px;
}

.preorderTrackModal__guestForm {
	display: grid;
	gap: 14px;
}

.preorderTrackModal__note {
	margin: 0;
	font-size: 13px;
	line-height: 1.35;
	color: #6b6b6b;
}

.preorderTrackModal__note a {
	color: inherit;
	text-decoration: underline;
}

.preorderTrackModal__error {
	margin: 0;
	color: #8f2323;
	font-size: 13px;
	line-height: 1.35;
}

.preorderTrackModal__error[hidden] {
	display: none;
}

.preorderTrackModal__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 0 20px;
	border-radius: 12px;
	border: 1px solid transparent;
	font-size: 16px;
	font-weight: 700;
	line-height: normal;
	text-decoration: none;
	cursor: pointer;
	box-sizing: border-box;
}

.preorderTrackModal__btn--primary {
	background: var(--Secondary-Black, #0A0A0A);
	color: #fff;
	border-color: var(--Secondary-Black, #0A0A0A);
	width: 100%;
}

.preorderTrackModal__btn--ghost {
	background: #fff;
	color: var(--Secondary-Black, #0A0A0A);
	border-color: var(--Secondary-Black, #0A0A0A);
}

.preorderTrackModal__community {
	display: grid;
	gap: 12px;
}

.preorderTrackModal__communityTitle {
	color: var(--Black, #000);
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
}

.preorderTrackModal__communityText {
	margin: 0;
	color: var(--Black, #000);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.4;
}

.preorderTrackModal__communityCard {
	border: 1px solid #99b4d6;
	border-radius: 12px;
	padding: 16px;
	display: grid;
	gap: 12px;
	background: #fff;
	box-sizing: border-box;
}

.preorderTrackModal__communityCardTop {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
}

.preorderTrackModal__communityCardFooter {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	min-width: 0;
}

.preorderTrackModal__communityAvatar {
	flex: 0 0 56px;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	overflow: hidden;
	background: #f5f5f5;
}

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

.preorderTrackModal__communityName {
	flex: 1 1 auto;
	min-width: 0;
	color: var(--Black, #000);
	font-size: 15px;
	font-style: normal;
	font-weight: 700;
	line-height: 1.25;
}

.preorderTrackModal__communityMeta {
	display: flex;
	align-items: center;
	gap: 6px;
	min-width: 0;
	color: var(--Greys-Grey-4, #999);
	font-size: 13px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	white-space: nowrap;
}

.preorderTrackModal__communityMetaIcon {
	display: inline-flex;
	flex: 0 0 auto;
	line-height: 0;
}

.preorderTrackModal__communityMetaIcon svg {
	display: block;
}

.preorderTrackModal__communityFacepile {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	padding-right: 4px;
}

.preorderTrackModal__communityFace {
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	margin-left: -8px;
	border: 2px solid #fff;
	border-radius: 50%;
	overflow: hidden;
	background: #ececec;
	box-sizing: border-box;
}

.preorderTrackModal__communityFace:first-child {
	margin-left: 0;
}

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

.preorderTrackModal__actions {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	margin-top: 20px;
}

.preorderTrackModal__actions .preorderTrackModal__btn {
	width: 100%;
}

@media (max-width: 560px) {
	.preorderTrackModal__dialog,
	.preorderTrackModal__dialog--success {
		width: 100%;
		max-width: 100%;
	}

	.preorderTrackModal__actions {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 999px) {
	.shopProduct__back { font-size: 14px; }
	.shopProduct__name { font-size: 20px; }
}

/* ── Mobile filter toggle button ── */
.preordersFilterToggle {
	display: none;
}

.preordersFilterOverlay {
	display: none;
}

.preordersSidebarFilters__closeBtn {
	display: none;
}

@media (max-width: 960px) {
	/* Кнопка "Фильтры" */
	.preordersFilterToggle {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		margin-bottom: 12px;
		padding: 10px 18px;
		background: #fff;
		border: 1.5px solid #e0e0e0;
		border-radius: 24px;
		font-size: 15px;
		font-weight: 600;
		color: #0A0A0A;
		cursor: pointer;
		transition: border-color 0.15s;
	}
	.preordersFilterToggle:hover,
	.preordersFilterToggle.is-active {
		border-color: #2460F6;
		color: #2460F6;
	}
	.preordersFilterToggle__badge {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 20px;
		height: 20px;
		padding: 0 5px;
		background: #2460F6;
		color: #fff;
		font-size: 12px;
		font-weight: 700;
		border-radius: 10px;
		line-height: 1;
	}

	/* Сайдбар — скрыт по умолчанию, раскрывается вниз */
	.shopPage--preorders .shopPage__sidebar {
		display: none;
		position: static;
		top: auto;
		background: #fff;
		border: 1.5px solid #e8e8e8;
		border-radius: 16px;
		padding: 16px;
		box-sizing: border-box;
		margin-bottom: 16px;
	}
	.shopPage--preorders .shopPage__sidebar.is-open {
		display: block;
	}

	/* preordersSidebarUpdates скрываем на мобиле (в сайдбаре), показываем после пагинации */
	.shopPage--preorders .shopPage__sidebar .preordersSidebarUpdates {
		display: none;
	}
	.shopPage--preorders .preordersMobileUpdates {
		display: block;
		margin-top: 32px;
	}
}

.shopPage--preorders .preordersMobileUpdates {
	display: none;
}

/* Интро предзаказа: одна колонка уже с ≤1400px; CTA по центру (45%); слайдер выше карточки. */
@media (max-width: 1400px) {
	.preorderIntroSection {
		grid-template-columns: 1fr;
		/* В одну колонку большая верхняя отбивка 65px лишняя — ужимаем, чтобы «Поддержать»
		   помещалась на первом экране без прокрутки (баннер + инфо-панель + кнопка). */
		padding: 28px 0;
		gap: 16px;
	}
	.preorderIntroSection .shopProduct__left { order: 1; }
	.preorderIntroSection .preorderDetailSummary { order: 2; }
	/* Баннер НЕ режем: в одну колонку задаём боксу пропорцию 16:9 (≈как баннеры), картинка
	   contain — весь баннер виден, без обрезки (фикс-высота 471px + cover его кадрировали).
	   max-height — чтобы под баннером на первом экране осталось место для инфо-панели и «Поддержать». */
	.shopProduct--preorderDetail .shopProduct__stage {
		height: auto;
		aspect-ratio: 16 / 9;
		max-height: 60vh;
	}
	/* Картинка ЗАПОЛНЯЕТ рамку 16:9 (как на gamefound), а не по центру с полями. Рамка сама
	   ландшафтная (16:9 ≈ пропорции баннеров), поэтому cover заполняет без резкого кадрирования. */
	.shopProduct--preorderDetail .shopProduct__main-img,
	.shopProduct--preorderDetail .shopProduct__mainVideo {
		object-fit: cover;
	}
	.preorderDetailSummary__ctaRow {
		max-width: 45%;
		margin-left: auto;
		margin-right: auto;
	}
}
@media (max-width: 768px) {
	/* На телефоне 45% слишком узко — кнопки во всю ширину карточки (сбрасываем и авто-поля,
	   иначе flex-элемент из-за margin:auto сжимается к контенту). */
	.preorderDetailSummary__ctaRow {
		max-width: 100%;
		margin-left: 0;
		margin-right: 0;
	}
}

/* Адаптив: сайдбар стекается на всю ширину — кнопки «К оплате» и «Посмотреть все награды»
   не растягиваем во всю ширину, а центрируем с разумной шириной. */
@media (max-width: 1360px) {
	.preorderSideCart__payBtn,
	.shopProductTabs__allRewardsBtn {
		width: auto;
		max-width: 100%;
		justify-self: center;
		margin-left: auto;
		margin-right: auto;
		padding-left: 40px;
		padding-right: 40px;
	}
}

/* Кнопка «В корзину» дополнения — тот же hover, что у награды (.shopProduct__relatedCart). */
.preorderAddonCard__cart:hover {
	filter: brightness(1.05);
}

/* Блоки «Описания» предзаказа: слайдер (галерея) и видео/iframe. Адаптивные. */
.preorderDescSlider { width: 100%; margin: 20px 0; }
/* Слайдер в тексте описания: скруглённые углы, без рамки/фона/отступов и без фикс. высоты —
   окно подстраивается под картинку (ширина = ширина текста, высота = по пропорциям картинки).
   Базовая галерея товара (.shopProduct__stage) даёт padding 20px, min-height 520px, скругления
   и абсолютные слайды — здесь всё это сброшено. */
/* Префикс .preorderDescSlider поднимает специфичность: слайдер стоит внутри .shopProduct--preorderDetail,
   и правила верхнего слайдера проекта (height: 471px; на ≤1400px aspect-ratio 16/9 + max-height 60vh,
   overflow: hidden) обрезали картинку снизу. Здесь высота — строго по картинке. */
.preorderDescSlider .preorderDescSlider__stage.shopProduct__stage {
	position: relative;
	width: 100%;
	display: block;
	height: auto;
	min-height: 0;
	max-height: none;
	aspect-ratio: auto;
	padding: 0;
	background: none;
	border-radius: 0;
}
.preorderDescSlider .shopProduct__stageSlides { position: relative; width: 100%; height: auto; display: block; overflow: visible; }
.preorderDescSlider .shopProduct__stageSlide {
	display: none;
	position: static;
	inset: auto;
	width: 100%;
	height: auto;
	opacity: 1;
	visibility: visible;
	transition: none;
}
.preorderDescSlider .shopProduct__stageSlide.is-active { display: block; }
/* Смена слайда — как у баннера главной: размытие + проявление (классы ставит main.js). */
.preorderDescSlider .shopProduct__stageSlides { overflow: hidden; border-radius: 16px; transition: height .7s ease; }
.preorderDescSlider .shopProduct__stageSlide { transition: opacity .7s ease, filter .7s ease, transform .7s ease; }
.preorderDescSlider .shopProduct__stageSlide.is-leaving {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	pointer-events: none;
}
.preorderDescSlider .shopProduct__stageSlide.is-out,
.preorderDescSlider .shopProduct__stageSlide.is-in {
	opacity: 0;
	filter: blur(14px);
	transform: scale(1.04);
}
.preorderDescSlider .shopProduct__stageSlide.is-in { transition: none; }
@media (prefers-reduced-motion: reduce) {
	.preorderDescSlider .shopProduct__stageSlides,
	.preorderDescSlider .shopProduct__stageSlide { transition: none; }
}
.preorderDescSlider .preorderDescSlider__stage .shopProduct__main-img {
	display: block;
	width: 100%;
	height: auto;
	max-height: none;
	object-fit: initial;
	border-radius: 16px;
	background: none;
	cursor: default;
}
/* Стрелки — как на детальной (базовый .shopProduct__arrow, SVG-кружки). */
/* Дотсы слайдера «Описания» — тёмные (фон описания светлый). */
.preorderDescSlider .shopProduct__dots { margin-top: 12px; }
.preorderDescSlider .shopProduct__dot { background: rgba(10, 10, 10, 0.28); }
.preorderDescSlider .shopProduct__dot.is-active { background: #0a0a0a; }
.preorderDescSlider .shopProduct__dot:hover { background: rgba(10, 10, 10, 0.5); }

.preorderDescEmbed {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 56.25%; /* 16:9 через padding — надёжнее aspect-ratio */
	margin: 20px 0;
	border-radius: 16px;
	overflow: hidden;
	background: #000;
}
.preorderDescEmbed iframe {
	position: absolute !important;
	inset: 0;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	border: 0 !important;
}

@media (max-width: 768px) {
	.preorderDescSlider .preorderDescSlider__stage .shopProduct__main-img { border-radius: 12px; }
	.preorderDescSlider .shopProduct__stageSlides { border-radius: 12px; }
	.preorderDescSlider .shopProduct__arrow { width: 44px; height: 44px; background-size: 44px 44px; }
	.preorderDescEmbed { border-radius: 12px; }
}

/* Мульти-лейблы предзаказа (свойство PREORDER_LABELS): цветные бейджи, цвет — инлайн. */
.preorderRewardCard__labels {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 8px;
}
.preorderRewardCard__labels .preorderRewardCard__badge {
	margin: 0;
	align-self: auto;
}
.preorderSupportModal__labels {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 10px;
}
.preorderSupportModal__labels .preorderSupportModal__badge {
	margin-bottom: 0;
}

/* Лейблы в карточке дополнения (как в награде). */
.preorderAddonCard__labels {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 8px;
}
.preorderAddonCard__badge {
	align-self: flex-start;
	border-radius: 20px;
	padding: 4px 12px;
	color: #fff;
	font-size: 15px;
	font-weight: 400;
	line-height: normal;
}

/* Бейдж статуса в левом верхнем углу карточки предзаказа в ЛК */
.lkPreorder__img { position: relative; }
.lkPreorder__statusBadge { position: absolute; top: 12px; left: 12px; z-index: 2; }

.preorderRewardsToolbar[hidden] {
	display: none !important;
}

/* Модалка награды/дополнения: «Доступное количество: N шт.» (только у товаров с лимитом) */
.preorderSupportModal__stock {
	margin: 0 0 12px;
	color: #999;
	font-size: 14px;
	line-height: 1.4;
}

/* Страница предзаказа, телефон/планшет: шапка уезжает вверх вслед за прокруткой, лента вкладок
   поднимается на её место — transform ставит element/script.js прямо в style элементов. */
@media (max-width: 1200px) {
	body.is-headerm-open .header {
		transform: none !important;
	}
}

/* Листинг предзаказов, ТЕЛЕФОН (одна колонка): та же рамка баннера 532×300, что на компьютере
   (баннер «Анонс» загружается 1064×600). Раньше высота шла по пропорциям картинки — широкие
   картинки превращались в узкую полоску. */
@media (max-width: 720px) {
	.shopPage--preorders .shopPage__card--preorder .shopPage__card__photo {
		aspect-ratio: 532 / 300;
		height: auto;
	}
	.shopPage--preorders .shopPage__card--preorder .shopPage__card__photo img {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
}

/* Боковая корзина: длинные названия дополнений переносятся (иначе «ПРИКЛЮЧЕНИЕ НА ОДНОГО: …» PDF и физ. версия
   неотличимы). Отступ справа — под корзину-кнопку удаления в правом нижнем углу. */
.preorderSideCart__itemName {
	white-space: normal;
	overflow: visible;
	text-overflow: clip;
	overflow-wrap: anywhere;
	line-height: 1.25;
}
/* Когда позиций много, список прокручивается внутри, а «ИТОГО» и «Оформить» всегда на экране.
   Панель sticky (top:120px), поэтому её высота ограничена окном. */
@media (min-width: 1201px) {
	.shopProductTabs__body--preorder .shopProductTabs__side {
		max-height: calc(100vh - 140px);
		display: flex;
		flex-direction: column;
	}
	.shopProductTabs__body--preorder .shopProductTabs__side > * { flex-shrink: 0; }
	.shopProductTabs__body--preorder .shopProductTabs__side > .preorderSideCart {
		flex: 0 1 auto;
		min-height: 0;
		display: flex;
		flex-direction: column;
	}
	.preorderSideCart > * { flex-shrink: 0; }
	.preorderSideCart > .preorderSideCart__items {
		flex: 0 1 auto;
		min-height: 120px;
		overflow-y: auto;
		overscroll-behavior: contain;
		display: grid;
		gap: 16px;
		align-content: start;
		margin-right: -12px;
		padding-right: 8px;
		scrollbar-width: thin;
		scrollbar-color: #cfcfcf transparent;
	}
	.preorderSideCart > .preorderSideCart__items::-webkit-scrollbar { width: 4px; }
	.preorderSideCart > .preorderSideCart__items::-webkit-scrollbar-thumb { background: #cfcfcf; border-radius: 4px; }
}
/* Пустая корзина — обёртка списка не занимает места. */
.preorderSideCart__items:not(:has(> :not([hidden]))) { display: none; }

/* Предпросмотр нестартовавшего проекта — плашка только для редакторов (detail_tabs.php) */
.preorderPreviewBar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin: 0 0 20px;
	padding: 14px 18px;
	border-radius: 16px;
	background: #FFF5EA;
	border: 1.5px dashed #F48812;
	color: #0A0A0A;
	font-size: 15px;
	line-height: 1.4;
}
.preorderPreviewBar--on { background: #EFFAF5; border-color: #31C992; }
.preorderPreviewBar__btn {
	flex: 0 0 auto;
	padding: 10px 18px;
	border-radius: 12px;
	background: #0A0A0A;
	color: #fff;
	font-weight: 700;
	font-size: 14px;
	text-decoration: none;
	white-space: nowrap;
}
.preorderPreviewBar__btn:hover { opacity: .85; color: #fff; }
@media (max-width: 767px) {
	.preorderPreviewBar { flex-direction: column; align-items: stretch; font-size: 14px; }
	.preorderPreviewBar__btn { text-align: center; }
}

.preorderPreviewBar--off { background: #F5F5F5; border-color: #999; }

/* Короткое описание награды кликабельно — открывает окно награды (detail_tabs.php) */
.preorderRewardCard__desc--open { cursor: pointer; transition: color .15s; }
.preorderRewardCard__desc--open:hover { color: #0A0A0A; }
.preorderRewardCard__desc--open:focus-visible { outline: 2px solid #2460F6; outline-offset: 2px; border-radius: 4px; }

/* Ответ FAQ: HTML из визуального редактора — аккуратные абзацы, списки и ссылки */
.preorderFaq__a p { margin: 0 0 12px; }
.preorderFaq__a p:last-child, .preorderFaq__a ul:last-child, .preorderFaq__a ol:last-child { margin-bottom: 0; }
.preorderFaq__a ul, .preorderFaq__a ol { margin: 0 0 12px; padding-left: 22px; }
.preorderFaq__a li { margin: 0 0 4px; }
.preorderFaq__a li:last-child { margin-bottom: 0; }
.preorderFaq__a a {
	color: #2460F6;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
	text-decoration-color: rgba(36, 96, 246, .4);
	transition: text-decoration-color .15s, color .15s;
	overflow-wrap: anywhere;
}
.preorderFaq__a a:hover { color: #1a4fd6; text-decoration-color: currentColor; }

/* На невысоком экране прокручиваем правую колонку целиком. Картинка занимает всю ширину
   карточки с исходными пропорциями: ограничение её высоты создавало пустые поля по бокам. */
@media (min-width: 1201px) {
	.shopProductTabs__body--preorder .shopProductTabs__side {
		overflow-y: auto;
		scrollbar-width: thin;
	}
}

/* Закреп «Скоро старт» на телефоне: левая колонка («До старта проекта:», «N отслеживают») и таймер справа
   не помещались в одну строку и наезжали друг на друга. На узком экране — столбиком:
   подпись → таймер (слева, по ширине) → счётчик отслеживающих. */
@media (max-width: 767px) {
	:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preordersFeatured__foot {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
	}
	:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preordersFeatured__leftMeta {
		display: contents;
	}
	:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preordersFeatured__line--start { order: 1; }
	:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preordersFeatured__rightMeta {
		order: 2;
		align-items: flex-start;
		align-self: stretch;
		text-align: left;
	}
	:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preordersFeatured__line--participants { order: 3; }
	:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preTimer__grid {
		justify-content: start;
		gap: 0 14px;
	}
	:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preTimer__part { align-items: flex-start; }
	:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preTimer__part b { font-size: 32px; }
	:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preTimer__part small,
	:is(.shopPage--preorders, .lkPinnedPreorder) .preordersFeatured--soon_start .preTimer__part:last-of-type small { min-width: 0; max-width: none; text-align: left; font-size: 13px; }
}

/* Мобильное интро: таймер не должен задавать минимальную ширину всей страницы. */
@media (max-width: 1400px) {
 .preorderIntroSection { grid-template-columns: minmax(0, 1fr); }
 .preorderIntroSection > * { min-width: 0; }
}
@media (max-width: 768px) {
 .shopProduct--preorderDetail { grid-template-columns: minmax(0, 1fr); }
 .preorderDetailSummary__countdownGrid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-flow: row;
  gap: 6px;
 }
 .preorderDetailSummary__countdownCell { min-width: 0; }
 .preorderDetailSummary__countdownCell span { font-size: clamp(24px, 8vw, 48px); }
 .preorderDetailSummary__countdownCell small { font-size: clamp(11px, 3vw, 16px); }
 .preorderDetailSummary__specs { flex-wrap: wrap; max-width: 100%; }
}

/* Картинки блока «Картинка» в описании проекта — скругление как у слайдера и видео
   (общее правило вкладок выше обнуляет border-radius у всех img). */
.shopProductTabs--preorderAnchor .shopProductTabs__content .myNewsImage__box img { border-radius: 16px; }
@media (max-width: 768px) {
	.shopProductTabs--preorderAnchor .shopProductTabs__content .myNewsImage__box img { border-radius: 12px; }
}

/* ===== Мобильная страница проекта по макету Figma «Desktop - 9» (390px), 02.11.2026 =====
   Размеры и расположение — из макета, наполнение карточек — прежнее. */
@media (max-width: 767px) {
	/* Карточка-сводка под слайдером */
	.preorderDetailSummary {
		padding: 20px;
		border-radius: 32px;
	}
	.preorderDetailSummary__title {
		font-size: 20px;
		line-height: 1.2;
		letter-spacing: -0.4px;
		min-height: 0;
		height: auto;
	}
	.preorderDetailSummary__fundingLabel { font-size: 14px; }
	.preorderDetailSummary__fundingVal {
		font-size: 24px;
		letter-spacing: -0.48px;
	}
	/* Блок сверхцели: картинка-миниатюра справа, текст не обрезается */
	.preorderDetailSummary__stretch { padding: 12px; }
	.preorderDetailSummary__stretchImg {
		width: 88px;
		height: 64px;
		border-radius: 8px;
	}
	.preorderDetailSummary__stretchText,
	.preorderDetailSummary__stretchTitle { font-size: 14px; }
	/* Участники и дни — каждый в одну строку; если вдвоём не влезают, второй уходит ниже целиком */
	.preorderDetailSummary__stats {
		flex-wrap: wrap;
		gap: 8px 12px;
		font-size: 14px;
		letter-spacing: -0.28px;
	}
	.preorderDetailSummary__stat { white-space: nowrap; }
	.preorderDetailSummary__support {
		height: 48px;
		font-size: 16px;
		border-radius: 16px;
	}
	.preorderDetailSummary__bookmark {
		width: 48px;
		height: 48px;
		border-radius: 12px;
	}

	/* Лента вкладок */
	.shopProductTabs__head--anchor { padding: 8px; }

	/* Заголовки разделов «Описание», «Награды»… */
	.shopProductTabs--preorderWide .shopProductTabs__sectionTitle {
		font-size: 28px;
		letter-spacing: -0.56px;
	}

	/* Награда: одна карточка — фото сверху, серый блок снизу без зазора */
	.preorderRewardCard { gap: 0; }
	.preorderRewardCard__thumb { border-radius: 20px 20px 0 0; }
	.preorderRewardCard__body {
		border-radius: 0 0 20px 20px;
		padding: 20px;
	}
	.preorderRewardCard__name {
		font-size: 18px;
		line-height: 1.15;
	}
	/* «N раз поддержали» слева, «Доставка …» справа (при нехватке места — ниже) */
	.preorderRewardCard__meta {
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
		gap: 6px 12px;
		font-size: 13px;
	}
	.preorderRewardCard__cart {
		height: 40px;
		font-size: 16px;
		border-radius: 12px;
	}

	/* Сверхцели: компактная строка — слева сумма, цель, шкала, название; справа фото 92×92 */
	.preorderStretchCard--withImage {
		grid-template-columns: minmax(0, 1fr) 92px;
		gap: 0;
		min-height: 92px;
		background: transparent;
		border: none;
		border-radius: 0;
		overflow: visible;
	}
	.preorderStretchCard--withImage .preorderStretchCard__left {
		grid-column: 1;
		grid-row: 1;
		justify-content: center;
		gap: 8px;
		padding: 12px;
		background: var(--Greys-Grey-0, #F5F5F5);
		border-radius: 16px 0 0 16px;
	}
	.preorderStretchCard--withImage .preorderStretchCard__img {
		grid-column: 2;
		grid-row: 1;
		width: 92px;
		height: 100%;
		min-height: 92px;
		aspect-ratio: auto;
		border-radius: 0 16px 16px 0;
		background: #f2f2f2;
	}
	.preorderStretchCard--withImage .preorderStretchCard__img img {
		height: 100%;
		object-fit: cover;
	}
	.preorderStretchCard--withImage .preorderStretchCard__main { order: 0; }
	.preorderStretchCard--withImage .preorderStretchCard__top,
	.preorderStretchCard__top {
		flex-direction: row;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
		gap: 4px 8px;
	}
	.preorderStretchCard { padding: 12px; border-radius: 16px; }
	.preorderStretchCard--withImage { padding: 0; }
	.preorderStretchCard__collected {
		font-size: 14px;
		letter-spacing: -0.28px;
	}
	.preorderStretchCard__target,
	.preorderStretchCard__reachedLabel {
		gap: 4px;
		font-size: 13px;
		letter-spacing: -0.26px;
	}
	.preorderStretchCard__lock svg,
	.preorderStretchCard__reachedLabel svg {
		width: 16px;
		height: 16px;
	}
	.preorderStretchCard__bar { margin: 0; }
	.preorderStretchCard__name {
		margin: 0;
		font-size: 14px;
		font-weight: 500;
		line-height: 1.2;
		letter-spacing: -0.28px;
		display: -webkit-box;
		-webkit-line-clamp: 2;
		line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}
	.preorderStretchCard__moreBtn {
		margin-top: 4px;
		font-size: 13px;
	}

	/* Дополнения: горизонтальная лента карточек 263px, листается пальцем */
	.preorderRewardsList.preorderAddonsList {
		display: flex;
		gap: 16px;
		overflow-x: auto;
		overflow-y: hidden;
		scroll-snap-type: x mandatory;
		scroll-padding: 0 20px;
		margin: 0 -20px;
		padding: 0 20px 4px;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}
	.preorderRewardsList.preorderAddonsList::-webkit-scrollbar { display: none; }
	.preorderRewardsList.preorderAddonsList .preorderAddonCard {
		flex: 0 0 263px;
		width: 263px;
		max-width: 263px;
		margin: 0;
		scroll-snap-align: start;
		/* кнопки в одну линию, даже если у соседней карточки есть лейбл или длинное название */
		display: flex;
		flex-direction: column;
	}
	.preorderRewardsList.preorderAddonsList .preorderAddonCard__body { flex: 1 1 auto; }
	.preorderRewardsList.preorderAddonsList .preorderAddonCard__cart { margin-top: auto; }
	.preorderRewardsList.preorderAddonsList .preorderAddonCard:only-child {
		flex: 1 1 auto;
		width: 100%;
		max-width: none;
	}
	.preorderRewardsList.preorderAddonsList .preorderAddonCard__thumb { border-radius: 20px; }
	.preorderAddonCard__body { padding-top: 12px; }
	.preorderAddonCard__name {
		font-size: 16px;
		line-height: 1.2;
		letter-spacing: -0.32px;
	}
	.preorderAddonCard__priceRow { margin: 8px 0 12px; }
	.preorderAddonCard__price { font-size: 16px; }
	.preorderAddonCard__priceOld { font-size: 14px; }
	.preorderAddonCard__cart {
		height: 40px;
		font-size: 16px;
		border-radius: 12px;
	}
}

/* End */
/* /bitrix/components/sprint.editor/blocks/templates/.default/_style.css?17739928463514 */
/* /local/templates/default/components/bitrix/catalog/preorders/style.css?1793622682214296 */
