PageSourceSearch

https://softline.ru/local/templates/softline/assets/js/app.js?1790298393109029

js softline.ru collected 2026-10-01 08:13:29 UTC 109,029 bytes, 3,278 lines download raw bytes

vendor: 6,790 bytes, lines 1-259
1"use strict";
2
3(function (root) {
4
5  // Store setTimeout reference so promise-polyfill will be unaffected by
6  // other code modifying setTimeout (like sinon.useFakeTimers())
7  var setTimeoutFunc = setTimeout;
8
9  function noop() { }
10
11  // Polyfill for Function.prototype.bind
12  function bind(fn, thisArg) {
13    return function () {
14      fn.apply(thisArg, arguments);
15    };
16  }
17
18  function Promise(fn) {
19    if (typeof this !== 'object') throw new TypeError('Promises must be constructed via new');
20    if (typeof fn !== 'function') throw new TypeError('not a function');
21    this._state = 0;
22    this._handled = false;
23    this._value = undefined;
24    this._deferreds = [];
25
26    doResolve(fn, this);
27  }
28
29  function handle(self, deferred) {
30    while (self._state === 3) {
31      self = self._value;
32    }
33    if (self._state === 0) {
34      self._deferreds.push(deferred);
35      return;
36    }
37    self._handled = true;
38    Promise._immediateFn(function () {
39      var cb = self._state === 1 ? deferred.onFulfilled : deferred.onRejected;
40      if (cb === null) {
41        (self._state === 1 ? resolve : reject)(deferred.promise, self._value);
42        return;
43      }
44      var ret;
45      try {
46        ret = cb(self._value);
47      } catch (e) {
48        reject(deferred.promise, e);
49        return;
50      }
51      resolve(deferred.promise, ret);
52    });
53  }
54
55  function resolve(self, newValue) {
56    try {
57      // Promise Resolution Procedure: https://github.com/promises-aplus/promises-spec#the-promise-resolution-procedure
58      if (newValue === self) throw new TypeError('A promise cannot be resolved with itself.');
59      if (newValue && (typeof newValue === 'object' || typeof newValue === 'function')) {
60        var then = newValue.then;
61        if (newValue instanceof Promise) {
62          self._state = 3;
63          self._value = newValue;
64          finale(self);
65          return;
66        } else if (typeof then === 'function') {
67          doResolve(bind(then, newValue), self);
68          return;
69        }
70      }
71      self._state = 1;
72      self._value = newValue;
73      finale(self);
74    } catch (e) {
75      reject(self, e);
76    }
77  }
78
79  function reject(self, newValue) {
80    self._state = 2;
81    self._value = newValue;
82    finale(self);
83  }
84
85  function finale(self) {
86    if (self._state === 2 && self._deferreds.length === 0) {
87      Promise._immediateFn(function () {
88        if (!self._handled) {
89          Promise._unhandledRejectionFn(self._value);
90        }
91      });
92    }
93
94    for (var i = 0, len = self._deferreds.length; i < len; i++) {
95      handle(self, self._deferreds[i]);
96    }
97    self._deferreds = null;
98  }
99
100  function Handler(onFulfilled, onRejected, promise) {
101    this.onFulfilled = typeof onFulfilled === 'function' ? onFulfilled : null;
102    this.onRejected = typeof onRejected === 'function' ? onRejected : null;
103    this.promise = promise;
104  }
105
106  /**
107   * Take a potentially misbehaving resolver function and make sure
108   * onFulfilled and onRejected are only called once.
109   *
110   * Makes no guarantees about asynchrony.
111   */
112  function doResolve(fn, self) {
113    var done = false;
114    try {
115      fn(function (value) {
116        if (done) return;
117        done = true;
118        resolve(self, value);
119      }, function (reason) {
120        if (done) return;
121        done = true;
122        reject(self, reason);
123      });
124    } catch (ex) {
125      if (done) return;
126      done = true;
127      reject(self, ex);
128    }
129  }
130
131  Promise.prototype['catch'] = function (onRejected) {
132    return this.then(null, onRejected);
133  };
134
135  Promise.prototype.then = function (onFulfilled, onRejected) {
136    var prom = new (this.constructor)(noop);
137
138    handle(this, new Handler(onFulfilled, onRejected, prom));
139    return prom;
140  };
141
142  Promise.all = function (arr) {
143    var args = Array.prototype.slice.call(arr);
144
145    return new Promise(function (resolve, reject) {
146      if (args.length === 0) return resolve([]);
147      var remaining = args.length;
148
149      function res(i, val) {
150        try {
151          if (val && (typeof val === 'object' || typeof val === 'function')) {
152            var then = val.then;
153            if (typeof then === 'function') {
154              then.call(val, function (val) {
155                res(i, val);
156              }, reject);
157              return;
158            }
159          }
160          args[i] = val;
161          if (--remaining === 0) {
162            resolve(args);
163          }
164        } catch (ex) {
165          reject(ex);
166        }
167      }
168
169      for (var i = 0; i < args.length; i++) {
170        res(i, args[i]);
171      }
172    });
173  };
174
175  
176
177  Promise.resolve = function (value) {
178    if (value && typeof value === 'object' && value.constructor === Promise) {
179      return value;
180    }
181
182    return new Promise(function (resolve) {
183      resolve(value);
184    });
185  };
186
187  Promise.reject = function (value) {
188    return new Promise(function (resolve, reject) {
189      reject(value);
190    });
191  };
192
193  Promise.race = function (values) {
194    return new Promise(function (resolve, reject) {
195      for (var i = 0, len = values.length; i < len; i++) {
196        values[i].then(resolve, reject);
197      }
198    });
199  };
200
201  // Use polyfill for setImmediate for performance gains
202  Promise._immediateFn = (typeof setImmediate === 'function' && function (fn) { setImmediate(fn); }) ||
203    function (fn) {
204      setTimeoutFunc(fn, 0);
205    };
206
207  Promise._unhandledRejectionFn = function _unhandledRejectionFn(err) {
208    if (typeof console !== 'undefined' && console) {
209      console.warn('Possible Unhandled Promise Rejection:', err); // eslint-disable-line no-console
210    }
211  };
212
213  /**
214   * Set the immediate function to execute callbacks
215   * @param fn {function} Function to execute
216   * @deprecated
217   */
218  Promise._setImmediateFn = function _setImmediateFn(fn) {
219    Promise._immediateFn = fn;
220  };
221
222  /**
223   * Change the function to execute on unhandled rejection
224   * @param {function} fn Function to execute on unhandled rejection
225   * @deprecated
226   */
227  Promise._setUnhandledRejectionFn = function _setUnhandledRejectionFn(fn) {
228    Promise._unhandledRejectionFn = fn;
229  };
230
231  if (typeof module !== 'undefined' && module.exports) {
232    module.exports = Promise;
233  } else if (!root.Promise) {
234    root.Promise = Promise;
235  }
236
237})(this);
238
239if (typeof Element !== "undefined") {
240
241  if (!Element.prototype.matches) {
242    Element.prototype.matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;
243  }
244
245  if (!Element.prototype.closest) {
246    Element.prototype.closest = function (s) {
247      var el = this;
248
249      do {
250        if (el.matches(s)) return el;
251        el = el.parentElement || el.parentNode;
252      } while (el !== null && el.nodeType === 1);
253
254      return null;
255    };
256  }
257}
258
259if ('NodeList' in window && !NodeList.prototype.forEach) {
260  console.info('polyfill for IE11');
261  NodeList.prototype.forEach = function (callback, thisArg) {
262    thisArg = thisArg || window;
263    for (var i = 0; i < this.length; i++) {
264      callback.call(thisArg, this[i], i, this);
265    }
266  };
267}
268
269function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
270function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
271function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() { }; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
272function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
273function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
274function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
275function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
276function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
277function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
278function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
279document.addEventListener("DOMContentLoaded", function () {
280
281  var darkblocks = document.querySelectorAll('[id^="bx_"] .dark');
282  if (darkblocks.length) {
283    darkblocks.forEach(function (el) {
284      el.parentElement.classList.add('dark');
285    });
286  }
287  var whiteBlocks = document.querySelectorAll('[id^="bx_"] > *:not(.dark)');
288  if (whiteBlocks.length) {
289    for (let i = 0; i < whiteBlocks.length; i++) {
290      whiteBlocks[i].parentElement.classList.add('whiteBlock');
291    }
292  }
293  var checkbox = document.getElementById('form__vacancy_checkbox_approval_1');
294  var link = document.getElementById('form__vacancy_link_approval_1');
295  if (checkbox && link) {
296    var e = checkbox.parentElement.parentElement;
297    var d = document.createElement('form');
298    d.classList = e.classList;
299    d.innerHTML = e.innerHTML;
300    var b = document.createElement('button');
301    b.setAttribute('type', 'submit');
302    b.hidden = true;
303    e.parentNode.replaceChild(d, e);
304    d.appendChild(b);
305    link.addEventListener('click', function () {
306      var checkbox = document.getElementById('form__vacancy_checkbox_approval_1');
307      if (!checkbox.checked) {
308        event.preventDefault();
309        b.click();
310      }
311    });
312    checkbox.addEventListener('invalid', function () {
313      b.click();
314    });
315  }
316  var mm = matchMedia("(max-width: 1024px)");
317  var sm = matchMedia("(max-width: 480px)");
318  var checkboxwithother = document.querySelector('.checkboxwithother');
319  if (checkboxwithother) {
320    checkboxwithother.addEventListener('change', function () {
321      this.parentElement.classList.toggle('otherinputcheckbox');
322    })
323  }
324  var tables = document.querySelectorAll('.crm-block table, story-block table');
325  if (tables.length) {
326    tables.forEach(function (table) {
327      // create wrapper container
328      var wrapper = document.createElement('div');
329      wrapper.classList.add('table-wrapper');
330
331      // insert wrapper before el in the DOM tree
332      table.parentNode.insertBefore(wrapper, table);
333
334      // move el into wrapper
335      wrapper.appendChild(table);
336    });
337  }
338  var height = window.innerHeight;
339  var width = window.innerWidth;
340  // document.documentElement.style.setProperty('--h', height + "px");
341  //document.documentElement.style.setProperty('--w', width + "px");
342  //el.style.setProperty("--r", right + "px");
343  //scrollLock.enablePageScroll(openedModal); отключить
344  enableScroll();
345  //scrollLock.disablePageScroll(mobMenu);
346
347  var header = document.querySelector(".header");
348
349  if (header) {
350    var headerH = header.getBoundingClientRect().height;
351    document.documentElement.style.setProperty('--headerH', headerH + "px");
352    if (window.document.documentMode) {
353      var probka = document.createElement('div');
354      probka.classList.add('probka');
355      probka.style.height = header.getBoundingClientRect().height + "px";
356      document.body.insertBefore(probka, header.nextElementSibling);
357      header.style.display = "fixed";
358    }
359  }
360  var stickyBlocks = document.querySelectorAll('.sticky');
361  var prevScroll = 0;
362  window.addEventListener('scroll', function (e) {
363    var currentScroll = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
364    if (currentScroll < 0) {
365      currentScroll = 0;
366    }
367    var delta = currentScroll - prevScroll;
368    if (delta > 0 && currentScroll > 80 && header && window.innerWidth > 1024) {
369      header.classList.add("hide-header");
370      if (window.document.documentMode) {
371        // Do IE stuff
372        header.classList.remove("hide-header");
373      }
374      header.classList.add("start");
375      if (stickyBlocks.length) {
376        stickyBlocks.forEach(function (el) {
377          el.style.setProperty('--headerH', '0px');
378        });
379      }
380    } else if (header && currentScroll > 80 && window.innerWidth > 1024) {
381      header.classList.remove("hide-header");
382      header.classList.add("start");
383      if (stickyBlocks.length) {
384        var _headerH = header.getBoundingClientRect().height;
385        stickyBlocks.forEach(function (el) {
386          if (_headerH) {
387            el.style.setProperty('--headerH', _headerH + "px");
388          }
389        });
390      }
391    } else if (header && currentScroll < 20 && window.innerWidth > 1024) {
392      header.classList.remove("hide-header");
393      header.classList.remove("start");
394    }
395    prevScroll = currentScroll;
396  });
397  var headerSearch = document.querySelectorAll(".header__search");
398  var headerSearchBtn = document.querySelectorAll(".btn__search-show");
399  var menubutton = document.querySelector('.menu-button');
400  if (mm.matches) {
401    var links = document.querySelectorAll('a.header__link,a.menu__item:not(.list),a.menu__title,a.submenu__title,a.submenu__link,a.header__anchor,a.header__nav_link,a.header__top-button');
402    if (links.length) {
403      links.forEach(function (el) {
404        el.addEventListener('click', function () {
405          if (menubutton) {
406            menubutton.click();
407          }
408        });
409      });
410    }
411  }
412  var bodyTag = document.querySelector("body");
413  if (headerSearchBtn) {
414    headerSearchBtn.forEach(function (btn) {
415      btn.onclick = function (e) {
416        e.preventDefault();
417        var parent = btn.closest('.header__mid');
418        if (parent) {
419          parent.classList.add('header__mid--active');
420        }
421        headerSearch.forEach(function (element) {
422          element.parentElement.style.position = 'static';
423          element.classList.add('active');
424        });
425        if (window.innerWidth <= 1024 && bodyTag.classList.contains("menu-open")) {
426          bodyTag.classList.remove("menu-open");
427          menubutton.classList.remove("menu-button--active");
428          headerBottom.style.display = "none";
429          setTimeout(function () {
430            headerBottom.classList.remove("show");
431          }, 100);
432          // scrollLock.enablePageScroll();
433          enableScroll();
434        }
435      };
436    });
437  }
438  var headerSearchClose = document.querySelectorAll(".header__search_close");
439  if (headerSearchClose.length > 0) {
440    headerSearchClose.forEach(function (headerSearchClose) {
441      headerSearchClose.onclick = function (e) {
442        e.preventDefault();
443        headerSearch.forEach(function (element) {
444          var parent = element.closest('.header__mid');
445          if (parent) {
446            parent.classList.remove('header__mid--active');
447          }
448          element.parentElement.style.position = null;
449          element.classList.remove('active');
450        });
451      };
452    });
453  }
454  var menuItems = document.querySelectorAll(".header__item");
455  var menuWrapper = document.querySelector(".menu-wrapper");
456  function closeMenuButton() {
457    var itemAct = document.querySelector(".header__item.active");
458    itemAct.classList.remove("active");
459    var attrPrev = itemAct.getAttribute("data-menu");
460    var itemMenu = document.querySelector(".".concat(attrPrev));
461    itemMenu.style.display = "none";
462    menuWrapper.classList.remove("show");
463    // scrollLock.enablePageScroll();
464    enableScroll();
465    document.body.classList.remove('overflow-hidden');
466    document.removeEventListener('click', closeMenuAll);
467    menuItems.forEach(function (item) {
468      item.removeEventListener('click', closeMenuButton);
469    });
470  }
471  function closeMenuAll() {
472    if (!event.target.closest('.menu-wrapper')) {
473      var targ = event.target;
474      var attr = targ.getAttribute("data-menu");
475      var parent = targ.closest(".menu-wrapper");
476      var itemAct = document.querySelector(".header__item.active");
477      var checkLink = targ.closest(".header__item.active");
478      if (!attr && !parent && !targ.classList.contains("menu-wrapper") && itemAct && itemAct != targ && !checkLink && !targ.classList.contains("header__menu")) {
479        itemAct.classList.remove("active");
480        var attrPrev = itemAct.getAttribute("data-menu");
481        var itemMenu = document.querySelector(".".concat(attrPrev));
482        itemMenu.style.display = "none";
483        menuWrapper.classList.remove("show");
484        // scrollLock.enablePageScroll();
485        enableScroll();
486        document.body.classList.remove('overflow-hidden');
487        document.removeEventListener('click', closeMenuAll);
488        menuItems.forEach(function (item) {
489          item.removeEventListener('click', closeMenuButton);
490        });
491        return;
492      }
493    }
494  }
495  if (menuItems && menuItems.length > 0) {
496    menuItems.forEach(function (item) {
497      var attr = item.getAttribute("data-menu");
498      if (attr) {
499        var itemMenu = document.querySelector(".".concat(attr));
500        item.onclick = function (e) {
501          if (mm.matches) {
502            e.preventDefault();
503          }
504        };
505        item.onclick = function (e) {
506          if (!item.classList.contains("active")) {
507            menuItems.forEach(function (item) {
508              item.removeEventListener('click', closeMenuButton);
509            });
510            if (!mm.matches) {
511              item.addEventListener('click', closeMenuButton);
512              document.addEventListener('click', closeMenuAll);
513              document.body.classList.add('overflow-hidden');
514            }
515            var prev = document.querySelector(".active.header__item");
516            if (prev && prev != item) {
517              prev.classList.remove("active");
518              var attrPrev = prev.getAttribute("data-menu");
519              var itemMenuPrev = document.querySelector(".".concat(attrPrev));
520              itemMenuPrev.style.display = "none";
521            }
522            item.classList.add("active");
523            itemMenu.style.display = "flex";
524            menuWrapper.classList.add("show");
525            disableScroll();
526          } else {
527            /*item.classList.remove("active");
528            itemMenu.style.display = "none";
529            menuWrapper.classList.remove("show");    */
530          }
531        };
532      }
533    });
534  }
535  var subMenuItems = document.querySelectorAll(".menu__item");
536  if (subMenuItems && subMenuItems.length > 0) {
537
538    if ('addEventListener' in sm) {
539      sm.addEventListener('change', function () {
540        if (sm.matches) {
541          var menuActive = document.querySelector(".menu__item.active");
542          if (menuActive) {
543            subMenuItems.forEach(function (itemRest) {
544              itemRest.classList.add("hide");
545            });
546          }
547        } else {
548          subMenuItems.forEach(function (itemRest) {
549            itemRest.classList.remove("hide");
550          });
551        }
552      });
553    }
554
555
556    subMenuItems.forEach(function (item) {
557      if (window.innerWidth <= 480) {
558        item.classList.remove("active");
559      }
560      var parent = item.closest(".menu");
561      item.onclick = function (e) {
562        if (!item.classList.contains("active")) {
563          var prev = parent.querySelector(".menu__item.active");
564          if (prev) {
565            prev.classList.remove("active");
566          }
567          item.classList.add("active");
568          /*let submenu = item.querySelector(".submenu");
569          let toBottom = window.innerHeight - item.getBoundingClientRect().bottom;
570          let h = submenu.getBoundingClientRect().height;
571          if(h >= toBottom) {
572              submenu.style.cssText = `top: -${h >= toBottom}px`;
573          }*/
574          if (!item.classList.contains('list')) {
575            return;
576          }
577          if (window.innerWidth <= 480 && !item.classList.contains("empty")) {
578            subMenuItems.forEach(function (itemRest) {
579              itemRest.classList.add("hide");
580            });
581          }
582        } else {
583          if (window.innerWidth <= 480) {
584            item.classList.remove("active");
585            subMenuItems.forEach(function (itemRest) {
586              itemRest.classList.remove("hide");
587            });
588          }
589        }
590      };
591    });
592  }
593  var menuLink = document.querySelectorAll('.menu__link');
594  if (menuLink.length) {
595    menuLink.forEach(function (el) {
596      el.addEventListener('click', function () {
597        if (mm.matches && this.parentElement.classList.contains('list')) {
598          event.preventDefault();
599        } else { }
600      });
601    });
602  }
603  var headerBottom = document.querySelector(".header__bottom");
604  if (menubutton && menuWrapper) {
605    menubutton.addEventListener('click', function () {
606      menubutton.classList.toggle('menu-button--active');
607      if (!headerBottom.classList.contains("show")) {
608        bodyTag.classList.add("menu-open");
609        headerBottom.style.display = "block";
610        setTimeout(function () {
611          headerBottom.classList.add("show");
612        }, 10);
613        disableScroll();
614        // scrollLock.disablePageScroll();
615        // scrollLock.addScrollableSelector('.header__bottom');
616        // scrollLock.addScrollableSelector('.header__menu');
617        // scrollLock.addScrollableSelector('.menu');
618      } else {
619        var active = document.querySelector(".header__item.active");
620        if (active) {
621          active.classList.remove("active");
622        }
623        var prev = document.querySelectorAll(".menu__item.active");
624        if (prev) {
625          prev.forEach(function (prev) {
626            prev.classList.remove("active");
627          });
628        }
629        var menus = document.querySelectorAll(".menu");
630        if (menus.length) {
631          menus.forEach(function (el) {
632            return el.style.display = null;
633          });
634        }
635        var subMenus = document.querySelectorAll(".menu__item.hide");
636        if (subMenus) {
637          subMenus.forEach(function (itemRest) {
638            itemRest.classList.remove("hide");
639          });
640        }
641        menuWrapper.classList.remove("show");
642        bodyTag.classList.remove("menu-open");
643        headerBottom.style.display = "none";
644        setTimeout(function () {
645          headerBottom.classList.remove("show");
646        }, 10);
647        // scrollLock.enablePageScroll();
648        enableScroll();
649      }
650    });
651  }
652
653  if ('addEventListener' in mm) {
654    mm.addEventListener('change', function () {
655      if (!mm.matches) {
656        headerBottom.style.display = "block";
657      }
658      if (mm.matches) { }
659      header.classList.remove('start');
660      header.classList.remove('hide-header');
661    });
662  }
663
664
665  var tabs = document.querySelectorAll('.tab-label');
666  var navList = document.querySelectorAll('.main-nav__list-item');
667  var backButton = document.querySelector('.back-panel');
668  var menuSecond = document.querySelector('.menu-second');
669  var innnerDiv = document.querySelector('#inner-menu');
670  var menu = document.querySelectorAll(".menu");
671  if (backButton) {
672    backButton.onclick = function (e) {
673      e.preventDefault();
674      var act = document.querySelector(".menu__item.active");
675      if (act) {
676        act.classList.remove("active");
677        if (window.innerWidth <= 480) {
678          subMenuItems.forEach(function (itemRest) {
679            itemRest.classList.remove("hide");
680          });
681          return;
682        }
683      }
684      menuWrapper.classList.remove("show");
685      var act2 = document.querySelector(".header__item.active");
686      if (act2) {
687        menu.forEach(function (menu) {
688          menu.style.display = "none";
689        });
690        act2.classList.remove("active");
691      }
692    };
693  }
694  var tabAccItems = document.querySelectorAll('.tab-accord__list-item');
695  if (tabAccItems.length) {
696    tabAccItems.forEach(function (tab) {
697      tab.addEventListener('click', function () {
698        tabAccItems.forEach(function (el) {
699          el.classList.add('not-active');
700          el.classList.remove('active');
701        });
702        this.classList.remove('not-active');
703        this.classList.toggle('active');
704        var subMenu = this.querySelector('.main-nav__submenu');
705        var mainButton = this.closest('.main-nav__list-item');
706        if (mainButton) {
707          var but = mainButton.querySelector('.tab-label--active');
708          if (but) {
709            but.classList.add('tab-label--hidden');
710          }
711        }
712        if (subMenu && innnerDiv) {
713          innnerDiv.innerHTML = subMenu.innerHTML;
714        } else {
715          innnerDiv.innerHTML = '';
716        }
717      });
718    });
719  }
720  function hideaftertransition() {
721    this.hidden = true;
722    this.removeEventListener('transitionend', hideaftertransition);
723  }
724  var searchInp = document.querySelectorAll(".input__search");
725  if (searchInp.length > 0) {
726    searchInp.forEach(function (searchInp) {
727      searchInp.oninput = function (e) {
728        var parent = searchInp.closest(".header__search");
729        var btnSearch = parent.querySelector(".btn__search");
730        if (searchInp.value && btnSearch.classList.contains("disabled")) {
731          btnSearch.classList.remove("disabled");
732          btnSearch.removeAttribute("disabled");
733        }
734        if (!searchInp.value && !btnSearch.classList.contains("disabled")) {
735          btnSearch.classList.add("disabled");
736          btnSearch.setAttribute("disabled", "disabled");
737        }
738      };
739    });
740  }
741  var selectSingle = document.querySelectorAll('.__select');
742  function selectFunc() {
743    if (selectSingle) {
744      selectSingle.forEach(function (selectSingle) {
745        var selectSingle_title = selectSingle.querySelector('.__select__title');
746        var selectSingle_labels = selectSingle.querySelectorAll('.__select__label');
747        selectSingle_title.onclick = function (e) {
748          e.preventDefault();
749          var currentParent = selectSingle_title.closest(".__select");
750          var prev = document.querySelector("[data-state=\"active\"]");
751          document.body.classList.add('select-open');
752          var prevParent;
753          if (prev) {
754            prevParent = prev.closest(".__select");
755          }
756          if (prev && prevParent && prevParent != currentParent) {
757            prev.setAttribute('data-state', '');
758            document.body.classList.remove('select-open');
759            enableScroll();
760          }
761          if ('active' === selectSingle.getAttribute('data-state')) {
762            selectSingle.setAttribute('data-state', '');
763            document.body.classList.remove('select-open');
764            enableScroll();
765          } else {
766            selectSingle.setAttribute('data-state', 'active');
767            document.body.classList.add('select-open');
768            disableScroll();
769          }
770        };
771        for (var _i = 0; _i < selectSingle_labels.length; _i++) {
772          selectSingle_labels[_i].addEventListener('click', function (evt) {
773            if (!selectSingle_title.classList.contains("chosen")) {
774              selectSingle_title.classList.add("chosen");
775            }
776            selectSingle_title.innerHTML = evt.currentTarget.innerHTML;
777            enableScroll();
778            selectSingle.setAttribute('data-state', '');
779            document.body.classList.remove('select-open');
780            var forEl = evt.currentTarget.getAttribute('for');
781            if (forEl) {
782              if (getCookie('city') === forEl) {
783                return;
784              } else {
785                setCookie('city', forEl, {
786                  expires: getOneYearFromNow()
787                });
788                location.reload();
789              }
790            }
791          });
792        }
793      });
794    }
795  }
796  selectFunc();
797  function changeLocationOnCookie() {
798    var locationInput = getCookie('city');
799    if (locationInput) {
800      var selects = document.querySelectorAll(".__select__label[for=\"".concat(locationInput, "\"]"));
801      if (selects.length) {
802        selects.forEach(function (el) {
803          el.click();
804        });
805      }
806    } else {
807      var label = document.querySelector('.__select__label[for="23751"]');
808      // var label = document.querySelector(".__select__label[for]");
809      if (label) {
810        setCookie('city', label.getAttribute('for'), {
811          expires: getOneYearFromNow()
812        });
813      }
814    }
815  }
816  changeLocationOnCookie();
817  bodyTag.onclick = function (e) {
818    var openedSelect = document.querySelector("[data-state=\"active\"]");
819    var parent = e.target.closest(".__select");
820    if (openedSelect && !parent) {
821      openedSelect.setAttribute('data-state', '');
822      enableScroll();
823    }
824  };
825  document.addEventListener('mousedown', function () {
826    if (event.which === 2) {
827      event.preventDefault();
828      return;
829    }
830    if (event.button === 1) {
831      event.preventDefault();
832    }
833  });
834  function initSmallSwiper() {
835    var init = false;
836    var swiper;
837    function swiperCard() {
838      if (window.innerWidth <= 1024) {
839        if (!init) {
840          init = true;
841          swiper = new Swiper(".accordion-partners-swiper", {
842            slidesPerView: "auto",
843          });
844        }
845      } else if (init) {
846        swiper.destroy();
847        init = false;
848      }
849    }
850    swiperCard();
851    window.addEventListener("resize", swiperCard);
852  }
853  initSmallSwiper()
854  var partnersSwiper = document.querySelectorAll('.partners-swiper');
855  if (partnersSwiper.length) {
856    partnersSwiper.forEach(swiper => {
857      var prev = swiper.querySelector(".swiper-button-prev");
858      var next = swiper.querySelector(".swiper-button-next");
859      new Swiper(swiper, {
860        slidesPerView: 'auto',
861        navigation: {
862          nextEl: next,
863          prevEl: prev,
864        }
865      })
866    })
867  }
868  var servCont = document.querySelectorAll(".services__container");
869  if (servCont.length > 0) {
870    servCont.forEach(function (slider) {
871      var prev = slider.querySelector(".swiper-button-prev");
872      var next = slider.querySelector(".swiper-button-next");
873      new Swiper(slider, {
874        navigation: {
875          nextEl: next,
876          prevEl: prev
877        },
878        slidesPerView: 4,
879        watchOverflow: true,
880        spaceBetween: 0,
881        loop: false,
882        breakpoints: {
883          300: {
884            slidesPerView: "auto"
885          },
886          1025: {
887            slidesPerView: 4,
888            spaceBetween: 0
889          },
890          1516: {
891            slidesPerView: 6,
892            spaceBetween: 0
893          }
894        }
895      });
896    });
897  }
898  var servCont2 = document.querySelectorAll(".services__container2");
899  if (servCont2.length > 0) {
900    servCont2.forEach(slider => {
901      var prev = slider.querySelector(".swiper-button-prev");
902      var next = slider.querySelector(".swiper-button-next");
903
904      new Swiper(slider, {
905        navigation: {
906          nextEl: next,
907          prevEl: prev
908        },
909        slidesPerView: 'auto'
910      });
911    });
912  }
913  var maxhbuttons = document.querySelectorAll('.partners-maxh-btn');
914
915  if (maxhbuttons.length) {
916    maxhbuttons.forEach(el => {
917      el.onclick = function () {
918        this.classList.toggle('active')
919      }
920    })
921  }
922  var helpCont = document.querySelectorAll(".help__container");
923  if (helpCont.length > 0) {
924    new Swiper(".help__container", {
925      navigation: {
926        nextEl: ".help__container .swiper-button-next",
927        prevEl: ".help__container .swiper-button-prev"
928      },
929      slidesPerView: 6,
930      watchOverflow: true,
931      spaceBetween: 40,
932      loop: false,
933      breakpoints: _defineProperty({
934        300: {
935          slidesPerView: 2.5,
936          spaceBetween: 20
937        },
938        1025: {
939          slidesPerView: 6,
940          spaceBetween: 40
941        }
942      }, "1025", {
943        slidesPerView: 6
944      })
945    });
946  }
947    var helpCont = document.querySelectorAll(".spec");
948  if (helpCont.length > 0) {
949    new Swiper(".spec", {
950      navigation: {
951        nextEl: ".spec .swiper-button-next",
952        prevEl: ".spec .swiper-button-prev"
953      },
954      slidesPerView: 4,
955      watchOverflow: true,
956      spaceBetween: 40,
957      loop: false,
958      breakpoints: _defineProperty({
959        300: {
960            slidesPerView: 1,
961            spaceBetween: 20
962          },
963          1025: {
964            slidesPerView: 3,
965            spaceBetween: 40
966          },
967          1516: {
968            slidesPerView: 5,
969            spaceBetween: 40
970          }
971      })
972    });
973  }
974  var solveCont = document.querySelectorAll(".solve__container");
975  if (solveCont.length > 0) {
976    solveCont.forEach(function (slider) {
977      var prev = slider.querySelector(".swiper-button-prev");
978      var next = slider.querySelector(".swiper-button-next");
979      new Swiper(slider, {
980        navigation: {
981          nextEl: next,
982          prevEl: prev
983        },
984        slidesPerView: 4,
985        watchOverflow: true,
986        spaceBetween: 40,
987        freeMode: "false",
988        loop: false,
989        // loop: true,
990        breakpoints: {
991          300: {
992            slidesPerView: "auto",
993            spaceBetween: 20
994          },
995          1025: {
996            slidesPerView: 2,
997            spaceBetween: 40
998          },
999          1516: {
1000            slidesPerView: 3,
1001            spaceBetween: 40
1002          },
1003          1921: {
1004            slidesPerView: 4
1005          }
1006        }
1007      });
1008    });
1009  }
1010  var solveStoryCont = document.querySelectorAll(".solve-story__container");
1011  if (solveStoryCont.length > 0) {
1012    solveStoryCont.forEach(function (slider) {
1013      var prev = slider.querySelector(".swiper-button-prev");
1014      var next = slider.querySelector(".swiper-button-next");
1015      new Swiper(slider, {
1016        navigation: {
1017          nextEl: next,
1018          prevEl: prev
1019        },
1020        slidesPerView: 4,
1021        watchOverflow: true,
1022        spaceBetween: 40,
1023        freeMode: "false",
1024        loop: false,
1025        breakpoints: {
1026          300: {
1027            slidesPerView: "auto",
1028            spaceBetween: 20
1029          },
1030          1025: {
1031            slidesPerView: 2,
1032            spaceBetween: 40
1033          },
1034          1516: {
1035            slidesPerView: 3,
1036            spaceBetween: 40
1037          },
1038          1921: {
1039            slidesPerView: 3
1040          }
1041        }
1042      });
1043    });
1044  }
1045  var solveContStory = document.querySelectorAll(".solve-p__container");
1046  if (solveContStory.length > 0) {
1047    solveContStory.forEach(function (slider) {
1048      var prev = slider.querySelector(".swiper-button-prev");
1049      var next = slider.querySelector(".swiper-button-next");
1050      new Swiper(slider, {
1051        navigation: {
1052          nextEl: next,
1053          prevEl: prev
1054        },
1055        slidesPerView: 2,
1056        watchOverflow: true,
1057        spaceBetween: 40,
1058        freeMode: "false",
1059        loop: false,
1060        breakpoints: {
1061          300: {
1062            slidesPerView: "auto",
1063            spaceBetween: 20
1064          },
1065          1025: {
1066            slidesPerView: 2,
1067            spaceBetween: 40
1068          },
1069          1516: {
1070            slidesPerView: 2,
1071            spaceBetween: 40
1072          },
1073          1921: {
1074            slidesPerView: 2
1075          }
1076        }
1077      });
1078    });
1079  }
1080  var projectsSlider = document.querySelectorAll(".projects__slider");
1081  if (projectsSlider.length > 0) {
1082    projectsSlider.forEach(function (slider) {
1083      var prev = slider.querySelector(".swiper-button-prev");
1084      var next = slider.querySelector(".swiper-button-next");
1085      new Swiper(slider, {
1086        navigation: {
1087          nextEl: next,
1088          prevEl: prev
1089        },
1090        slidesPerView: "auto",
1091        watchOverflow: true,
1092        spaceBetween: 40,
1093        loop: false,
1094        breakpoints: _defineProperty({
1095          300: {
1096            spaceBetween: 20
1097          },
1098          1025: {
1099            spaceBetween: 40
1100          }
1101        }, "1025", {
1102          spaceBetween: 40
1103        })
1104      });
1105    });
1106  }
1107  var storiesSlider = document.querySelectorAll(".stories-slider");
1108  if (storiesSlider.length > 0) {
1109    storiesSlider.forEach(function (slider) {
1110      var prev = slider.querySelector(".swiper-button-prev");
1111      var next = slider.querySelector(".swiper-button-next");
1112      new Swiper(slider, {
1113        navigation: {
1114          nextEl: next,
1115          prevEl: prev
1116        },
1117        slidesPerView: 2,
1118        watchOverflow: true,
1119        spaceBetween: 40,
1120        loop: false,
1121        breakpoints: _defineProperty({
1122          300: {
1123            spaceBetween: 20,
1124            slidesPerView: 1.1
1125          },
1126          481: {
1127            slidesPerView: 1.35,
1128            spaceBetween: 20
1129          },
1130          1025: {
1131            slidesPerView: 2,
1132            spaceBetween: 40
1133          }
1134        }, "1025", {
1135          spaceBetween: 40
1136        })
1137      });
1138    });
1139  }
1140  var storiesSliderNew = document.querySelectorAll(".stories-slider-new");
1141  if (storiesSliderNew.length > 0) {
1142    storiesSliderNew.forEach(function (slider) {
1143      var prev = slider.querySelector(".swiper-button-prev");
1144      var next = slider.querySelector(".swiper-button-next");
1145      new Swiper(slider, {
1146        navigation: {
1147          nextEl: next,
1148          prevEl: prev
1149        },
1150        slidesPerView: 6,
1151        watchOverflow: true,
1152        spaceBetween: 40,
1153        loop: false,
1154        breakpoints: _defineProperty({
1155          300: {
1156            spaceBetween: 20,
1157            slidesPerView: 1.7
1158          },
1159          481: {
1160            slidesPerView: 3.5,
1161            spaceBetween: 20
1162          },
1163          1025: {
1164            slidesPerView: 6,
1165            spaceBetween: 40
1166          }
1167        }, "1025", {
1168          spaceBetween: 40
1169        })
1170      });
1171    });
1172  }
1173  var featuresSlider = document.querySelectorAll(".features__slider");
1174  if (featuresSlider.length > 0) {
1175    featuresSlider.forEach(function (slider) {
1176      var prev = slider.querySelector(".swiper-button-prev");
1177      var next = slider.querySelector(".swiper-button-next");
1178      new Swiper(slider, {
1179        navigation: {
1180          nextEl: next,
1181          prevEl: prev
1182        },
1183        slidesPerView: 3,
1184        watchOverflow: true,
1185        spaceBetween: 40,
1186        loop: false,
1187        breakpoints: _defineProperty({
1188          300: {
1189            spaceBetween: 20,
1190            slidesPerView: 1.1
1191          },
1192          481: {
1193            slidesPerView: 2,
1194            spaceBetween: 20
1195          },
1196          1025: {
1197            slidesPerView: 2,
1198            spaceBetween: 40
1199          }
1200        }, "1025", {
1201          slidesPerView: 3,
1202          spaceBetween: 40
1203        })
1204      });
1205    });
1206  }
1207  var gallerySlider = document.querySelectorAll(".gallery-slider");
1208  if (gallerySlider.length > 0) {
1209    gallerySlider.forEach(function (slider) {
1210      var prev = slider.querySelector(".swiper-button-prev");
1211      var next = slider.querySelector(".swiper-button-next");
1212      new Swiper(slider, {
1213        navigation: {
1214          nextEl: next,
1215          prevEl: prev
1216        },
1217        slidesPerView: 4,
1218        watchOverflow: true,
1219        spaceBetween: 40,
1220        loop: false,
1221        breakpoints: {
1222          300: {
1223            spaceBetween: 20,
1224            slidesPerView: 1.1
1225          },
1226          481: {
1227            slidesPerView: 1.3,
1228            spaceBetween: 20
1229          },
1230          1025: {
1231            slidesPerView: 2,
1232            spaceBetween: 40
1233          },
1234          1516: {
1235            slidesPerView: 3,
1236            spaceBetween: 40
1237          },
1238          1921: {
1239            slidesPerView: 4,
1240            spaceBetween: 40
1241          }
1242        }
1243      });
1244    });
1245  }
1246  var solveCustomers = document.querySelectorAll(".customer__container");
1247  if (solveCustomers.length > 0) {
1248    solveCustomers.forEach(function (slider) {
1249      var btnPrev = slider.querySelector(".swiper-button-prev");
1250      var btnNext = slider.querySelector(".swiper-button-next");
1251      var swiper = new Swiper(slider, {
1252        navigation: {
1253          nextEl: btnNext,
1254          prevEl: btnPrev
1255        },
1256        slidesPerView: 3,
1257        watchOverflow: true,
1258        spaceBetween: 40,
1259        freeMode: "false",
1260        loop: false,
1261        breakpoints: {
1262          300: {
1263            slidesPerView: "auto",
1264            spaceBetween: 20
1265          },
1266          1025: {
1267            slidesPerView: 2,
1268            spaceBetween: 40
1269          },
1270          1516: {
1271            slidesPerView: 2,
1272            spaceBetween: 40
1273          },
1274          1921: {
1275            slidesPerView: 3
1276          }
1277        }
1278      });
1279    });
1280  }
1281  var newsCont = document.querySelectorAll(".news__container");
1282  if (newsCont.length > 0) {
1283    newsCont.forEach(function (slider) {
1284      var prev = slider.querySelector(".swiper-button-prev");
1285      var next = slider.querySelector(".swiper-button-next");
1286      new Swiper(slider, {
1287        navigation: {
1288          nextEl: next,
1289          prevEl: prev
1290        },
1291        slidesPerView: "auto",
1292        watchOverflow: true,
1293        spaceBetween: 40,
1294        loop: false,
1295        breakpoints: _defineProperty({
1296          300: {
1297            spaceBetween: 20
1298          },
1299          1025: {
1300            spaceBetween: 40
1301          }
1302        }, "1025", {
1303          spaceBetween: 40
1304        })
1305      });
1306    });
1307  }
1308  var newsSliser = document.querySelector(".news-page__swiper");
1309  if (newsSliser) {
1310    var prev = newsSliser.querySelector(".swiper-button-prev");
1311    var next = newsSliser.querySelector(".swiper-button-next");
1312    new Swiper(newsSliser, {
1313      navigation: {
1314        nextEl: next,
1315        prevEl: prev
1316      },
1317      slidesPerView: "auto",
1318      watchOverflow: true,
1319      spaceBetween: 40,
1320      loop: false,
1321      breakpoints: _defineProperty({
1322        300: {
1323          spaceBetween: 20
1324        },
1325        1025: {
1326          spaceBetween: 40
1327        }
1328      }, "1025", {
1329        spaceBetween: 40
1330      })
1331    });
1332  }
1333
1334  // const customPagination = document.querySelector('.swiper-pagination-custom__inner')
1335  var timelineSwiper = new Swiper(".timeline__swiper", {
1336    autoHeight: false,
1337    autoplay: {
1338      delay: 7000,
1339      disableOnInteraction: false
1340    },
1341    speed: 500,
1342    direction: "horizontal",
1343    navigation: {
1344      nextEl: ".timeline .swiper-button-next",
1345      prevEl: ".timeline .swiper-button-prev"
1346    },
1347    slidesPerView: 'auto',
1348    pagination: {
1349      el: ".swiper-pagination",
1350      type: "custom",
1351      watchSlidesProgress: true,
1352      watchSlidesVisibility: true,
1353      renderCustom: function renderCustom(_, cur, list) {
1354        var elcustom = document.querySelector('.progressbar__inner');
1355        var num = cur / list;
1356        if (elcustom) {
1357          elcustom.style.setProperty('transform', "scaleX(".concat(num, ")"));
1358        }
1359      }
1360    },
1361    loop: true,
1362    effect: "slide"
1363  });
1364  var timeSwiper = new Swiper(".timeline__swiper-2", {
1365    slidesPerView: 'auto',
1366    speed: 500,
1367    direction: "horizontal",
1368    loop: true,
1369    effect: "slide",
1370    spaceBetween: 40,
1371    navigation: {
1372      nextEl: '.swiper-button-next',
1373      prevEl: '.swiper-button-prev'
1374    },
1375    pagination: {
1376      el: '.swiper-pagination',
1377      clickable: true
1378    }
1379  });
1380  timelineSwiper.controller.control = timeSwiper;
1381  var swiperNew = new Swiper('.mission__swiper', {
1382    direction: 'vertical',
1383    slidesPerView: 1,
1384    spaceBetween: 30,
1385    mousewheel: true,
1386    pagination: {
1387      el: '.swiper-pagination',
1388      clickable: true
1389    }
1390  });
1391  var init = false;
1392  var swiper;
1393  var slider = document.querySelector(".partners__mobSlider");
1394  function initSlider() {
1395    if (width <= 1024 && !init && slider) {
1396      swiper = new Swiper(".partners__mobSlider", {
1397        loop: false,
1398        slidesPerView: 2.1,
1399        spaceBetween: 40,
1400        freeMode: true,
1401        autoHeight: false,
1402        watchOverflow: true,
1403        grid: {
1404          rows: 2,
1405          fill: "row"
1406        },
1407        initialSlide: 1,
1408        breakpoints: {
1409          // when window width is >= 320px
1410          481: {
1411            slidesPerView: 3.8,
1412            spaceBetween: 40
1413          }
1414        }
1415      });
1416      init = true;
1417    }
1418    if (init && width > 1024) {
1419      init = false;
1420      swiper.destroy();
1421    }
1422  }
1423  initSlider();
1424  var initStoryRange = false;
1425  var swiperStoryRange;
1426  var sliderStoryRange = document.querySelector(".range-slider");
1427  function initSliderStoryRange() {
1428    if (width <= 480 && !initStoryRange && sliderStoryRange) {
1429      swiperStoryRange = new Swiper(".range-slider", {
1430        loop: false,
1431        slidesPerView: 1.1,
1432        spaceBetween: 20,
1433        freeMode: true,
1434        autoHeight: false,
1435        watchOverflow: true,
1436        initialSlide: 0
1437      });
1438      initStoryRange = true;
1439    }
1440    if (initStoryRange && width > 480) {
1441      initStoryRange = false;
1442      swiperStoryRange.destroy();
1443    }
1444  }
1445  initSliderStoryRange();
1446  var initSuggestion = false;
1447  var swiperSuggestion;
1448  var sliderSuggestion = document.querySelector(".suggestion-slider");
1449  function initSliderSuggestion() {
1450    if (width <= 1024 && !initSuggestion && sliderSuggestion) {
1451      swiperSuggestion = new Swiper(".suggestion-slider", {
1452        loop: false,
1453        navigation: {
1454          nextEl: ".suggestion-slider .swiper-button-next",
1455          prevEl: ".suggestion-slider .swiper-button-prev"
1456        },
1457        slidesPerView: 1,
1458        spaceBetween: 20,
1459        freeMode: false,
1460        autoHeight: true,
1461        watchOverflow: true,
1462        initialSlide: 0
1463      });
1464      initSuggestion = true;
1465    }
1466    if (initSuggestion && width > 1024) {
1467      initSuggestion = false;
1468      swiperSuggestion.destroy();
1469    }
1470  }
1471  initSliderSuggestion();
1472
1473  function initKgt() {
1474    const textBtn = document.querySelectorAll('.kgt-text-btn');
1475    if (textBtn.length) {
1476      textBtn.forEach(el => {
1477        el.addEventListener('click', function () {
1478          this.classList.toggle('open');
1479        })
1480      })
1481    }
1482    
1483    const kgtTab = document.querySelectorAll('.accordion-tab-wrapper');
1484    
1485    if (kgtTab.length) {
1486      kgtTab.forEach((el, index) => {
1487        const content = el.querySelector('.accordion-tab-content');
1488        if (content) {
1489          const buttons = el.querySelectorAll('.accordion-tab-btn');
1490    
1491          if (buttons.length) {
1492            buttons.forEach((btn, i) => {
1493              btn.dataset.id = index + '' + i;
1494              btn.addEventListener('click', function () {
1495                const next = this.nextElementSibling;
1496                if (next) {
1497                  if (content.dataset.foreign !== undefined) {
1498                    const button = document.querySelector(`.accordion-tab-btn[data-id="${content.dataset.foreign}"]`);
1499                    if (button) {
1500                      const foreignNext = button.nextElementSibling;
1501                      if (foreignNext) {
1502                        foreignNext.append(...content.children)
1503                      }
1504                    }
1505                  }
1506                  content.dataset.foreign = this.dataset.id;
1507    
1508                  content.append(...next.children)
1509    
1510                  buttons.forEach(button => {
1511                    button.classList.remove('active');
1512                  })
1513                  this.classList.add('active');
1514    
1515                }
1516              })
1517            })
1518          }
1519    
1520          buttons[0].click()
1521        }
1522      })
1523    }
1524  }
1525  
1526  initKgt()
1527
1528  var results = document.querySelectorAll(".search-result");
1529  var showMoreBtn = document.querySelector(".search__show-more");
1530  if (results && results.length > 0 && showMoreBtn) {
1531    hideResults(results);
1532  }
1533  function hideResults(results) {
1534    showMoreBtn.classList.add("hide");
1535    for (var _i2 = 0; _i2 < results.length; _i2++) {
1536      if (_i2 >= 6) {
1537        results[_i2].classList.add("hide");
1538        showMoreBtn.classList.remove("hide");
1539      }
1540    }
1541  }
1542  function changeResults(item) {
1543    var attr = item.getAttribute("data-item");
1544    var elems;
1545    if (attr != "all") {
1546      elems = document.querySelectorAll(".".concat(attr));
1547      results.forEach(function (result) {
1548        if (!result.classList.contains("".concat(attr))) {
1549          result.classList.add("hide");
1550        } else {
1551          result.classList.remove("hide");
1552        }
1553      });
1554    } else {
1555      elems = results;
1556      results.forEach(function (result) {
1557        result.classList.remove("hide");
1558      });
1559    }
1560    hideResults(elems);
1561  }
1562  var itemsSearch = document.querySelectorAll(".search-aside__item");
1563  var itemShowAll = document.querySelector(".search-aside__item[data-item='all']");
1564  if (itemsSearch && itemsSearch.length > 0) {
1565    var title = document.querySelector(".search__title");
1566    var num = document.querySelector(".search__title_num");
1567    itemsSearch.forEach(function (item) {
1568      item.onclick = function (e) {
1569        e.preventDefault();
1570        if (!item.classList.contains("active")) {
1571          var itemTitle = item.querySelector(".search-aside__title");
1572          var itemNum = item.querySelector(".search-aside__num");
1573          var prevActive = document.querySelector(".active.search-aside__item");
1574          prevActive.classList.remove("active");
1575          item.classList.add("active");
1576          title.innerHTML = itemTitle.innerHTML;
1577          num.innerHTML = itemNum.innerHTML;
1578          changeResults(item);
1579        } else {
1580          if (e.target.classList.contains("search-aside__item_close")) {
1581            var attr = item.getAttribute("data-item");
1582            if (attr != "all") {
1583              item.classList.remove("active");
1584              itemShowAll.classList.add("active");
1585              var _itemTitle = itemShowAll.querySelector(".search-aside__title");
1586              var _itemNum = itemShowAll.querySelector(".search-aside__num");
1587              title.innerHTML = _itemTitle.innerHTML;
1588              num.innerHTML = _itemNum.innerHTML;
1589            }
1590            changeResults(itemShowAll);
1591          }
1592        }
1593      };
1594    });
1595  }
1596  var catalogList = document.querySelectorAll(".catalog-sidebar__item.side-list__item input");
1597  if (catalogList && catalogList.length > 0) {
1598    catalogList.forEach(function (item) {
1599      var parent = item.closest("ul");
1600      var elem = item.closest(".catalog-sidebar__item");
1601      item.onchange = function (e) {
1602        if (!elem.classList.contains("active")) {
1603          var prevActive = parent.querySelector(".active.catalog-sidebar__item");
1604          if (prevActive) {
1605            prevActive.classList.remove("active");
1606          }
1607          elem.classList.add("active");
1608        }
1609      };
1610    });
1611  }
1612  var siteMapsTrigger = document.querySelectorAll(".site-map__category_name.trigger");
1613  if (siteMapsTrigger.length > 0) {
1614    siteMapsTrigger.forEach(function (trigger) {
1615      var parent = trigger.closest(".site-map__wrap");
1616      var block = parent.querySelector(".site-map__category");
1617      trigger.onclick = function (e) {
1618        e.preventDefault();
1619        parent.classList.toggle("active");
1620        block.style.cssText = "--elH: ".concat(block.scrollHeight, "px");
1621      };
1622    });
1623  }
1624  var catalogClose = document.querySelectorAll(".catalog-sidebar__item .search-aside__item_close");
1625  if (catalogClose.length > 0) {
1626    catalogClose.forEach(function (close) {
1627      var elem = close.closest(".catalog-sidebar__item");
1628      var inp = elem.querySelector("input");
1629      close.onclick = function (e) {
1630        if (elem.classList.contains("active")) {
1631          elem.classList.remove("active");
1632          inp.setAttribute('checked', 'false');
1633          inp.checked = false;
1634          if (typeof smartFilter !== 'undefined') {
1635            smartFilter.click(inp);
1636          }
1637        }
1638      };
1639    });
1640  }
1641  var filterMobBtn = document.querySelector(".filters__mobile");
1642  var catalogSide = document.querySelector(".catalog-sidebar");
1643  if (filterMobBtn) {
1644    filterMobBtn.onclick = function (e) {
1645      e.preventDefault();
1646      showNow(catalogSide);
1647    };
1648  }
1649  if (showMoreBtn) {
1650    showMoreBtn.onclick = function (e) {
1651      e.preventDefault();
1652      var activeItem = document.querySelector(".active.search-aside__item");
1653      var attr = activeItem.getAttribute("data-item");
1654      if (attr != "all") {
1655        var hiddenElems = document.querySelectorAll(".search-result.".concat(attr, ".hide"));
1656        for (var _i3 = 0; _i3 < hiddenElems.length; _i3++) {
1657          if (_i3 < 6) {
1658            hiddenElems[_i3].classList.remove("hide");
1659          }
1660          if (hiddenElems.length < 6) {
1661            showMoreBtn.classList.add("hide");
1662          }
1663        }
1664      } else {
1665        var _hiddenElems = document.querySelectorAll(".search-result.hide");
1666        for (var _i4 = 0; _i4 < _hiddenElems.length; _i4++) {
1667          if (_i4 < 6) {
1668            _hiddenElems[_i4].classList.remove("hide");
1669          }
1670          if (_hiddenElems.length <= 6) {
1671            showMoreBtn.classList.add("hide");
1672          }
1673        }
1674      }
1675    };
1676  }
1677  var changeGrid = function changeGrid() {
1678    var target = event.target;
1679    var btnGrid = target.closest(".catalog__btn-grid");
1680    var btnList = target.closest(".catalog__btn-list");
1681    if (btnGrid) {
1682      event.preventDefault();
1683      var _btnList = document.querySelector(".catalog__btn-list");
1684      if (_btnList) {
1685        _btnList.classList.remove("active");
1686        btnGrid.classList.add("active");
1687        var catalogWrap = document.querySelector(".catalog__services");
1688        if (catalogWrap) {
1689          catalogWrap.setAttribute("data-type", "grid");
1690        }
1691      }
1692    }
1693    if (btnList) {
1694      event.preventDefault();
1695      var _btnGrid = document.querySelector(".catalog__btn-grid");
1696      if (_btnGrid) {
1697        _btnGrid.classList.remove("active");
1698        btnList.classList.add("active");
1699        var _catalogWrap = document.querySelector(".catalog__services");
1700        if (_catalogWrap) {
1701          _catalogWrap.setAttribute("data-type", "list");
1702        }
1703      }
1704    }
1705  };
1706  document.addEventListener('click', changeGrid);
1707  var filters = document.querySelectorAll("[data-show]");
1708  if (filters && filters.length > 0) {
1709    filters.forEach(function (filter) {
1710      countHeight(filter);
1711    });
1712  }
1713  function countHeight(filter) {
1714    var num = filter.getAttribute("data-show");
1715    var elems = filter.querySelectorAll(".catalog-sidebar__item");
1716    var len = elems.length;
1717    if (num === "all" || !num || +num > len) {
1718      var parent = filter.closest(".filter__wrapper");
1719      var btn = parent.querySelector(".filter__show-more");
1720      if (btn) {
1721        btn.style.display = "none";
1722      }
1723      return;
1724    }
1725    var margin = +window.getComputedStyle(elems[0], null).getPropertyValue("margin-bottom").split("px")[0];
1726    var commonH = 0;
1727    for (var _i5 = 0; _i5 < +num; _i5++) {
1728      var h = +elems[_i5].getBoundingClientRect().height + margin;
1729      commonH += h;
1730    }
1731    filter.style.setProperty("--max-h", commonH + "px");
1732  }
1733  var showMoreFilters = document.querySelectorAll(".filter__show-more");
1734  if (showMoreFilters && showMoreFilters.length > 0) {
1735    showMoreFilters.forEach(function (btn) {
1736      var parent = btn.closest(".filter__wrapper");
1737      var list = parent.querySelector("ul");
1738      var listContent = list.innerHTML;
1739      btn.onclick = function (e) {
1740        e.preventDefault();
1741        var text = this.innerHTML;
1742        var hideText = this.dataset.hideText || 'Скрыть';
1743        this.innerHTML = hideText;
1744        this.dataset.hideText = text;
1745        if (list.children.length > 20) {
1746          parent.classList.toggle('open');
1747        }
1748        list.classList.toggle('overflow-auto');
1749        if (list.style.maxHeight !== '') {
1750          list.style.maxHeight = null;
1751          list.innerHTML = listContent;
1752          list.classList.remove('empty');
1753          list.scrollTo(0, 0);
1754        } else {
1755          if (list.children.length > 20) {
1756            sortList(list);
1757          }
1758          list.style.maxHeight = "30rem";
1759          list.classList.remove('empty');
1760        }
1761      };
1762    });
1763  }
1764  var radioButtons = document.querySelectorAll('.catalog-sidebar__item.side-list__item');
1765  if (radioButtons.length) {
1766    radioButtons.forEach(function (el) {
1767      el.addEventListener('click', function (event) {
1768        if (this.classList.contains('active')) {
1769          this.classList.remove('active');
1770          var input = this.querySelector('input[type="radio"]');
1771          if (input) {
1772            input.setAttribute('checked', 'false');
1773            input.checked = false;
1774            if (typeof smartFilter !== 'undefined') {
1775              smartFilter.click(input);
1776            }
1777          }
1778        }
1779      });
1780    });
1781  }
1782  function sortList(list) {
1783    var arr = _toConsumableArray(list.querySelectorAll('li'));
1784    if (arr) {
1785      var newArr = arr.sort(function (a, b) {
1786        var textA = a.querySelector('.check-box__text');
1787        var textB = b.querySelector('.check-box__text');
1788        if (textA && textB) {
1789          var textValueA = textA.innerHTML.toLowerCase().replace(/«/, '');
1790          var textValueB = textB.innerHTML.toLowerCase().replace(/«/, '');
1791          if (textValueA < textValueB) {
1792            return -1;
1793          }
1794          if (textValueA > textValueB) {
1795            return 1;
1796          }
1797          return 0;
1798        }
1799      });
1800      list.innerHTML = '';
1801      var prevLetter = null;
1802      var currentLetter = '';
1803      newArr.forEach(function (el) {
1804        var text = el.innerText.trim().toUpperCase().replace(/^[«|"|=|'|\(]/, '');
1805        currentLetter = text[0];
1806        if (currentLetter !== prevLetter) {
1807          var li = document.createElement('li');
1808          li.classList.add('filter-number');
1809          li.innerHTML = currentLetter;
1810          list.appendChild(li);
1811        }
1812        prevLetter = currentLetter;
1813        list.appendChild(el);
1814      });
1815    }
1816  }
1817  function throttle(func, ms) {
1818    var isThrottled = false,
1819      savedArgs,
1820      savedThis;
1821    function wrapper() {
1822      if (isThrottled) {
1823        // (2)
1824        savedArgs = arguments;
1825        savedThis = this;
1826        return;
1827      }
1828      func.apply(this, arguments); // (1)
1829
1830      isThrottled = true;
1831      setTimeout(function () {
1832        isThrottled = false; // (3)
1833        if (savedArgs) {
1834          wrapper.apply(savedThis, savedArgs);
1835          savedArgs = savedThis = null;
1836        }
1837      }, ms);
1838    }
1839    return wrapper;
1840  }
1841  var filterInputs = document.querySelectorAll('.filter-input-text');
1842  if (filterInputs.length) {
1843    filterInputs.forEach(function (el) {
1844      var list = el.parentElement.querySelector("ul");
1845      if (list) {
1846        el.addEventListener('input', function () {
1847          var filterArr = throttle(filterList, 4000);
1848          filterArr(list, this.value);
1849        });
1850      }
1851    });
1852  }
1853  function filterList(list, input) {
1854    var items = list.querySelectorAll('li');
1855    if (items.length) {
1856      var arr = _toConsumableArray(items);
1857      var regExp = new RegExp("".concat(input.trim().toUpperCase()), 'g');
1858      var number = arr.length;
1859      arr.forEach(function (el) {
1860        var text = el.innerText.trim().toUpperCase();
1861        if (!regExp.test(text)) {
1862          el.style.display = 'none';
1863          number--;
1864        } else {
1865          el.style.display = null;
1866          number++;
1867        }
1868      });
1869      if (number === 0) {
1870        list.classList.add('empty');
1871      } else {
1872        list.classList.remove('empty');
1873      }
1874    }
1875  }
1876
1877  var swipeEls = document.querySelectorAll('.swipe-el');
1878  var hideswipeEl;
1879  var showNow;
1880  if (swipeEls && swipeEls.length > 0) {
1881    swipeEls.forEach(function (swipeEl) {
1882      var mcSwipe = new Hammer.Manager(swipeEl);
1883      var swipeElHeight;
1884      var swipeThreshold;
1885      var lastPosY = 0;
1886      var isDragging = false;
1887      var canSwipeUpDown = false;
1888      var isOpen = false;
1889      var values;
1890      function getTranslate3d() {
1891        var setting = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
1892        values = setting.split(/\w+\(|\);?/);
1893        if (!values[1] || !values[1].length) {
1894          return [];
1895        }
1896        return values[1].split(/,\s?/g).map(function (value) {
1897          return parseInt(value, 10);
1898        });
1899      }
1900      function setTranslate3dPosY(posY) {
1901        return 'translate3d(0,' + posY + 'px, 0)';
1902      }
1903      hideswipeEl = function hideswipeEl(elem) {
1904        isOpen = false;
1905        elem.classList.add("hide");
1906        elem.classList.remove("show");
1907        bodyTag.classList.remove("lock-modal");
1908        elem.classList.remove("canScroll");
1909        if (elem.classList.contains("search-aside") && window.innerWidth <= 480) {
1910          elem.style.transform = 'translate3d(0, -3.5rem, 0)';
1911        } else if (elem.classList.contains("search-aside") && window.innerWidth <= 1024) {
1912          elem.style.transform = 'translate3d(0, -6rem, 0)';
1913        } else {
1914          elem.style.transform = null;
1915        }
1916        lastPosY = getTranslate3d(elem.style.transform)[1];
1917        // scrollLock.enablePageScroll();
1918        enableScroll();
1919      };
1920      var asideClose = document.querySelectorAll(".swipe-el__close");
1921      if (asideClose && asideClose.length > 0) {
1922        asideClose.forEach(function (btn) {
1923          var parent = btn.closest(".swipe-el");
1924          btn.onclick = function (e) {
1925            e.preventDefault();
1926            hideswipeEl(parent);
1927          };
1928        });
1929      }
1930      showNow = function showNow(elem) {
1931        setTimeout(function () {
1932          isOpen = true;
1933        }, 500);
1934        elem.classList.remove("hide");
1935        elem.classList.add("show");
1936        bodyTag.classList.add("lock-modal");
1937        disableScroll();
1938        // scrollLock.disablePageScroll();
1939        // scrollLock.addScrollableSelector(".search-aside__list");
1940        // scrollLock.addScrollableSelector(".swipe-el__inner");
1941        elem.style.transform = 'translate3d(0, 0, 0)';
1942        lastPosY = getTranslate3d(elem.style.transform)[1];
1943      };
1944      function displayswipeEl() {
1945        var elem = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : swipeEl;
1946        elem.style.transform = 'translate3d(0, 0, 0)';
1947        elem.classList.remove("hide");
1948      }
1949      function handleDrag(ev) {
1950        var direction = ev.offsetDirection;
1951        var directionDown = direction === 16;
1952        swipeEl.addEventListener('scroll', function () {
1953          var scrollTop = swipeEl.scrollTop;
1954          if (scrollTop == 0) {
1955            canSwipeUpDown = false;
1956            isOpen = false;
1957            swipeEl.classList.remove('canScroll');
1958          } else {
1959            canSwipeUpDown = true;
1960            isOpen = true;
1961            swipeEl.classList.add('canScroll');
1962          }
1963        }, false);
1964
1965        /*if (isOpen && !directionDown) {
1966            setTranslate3dPosY(0);
1967            canSwipeUpDown = true;
1968            swipeEl.classList.add('canScroll');
1969        }
1970        else */
1971        if (!canSwipeUpDown) {
1972          swipeEl.classList.remove('canScroll');
1973          var elem = swipeEl;
1974
1975          // DRAG STARTED
1976          if (!isDragging) {
1977            if (ev.target != elem) {
1978              return;
1979            }
1980            if (!swipeElHeight) {
1981              swipeElHeight = swipeEl.clientHeight;
1982            }
1983            if (!swipeThreshold) {
1984              ;
1985              swipeThreshold = swipeElHeight / 1.3;
1986            }
1987            elem.classList.remove('anim');
1988            isDragging = true;
1989            var topPos = -swipeElHeight;
1990            var currentPosY = topPos;
1991            lastPosY = currentPosY ? currentPosY : topPos;
1992          }
1993          var posY = ev.deltaY + lastPosY;
1994          elem.style.transform = setTranslate3dPosY(posY);
1995
1996          // DRAG ENDED
1997          if (ev.isFinal) {
1998            elem.classList.add('anim');
1999            isDragging = false;
2000            if (Math.abs(posY) < swipeThreshold) {
2001              hideswipeEl(elem);
2002            } else {
2003              showNow(elem);
2004            }
2005          }
2006        }
2007      }
2008
2009      // mcSwipe.add(new Hammer.Pan({
2010      //     direction: Hammer.DIRECTION_ALL,
2011      //     threshold: 0
2012      // }));
2013      // if (window.innerWidth <= 1024) {
2014      //     mcSwipe.on("pan", handleDrag);
2015      // }
2016    });
2017  }
2018
2019  if ('IntersectionObserver' in window) {
2020    var observerV = new IntersectionObserver(function (entries) {
2021      entries.forEach(function (entry) {
2022        var el = entry.target;
2023        if (el.classList.contains("end")) {
2024          return;
2025        }
2026        var attr = +el.getAttribute("data-num");
2027        if (entry.isIntersecting) {
2028          var _i6 = 1,
2029            _num = attr,
2030            step = 2500 / _num,
2031            int = setInterval(function () {
2032              if (_i6 <= _num) {
2033                el.innerHTML = "".concat(_i6, "+");
2034              } else {
2035                clearInterval(int);
2036                el.classList.add("end");
2037              }
2038              _i6 += 5;
2039            }, step);
2040        }
2041      });
2042    });
2043    var changeNums = document.querySelectorAll(".rising-num__num");
2044    if (changeNums && changeNums.length > 0) {
2045      changeNums.forEach(function (element) {
2046        observerV.observe(element);
2047      });
2048    }
2049  }
2050  window.addEventListener("resize", function () {
2051    width = window.innerWidth;
2052    height = window.innerHeight;
2053    // document.documentElement.style.setProperty('--h', height + "px");
2054
2055    if (filters.length) {
2056      filters.forEach(function (filter) {
2057        countHeight(filter);
2058      });
2059    }
2060    initSlider();
2061    initSliderSuggestion();
2062    initSliderStoryRange();
2063    if (header) {
2064      var _headerH2 = header.getBoundingClientRect().height;
2065      document.documentElement.style.setProperty('--headerH', _headerH2 + "px");
2066    }
2067  });
2068  if (header) {
2069    if ('ResizeObserver' in window) {
2070      new ResizeObserver(function () {
2071        var headerH = header.getBoundingClientRect().height;
2072        document.documentElement.style.setProperty('--headerH', headerH + "px");
2073      }).observe(header);
2074    }
2075  }
2076  var currentActiveButton = document.querySelector('.filter-button--active');
2077  var no = function no() {
2078    var x, i, j, l, ll, selElmnt, a, b, c;
2079    /* Look for any elements with the class "custom-select": */
2080    x = document.getElementsByClassName("custom-select");
2081    l = x.length;
2082    for (i = 0; i < l; i++) {
2083      selElmnt = x[i].getElementsByTagName("select")[0];
2084      ll = selElmnt.length;
2085      /* For each element, create a new DIV that will act as the selected item: */
2086      a = document.createElement("DIV");
2087      a.setAttribute("class", "select-selected select-selected--light");
2088      a.setAttribute('tabindex', '0');
2089      a.innerHTML = selElmnt.options[selElmnt.selectedIndex].innerHTML;
2090      x[i].appendChild(a);
2091      /* For each element, create a new DIV that will contain the option list: */
2092      b = document.createElement("DIV");
2093      b.setAttribute("class", "select-items select-hide");
2094      var closeButton = document.createElement('div');
2095      closeButton.classList.add('close-button');
2096      b.appendChild(closeButton);
2097      if (x[i].dataset.text) {
2098        var _title = document.createElement('div');
2099        _title.classList.add('custom-select__title');
2100        _title.innerHTML = x[i].dataset.text;
2101        b.appendChild(_title);
2102      }
2103      var wrapper = document.createElement('div');
2104      wrapper.setAttribute('class', 'select-wrapper');
2105      b.appendChild(wrapper);
2106      for (j = 0; j < ll; j++) {
2107        /* For each option in the original select element,
2108        create a new DIV that will act as an option item: */
2109        c = document.createElement("DIV");
2110        c.innerHTML = selElmnt.options[j].innerHTML;
2111        if (selElmnt.options[j].value === 'own') {
2112          c.dataset.own = true;
2113        }
2114        if (selElmnt.dataset.otherid) {
2115          if (selElmnt.options[j].value === 'other') {
2116            c.dataset.other = selElmnt.dataset.otherid;
2117          } else {
2118            c.dataset.hide = selElmnt.dataset.otherid;
2119          }
2120        }
2121
2122        if (j === 0) {
2123          c.classList.add('same-as-selected');
2124          if (c.innerHTML === '') {
2125            c.hidden = true;
2126          }
2127        }
2128        c.addEventListener("click", function (e) {
2129          /* When an item is clicked, update the original select box,
2130          and the selected item: */
2131          if (this.dataset.own) {
2132            var vacancyname = document.getElementById('form__vacancy_name');
2133            if (vacancyname) {
2134              vacancyname.style.display = 'block';
2135            }
2136          }
2137          if (this.dataset.hide) {
2138            const input = document.getElementById(this.dataset.hide);
2139            input.hidden = true;
2140            input.required = false;
2141          }
2142          if (this.dataset.other) {
2143            const input = document.getElementById(this.dataset.other);
2144            input.hidden = false;
2145            input.required = true;
2146          }
2147          var y, i, k, s, h, sl, yl;
2148          s = this.parentNode.parentNode.parentNode.getElementsByTagName("select")[0];
2149          sl = s.length;
2150          h = this.parentNode.parentNode.previousSibling;
2151          h.classList.add('filter-button--active');
2152          for (i = 0; i < sl; i++) {
2153            if (s.options[i].innerHTML == this.innerHTML) {
2154              s.selectedIndex = i;
2155              h.innerHTML = this.innerHTML;
2156              y = this.parentNode.getElementsByClassName("same-as-selected");
2157              yl = y.length;
2158              for (k = 0; k < yl; k++) {
2159                y[k].removeAttribute("class");
2160              }
2161              this.setAttribute("class", "same-as-selected");
2162              var _filters = this.closest('.filters');
2163              if (_filters && typeof smartFilter !== 'undefined') {
2164                s.options[s.selectedIndex].setAttribute('selected', 'selected');
2165                smartFilter.click(s.options[s.selectedIndex]);
2166              }
2167              break;
2168            }
2169          }
2170          h.click();
2171        });
2172        wrapper.appendChild(c);
2173      }
2174      x[i].appendChild(b);
2175      var _overlay = document.createElement('div');
2176      _overlay.classList.add('overlay');
2177      x[i].appendChild(_overlay);
2178      a.addEventListener("click", function (e) {
2179        /* When the select box is clicked, close any other select boxes,
2180        and open/close the current select box: */
2181        e.stopPropagation();
2182        closeAllSelect(this);
2183        this.nextSibling.classList.toggle("select-hide");
2184        //   this.classList.toggle("filter-button--active");
2185      });
2186    }
2187
2188    function closeAllSelect(elmnt) {
2189      /* A function that will close all select boxes in the document,
2190      except the current select box: */
2191      var x,
2192        y,
2193        i,
2194        xl,
2195        yl,
2196        arrNo = [];
2197      x = document.getElementsByClassName("select-items");
2198      y = document.getElementsByClassName("select-selected");
2199      xl = x.length;
2200      yl = y.length;
2201      for (i = 0; i < yl; i++) {
2202        if (elmnt == y[i]) {
2203          arrNo.push(i);
2204          y[i].classList.remove('select-selected--light');
2205        } else {
2206          y[i].classList.remove("filter-button--active");
2207          currentActiveButton = null;
2208        }
2209      }
2210      for (i = 0; i < xl; i++) {
2211        if (!x[i].querySelector('.same-as-selected')) {
2212          x[i].previousSibling.classList.add('select-selected--light');
2213        }
2214        if (arrNo.indexOf(i)) {
2215          x[i].classList.add("select-hide");
2216        }
2217      }
2218    }
2219
2220    /* If the user clicks anywhere outside the select box,
2221    then close all select boxes: */
2222    document.addEventListener("click", closeAllSelect);
2223  };
2224  no();
2225  var filterButtons = document.querySelectorAll('.filter-button, .select-selected');
2226  var overlay = document.querySelector('.filter-wrapper .overlay');
2227  var closeButtons = document.querySelectorAll('.close-button');
2228  function clickHandler() {
2229    if (this.classList.contains('filter-button--active')) {
2230      document.documentElement.style.overflow = null;
2231      this.classList.remove('filter-button--active');
2232    } else {
2233      filterButtons.forEach(function (el) {
2234        el.classList.remove('filter-button--active');
2235      });
2236      if (sm.matches) {
2237        document.documentElement.style.overflow = 'hidden';
2238      }
2239      this.classList.add('filter-button--active');
2240    }
2241  }
2242  function closeMenu() {
2243    filterButtons.forEach(function (el) {
2244      document.documentElement.style.overflow = null;
2245      el.classList.remove('filter-button--active');
2246    });
2247  }
2248  if (filterButtons.length && closeButtons.length) {
2249    if (overlay) {
2250      overlay.addEventListener('click', closeMenu);
2251    }
2252    filterButtons.forEach(function (el) {
2253      el.addEventListener('click', clickHandler);
2254    });
2255    closeButtons.forEach(function (el) {
2256      el.addEventListener('click', closeMenu);
2257    });
2258  }
2259  var acc = document.querySelectorAll(".panel .panel__title");
2260  var i;
2261  for (i = 0; i < acc.length; i++) {
2262    acc[i].addEventListener("click", function () {
2263      this.classList.toggle("active");
2264      var panel = this.nextElementSibling;
2265      if (panel.style.maxHeight) {
2266        panel.style.maxHeight = null;
2267      } else {
2268        panel.style.maxHeight = panel.scrollHeight + "px";
2269      }
2270    });
2271  }
2272  var newsButton = document.querySelector('.news__button');
2273  var hideItems = null;
2274  var items = document.querySelectorAll('.events__item, .news__item');
2275
2276  // if (sm.matches && newsButton) {
2277  //     if (items.length) {
2278  //         hideItems = [...items].slice(-8)
2279  //         hideItems.forEach(el => el.hidden = true)
2280  //     }
2281  //     newsButton.addEventListener('click', clickHandlerTabs)
2282  // }
2283
2284  // if (newsButton) {
2285  //     sm.addEventListener('change', () => {
2286  //         if (sm.matches) {
2287  //             if (items.length) {
2288  //                 hideItems = [...items].slice(-8)
2289  //                 hideItems.forEach(el => el.hidden = true)
2290  //             }
2291  //             newsButton.addEventListener('click', clickHandlerTabs)
2292  //             newsButton.hidden = false
2293  //         } else {
2294  //             newsButton.removeEventListener('click', clickHandlerTabs)
2295  //             if (hideItems?.length) {
2296  //                 hideItems.forEach(el => el.hidden = false)
2297  //             }
2298  //         }
2299  //     })
2300  // }
2301
2302  function clickHandlerTabs() {
2303    this.hidden = true;
2304    hideItems.forEach(function (el) {
2305      return el.hidden = false;
2306    });
2307  }
2308  var buttonsModal = document.querySelectorAll('[data-modal]');
2309  var regModal = document.querySelectorAll('.regModal');
2310  if (regModal.length) {
2311    regModal.forEach(function (el) {
2312      el.addEventListener('click', function () {
2313        if (event.target.classList.contains('regModal')) {
2314          modalHandler.apply(event.target);
2315        }
2316      });
2317      var closeButton = el.querySelector('.close-button');
2318      if (closeButton) {
2319        closeButton.addEventListener('click', function () {
2320          var modal = this.closest('.regModal');
2321          if (modal) {
2322            modalHandler.apply(modal);
2323          }
2324        });
2325      }
2326    });
2327  }
2328  var isMobile = {
2329    Android: function Android() {
2330      return navigator.userAgent.match(/Android/i);
2331    },
2332    BlackBerry: function BlackBerry() {
2333      return navigator.userAgent.match(/BlackBerry/i);
2334    },
2335    iOS: function iOS() {
2336      return navigator.userAgent.match(/iPhone|iPad|iPod/i);
2337    },
2338    Opera: function Opera() {
2339      return navigator.userAgent.match(/Opera Mini/i);
2340    },
2341    Windows: function Windows() {
2342      return navigator.userAgent.match(/IEMobile/i);
2343    },
2344    any: function any() {
2345      return isMobile.Android() || isMobile.BlackBerry() || isMobile.iOS() || isMobile.Opera() || isMobile.Windows();
2346    }
2347  };
2348  function disableScroll() {
2349    // Get the current page scroll position;
2350    var scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop;
2351    var scrollLeft = window.pageXOffset || document.documentElement.scrollLeft || document.body.scrollTop;
2352    document.documentElement.style.setProperty('scroll-behavior', 'auto');
2353    if (isMobile) {
2354      if (isMobile.any()) {
2355        document.body.style.overflow = 'hidden';
2356      }
2357    }
2358
2359    // if any scroll is attempted, set this to the previous value;
2360    window.onscroll = function () {
2361      window.scrollTo(scrollLeft, scrollTop);
2362    };
2363  }
2364  ;
2365  function enableScroll() {
2366    if ('scrollBehavior' in document.documentElement.style) {
2367      document.documentElement.style.setProperty('scroll-behavior', null);
2368      document.body.style.overflow = null;
2369      window.onscroll = function () { };
2370    } else {
2371      document.body.style.overflow = null;
2372      window.onscroll = function () { };
2373    }
2374  }
2375  ;
2376  function modalHandler() {
2377    var _this$dataset;
2378    var pannel = document.querySelector(".map__panel");
2379    if (pannel) {
2380      pannel.classList.remove("open");
2381    }
2382    var modal = document.querySelector("".concat((_this$dataset = this.dataset) === null || _this$dataset === void 0 ? void 0 : _this$dataset.modal)) || this;
2383    if (modal.classList.contains('regModal') && modal.hidden) {
2384      disableScroll();
2385      // scrollLock.disablePageScroll();
2386      // scrollLock.addScrollableSelector('.regModal');
2387    } else {
2388      // scrollLock.enablePageScroll();
2389      enableScroll();
2390    }
2391    if (modal) {
2392      if (modal.hidden) {
2393        modal.hidden = !modal.hidden;
2394        modal.style.setProperty('pointer-events', 'auto');
2395        setTimeout(function () {
2396          modal.style.opacity = 1;
2397        }, 10);
2398      } else {
2399        modal.style.opacity = 0;
2400        modal.style.setProperty('pointer-events', null);
2401        modal.addEventListener('transitionend', hideaftertransition);
2402      }
2403    }
2404  }
2405  function hideaftertransition() {
2406    this.hidden = true;
2407    this.removeEventListener('transitionend', hideaftertransition);
2408  }
2409  if (buttonsModal.length) {
2410    buttonsModal.forEach(function (el) {
2411      return el.addEventListener('click', modalHandler);
2412    });
2413  }
2414
2415  var acc = document.getElementsByClassName("accordion__list-title");
2416  var i;
2417  for (i = 0; i < acc.length; i++) {
2418    acc[i].addEventListener("click", function () {
2419      this.parentNode.classList.toggle("active");
2420      var panel = this.nextElementSibling;
2421      if (panel.style.maxHeight) {
2422        panel.style.maxHeight = null;
2423      } else {
2424        panel.style.maxHeight = panel.scrollHeight + "px";
2425      }
2426    });
2427  }
2428  window.addEventListener('resize', function () {
2429    var activeAccords = document.querySelectorAll('.accordion .active .accordion__list-desc');
2430    if (activeAccords.length) {
2431      activeAccords.forEach(function (el) {
2432        el.style.maxHeight = el.scrollHeight + 'px';
2433      });
2434    }
2435  });
2436  var accordions = document.querySelectorAll('.accordion');
2437  var faqlist = document.querySelector('.faq__left-list');
2438  if (accordions.length && faqlist) {
2439    accordions.forEach(function (el) {
2440      var _el$querySelector;
2441      var title = (_el$querySelector = el.querySelector('.accordion__title')) === null || _el$querySelector === void 0 ? void 0 : _el$querySelector.innerHTML;
2442      if (title) {
2443        el.setAttribute('data-visible', title);
2444        var li = document.createElement('li');
2445        li.setAttribute('data-visible', title);
2446        li.innerHTML = title;
2447        li.addEventListener('click', function () {
2448          var _this = this;
2449          accordions.forEach(function (el) {
2450            if (_this.dataset.visible === el.dataset.visible) {
2451              var fixed = _this.closest('.fixed-mobile');
2452              if (fixed && mm.matches) {
2453                modalHandler.apply(fixed);
2454              }
2455              // const headerH = document.documentElement.style.getPropertyValue('--headerH') || '-2
245500'
2456
2457              var yOffset = !mm.matches ? -200 : -150;
2458              var y = el.getBoundingClientRect().top + window.pageYOffset + yOffset;
2459              window.scrollTo({
2460                top: y,
2461                behavior: 'smooth'
2462              });
2463            }
2464          });
2465        });
2466        faqlist.appendChild(li);
2467      }
2468    });
2469  }
2470  var navBar = document.querySelectorAll('.faq__left-list li');
2471  var stickyBar = document.querySelector('.sticky-mobile');
2472  var callback = function callback(entry) {
2473    if (entry.length) {
2474      entry.forEach(function (el) {
2475        if (el.isIntersecting) {
2476          el.target.classList.add('accordion--visible');
2477          var data = el.target.dataset.visible;
2478          if (data) {
2479            navBar.forEach(function (navItem) {
2480              if (navItem.dataset.visible === data) {
2481                navItem.classList.add('active');
2482                if (stickyBar) {
2483                  stickyBar.innerHTML = data;
2484                }
2485              } else {
2486                navItem.classList.remove('active');
2487              }
2488            });
2489          }
2490        } else {
2491          el.target.classList.remove('accordion--visible');
2492        }
2493      });
2494    }
2495  };
2496  if (stickyBar && navBar.length) {
2497    stickyBar.addEventListener('click', function () {
2498      var nav = navBar[0].closest('.fixed-mobile');
2499      modalHandler.apply(nav);
2500    });
2501  }
2502  var options = {
2503    threshold: 0.5 // half of item height
2504  };
2505
2506  if ('IntersectionObserver' in window) {
2507    var observer = new IntersectionObserver(callback, options);
2508  }
2509  var fixedBlock = document.querySelector('.fixed-mobile');
2510  if (fixedBlock) {
2511    if ('addEventListener' in mm) {
2512      mm.addEventListener('change', function () {
2513        if (mm.matches) {
2514          fixedBlock.hidden = true;
2515        } else {
2516          fixedBlock.style.opacity = null;
2517          fixedBlock.hidden = false;
2518        }
2519      });
2520    }
2521    if (mm.matches) {
2522      fixedBlock.hidden = true;
2523    } else {
2524      fixedBlock.style.opacity = null;
2525      fixedBlock.hidden = false;
2526    }
2527  }
2528  document.addEventListener('resize', function () {
2529    if (header) {
2530      var _headerH3 = header.getBoundingClientRect().height;
2531      document.documentElement.style.setProperty('--headerH', _headerH3 + "px");
2532    }
2533  });
2534  if (accordions.length && navBar.length) {
2535    accordions.forEach(function (el) {
2536      return observer.observe(el);
2537    });
2538  }
2539  var accCloseButtons = document.querySelectorAll('.accordion .close-button');
2540  if (accCloseButtons.length) {
2541    accCloseButtons.forEach(function (el) {
2542      el.addEventListener('click', function () {
2543        this.parentNode.previousElementSibling.click();
2544      });
2545    });
2546  }
2547  var actualBtn = document.getElementById('actual-btn');
2548  function bytesToMegaBytes(bytes) {
2549    return bytes / (1024 * 1024);
2550  }
2551  function deleteFile(element) {
2552    var index = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
2553    var dt = new DataTransfer();
2554    var input = element;
2555    var files = input.files;
2556    for (var _i7 = 0; _i7 < files.length; _i7++) {
2557      var file = files[_i7];
2558      if (index !== _i7) dt.items.add(file);
2559    }
2560    input.files = dt.files; // Assign the updates list
2561  }
2562
2563  function changeText(element, text) {
2564    var error = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
2565    if (element) {
2566      element.innerHTML = text;
2567      if (error) {
2568        element.classList.add('error');
2569      } else {
2570        element.classList.remove('error');
2571      }
2572    }
2573  }
2574  if (actualBtn) {
2575    var label = actualBtn.nextElementSibling;
2576    actualBtn.addEventListener('change', function () {
2577      var _this2 = this;
2578      var filechosen = this.parentElement.querySelector('.file-chosen');
2579      if (!this.files[0]) {
2580        return;
2581      }
2582      var mb = bytesToMegaBytes(this.files[0].size);
2583      var ourText = this.parentElement.querySelector('.canText');
2584      if (mb > 1) {
2585        deleteFile(this);
2586        if (filechosen) {
2587          filechosen.remove();
2588        }
2589        if (ourText) {
2590          var text = ourText.dataset.error;
2591          if (text) {
2592            changeText(ourText, text);
2593          }
2594        }
2595        return;
2596      }
2597      var arrayText = this.accept || '.doc,.xls,.txt';
2598      var types = arrayText.split(/,/);
2599      var typesTest = types.some(function (el) {
2600        var ext = _this2.files[0].name.match(/\.([^.]+)$/)[0];
2601        return el === ext;
2602      });
2603      if (!typesTest) {
2604        deleteFile(this);
2605        if (filechosen) {
2606          filechosen.remove();
2607        }
2608        if (ourText) {
2609          var _text = ourText.dataset.error;
2610          if (_text) {
2611            changeText(ourText, _text);
2612          }
2613        }
2614        return;
2615      }
2616      if (!filechosen) {
2617        filechosen = document.createElement('span');
2618        filechosen.classList.add('file-chosen');
2619        filechosen.innerHTML = this.files[0].name;
2620        label.appendChild(filechosen);
2621        filechosen.addEventListener('click', function () {
2622          filechosen.remove();
2623          deleteFile(_this2);
2624        });
2625      } else {
2626        filechosen.innerText = this.files[0].name;
2627      }
2628      if (ourText) {
2629        var _text2 = ourText.dataset.submit;
2630        if (_text2) {
2631          changeText(ourText, _text2, false);
2632        }
2633      }
2634    });
2635  }
2636  var swipeOn = document.querySelectorAll('.swipe-on');
2637  if (swipeOn.length) {
2638    swipeOn.forEach(function (el) {
2639      var mc = new Hammer(el);
2640      mc.add(new Hammer.Pan({
2641        direction: Hammer.DIRECTION_ALL,
2642        threshold: 0
2643      }));
2644      var lastPosY = 0;
2645      var isDragging = false;
2646      mc.on("pan", function (ev) {
2647        if (ev.target.classList.contains('swipe-on')) {
2648          if (!isDragging) {
2649            isDragging = true;
2650            lastPosY = ev.target.offsetTop;
2651          }
2652          var posY = ev.deltaY + lastPosY;
2653          ev.target.style.transition = 'none';
2654          ev.target.style.top = posY + "px";
2655          if (ev.isFinal) {
2656            isDragging = false;
2657            ev.target.style.transition = null;
2658            if (ev.target.getBoundingClientRect().top >= window.innerHeight - 50) {
2659              var modal = ev.target.closest('.regModal');
2660              if (modal) {
2661                modalHandler.apply(modal);
2662                setTimeout(function () {
2663                  ev.target.style.top = null;
2664                }, 300);
2665                return;
2666              }
2667            }
2668            ev.target.style.top = null;
2669          }
2670        }
2671      });
2672    });
2673  }
2674  var swipeOn2 = document.querySelectorAll('.swipe-on2');
2675  if (swipeOn2.length) {
2676    swipeOn2.forEach(function (el) {
2677      var mc = new Hammer(el);
2678      mc.add(new Hammer.Pan({
2679        direction: Hammer.DIRECTION_ALL,
2680        threshold: 0
2681      }));
2682      var lastPosY = 0;
2683      var isDragging = false;
2684      mc.on("pan", function (ev) {
2685        if (ev.target.classList.contains('swipe-on2') && mm.matches) {
2686          if (!isDragging) {
2687            isDragging = true;
2688            lastPosY = ev.target.offsetTop;
2689          }
2690          var posY = ev.deltaY + lastPosY;
2691          ev.target.style.transition = 'none';
2692          ev.target.style.setProperty('transform', "translate3d(0, ".concat(posY, "px, 0)"));
2693          if (ev.isFinal) {
2694            isDragging = false;
2695            ev.target.style.transition = null;
2696            if (ev.target.getBoundingClientRect().top >= window.innerHeight - 100) {
2697              var modal = ev.target.closest('.regModal');
2698              if (modal) {
2699                modalHandler.apply(modal);
2700                setTimeout(function () {
2701                  ev.target.style.setProperty('transform', null);
2702                }, 300);
2703                return;
2704              }
2705            }
2706            ev.target.style.setProperty('transform', null);
2707          }
2708        }
2709      });
2710    });
2711  }
2712  var selectSwipe = document.querySelectorAll('.filters .select-items');
2713  if (selectSwipe.length) {
2714    selectSwipe.forEach(function (el) {
2715      var mc = new Hammer(el);
2716      mc.add(new Hammer.Pan({
2717        direction: Hammer.DIRECTION_ALL,
2718        threshold: 0
2719      }));
2720      var lastPosY = 0;
2721      var isDragging = false;
2722      mc.on("pan", function (ev) {
2723        if (ev.target.classList.contains('select-items') && sm.matches) {
2724          if (!isDragging) {
2725            isDragging = true;
2726            lastPosY = ev.target.offsetTop;
2727          }
2728          var posY = ev.deltaY + lastPosY;
2729          ev.target.style.transition = 'none';
2730          ev.target.style.setProperty('transform', "translate3d(0, ".concat(posY, "px, 0)"));
2731          if (ev.isFinal) {
2732            isDragging = false;
2733            ev.target.style.transition = null;
2734            if (ev.target.getBoundingClientRect().top >= window.innerHeight - 100) {
2735              var modal = ev.target.querySelector('.close-button');
2736              if (modal) {
2737                modal.click();
2738                setTimeout(function () {
2739                  ev.target.style.setProperty('transform', null);
2740                }, 300);
2741                return;
2742              }
2743            }
2744            ev.target.style.setProperty('transform', null);
2745          }
2746        }
2747      });
2748    });
2749  }
2750  var filterSwipe = document.querySelectorAll('.filter-swipe');
2751  if (filterSwipe.length) {
2752    filterSwipe.forEach(function (el) {
2753      var mc = new Hammer(el);
2754      mc.add(new Hammer.Pan({
2755        direction: Hammer.DIRECTION_ALL,
2756        threshold: 0
2757      }));
2758      var lastPosY = 0;
2759      var isDragging = false;
2760      mc.on("pan", function (ev) {
2761        if (ev.target.classList.contains('filter-swipe') && sm.matches) {
2762          if (!isDragging) {
2763            isDragging = true;
2764            lastPosY = ev.target.offsetTop;
2765          }
2766          var posY = ev.deltaY + lastPosY;
2767          ev.target.style.transition = 'none';
2768          ev.target.style.setProperty('transform', "translate3d(0, ".concat(posY, "px, 0)"));
2769          if (ev.isFinal) {
2770            isDragging = false;
2771            ev.target.style.transition = null;
2772            if (ev.target.getBoundingClientRect().top >= window.innerHeight - 100) {
2773              var modal = ev.target.querySelector('.close-button');
2774              if (modal) {
2775                modal.click();
2776                setTimeout(function () {
2777                  ev.target.style.setProperty('transform', null);
2778                }, 300);
2779                return;
2780              }
2781            }
2782            ev.target.style.setProperty('transform', null);
2783          }
2784        }
2785      });
2786    });
2787  }
2788  function getCookie(name) {
2789    var matches = document.cookie.match(new RegExp("(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"));
2790    return matches ? decodeURIComponent(matches[1]) : undefined;
2791  }
2792  function setCookie(name, value) {
2793    var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
2794    options = _objectSpread({
2795      path: '/'
2796    }, options);
2797    if (options.expires instanceof Date) {
2798      options.expires = options.expires.toUTCString();
2799    }
2800    var updatedCookie = encodeURIComponent(name) + "=" + encodeURIComponent(value);
2801    for (var optionKey in options) {
2802      updatedCookie += "; " + optionKey;
2803      var optionValue = options[optionKey];
2804      if (optionValue !== true) {
2805        updatedCookie += "=" + optionValue;
2806      }
2807    }
2808    document.cookie = updatedCookie;
2809  }
2810  var cookie = getCookie('softlineAccessCookie');
2811  var cookieForm = document.querySelector('.cookie.regModal');
2812  if (!cookie && cookieForm) {
2813    cookieForm.style.display = 'flex';
2814  }
2815  if (cookieForm) {
2816    var button = cookieForm.querySelector('.cookie__button');
2817    if (button) {
2818      button.addEventListener('click', function () {
2819        setCookie('softlineAccessCookie', 'true', {
2820          expires: getOneYearFromNow()
2821        });
2822        modalHandler.apply(cookieForm);
2823      });
2824    }
2825  }
2826  function getOneYearFromNow() {
2827    var oneYearFromNow = new Date();
2828    oneYearFromNow.setFullYear(oneYearFromNow.getFullYear() + 1);
2829    return oneYearFromNow.toUTCString();
2830  }
2831  /*
2832        const mapButton = document.querySelector('#map-button');
2833        const map = document.querySelector('#yandex-map');
2834        const offices = document.querySelector('#offices-list');
2835        let oldText = '';
2836
2837        if (mapButton, map, offices) {
2838          mapButton.addEventListener('click', function () {
2839              modalHandler.apply(map)
2840              modalHandler.apply(offices)
2841              const text = this.querySelector('[data-text]')
2842              if (text) {
2843                  oldText = text.innerHTML
2844                  text.innerHTML = text.dataset.text
2845                  text.dataset.text = oldText
2846              }
2847          })
2848        }*/
2849
2850  //   function disableScroll() {
2851  //     // Get the current page scroll position;
2852  //     const scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop;
2853  //     const scrollLeft = window.pageXOffset || document.documentElement.scrollLeft || document.body.scrollTop;
2854  //     document.documentElement.style.setProperty('scroll-behavior', 'auto');
2855
2856  //     if (isMobile.any()) {
2857  //         document.body.style.overflow='hidden';
2858  //     }
2859
2860  //     // if any scroll is attempted, set this to the previous value;
2861  //     window.onscroll = function () {
2862  //         window.scrollTo(scrollLeft, scrollTop);
2863  //     };
2864  // };
2865
2866  // function enableScroll() {
2867  //     document.documentElement.style.setProperty('scroll-behavior', null);
2868  //     document.body.style.overflow=null;
2869  //     window.onscroll = function () { };
2870  // };
2871
2872  var leadershipCards = document.querySelectorAll(".leader__card");
2873  var leadershipModal = document.querySelector("#leadership-modal");
2874  if (leadershipCards && leadershipModal) {
2875    leadershipCards.forEach(function (card) {
2876      card.onclick = function (e) {
2877        e.preventDefault();
2878        var content = this.querySelector('.leader__content');
2879        var modalWrapper = leadershipModal.querySelector('.leadership-modal__wrapper');
2880        if (content && modalWrapper) {
2881          modalWrapper.innerHTML = content.innerHTML;
2882        } else {
2883          return;
2884        }
2885        leadershipModal.style.display = "block";
2886        disableScroll();
2887        // scrollLock.disablePageScroll(leadershipModal);
2888        // scrollLock.addScrollableSelector('.leadership__text-block');
2889        if (window.innerWidth <= 1024) {
2890          // scrollLock.addScrollableSelector(".leadership__wrapper");
2891        }
2892        setTimeout(function () {
2893          leadershipModal.classList.add("show");
2894        }, 10);
2895      };
2896    });
2897    if (leadershipModal) {
2898      var leadershipClose = document.querySelector(".close-leadership");
2899      leadershipClose.onclick = function (e) {
2900        e.preventDefault();
2901        leadershipModal.classList.remove("show");
2902        enableScroll();
2903        // scrollLock.enablePageScroll(leadershipModal);
2904        setTimeout(function () {
2905          leadershipModal.style.display = "none";
2906        }, 400);
2907      };
2908    }
2909  }
2910  var programBtn = document.querySelector(".program-conditions");
2911  var programModal = document.querySelector(".program-modal");
2912  if (programBtn) {
2913    programBtn.onclick = function (e) {
2914      e.preventDefault();
2915      programModal.style.display = "block";
2916      // scrollLock.disablePageScroll(programModal);
2917      setTimeout(function () {
2918        programModal.classList.add("show");
2919      }, 10);
2920    };
2921    if (programModal) {
2922      var programClose = document.querySelector(".close-program");
2923      programClose.onclick = function (e) {
2924        e.preventDefault();
2925        programModal.classList.remove("show");
2926        // scrollLock.enablePageScroll(programModal);
2927        enableScroll();
2928        setTimeout(function () {
2929          programModal.style.display = "none";
2930        }, 400);
2931      };
2932    }
2933  }
2934  var partnersBtn = document.querySelectorAll(".top-partner_name");
2935  var partnerModal = document.querySelector(".partner-modal");
2936  if (partnersBtn.length > 0) {
2937    partnersBtn.forEach(function (btn) {
2938      btn.onclick = function (e) {
2939        // e.preventDefault();
2940        partnerModal.style.display = "block";
2941        // scrollLock.disablePageScroll(partnerModal);
2942        setTimeout(function () {
2943          partnerModal.classList.add("show");
2944        }, 10);
2945      };
2946    });
2947    if (partnerModal) {
2948      var partnerClose = document.querySelector(".close-partner");
2949      partnerClose.onclick = function (e) {
2950        e.preventDefault();
2951        partnerModal.classList.remove("show");
2952        // scrollLock.enablePageScroll(partnerModal);
2953        enableScroll();
2954        setTimeout(function () {
2955          partnerModal.style.display = "none";
2956        }, 400);
2957      };
2958    }
2959  }
2960  var employeeBtn = document.querySelectorAll(".employee-block__bottom");
2961  var employeeModal = document.querySelector(".employee-modal");
2962  if (employeeBtn.length > 0) {
2963    employeeBtn.forEach(function (btn) {
2964      btn.onclick = function (e) {
2965        e.preventDefault();
2966        employeeModal.style.display = "block";
2967        // scrollLock.disablePageScroll(employeeModal);
2968        setTimeout(function () {
2969          employeeModal.classList.add("show");
2970        }, 10);
2971      };
2972    });
2973    if (employeeModal) {
2974      var employeeClose = document.querySelector(".close-employee");
2975      employeeClose.onclick = function (e) {
2976        e.preventDefault();
2977        employeeModal.classList.remove("show");
2978        // scrollLock.enablePageScroll(employeeModal);
2979        enableScroll();
2980        setTimeout(function () {
2981          employeeModal.style.display = "none";
2982        }, 400);
2983      };
2984    }
2985  }
2986  var buttons = document.querySelectorAll('.map__city');
2987  if (buttons.length === 1) {
2988    var parent = buttons[0].closest('.map');
2989    if (parent) {
2990      parent.classList.add('--singleMap');
2991      var pannel = parent.querySelector(".map__panel");
2992      if (pannel && location.pathname !== '/') {
2993        var baloon = pannel.querySelector('.baloon');
2994        if (baloon) {
2995          pannel.classList.add("open");
2996          baloon.classList.add('open');
2997          window.onload = function () {
2998            setTimeout(function () {
2999              var map = parent.querySelector('.map-block');
3000              if (map) {
3001                map.scrollIntoView({
3002                  block: "center",
3003                  behavior: "smooth"
3004                });
3005              }
3006            }, 100);
3007          };
3008        }
3009      }
3010    }
3011  }
3012  var videos = document.querySelectorAll('video');
3013  if (videos.length) {
3014    videos.forEach(function (video) {
3015      var parentNode = video.closest('.intro__pop-up');
3016      if (parentNode) {
3017        var playButton = parentNode.querySelector('.form-modal__play');
3018        if (playButton) {
3019          playButton.addEventListener('click', function () {
3020            togglePlay(video);
3021          });
3022          video.addEventListener('play', function () {
3023            playButton.hidden = !playButton.hidden;
3024          });
3025          video.addEventListener('pause', function () {
3026            playButton.hidden = !playButton.hidden;
3027          });
3028        }
3029      }
3030    });
3031  }
3032  function togglePlay(video) {
3033    if (video.paused || video.ended) {
3034      video.play();
3035    } else {
3036      video.pause();
3037    }
3038  }
3039  var radioSelects = document.querySelectorAll('.radio-select .form-group label');
3040  if (radioSelects.length) {
3041    radioSelects.forEach(function (el) {
3042      el.addEventListener('click', function () {
3043        var parent = event.target.closest('.radio-select').querySelector('.filter-button > span');
3044        if (parent) {
3045          parent.innerHTML = event.target.innerHTML;
3046        }
3047      });
3048      var input = el.previousElementSibling;
3049      if (input.checked) {
3050        var _parent = el.closest('.radio-select').querySelector('.filter-button > span');
3051        if (_parent) {
3052          _parent.innerHTML = el.innerHTML;
3053        }
3054      }
3055    });
3056  }
3057  var scrToBtn = document.querySelectorAll(".anchors__link");
3058  var velocity = .1;
3059  var pos = 0,
3060    topOffset = 0;
3061  var elemToScr;
3062  var start;
3063  if (scrToBtn.length > 0) {
3064    scrToBtn.forEach(function (btn) {
3065      btn.onclick = function (e) {
3066        e.preventDefault();
3067        var winYOffset = window.pageYOffset,
3068          hash = btn.getAttribute("href");
3069        elemToScr = document.querySelector(hash).getBoundingClientRect().top - topOffset, start = null;
3070        requestAnimationFrame(step);
3071        function step(time) {
3072          if (start === null) start = time;
3073          var progress = time - start,
3074            r = elemToScr < 0 ? Math.max(winYOffset - progress / velocity, winYOffset + elemToScr) : Math.min(winYOffset + progress / velocity, winYOffset + elemToScr);
3075          window.scrollTo(0, r);
3076          if (r != winYOffset + elemToScr) {
3077            requestAnimationFrame(step);
3078          } else return;
3079        }
3080      };
3081    });
3082  }
3083  var solveInfo = document.querySelectorAll(".solve__info");
3084  if (solveInfo) {
3085    solveInfo.forEach(function (info) {
3086      var parent = info.closest(".section-top");
3087      var txt = parent.querySelector(".section-top__aside");
3088      info.onclick = function (e) {
3089        e.preventDefault();
3090        if (window.innerWidth <= 1024) {
3091          txt.style.display = "flex";
3092          setTimeout(function () {
3093            txt.classList.add("show");
3094          }, 10);
3095        }
3096      };
3097    });
3098    var close = document.querySelectorAll(".section-top__aside_close");
3099    close.forEach(function (btn) {
3100      var parent = btn.closest(".section-top__aside");
3101      btn.onclick = function (e) {
3102        if (window.innerWidth <= 1024) {
3103          parent.classList.remove("show");
3104          setTimeout(function () {
3105            parent.style.display = "none";
3106          }, 100);
3107        }
3108      };
3109    });
3110  }
3111
3112  var vacancyLink = document.querySelector(".vacancy__link-send");
3113  var vacancyCheck = document.querySelector(".vacancy__send-agree input");
3114  if (vacancyLink) {
3115    vacancyCheck.parentNode.onanimationend = function (e) {
3116      vacancyCheck.parentNode.classList.remove("animate");
3117    };
3118    vacancyLink.onclick = function (e) {
3119      if (vacancyCheck && !vacancyCheck.checked) {
3120        vacancyCheck.parentNode.classList.add("animate");
3121        vacancyCheck.ona;
3122        e.preventDefault();
3123      }
3124    };
3125  }
3126  var surveyForm = document.querySelector(".survey__form form");
3127  var surveyAgree = document.querySelector(".survey__form .vacancy__send-agree input");
3128  if (surveyForm) {
3129    if (surveyForm.getAttribute('id') === 'custom-form') {
3130      return;
3131    }
3132    surveyAgree.parentNode.onanimationend = function (e) {
3133      surveyAgree.parentNode.classList.remove("animate");
3134    };
3135    surveyForm.onsubmit = function (e) {
3136      if (!surveyAgree.checked) {
3137        surveyAgree.parentNode.classList.add("animate");
3138        e.preventDefault();
3139        return false;
3140      }
3141    };
3142  }
3143  document.addEventListener('click', function (event) {
3144    var dataset = event.target.dataset;
3145    var target = event.target;
3146    if (dataset.showtext) {
3147      var text = target.parentElement.querySelector('.top-partner_text');
3148      ;
3149      if (text) {
3150        if (!text.style.maxHeight) {
3151          text.style.maxHeight = text.scrollHeight + 'px';
3152          target.innerHTML = target.dataset.hidetext;
3153        } else {
3154          text.style.maxHeight = null;
3155          target.innerHTML = target.dataset.showtext;
3156        }
3157      }
3158    }
3159  });
3160  var hideButton = function hideButton() {
3161    var partnersButtons = document.querySelectorAll('[data-showText]');
3162    if (partnersButtons.length) {
3163      partnersButtons.forEach(function (el) {
3164        var text = el.parentElement.querySelector('.top-partner_text');
3165        if (text.scrollHeight <= text.offsetHeight) {
3166          el.hidden = true;
3167          text.classList.remove('top-partner_text--gradient');
3168        } else {
3169          text.classList.add('top-partner_text--gradient');
3170        }
3171      });
3172    }
3173  };
3174  hideButton();
3175  window.addEventListener('resize', function () {
3176    hideButton();
3177  });
3178  var serviceText = document.querySelectorAll('.service .service__text');
3179  if (serviceText.length) {
3180    window.addEventListener('load', function () {
3181      serviceText.forEach(function (el) {
3182        if (el.scrollHeight > el.offsetHeight) {
3183          el.classList.add('service__text--gradient');
3184        }
3185      });
3186    });
3187  }
3188
3189  var block = document.querySelector('#developing__wrapper');
3190  if (block) {
3191    var _items = block.querySelectorAll('.developing__item');
3192    var images = block.querySelectorAll('.developing__item .img-wrapper');
3193    var numbers = block.querySelector('#developing__numbers');
3194    var imagesBlock = block.querySelector('#block-images');
3195    images.forEach(function (img, index) {
3196      img.parentNode.dataset.numberImg = index;
3197      var clone = img.cloneNode(true);
3198      clone.style.opacity = 0;
3199      clone.dataset.numberImg = index;
3200      imagesBlock.appendChild(clone);
3201    });
3202    if ('IntersectionObserver' in window) {
3203      var _observer = new IntersectionObserver(function (entryes) {
3204        entryes.forEach(function (el) {
3205          if (el.isIntersecting && window.innerWidth > 1024) {
3206            var _iterator2 = _createForOfIteratorHelper(imagesBlock.children),
3207              _step2;
3208            try {
3209              for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
3210                var img = _step2.value;
3211                if (img.dataset.numberImg === el.target.dataset.numberImg) {
3212                  img.style.opacity = 1;
3213                  numbers.innerHTML = "".concat(+img.dataset.numberImg + 1, "/").concat(_items.length);
3214                } else {
3215                  img.style.opacity = 0;
3216                }
3217              }
3218            } catch (err) {
3219              _iterator2.e(err);
3220            } finally {
3221              _iterator2.f();
3222            }
3223          }
3224        });
3225      });
3226      _items.forEach(function (el) {
3227        _observer.observe(el);
3228      });
3229    }
3230  }
3231
3232  // var forms = document.querySelectorAll("form");
3233  // var feedBack = document.querySelector('.feedBack');
3234  // if (feedBack) {
3235  //   var closeButton = feedBack.querySelectorAll('button');
3236  //   if (closeButton.length) {
3237  //     closeButton.forEach(function (el) {
3238  //       return el.addEventListener('click', modalHandler.bind(feedBack));
3239  //     });
3240  //   }
3241  // }
3242  //
3243  // if (forms.length) {
3244  //   var _iterator = _createForOfIteratorHelper(forms),
3245  //     _step;
3246  //   try {
3247  //     var _loop = function _loop() {
3248  //       var form = _step.value;
3249  //       if (form.getAttribute('id') !== 'custom-form') {
3250  //         form.addEventListener('submit', function () {
3251  //           var vacancyCheck = form.querySelector(".vacancy__send-agree input");
3252  //           if (vacancyCheck) {
3253  //             vacancyCheck.parentNode.onanimationend = function (e) {
3254  //               vacancyCheck.parentNode.classList.remove("animate");
3255  //             };
3256  //             if (!vacancyCheck.checked) {
3257  //               vacancyCheck.parentNode.classList.add("animate");
3258  //               event.preventDefault();
3259  //             }
3260  //           }
3261  //           if (feedBack) {
3262  //             modalHandler.apply(this.closest('.regModal'));
3263  //             modalHandler.apply(feedBack);
3264  //           }
3265  //         });
3266  //       }
3267  //     };
3268  //     for (_iterator.s(); !(_step = _iterator.n()).done;) {
3269  //       _loop();
3270  //     }
3271  //   } catch (err) {
3272  //     _iterator.e(err);
3273  //   } finally {
3274  //     _iterator.f();
3275  //   }
3276  // }
3277
3278});

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.