/* Делаем контейнер flex для перестановки блоков */
.t-form__inputsbox {
  display: flex;
  flex-direction: column;
}

/* Порядок блоков: телефон → кнопка → чекбокс → ошибки */
.t-input-group_ph { order: 1; }                    /* телефон остаётся первым */
.tn-form__submit { order: 2; }                     /* кнопка сразу после телефона */
.t-input-group_cb { order: 3; }                    /* чекбокс опускаем ниже */
.t-form__errorbox-middle { order: 4; }             /* ошибки в конец */

/* Полупрозрачность всего блока согласия */
.t-input-group_cb .t-checkbox__control {
  opacity: 0.5;
}

/* Скругление 4px + полупрозрачная обводка чекбокса */
.t-input-group_cb .t-checkbox__indicator {
  border-radius: 4px !important;
  border-color: rgba(0, 0, 0, 0.5) !important;
  opacity: 0.5;
}

/* Полупрозрачная галочка при отмеченном состоянии */
.t-input-group_cb .t-checkbox__indicator:after {
  border-color: rgba(0, 0, 0, 0.5) !important;
}

/* Небольшая подстройка отступа текста, чтобы выглядело чисто */
.t-input-group_cb .t-checkbox__labeltext {
  margin-right: 0;
  margin-top: 10px;
}

/*  Каталог */

/* FIX: Заставляет карточки становиться в грид-сетку */
.t-store__card-list {
  display: contents !important;
}

/* Основной контейнер каталога */
.js-store-grid-cont {
  max-width: 1360px !important;
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px !important;
  padding: 0 10px !important;
  box-sizing: border-box;
  margin: 0 auto;
}

/* Убираем стандартные разделители Tilda */
.js-store-grid-cont:before, .js-store-grid-cont:after, .t-store__grid-separator {
  display: none !important;
}

/* Стили для самой карточки */
#rec1910860711 .js-product {
  margin: 0 !important;
  padding: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
  transition: all 0.3s ease-in-out;
}

/* Стили для самой карточки */
#rec1994329271 .js-product {
  margin: 0 !important;
  padding: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
  transition: all 0.3s ease-in-out;
}

.t-store__card__imgwrapper {
  overflow: hidden;
}

/* Стили для лейбла "NEW" */
.t-store__card__mark {
  display: inline-block;
  width: auto;
  height: auto;
  padding: 6px 12px;
  background-color: #45822f !important;
  border-radius: 0px !important;
  color: #ffffff !important;
  font-weight: 500;
}

/* Кнопки в карточке */
.t-store__card__btns-wrapper {
  gap: 10px;
  flex-wrap: nowrap;
}
.t-store__card__btns-wrapper a {
  margin: 0 !important;
  width: 100% !important;
}

.t-store__parts-switch-wrapper {
  max-width: 1200px;
  padding: 0 10px !important;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center !important;
}

.js-store-parts-select-container {
  max-width: 1200px;
  margin: 0 auto !important;
  display: flex !important;
  justify-content: center !important;
}

.js-store-parts-switcher {
  margin: 0 !important;
  padding: 8px 16px;
  background-color: white;
  opacity: 1 !important;
  text-wrap: nowrap;
  transition: all 0.2s ease-in;
  display: flex;
  align-items: center;
  gap: 0px;
  border: solid 1px #45822f;
}
.js-store-parts-switcher.t-active {
  background-color: #45822f !important;
  color: white !important;
  gap: 8px;
}
.js-store-parts-switcher:hover {
  background-color: #45822f;
  color: white !important;
}
.js-store-parts-switcher:before {
  content: "";
  display: block;
  width: 0px;
  height: 0px;
  background-color: white;
  border-radius: 100px;
  margin-bottom: 2px;
  transition: all 0.2s ease-in;
}
.js-store-parts-switcher.t-active:before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  background-color: white;
  border-radius: 100px;
  margin-bottom: 2px;
  transition: all 0.2s ease-in;
}

/* --- FIX: СТИЛИ ДЛЯ КНОПКИ "ЗАГРУЗИТЬ ЕЩЕ" --- */
.js-store-load-more-btn.t-store__load-more-btn {
  color: #ffffff !important;
  background-color: #45822f !important;
  border: none !important;
  font-weight: 600 !important;
  transition: all 0.2s ease-in-out;
  padding-left: 40px !important;
  padding-right: 40px !important;
}
.js-store-load-more-btn.t-store__load-more-btn:hover {
  color: #ffffff !important;
  background-color: #45822f !important;
}

@media screen and (max-width: 1200px) {
  .js-store-grid-cont { max-width: 1200px !important; grid-template-columns: repeat(3, 1fr); }
  .js-store-parts-select-container { max-width: 1200px; }
}
@media screen and (max-width: 960px) {
  .js-store-grid-cont { max-width: 960px !important; grid-template-columns: repeat(2, 1fr); }
  .js-store-parts-select-container { max-width: 960px; }
}
@media screen and (max-width: 640px) {
  .js-store-grid-cont { max-width: 100% !important; grid-template-columns: repeat(1, 1fr); gap: 10px !important; }
  .js-store-parts-select-container { max-width: 100%; }
  .js-store-load-more-btn.t-store__load-more-btn { width: 100%; }
  .t-store__load-more-btn-wrap.t-align_center { padding: 0 !important; }
}

@media screen and (max-width: 960px){
  .t-store__filter__search-and-sort { display: block !important; margin: 0 !important; }
  .js-store-search-mob-btn { display: none !important; }
  .t-store__filter__input.js-store-filter-search { border-radius: 12px; }
  .t-container { max-width: 960px !important; }
}