/* =========================================================
   ENABLE DESIGN — ОСНОВНОЙ CUSTOM CSS
   Версия: более устойчивая
   ========================================================= */


/* =========================================================
   1. ШРИФТЫ
   ========================================================= */
@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&display=swap");


/* =========================================================
   2. ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ
   Здесь лежат основные токены интерфейса:
   - размеры меню
   - цвета
   - радиусы
   - шрифт
   ========================================================= */
:root {
  --menu-bg: #ffffff;
  --menu-border: #d9dbe2;
  --menu-text: #000000;
  --menu-muted: #6a6a6a;
  --menu-radius: 24px;
  --menu-inner-radius: 14px;
  --menu-width: 400px;
  --menu-edge: 20px;
  --menu-font: "IBM Plex Mono", "Segoe UI", system-ui, -apple-system, sans-serif;

  /* Отступ контента справа от фиксированного меню */
  --content-offset-left: calc(var(--menu-width) + var(--menu-edge) * 2 + 24px);
}


/* =========================================================
   3. БАЗОВЫЕ ОБЩИЕ ПРАВКИ
   ========================================================= */
html,
body {
  overflow-x: hidden;
}

body {
  font-family: var(--menu-font);
}


/* =========================================================
   4. КОМПЕНСАЦИЯ FIXED-МЕНЮ НА ДЕСКТОПЕ
   Это один из самых важных блоков:
   меню фиксированное и вынуто из потока,
   поэтому основному контенту нужен отступ слева.
   ========================================================= */
@media (min-width: 641px) {
  #allrecords {
    padding-left: var(--content-offset-left);
    box-sizing: border-box;
  }
}


/* =========================================================
   5. ЛЕВОЕ ВЕРТИКАЛЬНОЕ МЕНЮ — DESKTOP
   ========================================================= */
#tilda-vertical-menu {
  position: fixed;
  top: var(--menu-edge);
  left: var(--menu-edge);
  bottom: var(--menu-edge);
  width: var(--menu-width);
  height: calc(100vh - var(--menu-edge) * 2);
  overflow-y: auto;
  z-index: 9999;

  margin: 0;
  padding: 24px 20px;

  background: var(--menu-bg) !important;
  border: 1px solid var(--menu-border) !important;
  border-radius: var(--menu-radius);
  color: var(--menu-text) !important;
  font-family: var(--menu-font);
  box-sizing: border-box;
}

#tilda-vertical-menu * {
  box-sizing: border-box;
  color: inherit;
}

/* Логотип */
#tilda-vertical-menu .tilda-vertical-menu__logo {
  margin: 0 0 6px;
  font-size: 32px;
  line-height: 1;
  font-weight: 600;
}

#tilda-vertical-menu .tilda-vertical-menu__logo-link {
  color: #000 !important;
  text-decoration: none;
}

/* Подпись под логотипом */
#tilda-vertical-menu .tilda-vertical-menu__subtitle {
  margin: 0 0 24px;
  font-size: 14px;
  color: var(--menu-muted) !important;
}


/* =========================================================
   6. ТРИГГЕР ПОИСКА (DESKTOP + MOBILE PANEL)
   ========================================================= */
#tilda-vertical-menu .tilda-vertical-menu__search-trigger,
.tilda-vertical-menu-mobile__panel .tilda-vertical-menu__search-trigger {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  height: 48px;
  border: 1px solid #cfcfd3;
  border-radius: 24px;
  padding: 0 14px;
  text-decoration: none;
  cursor: pointer;
  margin: 0 0 24px;
  color: #929292 !important;
}

#tilda-vertical-menu .tilda-vertical-menu__search-trigger svg,
.tilda-vertical-menu-mobile__panel .tilda-vertical-menu__search-trigger svg {
  width: 22px;
  height: 22px;
  stroke: currentColor;
  color: #929292 !important;
}

#tilda-vertical-menu .tilda-vertical-menu__search-trigger > span,
.tilda-vertical-menu-mobile__panel .tilda-vertical-menu__search-trigger > span {
  color: #929292 !important;
  font: 400 18px var(--menu-font);
}

#tilda-vertical-menu .tilda-vertical-menu__search-trigger > em,
.tilda-vertical-menu-mobile__panel .tilda-vertical-menu__search-trigger > em {
  margin-left: auto;
  font-style: normal;
  font-size: 14px;
  font-weight: 400;
  color: #929292 !important;
}


/* =========================================================
   7. СПИСКИ МЕНЮ И ССЫЛКИ
   ========================================================= */
#tilda-vertical-menu .tilda-vertical-menu__list,
#tilda-vertical-menu .tilda-vertical-menu__submenu,
.tilda-vertical-menu-mobile__panel .tilda-vertical-menu__list,
.tilda-vertical-menu-mobile__panel .tilda-vertical-menu__submenu {
  list-style: none !important;
  margin: 0;
  padding: 0;
}

#tilda-vertical-menu .tilda-vertical-menu__list,
.tilda-vertical-menu-mobile__panel .tilda-vertical-menu__list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

#tilda-vertical-menu .tilda-vertical-menu__link,
.tilda-vertical-menu-mobile__panel .tilda-vertical-menu__link {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border-radius: var(--menu-inner-radius);
  text-decoration: none;
  color: #000 !important;
  font-size: 18px;
  font-weight: 600;
}

#tilda-vertical-menu .tilda-vertical-menu__link svg,
.tilda-vertical-menu-mobile__panel .tilda-vertical-menu__link svg {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  stroke: currentColor;
}

#tilda-vertical-menu .tilda-vertical-menu__link-target,
.tilda-vertical-menu-mobile__panel .tilda-vertical-menu__link-target {
  color: inherit !important;
  text-decoration: none;
}


/* =========================================================
   8. ШЕВРОНЫ / DETAILS / SUBMENU
   ========================================================= */
#tilda-vertical-menu .tilda-vertical-menu__chevron,
.tilda-vertical-menu-mobile__panel .tilda-vertical-menu__chevron {
  margin-left: auto;
  width: 18px;
  height: 18px;
  opacity: 0.65;
  transition: transform 0.2s ease;
}

#tilda-vertical-menu .tilda-vertical-menu__details summary,
.tilda-vertical-menu-mobile__panel .tilda-vertical-menu__details summary {
  list-style: none;
}

#tilda-vertical-menu .tilda-vertical-menu__details summary::-webkit-details-marker,
.tilda-vertical-menu-mobile__panel .tilda-vertical-menu__details summary::-webkit-details-marker {
  display: none;
}

#tilda-vertical-menu .tilda-vertical-menu__details[open] .tilda-vertical-menu__chevron,
.tilda-vertical-menu-mobile__panel .tilda-vertical-menu__details[open] .tilda-vertical-menu__chevron {
  transform: rotate(90deg);
}

#tilda-vertical-menu .tilda-vertical-menu__submenu,
.tilda-vertical-menu-mobile__panel .tilda-vertical-menu__submenu {
  margin: 4px 0 8px 34px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

#tilda-vertical-menu .tilda-vertical-menu__sublink,
.tilda-vertical-menu-mobile__panel .tilda-vertical-menu__sublink {
  display: block;
  padding: 6px 8px;
  border-radius: 10px;
  text-decoration: none;
  color: var(--menu-muted) !important;
  font-size: 18px;
  font-weight: 400;
}


/* =========================================================
   9. МОБИЛЬНОЕ МЕНЮ — ОБЩАЯ ЛОГИКА
   ========================================================= */
.tilda-vertical-menu-mobile {
  display: none;
}


/* =========================================================
   10. МОБИЛЬНОЕ МЕНЮ — MOBILE
   ========================================================= */
@media (max-width: 640px) {
  /* На мобильном скрываем desktop-меню */
  #tilda-vertical-menu {
    display: none !important;
  }

  /* Убираем компенсацию fixed sidebar */
  #allrecords {
    padding-left: 0 !important;
  }

  .tilda-vertical-menu-mobile {
    display: block;
    position: fixed;
    top: 12px;
    left: 12px;
    z-index: 10050;
    font-family: var(--menu-font);
  }

  .tilda-vertical-menu-mobile__toggle {
    position: absolute;
    opacity: 0;
    pointer-events: none;
  }

  .tilda-vertical-menu-mobile__button {
    position: fixed;
    top: 12px;
    left: 12px;
    width: 44px;
    height: 44px;
    border: 1px solid var(--menu-border);
    border-radius: 12px;
    background: #fff;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    box-shadow: 0 6px 16px rgba(0,0,0,.08);
    cursor: pointer;
    z-index: 10060;
  }

  .tilda-vertical-menu-mobile__button span {
    width: 20px;
    height: 2px;
    border-radius: 2px;
    background: #000;
    display: block;
  }

  .tilda-vertical-menu-mobile__panel {
    position: fixed;
    top: 12px;
    left: 12px;
    right: 12px;
    width: auto !important;
    box-sizing: border-box;
    max-height: calc(100vh - 24px);
    max-width: none;
    overflow-y: auto;
    background: #fff;
    border: 1px solid var(--menu-border);
    border-radius: 28px;
    padding: 22px 18px 20px;
    box-shadow: 0 16px 40px rgba(0,0,0,.12);
    opacity: 0;
    transform: translateY(-8px);
    pointer-events: none;
    transition: opacity 0.2s ease, transform 0.2s ease;
    z-index: 10055;
  }

  .tilda-vertical-menu-mobile__toggle:checked ~ .tilda-vertical-menu-mobile__panel {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
  }

  .tilda-vertical-menu-mobile__toggle:checked + .tilda-vertical-menu-mobile__button {
    opacity: 0;
    pointer-events: none;
  }

  .tilda-vertical-menu-mobile__close {
    position: fixed;
    top: 12px;
    left: 12px;
    width: 36px;
    height: 36px;
    border: 1px solid var(--menu-border);
    border-radius: 10px;
    background: #fff;
    display: inline-block;
    opacity: 0;
    pointer-events: none;
    cursor: pointer;
    z-index: 10061;
  }

  .tilda-vertical-menu-mobile__close::before,
  .tilda-vertical-menu-mobile__close::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 18px;
    height: 2px;
    background: #000;
    border-radius: 2px;
  }

  .tilda-vertical-menu-mobile__close::before {
    transform: translate(-50%, -50%) rotate(45deg);
  }

  .tilda-vertical-menu-mobile__close::after {
    transform: translate(-50%, -50%) rotate(-45deg);
  }

  .tilda-vertical-menu-mobile__toggle:checked ~ .tilda-vertical-menu-mobile__panel .tilda-vertical-menu-mobile__close {
    opacity: 1;
    pointer-events: auto;
  }

  .tilda-vertical-menu-mobile__panel .tilda-vertical-menu__logo {
    margin: 50px 0 8px;
    font-size: 32px;
    line-height: 1;
    font-weight: 600;
  }

  .tilda-vertical-menu-mobile__panel .tilda-vertical-menu__logo-link {
    color: #000 !important;
  }

  .tilda-vertical-menu-mobile__panel .tilda-vertical-menu__subtitle {
    margin: 0 0 24px;
    font-size: 14px;
    color: var(--menu-muted) !important;
  }

  /* Подпункты в мобильной панели */
  .tilda-vertical-menu-mobile__panel .tilda-vertical-menu__submenu {
    margin: 4px 0 8px 14px;
  }

  .tilda-vertical-menu-mobile__panel .tilda-vertical-menu__chevron {
    margin-right: 34px;
  }
}


/* =========================================================
   11. ПОПАП ПОИСКА — ОБЩАЯ ЛОГИКА
   ========================================================= */
.search-popup-toggle,
#search-popup-toggle {
  position: fixed !important;
  opacity: 0 !important;
  pointer-events: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  border: 0 !important;
}

.site-search-popup {
  position: fixed;
  inset: 0;
  z-index: 20000;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
}

#search-popup-toggle:checked ~ .site-search-popup {
  opacity: 1;
  pointer-events: auto;
}

.site-search-popup__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(20, 20, 20, 0.35);
  backdrop-filter: blur(2px);
}


/* =========================================================
   12. ПОПАП ПОИСКА — DESKTOP
   ========================================================= */
.site-search-popup__dialog {
  position: absolute;
  top: 14vh;
  left: 50%;
  width: min(1820px, calc(100vw - 48px));
  transform: translateX(-50%) scale(0.5);
  transform-origin: top center;
}

.site-search-popup__form {
  position: relative;
  background: #fff;
  border: 1px solid #929292;
  border-radius: 24px;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.10);
}

.site-search-popup__icon {
  position: absolute;
  left: 28px;
  top: 50%;
  transform: translateY(-50%);
  width: 50px;
  height: 50px;
  color: #929292;
  stroke: currentColor;
}

.site-search-popup__input {
  width: 100%;
  height: 126px;
  border: 0;
  outline: 0;
  background: transparent;
  color: #929292;
  font: 400 48px "IBM Plex Mono", "Segoe UI", system-ui, -apple-system, sans-serif;
  padding: 0 240px 0 92px;
}

.site-search-popup__input::placeholder {
  color: #929292;
  opacity: 1;
}


/* =========================================================
   13. ПОПАП ПОИСКА — MOBILE
   ========================================================= */
@media (max-width: 640px) {
  .site-search-popup__dialog {
    top: 10vh;
    width: calc(100vw - 20px);
    transform: translateX(-50%) scale(0.5);
    transform-origin: top center;
  }

  .site-search-popup__form {
    border-radius: 22px;
  }

  .site-search-popup__icon {
    left: 16px;
    width: 24px;
    height: 24px;
  }

  .site-search-popup__input {
    height: 72px;
    font-size: 30px;
    padding: 0 112px 0 52px;
  }

  .site-search-popup__submit {
    right: 18px;
    font-size: 20px;
  }
}


/* =========================================================
   14. СТИЛИ ФОРМЫ РАССЫЛКИ / EMAIL-БЛОКА
   Блок: rec1940440861
   ========================================================= */
#rec1940440861 .t-form {
  position: relative !important;
  max-width: 820px !important;
}

#rec1940440861 .t-form__inputsbox,
#rec1940440861 .t-input-group {
  margin: 0 !important;
  padding: 0 !important;
}

#rec1940440861 .t-input-title {
  display: none !important;
}

#rec1940440861 .t-input,
#rec1940440861 input[type="email"] {
  width: 100% !important;
  height: 72px !important;
  box-sizing: border-box !important;
  border: 1px solid #ffffff !important;
  border-radius: 22px !important;
  background: transparent !important;
  color: #ffffff !important;
  padding: 0 220px 0 24px !important;
  font-size: 32px !important;
  line-height: 1 !important;
  outline: none !important;
}

#rec1940440861 .t-input::placeholder,
#rec1940440861 input[type="email"]::placeholder {
  color: rgba(255, 255, 255, 0.65) !important;
}

#rec1940440861 .t-form__submit {
  position: absolute !important;
  top: 8px !important;
  right: 8px !important;
  margin: 0 !important;
  width: auto !important;
}

#rec1940440861 .t-submit {
  height: 56px !important;
  padding: 0 28px !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  color: #111111 !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  min-width: 0 !important;
  width: auto !important;
  cursor: pointer !important;
  transition: background-color 0.2s ease !important;
}

#rec1940440861 .t-submit:hover,
#rec1940440861 .t-submit:focus {
  background: #FFD725 !important;
}

/* Расширяем фон блока под левое меню */
#rec1828802851 {
  position: relative;
  overflow: visible !important;
}

#rec1828802851::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;

  /* уходим влево под меню */
  left: calc(-1 * var(--content-offset-left));

  /* ширина области под меню */
  width: var(--content-offset-left);

  /* цвет фона блока */
  background: #F0F0F0;

  z-index: 0;
}

/* возвращаем контент блока поверх фона */
#rec1828802851 .t-container,
#rec1828802851 .t-col,
#rec1828802851 .t396__artboard {
  position: relative;
  z-index: 1;
}

/* Расширяем фон блока под левое меню */
#rec1914629341 {
  position: relative;
  overflow: visible !important;
}

#rec1914629341::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;

  /* уходим влево под меню */
  left: calc(-1 * var(--content-offset-left));

  /* ширина области под меню */
  width: var(--content-offset-left);

  /* цвет фона блока */
  background: #1F1D1C;

  z-index: 0;
}

/* возвращаем контент блока поверх фона */
#rec1914629341 .t-container,
#rec1914629341 .t-col,
#rec1914629341 .t396__artboard {
  position: relative;
  z-index: 1;
}

/* Расширяем фон блока под левое меню */
#rec1906620641 {
  position: relative;
  overflow: visible !important;
}

#rec1906620641::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;

  /* уходим влево под меню */
  left: calc(-1 * var(--content-offset-left));

  /* ширина области под меню */
  width: var(--content-offset-left);

  /* цвет фона блока */
  background: #1F1D1C;

  z-index: 0;
}

/* возвращаем контент блока поверх фона */
#rec1906620641 .t-container,
#rec1906620641 .t-col,
#rec1906620641 .t396__artboard {
  position: relative;
  z-index: 1;
}



/* =========================================================
   15. СЛУЖЕБНЫЕ ПРАВКИ / SAFE OVERRIDES
   Здесь можно точечно добавлять будущие правки,
   не ломая основную структуру.
   ========================================================= */

/* Ничего не двигаем вручную через transform у отдельных колонок,
   чтобы не ломать Chrome/Safari-разметку. */