/* ================================
   TWOLEVEL HEADER BASE
   ================================ */

.btl-twolevel-header {
  position: relative;
  z-index: 100;
  background: #fff;
  color: #005B9A;
}

.btl-twolevel-header a {
  text-decoration: none;
}

.btl-twolevel-header button, .btl-twolevel-header input {
  font-family: inherit;
}

.btl-twolevel-header img {
  max-width: 100%;
}

/* ================================
   DESKTOP TOP LEVEL
   ================================ */

.btl-twolevel-header__top {
  display: block;
  background: #F4F9FF;
  border-bottom: 1px solid rgba(0, 91, 154, 0.12);
}

.btl-twolevel-header__top-inner {
  min-height: 76px;
  display: grid;
  grid-template-columns: 150px 280px 220px minmax(360px, 1fr);
  align-items: center;
  column-gap: 34px;
}

.btl-twolevel-header__logo {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
}

.btl-twolevel-header__logo-img {
  display: block;
  width: 105px;
  height: auto;
}

.btl-twolevel-header__phone-block, .btl-twolevel-header__schedule-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.btl-twolevel-header__phone, .btl-twolevel-header__schedule-time {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 16px;
  line-height: 1.15;
  font-weight: 500;
  white-space: nowrap;
}

.btl-twolevel-header__phone:hover {
  color: #005B9A;
}

.btl-twolevel-header__callback {
  margin-top: 5px;
  margin-left: 28px;
  font-size: 15px;
  line-height: 1.2;
  border-bottom: 1px dotted currentColor;
}

.btl-twolevel-header__callback:hover {
  color: #005B9A;
  border-bottom-color: transparent;
}

.btl-twolevel-header__schedule-days {
  margin-top: 5px;
  margin-left: 20px;
  font-size: 15px;
  line-height: 1.2;
  text-align: center;
}

.btl-twolevel-header__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 18px !important;
  height: 18px !important;
}

/* ================================
   MAIN NAV LEVEL
   ================================ */

.btl-twolevel-header__main {
  display: block;
  position: relative;
  z-index: 2500;
  background: linear-gradient(90deg, #005B9A 0%, #00A8E0 100%);
}

.btl-twolevel-header__primary, .btl-twolevel-header__main-row {
  min-height: 54px;
  height: 54px;
  align-items: center;
}

.btl-twolevel-header__menu {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.btl-twolevel-header__menu > * {
  visibility: visible !important;
  opacity: 1 !important;
}

/* ================================
   DESKTOP NAV / MEGAMENU
   ================================ */

@media (min-width: 992px) {
  .btl-twolevel-header, .btl-twolevel-header__main, .btl-twolevel-header__primary, .btl-twolevel-header__main-row, .btl-twolevel-header__menu, .btl-twolevel-header__menu > *, .btl-twolevel-header__main .categoryMenu, .btl-twolevel-header__main .categoryMenu nav, .btl-twolevel-header__main .categoryMenu nav > ul, .btl-twolevel-header__main .categoryMenu nav > ul > li {
    overflow: visible !important;
  }

  .btl-twolevel-header__main .container, .btl-twolevel-header__main .container-el-xs {
    max-width: 100% !important;
    width: 100% !important;
  }

  .btl-twolevel-header__main .categoryMenu, .btl-twolevel-header__main .categoryMenu nav {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li > a {
    display: flex !important;
    align-items: center !important;
    padding: 0 26px !important;
    color: #fff !important;
    font-size: 16px !important;
    line-height: 1.2 !important;
    font-weight: 400 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li:first-child > a {
    padding-left: 0 !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open > .megamenu {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(8px) !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:hover > .megamenu, .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:focus-within > .megamenu {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu {
    position: fixed !important;
    top: 136px !important;
    left: 0 !important;
    right: auto !important;
    display: block !important;
    width: 100vw !important;
    min-width: 100vw !important;
    max-width: 100vw !important;
    margin: 0 !important;
    padding-top: 22px !important;
    padding-bottom: 24px !important;
    background: #fff !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: 0 0 70px rgba(0, 68, 255, 0.08) !important;
    z-index: 9997 !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu > .container, .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu > .container-el-xs {
    width: 100% !important;
    max-width: none !important;
    padding-left: 28px !important;
    padding-right: 28px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu .row {
    margin-left: -8px !important;
    margin-right: -8px !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu [class*="col"] {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(n/**/+3) > .megamenu {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: auto !important;
    display: block !important;
    width: auto !important;
    min-width: 270px !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 15px 0 !important;
    background: #fff !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: 0 0 70px rgba(0, 68, 255, 0.08) !important;
    z-index: 3000 !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu a {
    color: inherit;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList.primary-list ul li a {
    color: #fff !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList:not(.primary-list) ul li a {
    color: #00568D !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .tertiary-list a div > h5 {
    color: #009bd9 !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .tertiary-list a div > p {
    color: #00568d !important;
  }
}

/* ================================
   COUNTRY BUTTON / DESKTOP TOOLBAR
   ================================ */

.btl-twolevel-header__country {
  display: inline-flex !important;
  align-items: center;
  gap: 9px;
  color: #fff;
  font-size: 16px;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
}

.btl-twolevel-header__country:hover {
  color: #fff;
}

.btl-twolevel-header__country-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}

/* =========================================================
   TWOLEVEL HEADER: ICON PLACEHOLDERS
   Иконки не дорисовываем CSS-ом.
   Ссылки на картинки вставляются в header-main-twolevel.php.
   ========================================================= */

.btl-twolevel-header__icon, .btl-twolevel-header__mobile-phone-icon, .btl-twolevel-header__country-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

.btl-twolevel-header__country-icon {
  width: 29px;
  height: 29px;
}

.btl-twolevel-header__icon img, .btl-twolevel-header__mobile-phone-icon img, .btl-twolevel-header__country-icon img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.btl-twolevel-header__country-text {
  color: #fff;
}

@media (min-width: 992px) {
  .btl-twolevel-header__main .col-auto {
    display: flex !important;
    align-items: center !important;
    align-self: stretch !important;
    min-height: 54px !important;
    height: 54px !important;
  }

  .btl-twolevel-header__toolbar {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    align-self: stretch !important;
    min-height: 54px !important;
    height: 54px !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
  }

  .btl-twolevel-header__toolbar > a.btn-language, .btl-twolevel-header__toolbar .btn-language {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
    position: absolute !important;
    left: -9999px !important;
  }

  .btl-twolevel-header__toolbar > a.btn-language.btl-twolevel-header__country, .btl-twolevel-header__toolbar .btn-language.btl-twolevel-header__country {
    position: static !important;
    left: auto !important;
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 9px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 28px 0 16px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: #fff !important;
    font-size: 15px !important;
    line-height: 1 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    pointer-events: auto !important;
    overflow: visible !important;
    transform: translateY(0) !important;
  }

  .btl-twolevel-header__toolbar .btn-language.btl-twolevel-header__country::before, .btl-twolevel-header__toolbar .btn-language.btl-twolevel-header__country::after {
    display: none !important;
    content: none !important;
  }

  .btl-twolevel-header__toolbar .btl-twolevel-header__country-icon {
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 29px !important;
    width: 29px !important;
    height: 29px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    line-height: 1 !important;
    transform: none !important;
  }

  .btl-twolevel-header__toolbar .btl-twolevel-header__country-icon::before {
    display: block !important;
    width: 29px !important;
    height: 29px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .btl-twolevel-header__toolbar .btl-twolevel-header__country-text {
    position: static !important;
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    font-size: 15px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    transform: none !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: DESKTOP VISIBILITY
   Скрываем мобильные элементы и системный RU из подключенного меню
   ========================================================= */

@media (min-width: 992px) {
  .btl-twolevel-header .col-auto.btl-twolevel-header__mobile-logo-col, .btl-twolevel-header .btl-twolevel-header__mobile-logo-col, .btl-twolevel-header .btl-twolevel-header__mobile-logo, .btl-twolevel-header .btl-twolevel-header__mobile-logo-img, .btl-twolevel-header .btl-twolevel-header__mobile-phone-toggle, .btl-twolevel-header .btl-twolevel-header__mobile-search {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
    position: absolute !important;
    left: -9999px !important;
  }

  .btl-twolevel-phone-modal, #btl-twolevel-phone-modal {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  .btl-twolevel-header__main .categoryMenu ul.respHeaderMenu > li.lang, .btl-twolevel-header__main .categoryMenu nav > ul.respHeaderMenu > li.lang, .btl-twolevel-header__main .categoryMenu li.lang > a.btn-language {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
    position: absolute !important;
    left: -9999px !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: INLINE SEARCH
   ========================================================= */

.btl-twolevel-header #search-form.btl-twolevel-header__search-wrap {
  position: relative !important;
  z-index: 3000 !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  overflow: visible !important;
}

.btl-twolevel-header .btl-twolevel-header__search {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  height: 46px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #005B9A !important;
  border-radius: 4px !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.btl-twolevel-header .twitter-typeahead {
  position: static !important;
  display: block !important;
  flex: 1 1 auto !important;
  width: 100% !important;
  height: 100% !important;
}

.btl-twolevel-header #input-search-form.btl-twolevel-header__search-input, .btl-twolevel-header .twitter-typeahead #input-search-form.btl-twolevel-header__search-input, .btl-twolevel-header .twitter-typeahead .tt-input {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 82px 0 14px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #005B9A !important;
  font-size: 17px !important;
  line-height: 44px !important;
  font-weight: 400 !important;
  outline: none !important;
  box-shadow: none !important;
}

.btl-twolevel-header #input-search-form.btl-twolevel-header__search-input::placeholder, .btl-twolevel-header .twitter-typeahead .tt-input::placeholder {
  color: #005B9A !important;
  opacity: 0.75 !important;
}

.btl-twolevel-header #input-search-form.btl-twolevel-header__search-input:focus::placeholder, .btl-twolevel-header .twitter-typeahead .tt-input:focus::placeholder {
  opacity: 0.35 !important;
}

.btl-twolevel-header .twitter-typeahead .tt-hint {
  height: 44px !important;
  padding: 0 82px 0 14px !important;
  border: 0 !important;
  background: transparent !important;
  color: transparent !important;
  font-size: 17px !important;
  line-height: 44px !important;
  box-shadow: none !important;
}

.btl-twolevel-header .btl-twolevel-header__search-submit {
  position: relative !important;
  flex: 0 0 54px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 54px !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #005B9A !important;
  cursor: pointer !important;
  box-shadow: none !important;
}

.btl-twolevel-header .btl-twolevel-header__search-submit img {
  display: block !important;
  width: 26px !important;
  height: 26px !important;
  object-fit: contain !important;
  margin: 0 !important;
  padding: 0 !important;
}

.btl-twolevel-header #input-search-form::-webkit-search-cancel-button, .btl-twolevel-header #input-search-form::-webkit-search-decoration {
  -webkit-appearance: none;
  appearance: none;
  display: none;
}

.btl-twolevel-header #search-form .btl-twolevel-header__search-close, .btl-twolevel-header .btl-twolevel-header__search-close {
  position: absolute !important;
  top: 50% !important;
  right: 58px !important;
  z-index: 10 !important;
  display: none !important;
  width: 22px !important;
  height: 22px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: translateY(-50%) !important;
  border: 0 !important;
  background: transparent !important;
  opacity: 0.72 !important;
  cursor: pointer !important;
}

.btl-twolevel-header #search-form .btl-twolevel-header__search-close.is-visible, .btl-twolevel-header .btl-twolevel-header__search-close.is-visible {
  display: block !important;
  visibility: visible !important;
  opacity: 0.72 !important;
}

.btl-twolevel-header #search-form .btl-twolevel-header__search-close.is-visible:hover, .btl-twolevel-header .btl-twolevel-header__search-close.is-visible:hover {
  opacity: 1 !important;
}

.btl-twolevel-header .btl-twolevel-header__search-close::before, .btl-twolevel-header .btl-twolevel-header__search-close::after {
  content: "" !important;
  position: absolute !important;
  left: 10px !important;
  top: 3px !important;
  width: 2px !important;
  height: 16px !important;
  background: #005B9A !important;
  border-radius: 2px !important;
}

.btl-twolevel-header .btl-twolevel-header__search-close::before {
  transform: rotate(45deg) !important;
}

.btl-twolevel-header .btl-twolevel-header__search-close::after {
  transform: rotate(-45deg) !important;
}

.btl-twolevel-header .btl-twolevel-header__search-loader, .btl-twolevel-header #search-form .loader {
  position: absolute !important;
  right: 88px !important;
  top: 50% !important;
  z-index: 8 !important;
  width: 18px !important;
  height: 18px !important;
  margin: -9px 0 0 !important;
}

/* =========================================================
   TWOLEVEL HEADER: SEARCH SUGGESTIONS MODAL OVERLAY
   ========================================================= */

.btl-twolevel-header .tt-menu, #input-search-form_listbox {
  position: fixed !important;
  top: 77px !important;
  left: 0 !important;
  right: auto !important;
  width: 100vw !important;
  max-height: calc(100vh - 110px) !important;
  margin: 0 !important;
  padding: 28px max(24px, calc((100vw - 1440px) / 2)) 38px !important;
  background: #fff !important;
  border: 0 !important;
  border-top: 1px solid rgba(0, 91, 154, 0.18) !important;
  border-radius: 0 !important;
  box-shadow: 0 18px 42px rgba(0, 10, 32, 0.12) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  z-index: 9998 !important;
  transform: none !important;
}

.btl-twolevel-header .tt-menu[style*="display: none"], #input-search-form_listbox[style*="display: none"] {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

.btl-twolevel-header .tt-menu:not(:has(.tt-suggestion)):has(.row.data.active), #input-search-form_listbox:not(:has(.tt-suggestion)):has(.row.data.active) {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

.btl-twolevel-header .tt-dataset, #input-search-form_listbox .tt-dataset {
  display: block !important;
  width: 100% !important;
  max-width: 1440px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

.btl-twolevel-header .tt-suggestion, #input-search-form_listbox .tt-suggestion {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 17px 0 18px !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: #005B9A !important;
  font-size: 17px !important;
  line-height: 1.35 !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  box-shadow: none !important;
}

.btl-twolevel-header .tt-suggestion:hover, .btl-twolevel-header .tt-suggestion.tt-cursor, #input-search-form_listbox .tt-suggestion:hover, #input-search-form_listbox .tt-suggestion.tt-cursor {
  background: transparent !important;
}

.btl-twolevel-header .tt-suggestion a, .btl-twolevel-header .tt-suggestion strong, .btl-twolevel-header .tt-suggestion b, .btl-twolevel-header .tt-suggestion .title, .btl-twolevel-header .tt-suggestion .name, .btl-twolevel-header .tt-suggestion .search-title, #input-search-form_listbox .tt-suggestion a, #input-search-form_listbox .tt-suggestion strong, #input-search-form_listbox .tt-suggestion b, #input-search-form_listbox .tt-suggestion .title, #input-search-form_listbox .tt-suggestion .name, #input-search-form_listbox .tt-suggestion .search-title {
  color: #005B9A !important;
  font-size: 17px !important;
  line-height: 1.35 !important;
  font-weight: 500 !important;
  text-decoration: none !important;
}

.btl-twolevel-header .tt-suggestion small, .btl-twolevel-header .tt-suggestion p, .btl-twolevel-header .tt-suggestion span, .btl-twolevel-header .tt-suggestion .subtitle, .btl-twolevel-header .tt-suggestion .description, .btl-twolevel-header .tt-suggestion .search-description, #input-search-form_listbox .tt-suggestion small, #input-search-form_listbox .tt-suggestion p, #input-search-form_listbox .tt-suggestion span, #input-search-form_listbox .tt-suggestion .subtitle, #input-search-form_listbox .tt-suggestion .description, #input-search-form_listbox .tt-suggestion .search-description {
  color: #9DA8BD !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  text-decoration: none !important;
}

.btl-twolevel-header .tt-suggestion p, .btl-twolevel-header .tt-suggestion .subtitle, .btl-twolevel-header .tt-suggestion .description, .btl-twolevel-header .tt-suggestion .search-description, #input-search-form_listbox .tt-suggestion p, #input-search-form_listbox .tt-suggestion .subtitle, #input-search-form_listbox .tt-suggestion .description, #input-search-form_listbox .tt-suggestion .search-description {
  display: block !important;
  margin: 3px 0 0 !important;
  padding: 0 !important;
}

.btl-twolevel-header .tt-highlight, #input-search-form_listbox .tt-highlight {
  color: #009BD9 !important;
  font-weight: 500 !important;
}

.btl-twolevel-header .tt-empty, .btl-twolevel-header .tt-message, #input-search-form_listbox .tt-empty, #input-search-form_listbox .tt-message {
  display: none !important;
}

#input-search-form_listbox.btl-search-empty {
  display: block !important;
}

#input-search-form_listbox .btl-search-empty-state {
  max-width: 1440px;
  margin: 0 auto;
  padding: 18px 0 20px;
}

#input-search-form_listbox .btl-search-empty-state__title {
  color: #005B9A;
  font-size: 17px;
  line-height: 1.35;
  font-weight: 500;
}

#input-search-form_listbox .btl-search-empty-state__text {
  margin-top: 4px;
  color: #9DA8BD;
  font-size: 16px;
  line-height: 1.35;
  font-weight: 400;
}

/* =========================================================
   TWOLEVEL HEADER: MOBILE HEADER FINAL
   Мобильная шапка + мобильное меню + megamenu
   ========================================================= */

@media (max-width: 991.98px) {
  .btl-twolevel-header {
    --btl-mobile-header-height: 72px;
    --btl-mobile-logo-width: 78px;
    --btl-mobile-side-gap: 16px;
  }

  /* ---------------------------------------------------------
       1. Скрываем десктопный верхний уровень на мобильных
       --------------------------------------------------------- */

  .btl-twolevel-header:not(.is-mobile-search-open) .btl-twolevel-header__top, .btl-twolevel-header:not(.is-mobile-search-open) .btl-twolevel-header__top-inner {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }

  /* ---------------------------------------------------------
       2. Синий уровень мобильной шапки
       --------------------------------------------------------- */

  .btl-twolevel-header, .btl-twolevel-header__main, .btl-twolevel-header__main .container, .btl-twolevel-header__main .container-el-xs, .btl-twolevel-header__primary, .btl-twolevel-header__main-row, .btl-twolevel-header__menu {
    overflow: visible !important;
  }

  .btl-twolevel-header__main {
    display: block !important;
    height: var(--btl-mobile-header-height) !important;
    min-height: var(--btl-mobile-header-height) !important;
    max-height: var(--btl-mobile-header-height) !important;
    background: linear-gradient(90deg, #005B9A 0%, #00A8E0 100%) !important;
  }

  .btl-twolevel-header__main .container, .btl-twolevel-header__main .container-el-xs {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: var(--btl-mobile-header-height) !important;
    min-height: var(--btl-mobile-header-height) !important;
    max-height: var(--btl-mobile-header-height) !important;
    margin: 0 !important;
    padding-left: var(--btl-mobile-side-gap) !important;
    padding-right: var(--btl-mobile-side-gap) !important;
  }

  .btl-twolevel-header__primary {
    display: grid !important;
    grid-template-columns: var(--btl-mobile-logo-width) minmax(0, 1fr) !important;
    align-items: center !important;
    column-gap: 0 !important;
    width: 100% !important;
    height: var(--btl-mobile-header-height) !important;
    min-height: var(--btl-mobile-header-height) !important;
    max-height: var(--btl-mobile-header-height) !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .btl-twolevel-header__mobile-logo-col {
    grid-column: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: var(--btl-mobile-logo-width) !important;
    min-width: var(--btl-mobile-logo-width) !important;
    max-width: var(--btl-mobile-logo-width) !important;
    height: var(--btl-mobile-header-height) !important;
    min-height: var(--btl-mobile-header-height) !important;
    max-height: var(--btl-mobile-header-height) !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
  }

  .btl-twolevel-header__mobile-logo {
    display: inline-flex !important;
    align-items: center !important;
    height: var(--btl-mobile-header-height) !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .btl-twolevel-header__mobile-logo-img {
    display: block !important;
    width: 78px !important;
    height: auto !important;
    max-height: 46px !important;
    object-fit: contain !important;
  }

  .btl-twolevel-header__primary > .col, .btl-twolevel-header__main-row, .btl-twolevel-header__main-row > .col-auto {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: var(--btl-mobile-header-height) !important;
    min-height: var(--btl-mobile-header-height) !important;
    max-height: var(--btl-mobile-header-height) !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
  }

  .btl-twolevel-header__primary > .col {
    grid-column: 2 !important;
  }

  .btl-twolevel-header__main-row > .col-auto {
    flex: none !important;
  }

  /* ---------------------------------------------------------
       3. Toolbar: трубка / RU / поиск / меню
       --------------------------------------------------------- */

  .btl-twolevel-header__toolbar {
    position: static !important;
  }

  .btl-twolevel-header__country {
    display: none !important;
  }

  .btl-twolevel-header__mobile-phone-toggle {
    grid-column: 1 !important;
  }

  .btl-twolevel-header__mobile-language {
    grid-column: 2 !important;
    justify-self: end !important;
  }

  .btl-twolevel-header__mobile-search {
    grid-column: 3 !important;
  }

  .btl-twolevel-header__mobile-menu {
    grid-column: 4 !important;
    justify-self: end !important;
  }

  .btl-twolevel-header__mobile-phone-toggle, .btl-twolevel-header__mobile-search {
    border-radius: 0 !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    color: #fff !important;
    text-decoration: none !important;
    pointer-events: auto !important;
    cursor: pointer !important;
  }

  .btl-twolevel-header__mobile-language {
    align-items: center !important;
    justify-content: center !important;
    color: #fff !important;
    font-size: 15px !important;
    line-height: 1 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
  }

  .btl-twolevel-header__mobile-search img {
    opacity: 1 !important;
  }

  /* ---------------------------------------------------------
       4. Кнопка бургер-меню
       --------------------------------------------------------- */

  .btl-twolevel-header__mobile-menu {
    display: block !important;
    position: relative !important;
    float: none !important;
    width: auto !important;
    min-width: 96px !important;
    max-width: none !important;
    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    margin: 0 !important;
    padding: 0 15px 0 40px !important;
    border: 1px solid #fff !important;
    border-radius: 42px !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 40px !important;
    text-align: left !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    pointer-events: auto !important;
    cursor: pointer !important;
  }

  .btl-twolevel-header__mobile-menu:hover, .btl-twolevel-header__mobile-menu:focus, .btl-twolevel-header__mobile-menu:active {
    color: #fff !important;
    background: transparent !important;
    border-color: #fff !important;
    box-shadow: none !important;
    outline: none !important;
    text-decoration: none !important;
  }

  .btl-twolevel-header__mobile-menu span {
    display: inline !important;
    color: #fff !important;
    font-size: 15px !important;
    line-height: 40px !important;
  }

  .btl-twolevel-header__mobile-menu i {
    position: absolute !important;
    left: 15px !important;
    display: block !important;
    width: 14px !important;
    height: 2px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    border-radius: 2px !important;
    transition: transform 0.2s ease,
      top 0.2s ease,
      opacity 0.2s ease !important;
  }

  .btl-twolevel-header__mobile-menu i:nth-of-type(1) {
    top: 13px !important;
  }

  .btl-twolevel-header__mobile-menu i:nth-of-type(2) {
    top: 20px !important;
  }

  .btl-twolevel-header__mobile-menu i:nth-of-type(3) {
    top: 27px !important;
  }

  .btl-twolevel-header__mobile-menu.active i:nth-of-type(1) {
    top: 20px !important;
    transform: rotate(45deg) !important;
  }

  .btl-twolevel-header__mobile-menu.active i:nth-of-type(2) {
    opacity: 0 !important;
  }

  .btl-twolevel-header__mobile-menu.active i:nth-of-type(3) {
    top: 20px !important;
    transform: rotate(-45deg) !important;
  }

  /* ---------------------------------------------------------
       5. Выпадающее мобильное меню
       --------------------------------------------------------- */

  .btl-twolevel-header__menu {
    position: static !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    pointer-events: none !important;
  }

  .btl-twolevel-header__menu nav {
    display: none !important;
  }

  .btl-twolevel-header__menu nav.active, .btl-twolevel-header:has(.btl-twolevel-header__mobile-menu.active) .btl-twolevel-header__menu nav {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin: 0 !important;
    padding: 0 20px !important;
    background: #fff !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    pointer-events: auto !important;
    box-shadow: 0 14px 36px rgba(0, 10, 32, 0.16) !important;
  }

  .btl-twolevel-header__menu nav > ul, .btl-twolevel-header__menu nav > ul.respHeaderMenu {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 15px 0 !important;
    list-style: none !important;
    border-bottom: 1px solid #E3E8EB !important;
    background: #fff !important;
  }

  .btl-twolevel-header__menu nav > ul > li, .btl-twolevel-header__menu nav > ul.respHeaderMenu > li {
    position: relative !important;
    display: block !important;
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
  }

  .btl-twolevel-header__menu nav > ul > li > a, .btl-twolevel-header__menu nav > ul.respHeaderMenu > li > a {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 14px 0 !important;
    color: #00568D !important;
    background: #fff !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    white-space: normal !important;
  }

  .btl-twolevel-header__menu nav > ul > li > a:hover, .btl-twolevel-header__menu nav > ul.respHeaderMenu > li > a:hover, .btl-twolevel-header__menu nav > ul > li.active > a, .btl-twolevel-header__menu nav > ul.respHeaderMenu > li.active > a {
    color: #009DDB !important;
  }

  .btl-twolevel-header__menu nav > ul > li.megamenu-open > a, .btl-twolevel-header__menu nav > ul > li.has-submenu > a, .btl-twolevel-header__menu nav > ul.respHeaderMenu > li.has-submenu > a {
    padding-right: 40px !important;
  }

  .btl-twolevel-header__menu nav > ul > li.megamenu-open > a > i, .btl-twolevel-header__menu nav > ul > li.has-submenu > a > i, .btl-twolevel-header__menu nav > ul.respHeaderMenu > li.has-submenu > a > i {
    position: absolute !important;
    top: 0 !important;
    right: -20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 50px !important;
    height: 100% !important;
  }

  .btl-twolevel-header__menu nav > ul > li.megamenu-open > a > i::after, .btl-twolevel-header__menu nav > ul > li.has-submenu > a > i::after, .btl-twolevel-header__menu nav > ul.respHeaderMenu > li.has-submenu > a > i::after {
    content: "A" !important;
    color: #5595E1 !important;
    pointer-events: none !important;
    text-rendering: auto !important;
    font: normal normal normal 10px/1 icons !important;
    transform: scaleY(1) !important;
    transition: transform 0.3s ease 0s !important;
  }

  .btl-twolevel-header__menu nav > ul > li.megamenu-open.active > a > i::after, .btl-twolevel-header__menu nav > ul > li.has-submenu.active > a > i::after, .btl-twolevel-header__menu nav > ul.respHeaderMenu > li.has-submenu.active > a > i::after {
    transform: scaleY(-1) !important;
  }

  /* ---------------------------------------------------------
       6. Megamenu: контейнеры и высота
       --------------------------------------------------------- */

  .btl-twolevel-header__menu nav > ul > li .megamenu, .btl-twolevel-header__menu nav > ul > li .megamenu.active, .btl-twolevel-header__menu nav > ul > li .megamenu > .container, .btl-twolevel-header__menu nav > ul > li .megamenu > .container-el-xs, .btl-twolevel-header__menu nav > ul > li .megamenu .row, .btl-twolevel-header__menu nav > ul > li .megamenu .row > .col, .btl-twolevel-header__menu nav > ul > li .megamenu [class*="col"], .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList, .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList.active, .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList ul, .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList ul.ul-second {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    transform: none !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu, .btl-twolevel-header__menu nav > ul > li .megamenu.active {
    position: static !important;
    display: none;
    width: 100% !important;
    max-width: 100% !important;
    margin: 10px 0 15px !important;
    padding: 0 0 15px !important;
    background: #fff !important;
    border: 0 !important;
    border-bottom: 1px solid #E3E8EB !important;
    box-shadow: none !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  .btl-twolevel-header__menu nav > ul > li.active > .megamenu, .btl-twolevel-header__menu nav > ul > li .megamenu.active {
    display: block !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu > .container, .btl-twolevel-header__menu nav > ul > li .megamenu > .container-el-xs, .btl-twolevel-header__menu nav > ul > li .megamenu .row, .btl-twolevel-header__menu nav > ul > li .megamenu .row > .col, .btl-twolevel-header__menu nav > ul > li .megamenu [class*="col"], .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList {
    display: block !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList {
    position: relative !important;
    flex: none !important;
    flex-basis: auto !important;
    background: #fff !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .banner {
    display: none !important;
  }

  /* ---------------------------------------------------------
       7. Megamenu: заголовки групп
       --------------------------------------------------------- */

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList .title {
    position: relative !important;
    display: block !important;
    margin: 0 !important;
    padding: 10px 30px 10px 0 !important;
    color: #00568D !important;
    font-size: 13px !important;
    line-height: 16px !important;
    font-weight: 500 !important;
    letter-spacing: 0.025em !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList .title::after {
    content: "A" !important;
    position: absolute !important;
    top: 0 !important;
    right: -20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 50px !important;
    height: 100% !important;
    color: #5595E1 !important;
    pointer-events: none !important;
    text-rendering: auto !important;
    font: normal normal normal 10px/1 icons !important;
    transition: transform 0.3s ease 0s !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList.active .title::after {
    transform: scaleY(-1) !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList .title--mobile {
    display: block !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList .title.hidden-xs {
    display: none !important;
  }

  /* ---------------------------------------------------------
       8. Megamenu: списки и карточки
       --------------------------------------------------------- */

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList ul {
    position: static !important;
    display: none;
    width: 100% !important;
    margin: 0 !important;
    padding: 10px 0 0 !important;
    list-style: none !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList ul.ul-second {
    padding: 0 !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList.active > ul:not([style*="display: none"]):not([style*="display:none"]), .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList > ul[style*="display: block"], .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList > ul[style*="display:block"], .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList.tertiary-list > ul {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList > ul[style*="display: none"], .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList > ul[style*="display:none"] {
    display: none !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList:not(.active) > ul:not([style*="display: block"]):not([style*="display:block"]) {
    display: none !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList > ul[style*="height: 0px"], .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList > ul[style*="height:0px"] {
    overflow: hidden !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList ul li {
    display: block !important;
    float: none !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 0 15px !important;
    padding: 0 !important;
    background: transparent !important;
    overflow: visible !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList ul li a {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-height: 60px !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background-color: #F7F6FB !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    color: #00568D !important;
    font-size: 12px !important;
    line-height: 16px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    white-space: normal !important;
    border: 0 !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList ul li a:hover {
    background-color: #E7E4F3 !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList.primary-list ul li a {
    background: linear-gradient(to right, #00578D 0%, #009DDB 100%) !important;
    color: #fff !important;
    font-size: 15px !important;
    line-height: 16px !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList.primary-list ul li a i {
    color: inherit !important;
    font-size: 11px !important;
    font-style: normal !important;
    font-weight: 300 !important;
  }

  /* ---------------------------------------------------------
       9. Megamenu: text / image внутри карточек
       --------------------------------------------------------- */

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList ul li a > div {
    position: relative !important;
    z-index: 1 !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList ul li a > div.text {
    display: block !important;
    flex: 1 1 auto !important;
    flex-grow: 1 !important;
    min-width: 0 !important;
    padding: 12px 0 12px 12px !important;
    color: inherit !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList ul li a > div.text span, .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList ul li a > div.text p, .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList ul li a > div.text i, .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList ul li a > div.text pre {
    color: inherit !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList ul li a > div.image {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    order: 1 !important;
    flex: 0 0 auto !important;
    max-width: 90px !important;
    width: auto !important;
    min-height: 60px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList.primary-list ul li a > div.image {
    flex: 0 0 auto !important;
    max-width: 100% !important;
    width: auto !important;
    display: block !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList ul li a > div.image img {
    display: block !important;
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList.primary-list ul li a > div.image img {
    height: 60px !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList ul li a > div:not(.text):not(.image) {
    display: none !important;
  }

  /* ---------------------------------------------------------
       10. Tertiary-list и banner-mobile
       --------------------------------------------------------- */

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList.tertiary-list {
    margin-top: -10px !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList.tertiary-list ul {
    display: block !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList.tertiary-list a div > h5 {
    margin-bottom: 0 !important;
    color: #009BD9 !important;
    font-size: 13px !important;
    line-height: 18px !important;
    font-weight: normal !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList.tertiary-list a div > p {
    display: none !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .banner-mobile .title {
    margin: 10px 0 !important;
    padding: 0 !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .banner-mobile .title p {
    font-weight: 500 !important;
    font-size: 13px !important;
    letter-spacing: 0.025em !important;
    text-transform: uppercase !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .banner-mobile .row {
    display: flex !important;
    flex-direction: column !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .banner-mobile .row .col {
    margin: 0 0 15px !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .banner-mobile .row .col a {
    display: flex !important;
    align-items: center !important;
    min-height: 60px !important;
    background-color: transparent !important;
    background-position: center !important;
    font-size: 12px !important;
    line-height: 14px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .banner-mobile .row .col a > * {
    padding: 12px !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .banner-mobile .btn {
    display: none !important;
  }

  .btl-twolevel-header__menu nav .open-popup-contact-form {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 15px 0 50px !important;
    box-shadow: none !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: MOBILE MEGAMENU ARROW STATE FIX
   Галочка возвращается при закрытии списка
   ========================================================= */

@media (max-width: 991.98px) {
  /*
      По умолчанию галочка вниз.
    */

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList .title::after {
    transform: scaleY(1) !important;
  }

  /*
      Если список открыт через active и не закрыт inline-стилем — галочка вверх.
    */

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList.active > .title::after {
    transform: scaleY(-1) !important;
  }

  /*
      Если JS поставил display:none, галочка должна вернуться вниз,
      даже если active по какой-то причине остался.
    */

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList:has(> ul[style*="display: none"]) > .title::after, .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList:has(> ul[style*="display:none"]) > .title::after {
    transform: scaleY(1) !important;
  }

  /*
      Для tertiary-list убираем принудительное вечное раскрытие.
      Иначе такой список нельзя будет нормально свернуть.
    */

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList.tertiary-list > ul[style*="display: none"], .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList.tertiary-list > ul[style*="display:none"] {
    display: none !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList.tertiary-list:not(.active) > ul:not([style*="display: block"]):not([style*="display:block"]) {
    display: none !important;
  }

  .btl-twolevel-header__menu nav > ul > li .megamenu .categoryList.tertiary-list.active > ul:not([style*="display: none"]):not([style*="display:none"]) {
    display: block !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: MOBILE SEARCH OVERLAY FIX
   Показываем подсказки поиска на мобильных и даём закрывать overlay
   ========================================================= */

@media (max-width: 991.98px) {
  /*
      Пока мобильный поиск закрыт — верхний светлый уровень скрыт.
    */

  .btl-twolevel-header:not(.is-mobile-search-open) .btl-twolevel-header__top, .btl-twolevel-header:not(.is-mobile-search-open) #search-form.btl-twolevel-header__search-wrap, .btl-twolevel-header:not(.is-mobile-search-open) #input-search-form_listbox, .btl-twolevel-header:not(.is-mobile-search-open) .tt-menu {
    display: none !important;
  }

  /*
      Открытая мобильная строка поиска.
    */

  .btl-twolevel-header.is-mobile-search-open .btl-twolevel-header__top {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    left: 0 !important;
    right: 0 !important;
    height: var(--btl-mobile-header-height, 72px) !important;
    min-height: var(--btl-mobile-header-height, 72px) !important;
    max-height: var(--btl-mobile-header-height, 72px) !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #F4F9FF !important;
    border: 0 !important;
    overflow: visible !important;
    pointer-events: auto !important;
  }

  .btl-twolevel-header.is-mobile-search-open .btl-twolevel-header__top .container, .btl-twolevel-header.is-mobile-search-open .btl-twolevel-header__top .container-el-xs {
    width: 100% !important;
    max-width: none !important;
    height: var(--btl-mobile-header-height, 72px) !important;
    min-height: var(--btl-mobile-header-height, 72px) !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .btl-twolevel-header.is-mobile-search-open .btl-twolevel-header__top-inner {
    height: var(--btl-mobile-header-height, 72px) !important;
    min-height: var(--btl-mobile-header-height, 72px) !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /*
      В мобильном search-overlay оставляем только форму.
    */

  .btl-twolevel-header.is-mobile-search-open .btl-twolevel-header__logo, .btl-twolevel-header.is-mobile-search-open .btl-twolevel-header__phone-block, .btl-twolevel-header.is-mobile-search-open .btl-twolevel-header__schedule-block {
    display: none !important;
  }

  .btl-twolevel-header.is-mobile-search-open #search-form.btl-twolevel-header__search-wrap {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: auto !important;
  }

  .btl-twolevel-header.is-mobile-search-open .btl-twolevel-header__search {
    height: 46px !important;
    background: #fff !important;
  }

  .btl-twolevel-header.is-mobile-search-open #input-search-form, .btl-twolevel-header.is-mobile-search-open .tt-input {
    height: 44px !important;
    line-height: 44px !important;
  }

  /*
    Главное:
    нормальные результаты поиска показываем только когда JS добавил класс
    .is-mobile-search-results-visible.
  */

  /*
      Если поиск закрыт или результатов нет — список не показываем.
    */

  .btl-twolevel-header.is-mobile-search-open:not(.is-mobile-search-results-visible) #input-search-form_listbox:not(.btl-search-empty), .btl-twolevel-header.is-mobile-search-open:not(.is-mobile-search-results-visible) .tt-menu:not(.btl-search-empty) {
    display: none !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: MOBILE SEARCH EMPTY/RESULTS PRIORITY FIX
   ========================================================= */

@media (max-width: 991.98px) {
  .btl-twolevel-header.is-mobile-search-open.is-mobile-search-results-visible #input-search-form_listbox, .btl-twolevel-header.is-mobile-search-open.is-mobile-search-results-visible .tt-menu {
    display: block !important;
  }

  .btl-twolevel-header.is-mobile-search-open.is-mobile-search-results-visible #input-search-form_listbox .btl-search-empty-state, .btl-twolevel-header.is-mobile-search-open.is-mobile-search-results-visible .tt-menu .btl-search-empty-state {
    display: none !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: MOBILE PHONE MODAL STYLE
   Модалка телефона как на макете
   ========================================================= */

@media (max-width: 991.98px) {
  body.btl-twolevel-phone-modal-is-open {
    overflow: hidden !important;
  }

  .btl-twolevel-phone-modal {
    position: fixed !important;
    inset: 0 !important;
    z-index: 10050 !important;
  }

  .btl-twolevel-phone-modal[hidden] {
    display: none !important;
  }

  .btl-twolevel-phone-modal__overlay {
    position: absolute !important;
    inset: 0 !important;
    background: rgba(0, 54, 91, 0.58) !important;
    backdrop-filter: none !important;
  }

  /*
      Окно появляется не сразу под шапкой,
      а примерно на четверть экрана ниже конца шапки.
    */

  .btl-twolevel-phone-modal__dialog {
    position: absolute !important;
    top: calc(var(--btl-mobile-header-height, 72px) + 24vh) !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    max-width: 440px !important;
    margin: 0 auto !important;
    padding: 72px 28px 82px !important;
    background: #fff !important;
    border-radius: 4px !important;
    box-shadow: none !important;
    transform: none !important;
  }

  .btl-twolevel-phone-modal__close {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #ededed !important;
    color: #a9a9a9 !important;
    font-size: 34px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    cursor: pointer !important;
    box-shadow: none !important;
  }

  .btl-twolevel-phone-modal__close:hover, .btl-twolevel-phone-modal__close:focus {
    background: #e5e5e5 !important;
    color: #8f8f8f !important;
    outline: none !important;
  }

  .btl-twolevel-phone-modal__content {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
  }

  /*
      На макете нет заголовка и графика работы.
      Оставляем в HTML, но скрываем визуально.
    */

  .btl-twolevel-phone-modal__title, .btl-twolevel-phone-modal__schedule {
    display: none !important;
  }

  .btl-twolevel-phone-modal__phone {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 1px !important;
    margin: 0 0 30px !important;
    padding: 0 !important;
    color: #005B9A !important;
    font-size: 24px !important;
    line-height: 1.2 !important;
    font-weight: 400 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
  }

  .btl-twolevel-phone-modal__phone::before {
    content: "" !important;
    display: inline-block !important;
    flex: 0 0 auto !important;
    width: 34px !important;
    height: 34px !important;
    background-image: url("/wp-content/uploads/2026/05/phone.svg") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
  }

  .btl-twolevel-phone-modal__callback {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 312px !important;
    min-height: 58px !important;
    margin: 0 !important;
    padding: 0 24px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #08A7DF !important;
    color: #fff !important;
    font-size: 19px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-shadow: none !important;
  }

  .btl-twolevel-phone-modal__callback:hover, .btl-twolevel-phone-modal__callback:focus {
    background: #009BD9 !important;
    color: #fff !important;
    text-decoration: none !important;
    outline: none !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: SEARCH LOADER VISIBILITY
   Возвращаем видимость спиннера во время поиска
   ========================================================= */

.btl-twolevel-header #search-form .loader.active, .btl-twolevel-header #search-form .loader.is-active, .btl-twolevel-header #search-form .loader.loading, .btl-twolevel-header .btl-twolevel-header__search-loader.active, .btl-twolevel-header .btl-twolevel-header__search-loader.is-active, .btl-twolevel-header .btl-twolevel-header__search-loader.loading {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* =========================================================
   TWOLEVEL HEADER: DESKTOP SEARCH SIZE
   Уменьшаем высоту и ширину строки поиска на десктопе
   ========================================================= */

@media (min-width: 992px) {
  /*
      Важно:
      последняя колонка 1fr занимает всё оставшееся место,
      а сама строка поиска внутри неё прижимается вправо.
    */

  .btl-twolevel-header__top-inner {
    grid-template-columns: 140px 260px 200px minmax(280px, 1fr) !important;
    column-gap: 48px !important;
  }

  /* Обёртка поиска */

  .btl-twolevel-header #search-form.btl-twolevel-header__search-wrap {
    max-width: 500px !important;
    width: 100% !important;
    justify-self: end !important;
    margin-left: auto !important;
    margin-right: 0 !important;
  }

  /* Высота самой строки */

  .btl-twolevel-header .btl-twolevel-header__search {
    height: 38px !important;
  }

  /* Поле ввода */

  .btl-twolevel-header #input-search-form.btl-twolevel-header__search-input, .btl-twolevel-header .twitter-typeahead #input-search-form.btl-twolevel-header__search-input, .btl-twolevel-header .twitter-typeahead .tt-input {
    height: 36px !important;
    line-height: 36px !important;
    font-size: 15px !important;
    padding: 0 70px 0 12px !important;
  }

  /* Hint от typeahead */

  .btl-twolevel-header .twitter-typeahead .tt-hint {
    height: 36px !important;
    line-height: 36px !important;
    font-size: 15px !important;
    padding: 0 70px 0 12px !important;
  }

  /* Кнопка поиска справа */

  .btl-twolevel-header .btl-twolevel-header__search-submit {
    width: 46px !important;
    height: 36px !important;
    flex-basis: 46px !important;
  }

  .btl-twolevel-header .btl-twolevel-header__search-submit img {
    width: 22px !important;
    height: 22px !important;
  }

  /* Крестик очистки */

  .btl-twolevel-header #search-form .btl-twolevel-header__search-close, .btl-twolevel-header .btl-twolevel-header__search-close {
    right: 50px !important;
  }

  /* Спиннер */

  .btl-twolevel-header .btl-twolevel-header__search-loader, .btl-twolevel-header #search-form .loader {
    right: 76px !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: DESKTOP BLUE NAV HEIGHT
   Уменьшаем высоту синего уровня
   ========================================================= */

@media (min-width: 992px) {
  .btl-twolevel-header__primary, .btl-twolevel-header__main-row, .btl-twolevel-header__main .col-auto, .btl-twolevel-header__toolbar {
    height: 58px !important;
    min-height: 58px !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li > a {
    height: 58px !important;
    min-height: 58px !important;
  }

  .btl-twolevel-header__toolbar > a.btn-language.btl-twolevel-header__country, .btl-twolevel-header__toolbar .btn-language.btl-twolevel-header__country {
    height: 58px !important;
    min-height: 58px !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: DESKTOP SIDE PADDINGS
   Отступы слева/справа на обоих уровнях
   ========================================================= */

@media (min-width: 992px) {
  .btl-twolevel-header {
    --btl-desktop-header-side-gap: 42px;
  }

  .btl-twolevel-header__top .container, .btl-twolevel-header__top .container-el-xs, .btl-twolevel-header__main .container, .btl-twolevel-header__main .container-el-xs {
    padding-left: var(--btl-desktop-header-side-gap) !important;
    padding-right: var(--btl-desktop-header-side-gap) !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: DESKTOP MEGAMENU PRIMARY COLUMN STRIPE REMOVE
   Убираем вертикальную полосу у первого столбца megamenu
   ========================================================= */

@media (min-width: 992px) {
  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu .categoryList.primary-list, .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu .categoryList.primary-list ul, .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu .categoryList.primary-list ul li, .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu .categoryList.primary-list ul li a {
    border-right: 0 !important;
    box-shadow: none !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu .categoryList.primary-list::before, .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu .categoryList.primary-list::after, .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu .categoryList.primary-list ul::before, .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu .categoryList.primary-list ul::after {
    content: none !important;
    display: none !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: MOBILE FIXED HEADER
   Надёжно закрепляем мобильную шапку при скролле
   ========================================================= */

@media (max-width: 991.98px) {
  /*
      Фиксируем всю тестовую шапку сверху экрана.
    */

  .btl-twolevel-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 10000 !important;
  }

  /*
      Так как fixed-шапка выпадает из потока,
      возвращаем место под неё первому основному блоку.
    */

  .btl-twolevel-header + .main, .btl-twolevel-header ~ .main, main.main {
    margin-top: 0 !important;
  }

  /*
      Сам синий уровень внутри fixed-шапки.
    */

  .btl-twolevel-header__main {
    position: relative !important;
    z-index: 10001 !important;
  }

  /*
      Выпадающее мобильное меню открывается сразу под fixed-шапкой.
    */

  .btl-twolevel-header__menu nav.active, .btl-twolevel-header:has(.btl-twolevel-header__mobile-menu.active) .btl-twolevel-header__menu nav {
    position: fixed !important;
    top: var(--btl-mobile-header-height, 72px) !important;
    height: calc(100vh - var(--btl-mobile-header-height, 72px)) !important;
    max-height: calc(100vh - var(--btl-mobile-header-height, 72px)) !important;
    z-index: 9990 !important;
  }

  /*
      Мобильная строка поиска остаётся поверх шапки.
    */

  .btl-twolevel-header.is-mobile-search-open .btl-twolevel-header__top {
    position: fixed !important;
    top: 0 !important;
    z-index: 10020 !important;
  }

  /*
      Подсказки поиска начинаются ниже строки поиска.
    */
}

/* =========================================================
   TWOLEVEL HEADER: DESKTOP STICKY TOP / SCROLL STATE
   В покое оба уровня в потоке. После скролла фиксируется только светлый уровень.
   ========================================================= */

@media (min-width: 992px) {
  .btl-twolevel-header {
    --btl-desktop-top-height: 76px;
    --btl-desktop-blue-height: 58px;
  }

  /*
    В состоянии покоя светлый уровень НЕ fixed.
    Он должен занимать место в потоке, чтобы синий уровень стоял сразу под ним.
  */
  .btl-twolevel-header:not(.is-desktop-scrolled) .btl-twolevel-header__top {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;

    width: 100% !important;

    z-index: 10020 !important;

    background: #F4F9FF !important;
    box-shadow: none !important;
  }

  /*
    В состоянии покоя синий уровень тоже стоит в потоке.
    Никакого margin-top здесь быть не должно.
  */
  .btl-twolevel-header:not(.is-desktop-scrolled) .btl-twolevel-header__main {
    position: relative !important;
    top: auto !important;

    margin-top: 0 !important;

    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  /*
    После начала скролла фиксируем только светлый уровень.
  */
  .btl-twolevel-header.is-desktop-scrolled .btl-twolevel-header__top {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;

    width: 100% !important;

    z-index: 10020 !important;

    background: #F4F9FF !important;
    box-shadow: 0 8px 24px rgba(0, 10, 32, 0.08) !important;
  }

  /*
    После скролла синий уровень не должен оставаться в потоке под fixed-шапкой.
    Он будет показываться только по клику на desktop-бургер.
  */
  .btl-twolevel-header.is-desktop-scrolled:not(.is-desktop-menu-open) .btl-twolevel-header__main {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;

    margin-top: 0 !important;
  }

  /*
    По клику на desktop-бургер показываем синий уровень fixed-панелью
    сразу под светлым уровнем.
  */
  .btl-twolevel-header.is-desktop-scrolled.is-desktop-menu-open .btl-twolevel-header__main {
    position: fixed !important;
    top: var(--btl-desktop-top-height, 76px) !important;
    left: 0 !important;
    right: 0 !important;

    width: 100% !important;

    margin-top: 0 !important;

    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;

    z-index: 10010 !important;
    box-shadow: 0 12px 30px rgba(0, 10, 32, 0.16) !important;
  }

  /*
    В состоянии покоя desktop-бургер скрыт и не ломает сетку.
  */
  .btl-twolevel-header:not(.is-desktop-scrolled) .btl-twolevel-header__desktop-menu-toggle {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

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

    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;

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

    overflow: hidden !important;
    pointer-events: none !important;

    position: absolute !important;
    left: -9999px !important;
  }

  /*
    После скролла desktop-бургер появляется.
  */
  .btl-twolevel-header.is-desktop-scrolled .btl-twolevel-header__desktop-menu-toggle {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  /*
    Подсказки поиска открываются под светлым уровнем.
  */
  .btl-twolevel-header .tt-menu,
  .btl-twolevel-header #input-search-form_listbox {
    top: var(--btl-desktop-top-height, 76px) !important;
    max-height: calc(100vh - var(--btl-desktop-top-height, 76px)) !important;
  }

  /*
    Full-width megamenu в обычном состоянии открывается под двумя уровнями шапки.
  */
  .btl-twolevel-header:not(.is-desktop-scrolled)
  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n+2) > .megamenu {
    top: calc(var(--btl-desktop-top-height, 76px) + var(--btl-desktop-blue-height, 58px)) !important;
  }

  /*
    Full-width megamenu при открытии синего уровня через desktop-бургер.
  */
  .btl-twolevel-header.is-desktop-scrolled.is-desktop-menu-open
  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n+2) > .megamenu {
    top: calc(var(--btl-desktop-top-height, 76px) + var(--btl-desktop-blue-height, 58px)) !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: DESKTOP BURGER SMOOTH SLIDE-IN
   Бургер плавно выезжает слева, остальные элементы сдвигаются вправо
   ========================================================= */

@media (min-width: 992px) {
  /*
      Убираем прежние "прыгучие" keyframe-анимации.
    */

  .btl-twolevel-header__top, .btl-twolevel-header__main, .btl-twolevel-header__desktop-menu-toggle, .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open > .megamenu {
    animation: none !important;
  }

  /*
      Верхняя сетка всегда содержит 5 колонок:
      1) бургер
      2) логотип
      3) телефон
      4) часы
      5) поиск
  
      В покое первая колонка = 0px.
      После скролла первая колонка плавно раскрывается до 104px.
    */

  .btl-twolevel-header__top-inner {
    transition: grid-template-columns 0.34s cubic-bezier(0.22, 0.61, 0.36, 1),
      column-gap 0.34s cubic-bezier(0.22, 0.61, 0.36, 1) !important;
  }

  /*
      Состояние покоя:
      бургер физически есть в сетке, но его колонка схлопнута.
      Поэтому он не ломает верстку и может плавно появиться.
    */

  .btl-twolevel-header:not(.is-desktop-scrolled) .btl-twolevel-header__top-inner {
    grid-template-columns: 0px 140px 260px 200px minmax(280px, 1fr) !important;
    column-gap: 28px !important;
  }

  /*
      После скролла:
      первая колонка раскрывается, остальные элементы плавно уезжают вправо.
    */

  .btl-twolevel-header.is-desktop-scrolled .btl-twolevel-header__top-inner {
    grid-template-columns: 104px 120px 250px 190px minmax(280px, 1fr) !important;
    column-gap: 24px !important;
  }

  /*
      ВАЖНО:
      больше не скрываем бургер через display:none / position:absolute / left:-9999px.
      Иначе плавного сдвига не будет.
    */

  .btl-twolevel-header__desktop-menu-toggle, .btl-twolevel-header:not(.is-desktop-scrolled) .btl-twolevel-header__desktop-menu-toggle, .btl-twolevel-header.is-desktop-scrolled .btl-twolevel-header__desktop-menu-toggle {
    grid-column: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    left: auto !important;
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    margin: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    transition: width 0.34s cubic-bezier(0.22, 0.61, 0.36, 1),
      min-width 0.34s cubic-bezier(0.22, 0.61, 0.36, 1),
      max-width 0.34s cubic-bezier(0.22, 0.61, 0.36, 1),
      padding 0.34s cubic-bezier(0.22, 0.61, 0.36, 1),
      border-color 0.24s ease,
      opacity 0.22s ease,
      transform 0.34s cubic-bezier(0.22, 0.61, 0.36, 1),
      background-color 0.22s ease,
      box-shadow 0.22s ease !important;
  }

  /*
      Бургер в покое:
      ширина 0, прозрачный, немного левее.
    */

  .btl-twolevel-header:not(.is-desktop-scrolled) .btl-twolevel-header__desktop-menu-toggle {
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    opacity: 0 !important;
    transform: translateX(-18px) !important;
    pointer-events: none !important;
  }

  /*
      Бургер после скролла:
      плавно раскрывается и занимает место.
    */

  .btl-twolevel-header.is-desktop-scrolled .btl-twolevel-header__desktop-menu-toggle {
    width: 92px !important;
    min-width: 92px !important;
    max-width: 92px !important;
    padding: 0 15px 0 14px !important;
    border: 1px solid #005B9A !important;
    border-radius: 40px !important;
    background: transparent !important;
    color: #005B9A !important;
    opacity: 1 !important;
    transform: translateX(0) !important;
    pointer-events: auto !important;
    cursor: pointer !important;
  }

  .btl-twolevel-header.is-desktop-scrolled .btl-twolevel-header__desktop-menu-toggle:hover, .btl-twolevel-header.is-desktop-scrolled .btl-twolevel-header__desktop-menu-toggle:focus {
    background: rgba(0, 91, 154, 0.06) !important;
    box-shadow: 0 6px 18px rgba(0, 91, 154, 0.08) !important;
    outline: none !important;
  }

  /*
      Полоски бургера.
    */

  .btl-twolevel-header__desktop-menu-toggle i {
    position: absolute !important;
    left: 15px !important;
    display: block !important;
    width: 14px !important;
    height: 2px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #005B9A !important;
    border-radius: 2px !important;
    transition: top 0.22s ease,
      transform 0.22s ease,
      opacity 0.18s ease !important;
  }

  .btl-twolevel-header__desktop-menu-toggle i:nth-of-type(1) {
    top: 12px !important;
  }

  .btl-twolevel-header__desktop-menu-toggle i:nth-of-type(2) {
    top: 19px !important;
  }

  .btl-twolevel-header__desktop-menu-toggle i:nth-of-type(3) {
    top: 26px !important;
  }

  .btl-twolevel-header__desktop-menu-toggle span {
    display: inline-block !important;
    padding-left: 26px !important;
    color: #005B9A !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    opacity: 1 !important;
    transition: opacity 0.22s ease !important;
  }

  /*
      Крестик при открытом меню.
    */

  .btl-twolevel-header.is-desktop-menu-open .btl-twolevel-header__desktop-menu-toggle i:nth-of-type(1) {
    top: 19px !important;
    transform: rotate(45deg) !important;
  }

  .btl-twolevel-header.is-desktop-menu-open .btl-twolevel-header__desktop-menu-toggle i:nth-of-type(2) {
    opacity: 0 !important;
  }

  .btl-twolevel-header.is-desktop-menu-open .btl-twolevel-header__desktop-menu-toggle i:nth-of-type(3) {
    top: 19px !important;
    transform: rotate(-45deg) !important;
  }

  /*
      Синий уровень при открытии через бургер:
      без прыжка, только мягкое появление.
    */

  .btl-twolevel-header.is-desktop-scrolled.is-desktop-menu-open .btl-twolevel-header__main {
    animation: none !important;
    transition: opacity 0.22s ease,
      box-shadow 0.22s ease !important;
  }

  /*
      Отключаем старую анимацию появления megamenu через keyframes.
      Оставляем только спокойный transition.
    */

  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open > .megamenu {
    animation: none !important;
    transition: opacity 0.22s ease,
      visibility 0.22s ease,
      transform 0.22s ease !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: DESKTOP BLUE NAV TEXT UNDERLINE FINAL
   Подчеркиваем только текст пункта, без гапов справа/слева
   ========================================================= */

@media (min-width: 992px) {
  .btl-twolevel-header__main .categoryMenu nav > ul > li > a {
    position: relative !important;
    background: transparent !important;
    text-decoration-line: underline !important;
    text-decoration-color: transparent !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 21px !important;
    text-decoration-skip-ink: none !important;
    transition: color 0.22s ease,
      text-decoration-color 0.22s ease !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li:hover > a, .btl-twolevel-header__main .categoryMenu nav > ul > li:focus-within > a {
    background: transparent !important;
    color: #fff !important;
    text-decoration-color: #fff !important;
  }

  /*
      Полностью гасим старые псевдополосы, если где-то выше они остались.
    */

  .btl-twolevel-header__main .categoryMenu nav > ul > li > a::after {
    content: none !important;
    display: none !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: MOBILE HEADER WITHOUT RU
   Трубка и лупа в одной колонке перед кнопкой Меню
   ========================================================= */

@media (max-width: 991.98px) {
  .btl-twolevel-header {
    /*
          Регулирует расстояние между трубкой и лупой.
        */
    --btl-mobile-icons-gap: 25px;
    /*
          Регулирует расстояние между группой иконок и кнопкой Меню.
        */
    --btl-mobile-toolbar-gap: 10px;
  }

  /*
      Правая зона после удаления RU:
      1fr  — свободное место;
      auto — группа трубка + лупа;
      auto — кнопка Меню.
    */

  .btl-twolevel-header__toolbar {
    display: grid !important;
    grid-template-columns: minmax(24px, 1fr) auto auto !important;
    align-items: center !important;
    column-gap: var(--btl-mobile-toolbar-gap) !important;
    width: 100% !important;
    height: var(--btl-mobile-header-height, 72px) !important;
    min-height: var(--btl-mobile-header-height, 72px) !important;
    max-height: var(--btl-mobile-header-height, 72px) !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /*
      RU полностью убран из синего яруса.
    */

  .btl-twolevel-header__mobile-language {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }

  /*
      Трубка и лупа ставятся в одну колонку.
      Трубка идёт первой, лупа второй.
    */

  .btl-twolevel-header__mobile-phone-toggle, .btl-twolevel-header__mobile-search {
    grid-column: 2 !important;
    grid-row: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    height: 42px !important;
    min-width: 34px !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    outline: none !important;
    transform: none !important;
  }

  .btl-twolevel-header__mobile-phone-toggle {
    justify-self: start !important;
  }

  .btl-twolevel-header__mobile-search {
    justify-self: start !important;
    /*
          Сдвигаем лупу вправо от трубки.
          Гап регулируется переменной --btl-mobile-icons-gap.
        */
    margin-left: calc(34px + var(--btl-mobile-icons-gap)) !important;
  }

  .btl-twolevel-header__mobile-phone-toggle:hover, .btl-twolevel-header__mobile-phone-toggle:focus, .btl-twolevel-header__mobile-phone-toggle:active, .btl-twolevel-header__mobile-search:hover, .btl-twolevel-header__mobile-search:focus, .btl-twolevel-header__mobile-search:active {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    outline: none !important;
  }

  .btl-twolevel-header__mobile-phone-icon, .btl-twolevel-header__mobile-phone-icon img {
    display: block !important;
    width: 28px !important;
    height: 28px !important;
    object-fit: contain !important;
  }

  .btl-twolevel-header__mobile-search img {
    display: block !important;
    width: 28px !important;
    height: 28px !important;
    object-fit: contain !important;
    filter: brightness(0) invert(1) !important;
  }

  /*
    Главное:
    нормальные результаты поиска показываем только когда JS добавил класс
    .is-mobile-search-results-visible.
  */

  .btl-twolevel-header.is-mobile-search-open.is-mobile-search-results-visible #input-search-form_listbox, .btl-twolevel-header.is-mobile-search-open.is-mobile-search-results-visible .tt-menu, .btl-twolevel-header.is-mobile-search-open #input-search-form_listbox.btl-search-empty {
    --btl-mobile-search-suggestions-shift-up: 0px;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: fixed !important;
    top: calc(
    var(--btl-mobile-header-height, 72px) - var(--btl-mobile-search-suggestions-shift-up)
  ) !important;
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    max-height: calc(
    100vh - var(--btl-mobile-header-height, 72px) + var(--btl-mobile-search-suggestions-shift-up)
  ) !important;
    margin: 0 !important;
    padding: 24px 20px 34px !important;
    background: #fff !important;
    border-top: 1px solid rgba(0, 91, 154, 0.18) !important;
    border-radius: 0 !important;
    box-shadow: 0 18px 42px rgba(0, 10, 32, 0.12) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    z-index: 9999 !important;
    pointer-events: auto !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: MOBILE SEARCH TOP CLEANUP
   Убираем десктопный бургер из мобильного поиска,
   строку поиска растягиваем на всю ширину
   ========================================================= */

@media (max-width: 991.98px) {
  .btl-twolevel-header.is-mobile-search-open .btl-twolevel-header__desktop-menu-toggle {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }

  .btl-twolevel-header.is-mobile-search-open .btl-twolevel-header__top-inner {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    gap: 0 !important;
  }

  .btl-twolevel-header.is-mobile-search-open #search-form.btl-twolevel-header__search-wrap {
    flex: 1 1 auto !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    justify-self: stretch !important;
  }

  .btl-twolevel-header.is-mobile-search-open .btl-twolevel-header__search {
    width: 100% !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: RESPONSIVE FULL-WIDTH MEGAMENU
   Адаптация первых двух полноширинных megamenu для 992–1280px
   Сетка сохранена, уменьшены шрифты и изображения.
   ========================================================= */

/*
  992–1199px:
  iPad Pro portrait / небольшие desktop-режимы.
*/

@media (min-width: 992px) and (max-width: 1199.98px) {
  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu {
    padding-top: 16px !important;
    padding-bottom: 18px !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu > .container, .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu > .container-el-xs {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu .row {
    margin-left: -5px !important;
    margin-right: -5px !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu [class*="col"] {
    padding-left: 5px !important;
    padding-right: 5px !important;
  }

  /*
      Сетка сохранена.
    */

  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu > .container > .row > [class*="col"]:first-child, .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu > .container-el-xs > .row > [class*="col"]:first-child {
    flex: 0 0 17% !important;
    max-width: 17% !important;
    width: 17% !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu > .container > .row > [class*="col"]:not(:first-child), .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu > .container-el-xs > .row > [class*="col"]:not(:first-child) {
    flex: 1 1 0 !important;
    max-width: none !important;
    width: auto !important;
  }

  /*
      Заголовки колонок.
    */

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList .title {
    font-size: 12px !important;
    line-height: 1.2 !important;
    margin-bottom: 8px !important;
  }

  /*
      Карточки/пункты внутри megamenu.
    */

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList ul li {
    margin-bottom: 8px !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList ul li a {
    min-height: 50px !important;
    font-size: 11px !important;
    line-height: 1.15 !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList ul li a > div.text {
    padding: 8px 7px 8px 9px !important;
  }

  /*
      Картинки в карточках.
    */

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList ul li a > div.image {
    max-width: 60px !important;
    min-height: 50px !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList ul li a > div.image img {
    max-width: 60px !important;
    max-height: 44px !important;
    object-fit: contain !important;
  }

  /*
      Синие карточки первого столбца.
    */

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList.primary-list ul li a {
    min-height: 50px !important;
    font-size: 12px !important;
    line-height: 1.12 !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList.primary-list ul li a > div.text {
    padding: 8px 7px 8px 9px !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList.primary-list ul li a > div.image {
    max-width: 60px !important;
    min-height: 50px !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList.primary-list ul li a > div.image img {
    height: 44px !important;
    max-height: 44px !important;
    max-width: 60px !important;
    object-fit: contain !important;
  }

  /*
      Третичные списки / текстовые ссылки.
    */

  .btl-twolevel-header__main .categoryMenu .megamenu .tertiary-list a div > h5 {
    font-size: 12px !important;
    line-height: 1.2 !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .tertiary-list a div > p {
    font-size: 11px !important;
    line-height: 1.2 !important;
  }
}

/*
  1200–1280px:
  маленькие ноутбуки / iPad Pro landscape / узкие desktop.
*/

@media (min-width: 1200px) and (max-width: 1280px) {
  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu {
    padding-top: 18px !important;
    padding-bottom: 20px !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu > .container, .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu > .container-el-xs {
    padding-left: 26px !important;
    padding-right: 26px !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu .row {
    margin-left: -6px !important;
    margin-right: -6px !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu [class*="col"] {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }

  /*
      Сетка сохранена.
    */

  .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu > .container > .row > [class*="col"]:first-child, .btl-twolevel-header__main .categoryMenu nav > ul > li.megamenu-open:nth-child(-n/**/+2) > .megamenu > .container-el-xs > .row > [class*="col"]:first-child {
    flex: 0 0 18% !important;
    max-width: 18% !important;
    width: 18% !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList .title {
    font-size: 13px !important;
    line-height: 1.2 !important;
    margin-bottom: 9px !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList ul li {
    margin-bottom: 10px !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList ul li a {
    min-height: 56px !important;
    font-size: 12px !important;
    line-height: 1.15 !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList ul li a > div.text {
    padding: 9px 8px 9px 10px !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList ul li a > div.image {
    max-width: 68px !important;
    min-height: 56px !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList ul li a > div.image img {
    max-width: 68px !important;
    max-height: 50px !important;
    object-fit: contain !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList.primary-list ul li a {
    min-height: 56px !important;
    font-size: 13px !important;
    line-height: 1.12 !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList.primary-list ul li a > div.text {
    padding: 9px 8px 9px 10px !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList.primary-list ul li a > div.image {
    max-width: 68px !important;
    min-height: 56px !important;
  }

  .btl-twolevel-header__main .categoryMenu .megamenu .categoryList.primary-list ul li a > div.image img {
    height: 50px !important;
    max-height: 50px !important;
    max-width: 68px !important;
    object-fit: contain !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: TABLET BLUE NAV COMPACT
   На узких desktop/tablet-экранах компактно размещаем пункты синего меню
   ========================================================= */

@media (min-width: 992px) and (max-width: 1280px) {
  /*
      Синий уровень: меню занимает доступное место,
      правая зона "Россия" остаётся справа, если помещается.
    */

  .btl-twolevel-header__main-row {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    min-width: 0 !important;
  }

  .btl-twolevel-header__menu {
    position: relative !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  .btl-twolevel-header__main .categoryMenu, .btl-twolevel-header__main .categoryMenu nav {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  /*
      Список меню не переносится на вторую строку.
      За счёт компактных padding/font-size пункты помещаются на 992–1280px.
    */

  .btl-twolevel-header__main .categoryMenu nav > ul {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    width: max-content !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li {
    flex: 0 0 auto !important;
  }

  /*
      Компактные пункты меню на планшетном desktop-диапазоне.
    */

  .btl-twolevel-header__main .categoryMenu nav > ul > li > a {
    padding-left: 10px !important;
    padding-right: 10px !important;
    font-size: 13px !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li:first-child > a {
    padding-left: 0 !important;
  }

  /*
      Важно: сгиб с троеточием отключён.
    */

  .btl-twolevel-header__menu::after {
    content: none !important;
    display: none !important;
  }

  /*
      Правая колонка с "Россия" не должна уезжать вниз/влево.
    */

  .btl-twolevel-header__main-row > .col-auto {
    flex: 0 0 auto !important;
    min-width: 0 !important;
  }

  .btl-twolevel-header__toolbar {
    flex: 0 0 auto !important;
    min-width: 0 !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: DESKTOP REMOVE OLD BODY OFFSET
   Убираем старую компенсацию body под прежнюю fixed-шапку
   ========================================================= */

@media (min-width: 992px) {
  body {
    padding-top: 0 !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: VIDEO HERO STACKING FIX
   Видео-хиро не должен перекрывать двухуровневую шапку
   ========================================================= */

.video-section.video-section-full {
  position: relative !important;
  z-index: 1 !important;
}

.video-section.video-section-full .video-bg-wrapper-full,
.video-section.video-section-full .internal-video-bg-wrapper,
.video-section.video-section-full .overlay,
.video-section.video-section-full .video-section-content-wrap {
  z-index: 1 !important;
}


/* =========================================================
   TWOLEVEL HEADER: LARGE DESKTOP BLUE NAV INNER WIDTH
   На больших экранах синий фон на всю ширину,
   но содержимое синего уровня держим в той же рабочей ширине,
   что и светлый уровень
   ========================================================= */

@media (min-width: 1920px) {
  /*
    Сам синий уровень оставляем полноширинным.
  */
  .btl-twolevel-header__main {
    width: 100% !important;
  }

  /*
    А вот внутренний контейнер синего уровня ограничиваем.
  */
  .btl-twolevel-header__main .container,
  .btl-twolevel-header__main .container-el-xs {
    width: 100% !important;
    max-width: 1700px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /*
    Ряд внутри синего уровня не должен растягивать пункты меню по всей странице.
  */
  .btl-twolevel-header__primary,
  .btl-twolevel-header__main-row {
    width: 100% !important;
    max-width: 1700px !important;

    margin-left: auto !important;
    margin-right: auto !important;
  }

  /*
    Меню занимает доступное место внутри ограниченного контейнера.
  */
  .btl-twolevel-header__menu {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }

  /*
    Правая зона "Россия" остаётся справа внутри тех же 1440px,
    а не у края viewport.
  */
  .btl-twolevel-header__main-row > .col-auto {
    flex: 0 0 auto !important;
  }
}


/* =========================================================
   TWOLEVEL HEADER: TABLET / SMALL DESKTOP TOP FIX FINAL
   Возвращаем адаптацию светлого уровня для iPad Pro и 992–1280px
   ========================================================= */

/*
  992–1199px:
  iPad Pro portrait / небольшие desktop-экраны.
*/
@media (min-width: 992px) and (max-width: 1199.98px) {
  .btl-twolevel-header {
    --btl-desktop-top-height: 72px;
    --btl-desktop-header-side-gap: 28px;
  }

  .btl-twolevel-header__top .container,
  .btl-twolevel-header__top .container-el-xs,
  .btl-twolevel-header__main .container,
  .btl-twolevel-header__main .container-el-xs {
    padding-left: var(--btl-desktop-header-side-gap) !important;
    padding-right: var(--btl-desktop-header-side-gap) !important;
  }

  .btl-twolevel-header__top-inner {
    min-height: var(--btl-desktop-top-height) !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  /*
    Состояние покоя:
    бургер есть в DOM, но его колонка схлопнута.
    Поиск ужат, чтобы не уходил за правый край.
  */
  .btl-twolevel-header:not(.is-desktop-scrolled) .btl-twolevel-header__top-inner {
    grid-template-columns: 0px 82px 168px 128px minmax(180px, 280px) !important;
    column-gap: 16px !important;
    justify-content: space-between !important;
  }

  /*
    После скролла:
    появляется колонка под desktop-бургер, поэтому остальные колонки ещё компактнее.
  */
  .btl-twolevel-header.is-desktop-scrolled .btl-twolevel-header__top-inner {
    grid-template-columns: 78px 68px 150px 108px minmax(160px, 240px) !important;
    column-gap: 12px !important;
    justify-content: space-between !important;
  }

  .btl-twolevel-header__logo-img {
    width: 82px !important;
    height: auto !important;
  }

  .btl-twolevel-header.is-desktop-scrolled .btl-twolevel-header__logo-img {
    width: 68px !important;
  }

  .btl-twolevel-header__phone,
  .btl-twolevel-header__schedule-time {
    gap: 5px !important;
    font-size: 13px !important;
    line-height: 1.15 !important;
    font-weight: 500 !important;
  }

  .btl-twolevel-header__callback,
  .btl-twolevel-header__schedule-days {
    margin-top: 4px !important;
    font-size: 12px !important;
    line-height: 1.15 !important;
  }

  .btl-twolevel-header__callback {
    margin-left: 18px !important;
  }

  .btl-twolevel-header__schedule-days {
    margin-left: 14px !important;
  }

  .btl-twolevel-header__icon {
    width: 15px !important;
    height: 15px !important;
  }

  /*
    Поиск на iPad Pro.
  */
  .btl-twolevel-header #search-form.btl-twolevel-header__search-wrap {
    width: 100% !important;
    max-width: 280px !important;
    min-width: 0 !important;
    justify-self: end !important;
    margin-left: auto !important;
    margin-right: 0 !important;
  }

  .btl-twolevel-header.is-desktop-scrolled #search-form.btl-twolevel-header__search-wrap {
    max-width: 240px !important;
  }

  .btl-twolevel-header .btl-twolevel-header__search {
    height: 34px !important;
  }

  .btl-twolevel-header #input-search-form.btl-twolevel-header__search-input,
  .btl-twolevel-header .twitter-typeahead #input-search-form.btl-twolevel-header__search-input,
  .btl-twolevel-header .twitter-typeahead .tt-input {
    height: 32px !important;
    line-height: 32px !important;
    font-size: 13px !important;
    padding: 0 54px 0 10px !important;
  }

  .btl-twolevel-header .twitter-typeahead .tt-hint {
    height: 32px !important;
    line-height: 32px !important;
    font-size: 13px !important;
    padding: 0 54px 0 10px !important;
  }

  .btl-twolevel-header .btl-twolevel-header__search-submit {
    width: 38px !important;
    height: 32px !important;
    flex-basis: 38px !important;
  }

  .btl-twolevel-header .btl-twolevel-header__search-submit img {
    width: 18px !important;
    height: 18px !important;
  }

  .btl-twolevel-header #search-form .btl-twolevel-header__search-close,
  .btl-twolevel-header .btl-twolevel-header__search-close {
    right: 40px !important;
    width: 18px !important;
    height: 18px !important;
  }

  .btl-twolevel-header .btl-twolevel-header__search-loader,
  .btl-twolevel-header #search-form .loader {
    right: 60px !important;
    width: 16px !important;
    height: 16px !important;
    margin-top: -8px !important;
  }

  /*
    Desktop-бургер в scrolled-состоянии на iPad Pro.
  */
  .btl-twolevel-header.is-desktop-scrolled .btl-twolevel-header__desktop-menu-toggle {
    width: 74px !important;
    min-width: 74px !important;
    max-width: 74px !important;

    height: 34px !important;
    min-height: 34px !important;
    max-height: 34px !important;

    padding: 0 9px 0 10px !important;

    font-size: 12px !important;
  }

  .btl-twolevel-header__desktop-menu-toggle i {
    left: 10px !important;
    width: 12px !important;
    height: 2px !important;
  }

  .btl-twolevel-header__desktop-menu-toggle span {
    padding-left: 19px !important;
    font-size: 12px !important;
  }
}

/*
  1200–1280px:
  маленькие ноутбуки / iPad Pro landscape / узкие desktop.
*/
@media (min-width: 1200px) and (max-width: 1280px) {
  .btl-twolevel-header {
    --btl-desktop-header-side-gap: 34px;
  }

  .btl-twolevel-header__top .container,
  .btl-twolevel-header__top .container-el-xs,
  .btl-twolevel-header__main .container,
  .btl-twolevel-header__main .container-el-xs {
    padding-left: var(--btl-desktop-header-side-gap) !important;
    padding-right: var(--btl-desktop-header-side-gap) !important;
  }

  .btl-twolevel-header:not(.is-desktop-scrolled) .btl-twolevel-header__top-inner {
    grid-template-columns: 0px 100px 220px 160px minmax(240px, 360px) !important;
    column-gap: 22px !important;
    justify-content: space-between !important;
  }

  .btl-twolevel-header.is-desktop-scrolled .btl-twolevel-header__top-inner {
    grid-template-columns: 90px 92px 210px 150px minmax(220px, 320px) !important;
    column-gap: 18px !important;
    justify-content: space-between !important;
  }

  .btl-twolevel-header #search-form.btl-twolevel-header__search-wrap {
    max-width: 360px !important;
    width: 100% !important;
    justify-self: end !important;
    margin-left: auto !important;
    margin-right: 0 !important;
  }

  .btl-twolevel-header.is-desktop-scrolled #search-form.btl-twolevel-header__search-wrap {
    max-width: 320px !important;
  }

  .btl-twolevel-header__logo-img {
    width: 96px !important;
  }

  .btl-twolevel-header.is-desktop-scrolled .btl-twolevel-header__logo-img {
    width: 88px !important;
  }

  .btl-twolevel-header__phone,
  .btl-twolevel-header__schedule-time {
    font-size: 14px !important;
  }

  .btl-twolevel-header__callback,
  .btl-twolevel-header__schedule-days {
    font-size: 13px !important;
  }
}


/* =========================================================
   TWOLEVEL HEADER: SEARCH RESULT NAVIGATION STATE
   UX-индикатор перехода после клика по подсказке поиска
   ========================================================= */

body.btl-search-result-is-navigating {
  cursor: wait !important;
}

/*
  Блокируем повторные клики по подсказкам после первого клика.
*/
body.btl-search-result-is-navigating #input-search-form_listbox,
body.btl-search-result-is-navigating .btl-twolevel-header .tt-menu {
  pointer-events: none !important;
}

/*
  Лёгкое затемнение окна подсказок, чтобы было понятно:
  клик принят, идёт переход.
*/
body.btl-search-result-is-navigating #input-search-form_listbox::before,
body.btl-search-result-is-navigating .btl-twolevel-header .tt-menu::before {
  content: "" !important;

  position: fixed !important;
  inset: 0 !important;

  background: rgba(255, 255, 255, 0.68) !important;
  backdrop-filter: blur(1px) !important;

  z-index: 10020 !important;
  pointer-events: auto !important;
}

/*
  Небольшой loader по центру экрана.
*/
body.btl-search-result-is-navigating #input-search-form_listbox::after,
body.btl-search-result-is-navigating .btl-twolevel-header .tt-menu::after {
  content: "Загружаем..." !important;

  position: fixed !important;
  top: 50% !important;
  left: 50% !important;

  z-index: 10021 !important;

  transform: translate(-50%, -50%) !important;

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

  min-width: 148px !important;
  height: 44px !important;
  padding: 0 22px !important;

  background: #fff !important;
  color: #005B9A !important;

  border: 1px solid rgba(0, 91, 154, 0.16) !important;
  border-radius: 999px !important;

  box-shadow: 0 14px 38px rgba(0, 10, 32, 0.16) !important;

  font-size: 15px !important;
  line-height: 1 !important;
  font-weight: 500 !important;

  pointer-events: none !important;
}

/*
  На всякий случай блокируем повторные клики по самой шапке.
*/
body.btl-search-result-is-navigating .btl-twolevel-header {
  pointer-events: none !important;
}

/* =========================================================
   TWOLEVEL HEADER: MOBILE MENU LANGUAGE ITEM
   RU в мобильном выпадающем меню
   ========================================================= */

@media (max-width: 991.98px) {
  /*
    Усиливаем селектор, потому что .btn-language может перебиваться
    старыми стилями темы.
  */
  .btl-twolevel-header__menu nav ul.respHeaderMenu > li.lang.btl-twolevel-header__mobile-menu-lang > a.btn-language.btl-twolevel-header__mobile-menu-lang-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 14px !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;

    height: 20px !important;
    min-height: 20px !important;
    max-height: 20px !important;

    margin: 0 !important;
    padding: 14px 0 !important;

    color: inherit !important;
    background: transparent !important;

    font-size: 15px !important;
    line-height: 20px !important;
    font-weight: 400 !important;
    text-transform: none !important;
    text-decoration: none !important;

    vertical-align: middle !important;

    visibility: visible !important;
    opacity: 1 !important;
    overflow: visible !important;
    pointer-events: auto !important;
  }

  .btl-twolevel-header__mobile-menu-lang-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    flex: 0 0 20px !important;

    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    min-height: 20px !important;

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

    line-height: 20px !important;
    vertical-align: middle !important;
  }

  .btl-twolevel-header__mobile-menu-lang-icon img {
    display: block !important;

    width: 20px !important;
    height: 20px !important;

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

    object-fit: contain !important;
    vertical-align: middle !important;
  }

  .btl-twolevel-header__mobile-menu-lang-text {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    height: 20px !important;
    min-height: 20px !important;

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

    color: inherit !important;

    font-size: 15px !important;
    line-height: 20px !important;
    font-weight: 400 !important;
    text-transform: none !important;
    vertical-align: middle !important;
  }

  /*
    Отключаем старые псевдоиконки темы.
  */
  .btl-twolevel-header__mobile-menu-lang-link::before,
  .btl-twolevel-header__mobile-menu-lang-link::after,
  .btl-twolevel-header__menu nav ul.respHeaderMenu > li.lang > a.btn-language::before,
  .btl-twolevel-header__menu nav ul.respHeaderMenu > li.lang > a.btn-language::after {
    display: none !important;
    content: none !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: 1281–1500 BLUE NAV COMPACT FIX
   После добавления пункта "Открыть клинику с BTL"
   уменьшаем реальные отступы пунктов меню и кнопки "Россия"
   ========================================================= */

@media (min-width: 1281px) and (max-width: 1500px) {
  .btl-twolevel-header {
    --btl-desktop-header-side-gap: 28px;
  }

  .btl-twolevel-header__top .container,
  .btl-twolevel-header__top .container-el-xs,
  .btl-twolevel-header__main .container,
  .btl-twolevel-header__main .container-el-xs {
    padding-left: var(--btl-desktop-header-side-gap) !important;
    padding-right: var(--btl-desktop-header-side-gap) !important;
  }

  .btl-twolevel-header__main-row {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    min-width: 0 !important;
  }

  .btl-twolevel-header__menu {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    overflow: visible !important;
  }

  .btl-twolevel-header__main .categoryMenu,
  .btl-twolevel-header__main .categoryMenu nav {
    min-width: 0 !important;
    overflow: visible !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li {
    flex: 0 0 auto !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li > a {
    padding-left: 14px !important;
    padding-right: 14px !important;
    font-size: 15px !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li:first-child > a {
    padding-left: 0 !important;
  }

  .btl-twolevel-header__main-row > .col-auto {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: max-content !important;
  }

  .btl-twolevel-header__toolbar {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: max-content !important;
  }

  .btl-twolevel-header__toolbar > a.btn-language.btl-twolevel-header__country,
  .btl-twolevel-header__toolbar .btn-language.btl-twolevel-header__country {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: max-content !important;
    padding-left: 10px !important;
    padding-right: 14px !important;
    gap: 7px !important;
    font-size: 14px !important;
    white-space: nowrap !important;
  }

  .btl-twolevel-header__toolbar .btl-twolevel-header__country-icon {
    flex: 0 0 24px !important;
    width: 24px !important;
    height: 24px !important;
  }

  .btl-twolevel-header__toolbar .btl-twolevel-header__country-icon img {
    width: 24px !important;
    height: 24px !important;
  }

  .btl-twolevel-header__toolbar .btl-twolevel-header__country-text {
    display: inline-block !important;
    font-size: 14px !important;
    white-space: nowrap !important;
  }
}

/* =========================================================
   TWOLEVEL HEADER: 992–1279 BLUE NAV COMPACT
   ========================================================= */

@media (min-width: 992px) and (max-width: 1279.98px) {
 
  .btl-twolevel-header__main .container,
  .btl-twolevel-header__main .container-el-xs {
    padding-left: 24px !important;
    padding-right: 8px !important;
  }


  .btl-twolevel-header__main-row {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;

    min-width: 0 !important;

    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .btl-twolevel-header__main-row > .col,
  .btl-twolevel-header__main-row > .col-auto {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

 
  .btl-twolevel-header__menu {
    position: relative !important;

    flex: 1 1 auto !important;

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

    overflow: visible !important;
  }

  .btl-twolevel-header__main .categoryMenu,
  .btl-twolevel-header__main .categoryMenu nav {
    min-width: 0 !important;
    max-width: 100% !important;

    overflow: visible !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;

    width: max-content !important;
    max-width: none !important;

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

    overflow: visible !important;
  }

  .btl-twolevel-header__main .categoryMenu nav > ul > li {
    flex: 0 0 auto !important;
  }

 
  .btl-twolevel-header__main .categoryMenu nav > ul > li > a {
    padding-left: 10px !important;
    padding-right: 10px !important;

    font-size: 12px !important;
    line-height: 1.1 !important;
    letter-spacing: -0.1px !important;

    white-space: nowrap !important;
  }


  .btl-twolevel-header__main .categoryMenu nav > ul > li:first-child > a {
    padding-left: 0 !important;
  }


  .btl-twolevel-header__main-row > .col-auto {
    flex: 0 0 auto !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  .btl-twolevel-header__toolbar {
    flex: 0 0 auto !important;

    width: auto !important;
    min-width: 0 !important;

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

 
  .btl-twolevel-header__toolbar > a.btn-language.btl-twolevel-header__country,
  .btl-twolevel-header__toolbar .btn-language.btl-twolevel-header__country {
    flex: 0 0 auto !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;

    padding-left: 4px !important;
    padding-right: 5px !important;

    gap: 4px !important;

    font-size: 12px !important;
    white-space: nowrap !important;
  }

  .btl-twolevel-header__toolbar .btl-twolevel-header__country-icon {
    flex: 0 0 18px !important;

    width: 18px !important;
    height: 18px !important;
  }

  .btl-twolevel-header__toolbar .btl-twolevel-header__country-icon img {
    width: 18px !important;
    height: 18px !important;
  }

  .btl-twolevel-header__toolbar .btl-twolevel-header__country-text {
    display: inline-block !important;

    font-size: 12px !important;
    line-height: 1 !important;
    letter-spacing: -0.1px !important;

    white-space: nowrap !important;
  }

  .btl-twolevel-header__menu::after {
    display: none !important;
    content: none !important;
  }
}
