/* 1. ГЛОБАЛЬНЫЕ ПАРАМЕТРЫ ФИКСИРОВАННОЙ ШАПКИ И БЕГУЩЕЙ СТРОКИ */
:root {
  --ticker-height: 28px;
}

/* Разрешаем фиксированным блокам корректно отображаться в Tilda */
.t-records {
  overflow: visible !important;
}

/* Фиксированная бегущая строка */
html body #rec2499888113 {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  left: 0 !important;

  width: 100% !important;
  height: var(--ticker-height) !important;
  min-height: var(--ticker-height) !important;

  overflow: hidden !important;
  z-index: 1002 !important;
}

/* Внутренний контейнер бегущей строки */
html body #rec2499888113 > div {
  height: var(--ticker-height) !important;
  min-height: var(--ticker-height) !important;
}

/* Шапка полностью под бегущей строкой */
html body #rec2428595703,
html body #rec2428595703 > div,
html body #rec2428595703 [class*="positionfixed"],
html body #rec2428595703 [class*="position-fixed"],
html body #rec2428595703 .t396__artboard {
  top: var(--ticker-height) !important;
  z-index: 1001 !important;
}




/* FAQ / T585 — адаптивный размер кнопок,
   уменьшенная иконка строго по центру */

:is(
  #rec2428625943,
  #rec2428691953,
  #rec2428694843,
  #rec2428701283,
  #rec2428703333
) {
  --faq-icon-size: 34px;
  --faq-icon-gap: 14px;
  --faq-plus-scale: 0.58;
}

/* Строка вопроса */
:is(
  #rec2428625943,
  #rec2428691953,
  #rec2428694843,
  #rec2428701283,
  #rec2428703333
) .t585__header {
  position: relative !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* Кнопка вопроса */
:is(
  #rec2428625943,
  #rec2428691953,
  #rec2428694843,
  #rec2428701283,
  #rec2428703333
) .t585__trigger-button {
  position: relative !important;
  display: block !important;

  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;

  padding-right: calc(
    var(--faq-icon-size) + var(--faq-icon-gap)
  ) !important;

  box-sizing: border-box !important;
}

/* Текст вопроса */
:is(
  #rec2428625943,
  #rec2428691953,
  #rec2428694843,
  #rec2428701283,
  #rec2428703333
) .t585__title {
  display: block !important;

  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;

  overflow-wrap: break-word !important;
  word-break: normal !important;

  box-sizing: border-box !important;
}

/* Контейнер обычной и hover-иконки */
:is(
  #rec2428625943,
  #rec2428691953,
  #rec2428694843,
  #rec2428701283,
  #rec2428703333
) .t585__icon,
:is(
  #rec2428625943,
  #rec2428691953,
  #rec2428694843,
  #rec2428701283,
  #rec2428703333
) .t585__icon-hover {
  position: absolute !important;

  top: 50% !important;
  right: 0 !important;
  bottom: auto !important;
  left: auto !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: var(--faq-icon-size) !important;
  height: var(--faq-icon-size) !important;

  min-width: var(--faq-icon-size) !important;
  min-height: var(--faq-icon-size) !important;

  max-width: var(--faq-icon-size) !important;
  max-height: var(--faq-icon-size) !important;

  padding: 0 !important;
  margin: 0 !important;

  transform: translateY(-50%) !important;
  box-sizing: border-box !important;
}

/* SVG занимает весь контейнер кнопки */
:is(
  #rec2428625943,
  #rec2428691953,
  #rec2428694843,
  #rec2428701283,
  #rec2428703333
) .t585__icon svg,
:is(
  #rec2428625943,
  #rec2428691953,
  #rec2428694843,
  #rec2428701283,
  #rec2428703333
) .t585__icon-hover svg {
  display: block !important;

  width: 100% !important;
  height: 100% !important;

  margin: auto !important;
  overflow: visible !important;
}

/* Красный круг — размер сохраняется */
:is(
  #rec2428625943,
  #rec2428691953,
  #rec2428694843,
  #rec2428701283,
  #rec2428703333
) .t585__circle {
  width: var(--faq-icon-size) !important;
  height: var(--faq-icon-size) !important;

  min-width: var(--faq-icon-size) !important;
  min-height: var(--faq-icon-size) !important;

  max-width: var(--faq-icon-size) !important;
  max-height: var(--faq-icon-size) !important;

  padding: 0 !important;
  margin: 0 !important;

  border-radius: 50% !important;
  box-sizing: border-box !important;
}

/* Белая иконка — меньше и строго центр-центр */
:is(
  #rec2428625943,
  #rec2428691953,
  #rec2428694843,
  #rec2428701283,
  #rec2428703333
) .t585__lines {
  transform-box: view-box !important;
  transform-origin: 50% 50% !important;

  transform: scale(var(--faq-plus-scale)) !important;

  transition: transform 0.3s ease-in-out !important;
}

/* Открытый пункт */
:is(
  #rec2428625943,
  #rec2428691953,
  #rec2428694843,
  #rec2428701283,
  #rec2428703333
) .t585__opened .t585__lines,
:is(
  #rec2428625943,
  #rec2428691953,
  #rec2428694843,
  #rec2428701283,
  #rec2428703333
) .t585__trigger-button[aria-expanded="true"] .t585__lines {
  transform:
    rotate(-45deg)
    scale(var(--faq-plus-scale)) !important;
}

/* Планшеты */
@media screen and (max-width: 960px) {
  :is(
    #rec2428625943,
    #rec2428691953,
    #rec2428694843,
    #rec2428701283,
    #rec2428703333
  ) {
    --faq-icon-size: 30px;
    --faq-icon-gap: 12px;
    --faq-plus-scale: 0.56;
  }
}

/* Телефоны */
@media screen and (max-width: 480px) {
  :is(
    #rec2428625943,
    #rec2428691953,
    #rec2428694843,
    #rec2428701283,
    #rec2428703333
  ) {
    --faq-icon-size: 26px;
    --faq-icon-gap: 10px;
    --faq-plus-scale: 0.54;
  }
}


/* 3. КАРТОЧКА ТОВАРА — верхний отступ хлебных крошек на мобильных устройствах до 640px */
@media (max-width: 640px) {
      .t-catalog__prod-popup__breadcrumbs { padding-top: 80px !important; }
      }
      



/* 4. КАРТОЧКА ТОВАРА — счётчик количества, кнопка добавления и избранное в одну строку */
#rec2421076143 .t-catalog__prod-popup__btn-wrapper {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
}

#rec2421076143 .t-catalog__prod__quantity {
    border-radius: 999px !important;
    flex-shrink: 0 !important;
    margin-bottom: 0 !important;
}

/* Основная кнопка сжимается, элементы не переносятся */
#rec2421076143 .t-catalog__prod-popup__btn-wrapper > * {
    flex: 0 0 auto !important;
    margin-left: 0 !important;
    margin-right: 8px !important;
}

#rec2421076143
.t-catalog__prod-popup__btn-wrapper
.t-catalog__prod-popup__btn {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    white-space: nowrap !important;
}

#rec2421076143
.t-catalog__prod-popup__btn-wrapper
.t1002__addBtn {
    margin-right: 0 !important;
}

/* На узких экранах уменьшаем боковые отступы */
@media (max-width: 480px) {
    #rec2421076143
    .t-catalog__prod-popup__btn-wrapper
    .t-catalog__prod-popup__btn {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    #rec2421076143 .t-catalog__prod__quantity__minus-wrapper,
    #rec2421076143 .t-catalog__prod__quantity__plus-wrapper {
        margin: 0 3px !important;
    }
}

/* Кнопки покупки в карточке товара внутри каталога */
#rec2421076143 .t-catalog__card__btns-wrapper {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
}

#rec2421076143
.t-catalog__card__btns-wrapper
.t-catalog__prod__quantity {
    flex: 0 0 auto !important;
    width: auto !important;
    margin: 0 8px 0 0 !important;
}

#rec2421076143
.t-catalog__card__btns-wrapper
.js-catalog-prod-btn2 {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 8px 0 0 !important;
    white-space: nowrap !important;
}

#rec2421076143
.t-catalog__card__btns-wrapper
.t1002__addBtn {
    flex: 0 0 auto !important;
    margin: 0 !important;
}

/* ==========================================================================
   5. КОРЗИНА И ОФОРМЛЕНИЕ ЗАКАЗА
   Поля, доставка, итоговая сумма, кнопки, список штатов и сообщение о доставке.
   ========================================================================== */
/* 5.1 — Скрываем стандартный ручной выбор доставки Tilda */
  #rec2428595673 .t-radio__wrapper-delivery {
    display: none !important;
  }
  /* 5.2 — Статус способа доставки и сообщения проверки адреса */
  #rec2428595673 .kf-shipping-status {
    width: 100%;
    box-sizing: border-box;
    margin: 4px 0 18px;
    padding: 12px 14px;
    border: 1px solid rgba(27,27,27,.18);
    border-radius: 12px;
    font-size: 14px;
    line-height: 1.35;
    color: #1b1b1b;
    background: #fff;
  }
  #rec2428595673 .kf-shipping-status[data-state="pending"] {
    color: #666;
  }
  #rec2428595673 .kf-shipping-status[data-state="error"] {
    color: #a42c1b;
    border-color: rgba(164,44,27,.45);
  }
  #rec2428595673 .kf-address-pending .t706__cartwin-totalamount-wrap {
    display: none !important;
  }
  /* 5.3 — Строки Subtotal, Shipping и Total до проверки адреса */
  #rec2428595673 .kf-pending-summary {
    display: none;
    width: 100%;
    box-sizing: border-box;
    margin: 18px 0 8px;
    color: #1b1b1b;
  }
  #rec2428595673 .kf-address-pending .kf-pending-summary { display: block; }
  #rec2428595673 .kf-summary-row { display:flex; justify-content:space-between; gap:20px; padding:5px 0; font-size:15px; line-height:1.35; }
  #rec2428595673 .kf-summary-row--total { margin-top:10px; padding-top:14px; border-top:1px solid rgba(27,27,27,.15); align-items:baseline; font-size:20px; font-weight:700; }
  #rec2428595673 .kf-summary-currency { margin-right:7px; font-size:12px; font-weight:400; color:#666; }
  #rec2428595673 .kf-shipping-method-title { margin-bottom:5px; font-size:16px; font-weight:600; color:#1b1b1b; }
  #rec2428595673 .kf-shipping-method-copy { font-size:14px; line-height:1.4; }
  #rec2428595673 .kf-address-pending .delivery-full-address {
    display: none !important;
  }
  /* 5.4 — Состояние неактивной кнопки перехода к оплате */
  #rec2428595673 .t-submit[disabled] {
    opacity: .45 !important;
    cursor: not-allowed !important;
    pointer-events: none !important;
  }
  #rec2428595673 select[name="state"] {
    appearance: auto;
    width: 100%;
  }

  /* 5.5 — Размеры полей формы и расстояния между ними */
  #rec2428595673 .t-form .t-input,
  #rec2428595673 .t-form select.t-input {
    height: 45px !important;
    min-height: 45px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    box-sizing: border-box !important;
  }
  #rec2428595673 .t-form .t-input-group {
    margin-top: 0 !important;
    margin-bottom: 10px !important;
    padding-bottom: 0 !important;
  }
  #rec2428595673 .t-form .t-input,
  #rec2428595673 .t-form select.t-input,
  #rec2428595673 .t-form textarea.t-input {
    font-size: 15px !important;
  }
  #rec2428595673 .t-form .t-input::placeholder,
  #rec2428595673 .t-form textarea.t-input::placeholder {
    font-size: 15px !important;
  }
  #rec2428595673 .kf-shipping-status {
    margin-bottom: 15px !important;
    font-family: GraphikTT, Arial, sans-serif !important;
  }
  #rec2428595673 .kf-shipping-status * { font-family: GraphikTT, Arial, sans-serif !important; }
  #rec2428595673 .t-form__submit { margin-top: 0 !important; padding-top: 0 !important; }
  #rec2428595673 .t706__product-title,
  #rec2428595673 .t706__product-title a { font-size: 15px !important; }

  /* 5.6 — Нейтральный фон заполненных и автоматически заполненных полей */
  #rec2428595673 .t-form input.t-input,
  #rec2428595673 .t-form input.t-input:focus,
  #rec2428595673 .t-form input.t-input:valid,
  #rec2428595673 .t-form select.t-input,
  #rec2428595673 .t-form select.t-input:focus,
  #rec2428595673 .t-form textarea.t-input,
  #rec2428595673 .t-form textarea.t-input:focus {
    background-color: #fff !important;
  }
  #rec2428595673 .t-form input.t-input:-webkit-autofill,
  #rec2428595673 .t-form input.t-input:-webkit-autofill:hover,
  #rec2428595673 .t-form input.t-input:-webkit-autofill:focus {
    -webkit-text-fill-color: #1b1b1b !important;
    box-shadow: 0 0 0 1000px #fff inset !important;
    -webkit-box-shadow: 0 0 0 1000px #fff inset !important;
    transition: background-color 9999s ease-out 0s;
  }

  /* 5.7 — Поле телефона не выходит за границы контейнера */
  #rec2428595673 .t-input-phonemask__wrap {
    height: 45px !important;
    min-height: 45px !important;
    overflow: hidden !important;
  }
  #rec2428595673 .t-input-phonemask__wrap .t-input-phonemask {
    height: 43px !important;
    min-height: 43px !important;
    background-color: transparent !important;
  }

  /* 5.8 — Пользовательский список штатов; стандартный select сохранён скрытым для Tilda */
  #rec2428595673 .kf-state-wrap { position: relative; width: 100%; }
  #rec2428595673 select.kf-state-native {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    min-height: 1px !important;
    padding: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
  #rec2428595673 .kf-state-trigger {
    position: relative;
    width: 100%;
    height: 45px;
    padding: 0 42px 0 20px;
    border: 1px solid #1b1b1b;
    border-radius: 999px;
    box-sizing: border-box;
    background: #fff;
    color: #1b1b1b;
    font-family: GraphikTT, Arial, sans-serif;
    font-size: 15px;
    line-height: 43px;
    text-align: left;
    cursor: pointer;
  }
  #rec2428595673 .kf-state-trigger::after {
    content: '';
    position: absolute;
    right: 18px;
    top: 50%;
    width: 7px;
    height: 7px;
    border-right: 1.5px solid #1b1b1b;
    border-bottom: 1.5px solid #1b1b1b;
    transform: translateY(-65%) rotate(45deg);
  }
  #rec2428595673 .kf-state-trigger[aria-expanded="true"]::after { transform: translateY(-30%) rotate(225deg); }
  #rec2428595673 .kf-state-dropdown {
    display: none;
    position: absolute;
    top: calc(100% + 2px);
    left: 0;
    right: 0;
    z-index: 100000;
    max-height: 280px;
    overflow-y: auto;
    padding: 6px 0;
    border: 1px solid rgba(27,27,27,.16);
    border-radius: 12px;
    box-sizing: border-box;
    background: #fff;
    box-shadow: 0 12px 32px rgba(0,0,0,.14);
  }
  #rec2428595673 .kf-state-wrap.is-open .kf-state-dropdown { display: block; }
  #rec2428595673 .kf-state-option {
    display: block;
    width: 100%;
    padding: 11px 14px;
    border: 0;
    background: transparent;
    color: #1b1b1b;
    font-family: GraphikTT, Arial, sans-serif;
    font-size: 15px;
    line-height: 1.25;
    text-align: left;
    cursor: pointer;
  }
  #rec2428595673 .kf-state-option:hover,
  #rec2428595673 .kf-state-option:focus,
  #rec2428595673 .kf-state-option[aria-selected="true"] { background: #f3f3f3; outline: none; }

  /* 5.9 — Сообщение о бесплатной доставке внутри корзины */
  #rec2428595673 .kf-free-shipping-note {
    width: 100%;
    box-sizing: border-box;
    padding: 8px 16px;
    background: #f4ebdd;
    color: #1e3525;
    font-family: GraphikTT, Arial, sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.35;
    text-align: center;
  }

  /* 5.10 — Защита списка штатов от горизонтального смещения на сенсорных устройствах */
  #rec2428595673 .kf-state-wrap {
    min-width: 0 !important;
    max-width: 100% !important;
  }
  #rec2428595673 .kf-state-dropdown {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    touch-action: pan-y;
    scrollbar-gutter: stable;
    -webkit-overflow-scrolling: touch;
  }
  #rec2428595673 .kf-state-option {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-wrap: anywhere;
    touch-action: pan-y;
  }

/* 5.11 — Защита мобильной формы от автоматического увеличения при фокусе */
@media screen and (max-width: 640px) {
  #rec2428595673 input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
  #rec2428595673 textarea,
  #rec2428595673 select,
  #rec2428595673 .kf-state-trigger {
    font-size: 16px !important;
  }
}
