From e4d29c8c4c4d470b8be11e47f02dc37855042c08 Mon Sep 17 00:00:00 2001 From: Anna Lopatina Date: Mon, 17 Jul 2023 21:32:46 +0300 Subject: [PATCH 1/8] =?UTF-8?q?=D0=B0=D0=B1=D0=BE=D0=BD=D0=B5=D0=BC=D0=B5?= =?UTF-8?q?=D0=BD=D1=82=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build/css/style.css | 1455 +++++++++++++++++ build/css/style.min.css | 3 + build/css/style.min.css.map | 1 + build/fonts/AlumniSans-SemiBold.woff | Bin 0 -> 49924 bytes build/fonts/AlumniSans-SemiBold.woff2 | Bin 0 -> 35792 bytes build/fonts/Roboto-Condensed.woff | Bin 0 -> 93452 bytes build/fonts/Roboto-Condensed.woff2 | Bin 0 -> 66412 bytes build/fonts/RobotoCondensed-Bold.woff | Bin 0 -> 93648 bytes build/fonts/RobotoCondensed-Bold.woff2 | Bin 0 -> 66100 bytes build/fonts/RobotoCondensed-Light.woff | Bin 0 -> 92176 bytes build/fonts/RobotoCondensed-Light.woff2 | Bin 0 -> 64960 bytes build/fonts/rouble.woff | Bin 0 -> 4452 bytes build/fonts/rouble.woff2 | Bin 0 -> 2796 bytes build/img/Group 2 (1).png | Bin 0 -> 29185 bytes build/img/Group 2.png | Bin 0 -> 10051 bytes build/img/Rectangle 5.2 (1).jpg | Bin 0 -> 296219 bytes build/img/Rectangle 5.2.jpg | Bin 0 -> 97171 bytes build/img/gym-background-desktop.jpg | Bin 0 -> 258991 bytes build/img/gym-background-desktop@2x.jpg | Bin 0 -> 857603 bytes build/img/intro-background-desktop.png | Bin 0 -> 298280 bytes build/img/intro-background-desktop@2x.png | Bin 0 -> 1032666 bytes build/img/sprite.svg | 1 + build/img/sprite/icon-close.svg | 1 + build/img/svg/logo.svg | 10 + build/img/svg/not-needed-in-sprite.svg | 1 + build/img/video-background-desktop.jpg | Bin 0 -> 97171 bytes build/img/video-background-desktop@2x.jpg | Bin 0 -> 296219 bytes build/img/video-button.png | Bin 0 -> 10051 bytes build/img/video-button@2x.png | Bin 0 -> 29185 bytes .../\321\204\320\276\321\202\320\276 (1).jpg" | Bin 0 -> 857603 bytes .../img/\321\204\320\276\321\202\320\276.jpg" | Bin 0 -> 258991 bytes build/index.html | 134 ++ build/js/main.min.js | 1233 ++++++++++++++ build/js/main.min.js.map | 1 + build/js/vendor.min.js | 1 + gulpfile.js | 2 +- source/fonts/AlumniSans-SemiBold.woff | Bin 0 -> 49924 bytes source/fonts/AlumniSans-SemiBold.woff2 | Bin 0 -> 35792 bytes source/fonts/Roboto-Condensed.woff | Bin 0 -> 93452 bytes source/fonts/Roboto-Condensed.woff2 | Bin 0 -> 66412 bytes source/fonts/RobotoCondensed-Bold.woff | Bin 0 -> 93648 bytes source/fonts/RobotoCondensed-Bold.woff2 | Bin 0 -> 66100 bytes source/fonts/RobotoCondensed-Light.woff | Bin 0 -> 92176 bytes source/fonts/RobotoCondensed-Light.woff2 | Bin 0 -> 64960 bytes source/img/gym-background-desktop.jpg | Bin 0 -> 258991 bytes source/img/gym-background-desktop@2x.jpg | Bin 0 -> 857603 bytes source/img/intro-background-desktop.png | Bin 0 -> 298280 bytes source/img/intro-background-desktop@2x.png | Bin 0 -> 1032666 bytes source/img/svg/logo.svg | 10 + source/img/video-background-desktop.jpg | Bin 0 -> 97171 bytes source/img/video-background-desktop@2x.jpg | Bin 0 -> 296219 bytes source/img/video-button.png | Bin 0 -> 10051 bytes source/img/video-button@2x.png | Bin 0 -> 29185 bytes source/index.html | 136 +- source/sass/blocks/button.scss | 15 + source/sass/blocks/gym.scss | 61 + source/sass/blocks/header.scss | 35 + source/sass/blocks/intro.scss | 60 + source/sass/global/container.scss | 21 +- source/sass/global/fonts.scss | 32 +- source/sass/global/reboot.scss | 14 +- source/sass/mixins.scss | 50 +- source/sass/style.scss | 4 + source/sass/variables.scss | 7 +- source/sitemap.html | 39 - 65 files changed, 3219 insertions(+), 108 deletions(-) create mode 100644 build/css/style.css create mode 100644 build/css/style.min.css create mode 100644 build/css/style.min.css.map create mode 100644 build/fonts/AlumniSans-SemiBold.woff create mode 100644 build/fonts/AlumniSans-SemiBold.woff2 create mode 100644 build/fonts/Roboto-Condensed.woff create mode 100644 build/fonts/Roboto-Condensed.woff2 create mode 100644 build/fonts/RobotoCondensed-Bold.woff create mode 100644 build/fonts/RobotoCondensed-Bold.woff2 create mode 100644 build/fonts/RobotoCondensed-Light.woff create mode 100644 build/fonts/RobotoCondensed-Light.woff2 create mode 100644 build/fonts/rouble.woff create mode 100644 build/fonts/rouble.woff2 create mode 100644 build/img/Group 2 (1).png create mode 100644 build/img/Group 2.png create mode 100644 build/img/Rectangle 5.2 (1).jpg create mode 100644 build/img/Rectangle 5.2.jpg create mode 100644 build/img/gym-background-desktop.jpg create mode 100644 build/img/gym-background-desktop@2x.jpg create mode 100644 build/img/intro-background-desktop.png create mode 100644 build/img/intro-background-desktop@2x.png create mode 100644 build/img/sprite.svg create mode 100644 build/img/sprite/icon-close.svg create mode 100644 build/img/svg/logo.svg create mode 100644 build/img/svg/not-needed-in-sprite.svg create mode 100644 build/img/video-background-desktop.jpg create mode 100644 build/img/video-background-desktop@2x.jpg create mode 100644 build/img/video-button.png create mode 100644 build/img/video-button@2x.png create mode 100644 "build/img/\321\204\320\276\321\202\320\276 (1).jpg" create mode 100644 "build/img/\321\204\320\276\321\202\320\276.jpg" create mode 100644 build/index.html create mode 100644 build/js/main.min.js create mode 100644 build/js/main.min.js.map create mode 100644 build/js/vendor.min.js create mode 100644 source/fonts/AlumniSans-SemiBold.woff create mode 100644 source/fonts/AlumniSans-SemiBold.woff2 create mode 100644 source/fonts/Roboto-Condensed.woff create mode 100644 source/fonts/Roboto-Condensed.woff2 create mode 100644 source/fonts/RobotoCondensed-Bold.woff create mode 100644 source/fonts/RobotoCondensed-Bold.woff2 create mode 100644 source/fonts/RobotoCondensed-Light.woff create mode 100644 source/fonts/RobotoCondensed-Light.woff2 create mode 100644 source/img/gym-background-desktop.jpg create mode 100644 source/img/gym-background-desktop@2x.jpg create mode 100644 source/img/intro-background-desktop.png create mode 100644 source/img/intro-background-desktop@2x.png create mode 100644 source/img/svg/logo.svg create mode 100644 source/img/video-background-desktop.jpg create mode 100644 source/img/video-background-desktop@2x.jpg create mode 100644 source/img/video-button.png create mode 100644 source/img/video-button@2x.png create mode 100644 source/sass/blocks/button.scss create mode 100644 source/sass/blocks/gym.scss create mode 100644 source/sass/blocks/header.scss create mode 100644 source/sass/blocks/intro.scss delete mode 100644 source/sitemap.html diff --git a/build/css/style.css b/build/css/style.css new file mode 100644 index 000000000..35bf3e055 --- /dev/null +++ b/build/css/style.css @@ -0,0 +1,1455 @@ +/* stylelint-disable */ +/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */ +/* Document + ========================================================================== */ +/** + * 1. Correct the line height in all browsers. + * 2. Prevent adjustments of font size after orientation changes in iOS. + */ +html { + line-height: 1.15; /* 1 */ + -webkit-text-size-adjust: 100%; /* 2 */ +} + +/* Sections + ========================================================================== */ +/** +* Remove the margin in all browsers. +*/ +body { + margin: 0; +} + +/** +* Render the `main` element consistently in IE. +*/ +main { + display: block; +} + +/** +* Correct the font size and margin on `h1` elements within `section` and +* `article` contexts in Chrome, Firefox, and Safari. +*/ +h1 { + margin: 0.67em 0; + font-size: 2em; +} + +/* Grouping content + ========================================================================== */ +/** +* 1. Add the correct box sizing in Firefox. +* 2. Show the overflow in Edge and IE. +*/ +hr { + -webkit-box-sizing: content-box; + box-sizing: content-box; /* 1 */ + height: 0; /* 1 */ + overflow: visible; /* 2 */ +} + +/** +* 1. Correct the inheritance and scaling of font size in all browsers. +* 2. Correct the odd `em` font sizing in all browsers. +*/ +pre { + font-size: 1em; /* 2 */ + font-family: monospace, monospace; /* 1 */ +} + +/* Text-level semantics + ========================================================================== */ +/** +* Remove the gray background on active links in IE 10. +*/ +a { + background-color: transparent; +} + +/** +* 1. Remove the bottom border in Chrome 57- +* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. +*/ +abbr[title] { + text-decoration: underline; /* 2 */ + -webkit-text-decoration: underline dotted; + text-decoration: underline dotted; /* 2 */ + border-bottom: none; /* 1 */ +} + +/** +* Add the correct font weight in Chrome, Edge, and Safari. +*/ +b, +strong { + font-weight: bolder; +} + +/** +* 1. Correct the inheritance and scaling of font size in all browsers. +* 2. Correct the odd `em` font sizing in all browsers. +*/ +code, +kbd, +samp { + font-size: 1em; /* 2 */ + font-family: monospace, monospace; /* 1 */ +} + +/** +* Add the correct font size in all browsers. +*/ +small { + font-size: 80%; +} + +/** +* Prevent `sub` and `sup` elements from affecting the line height in +* all browsers. +*/ +sub, +sup { + position: relative; + font-size: 75%; + line-height: 0; + vertical-align: baseline; +} + +sub { + bottom: -0.25em; +} + +sup { + top: -0.5em; +} + +/* Embedded content + ========================================================================== */ +/** +* Remove the border on images inside links in IE 10. +*/ +img { + border-style: none; +} + +/* Forms + ========================================================================== */ +/** +* 1. Change the font styles in all browsers. +* 2. Remove the margin in Firefox and Safari. +*/ +button, +input, +optgroup, +select, +textarea { + margin: 0; /* 2 */ + font-size: 100%; /* 1 */ + line-height: 1.15; /* 1 */ + font-family: inherit; /* 1 */ +} + +/** +* Show the overflow in IE. +* 1. Show the overflow in Edge. +*/ +button, +input { + /* 1 */ + overflow: visible; +} + +/** +* Remove the inheritance of text transform in Edge, Firefox, and IE. +* 1. Remove the inheritance of text transform in Firefox. +*/ +button, +select { + /* 1 */ + text-transform: none; +} + +/** +* Correct the inability to style clickable types in iOS and Safari. +*/ +button, +[type=button], +[type=reset], +[type=submit] { + -webkit-appearance: button; +} + +/** +* Remove the inner border and padding in Firefox. +*/ +button::-moz-focus-inner, +[type=button]::-moz-focus-inner, +[type=reset]::-moz-focus-inner, +[type=submit]::-moz-focus-inner { + padding: 0; + border-style: none; +} + +/** +* Restore the focus styles unset by the previous rule. +*/ +button:-moz-focusring, +[type=button]:-moz-focusring, +[type=reset]:-moz-focusring, +[type=submit]:-moz-focusring { + outline: 1px dotted ButtonText; +} + +/** +* Correct the padding in Firefox. +*/ +fieldset { + padding: 0.35em 0.75em 0.625em; +} + +/** +* 1. Correct the text wrapping in Edge and IE. +* 2. Correct the color inheritance from `fieldset` elements in IE. +* 3. Remove the padding so developers are not caught out when they zero out +* `fieldset` elements in all browsers. +*/ +legend { + display: table; /* 1 */ + -webkit-box-sizing: border-box; + box-sizing: border-box; /* 1 */ + max-width: 100%; /* 1 */ + padding: 0; /* 3 */ + color: inherit; /* 2 */ + white-space: normal; /* 1 */ +} + +/** +* Add the correct vertical alignment in Chrome, Firefox, and Opera. +*/ +progress { + vertical-align: baseline; +} + +/** +* Remove the default vertical scrollbar in IE 10+. +*/ +textarea { + overflow: auto; +} + +/** +* 1. Add the correct box sizing in IE 10. +* 2. Remove the padding in IE 10. +*/ +[type=checkbox], +[type=radio] { + -webkit-box-sizing: border-box; + box-sizing: border-box; /* 1 */ + padding: 0; /* 2 */ +} + +/** +* Correct the cursor style of increment and decrement buttons in Chrome. +*/ +[type=number]::-webkit-inner-spin-button, +[type=number]::-webkit-outer-spin-button { + height: auto; +} + +/** +* 1. Correct the odd appearance in Chrome and Safari. +* 2. Correct the outline style in Safari. +*/ +[type=search] { + outline-offset: -2px; /* 2 */ + -webkit-appearance: textfield; /* 1 */ +} + +/** +* Remove the inner padding in Chrome and Safari on macOS. +*/ +[type=search]::-webkit-search-decoration { + -webkit-appearance: none; +} + +/** +* 1. Correct the inability to style clickable types in iOS and Safari. +* 2. Change font properties to `inherit` in Safari. +*/ +::-webkit-file-upload-button { + font: inherit; /* 2 */ + -webkit-appearance: button; /* 1 */ +} + +/* Interactive + ========================================================================== */ +/* +* Add the correct display in Edge, IE 10+, and Firefox. +*/ +details { + display: block; +} + +/* +* Add the correct display in all browsers. +*/ +summary { + display: list-item; +} + +/* Misc + ========================================================================== */ +/** +* Add the correct display in IE 10+. +*/ +template { + display: none; +} + +/** +* Add the correct display in IE 10. +*/ +[hidden] { + display: none; +} + +@font-face { + font-style: normal; + font-weight: 400; + font-family: "Roboto Condensed"; + font-display: swap; + src: url("../fonts/RobotoCondensed.woff2") format("woff2"); +} +@font-face { + font-style: normal; + font-weight: 300; + font-family: "Roboto Condensed"; + font-display: swap; + src: url("../fonts/RobotoCondensed-Light.woff2") format("woff2"); +} +@font-face { + font-style: normal; + font-weight: 600; + font-family: "Roboto Condensed"; + font-display: swap; + src: url("../fonts/RobotoCondensed-Bold.woff2") format("woff2"); +} +@font-face { + font-style: normal; + font-weight: 600; + font-family: "Alumni Sans"; + font-display: swap; + src: url("../fonts/AlumniSans-SemiBold.woff2") format("woff2"); +} +*, +*::before, +*::after { + -webkit-box-sizing: border-box; + box-sizing: border-box; +} + +html, +body { + margin: 0; + padding: 0; + min-height: 100vh; +} + +html { + font-style: normal; + font-weight: 300; + font-size: 16px; + line-height: 24px; + font-family: "Roboto Condensed", "Arial", sans-serif; + color: #102654; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + text-rendering: optimizeLegibility; +} + +body { + width: 100%; + height: 100%; + background-color: #ffffff; +} + +a { + color: #000000; + text-decoration: none; +} + +img, +video { + display: block; + max-width: 100%; + height: auto; +} + +textarea { + resize: none; +} + +input:-webkit-autofill { + -webkit-box-shadow: inset 0 0 0 1000px #ffffff; + box-shadow: inset 0 0 0 1000px #ffffff; + -webkit-text-fill-color: #000000; +} + +input, +textarea { + border-radius: 0; +} +input::-webkit-input-placeholder, textarea::-webkit-input-placeholder { + opacity: 1; +} +input::-moz-placeholder, textarea::-moz-placeholder { + opacity: 1; +} +input:-ms-input-placeholder, textarea:-ms-input-placeholder { + opacity: 1; +} +input::-ms-input-placeholder, textarea::-ms-input-placeholder { + opacity: 1; +} +input::placeholder, +textarea::placeholder { + opacity: 1; +} +input:invalid, +textarea:invalid { + -webkit-box-shadow: none; + box-shadow: none; +} + +select { + border-radius: 0; +} + +input::-ms-clear, input::-ms-reveal { + display: none; +} + +input[type=search]::-webkit-search-decoration, +input[type=search]::-webkit-search-cancel-button, +input[type=search]::-webkit-search-results-button, +input[type=search]::-webkit-search-results-decoration { + -webkit-appearance: none; + appearance: none; +} + +input::-webkit-outer-spin-button, +input::-webkit-inner-spin-button { + margin: 0; + -webkit-appearance: none; + appearance: none; +} + +input[type=number] { + -webkit-appearance: textfield; + -moz-appearance: textfield; + appearance: textfield; +} + +select, +textarea, +input:matches([type=email], +[type=number], +[type=password], +[type=search], +[type=tel], +[type=text], +[type=url]) { + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} + +button, +[type=button], +[type=reset], +[type=submit] { + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} + +h1, h2, h3 { + margin: 0; + padding: 0; +} + +p { + margin: 0; + padding: 0; +} + +.wrapper { + position: relative; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + min-height: 100vh; + /* stylelint-disable-next-line */ + min-height: calc(100 * var(--vh, 1vh)); +} +.wrapper .header, +.wrapper .footer { + -ms-flex-negative: 0; + flex-shrink: 0; +} +.wrapper main { + -webkit-box-flex: 1; + -ms-flex-positive: 1; + flex-grow: 1; +} + +.rouble { + font-family: "Rouble", "Arial", sans-serif; + /* stylelint-disable */ + text-transform: lowercase !important; + font-weight: 400 !important; + /* stylelint-enable */ +} + +.visually-hidden { + position: absolute; + width: 1px; + height: 1px; + margin: -1px; + padding: 0; + overflow: hidden; + white-space: nowrap; + border: 0; + clip: rect(0 0 0 0); + -webkit-clip-path: inset(100%); + clip-path: inset(100%); +} + +.scroll-lock-ios { + position: fixed; + overflow: hidden; +} + +.scroll-lock { + overflow: hidden; +} + +.no-scrollbar { + -ms-overflow-style: none; + scrollbar-width: none; +} +.no-scrollbar::-webkit-scrollbar { + display: none; +} + +.no-transition { + /* stylelint-disable-next-line */ + -webkit-transition: none !important; + transition: none !important; +} + +.js-focus-visible :focus:not(.focus-visible) { + outline: none; +} + +.container { + width: 100%; + max-width: 1366px; + margin: 0 auto; +} +.btn { + display: -webkit-inline-box; + display: -ms-inline-flexbox; + display: inline-flex; + padding: 10px 20px; + color: #ffffff; + background-color: #2c39f2; + border: none; + cursor: pointer; + -webkit-transition: opacity 0.3s ease; + transition: opacity 0.3s ease; +} +.btn--red { + background-color: #ff1553; +} +.btn:disabled { + opacity: 0.5; + pointer-events: none; +} +@media (hover: hover) { + .btn:hover:not(.focus-visible) { + opacity: 0.8; + } +} +.btn.focus-visible:focus { + opacity: 0.8; +} + +.modal { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1000; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + overflow-y: auto; + -webkit-overflow-scrolling: touch; + background-color: rgba(0, 0, 0, 0.8); + -webkit-transform: scale(1.2); + -ms-transform: scale(1.2); + transform: scale(1.2); + visibility: hidden; + opacity: 0; + -webkit-transition: opacity 0.6s cubic-bezier(0.55, 0, 0.1, 1), visibility 0.6s cubic-bezier(0.55, 0, 0.1, 1), -webkit-transform 0.6s cubic-bezier(0.55, 0, 0.1, 1); + transition: opacity 0.6s cubic-bezier(0.55, 0, 0.1, 1), visibility 0.6s cubic-bezier(0.55, 0, 0.1, 1), -webkit-transform 0.6s cubic-bezier(0.55, 0, 0.1, 1); + transition: opacity 0.6s cubic-bezier(0.55, 0, 0.1, 1), transform 0.6s cubic-bezier(0.55, 0, 0.1, 1), visibility 0.6s cubic-bezier(0.55, 0, 0.1, 1); + transition: opacity 0.6s cubic-bezier(0.55, 0, 0.1, 1), transform 0.6s cubic-bezier(0.55, 0, 0.1, 1), visibility 0.6s cubic-bezier(0.55, 0, 0.1, 1), -webkit-transform 0.6s cubic-bezier(0.55, 0, 0.1, 1); + pointer-events: none; + -ms-overflow-style: none; + scrollbar-width: none; +} +.modal::-webkit-scrollbar { + display: none; +} +.modal__wrapper { + position: relative; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -ms-flex-negative: 0; + flex-shrink: 0; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + width: 100%; + min-height: 100%; + padding: 60px 40px; +} +@media (max-width: 767px) { + .modal__wrapper { + padding: 60px 16px; + } +} +.modal__overlay { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + cursor: pointer; +} +.modal__content { + position: relative; + width: 600px; + padding: 40px; + background-color: #ffffff; +} +@media (max-width: 767px) { + .modal__content { + width: 100%; + padding: 20px; + } +} +.modal__close-btn { + position: absolute; + top: 22px; + right: 22px; + z-index: 1; + width: 40px; + height: 40px; + padding: 0; + background: rgba(255, 255, 255, 0); + border: none; + cursor: pointer; +} +.modal--responsive .modal__content { + width: 100%; +} +.modal--fit-content .modal__content { + width: auto; +} +@media (max-width: 767px) { + .modal--fit-content .modal__content { + width: 100%; + } +} +.modal--no-scale { + -webkit-transform: none; + -ms-transform: none; + transform: none; +} +.modal--preload { + -webkit-transition: none; + transition: none; +} +.modal.is-active { + -webkit-transform: scale(1); + -ms-transform: scale(1); + transform: scale(1); + visibility: visible; + opacity: 1; + pointer-events: auto; +} + +.custom-input, +.custom-textarea { + position: relative; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + width: 530px; + padding: 14px 0 28px; +} +@media screen and (max-width: 767px) { + .custom-input, +.custom-textarea { + padding: 4px 0 48px; + width: 100%; + } +} +.custom-input label, +.custom-textarea label { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + width: 100%; +} +@media screen and (max-width: 767px) { + .custom-input label, +.custom-textarea label { + -webkit-box-align: start; + -ms-flex-align: start; + align-items: flex-start; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + } +} +.custom-input label input, +.custom-input label textarea, +.custom-textarea label input, +.custom-textarea label textarea { + -webkit-box-flex: 1; + -ms-flex-positive: 1; + flex-grow: 1; + max-width: 300px; + min-height: 48px; + margin-left: auto; + padding: 10px; + border: 2px solid rgba(0, 0, 0, 0.2); + border-radius: 5px; + outline: none; + -webkit-transition: border 0.3s ease; + transition: border 0.3s ease; +} +@media screen and (max-width: 767px) { + .custom-input label input, +.custom-input label textarea, +.custom-textarea label input, +.custom-textarea label textarea { + max-width: unset; + width: 100%; + } +} +.custom-input label input:hover, +.custom-input label textarea:hover, +.custom-textarea label input:hover, +.custom-textarea label textarea:hover { + border: 2px solid rgba(0, 0, 0, 0.5); +} +.custom-input label input:focus, +.custom-input label textarea:focus, +.custom-textarea label input:focus, +.custom-textarea label textarea:focus { + border: 2px solid rgba(0, 0, 0, 0.8); +} +@media screen and (max-width: 767px) { + .custom-input__label, +.custom-textarea__label { + margin: 0 0 18px 0; + } +} +.custom-input__error, +.custom-textarea__error { + position: absolute; + right: 0; + bottom: 35px; + color: #ff1553; + opacity: 0; + -webkit-transition: opacity 0.3s ease; + transition: opacity 0.3s ease; +} +@media screen and (max-width: 767px) { + .custom-input__error, +.custom-textarea__error { + bottom: 20px; + } +} +.custom-input.is-invalid input, +.custom-input.is-invalid textarea, +.custom-textarea.is-invalid input, +.custom-textarea.is-invalid textarea { + border: 2px solid #ff1553; +} +.custom-input.is-invalid input:focus, .custom-input.is-invalid input:hover, +.custom-input.is-invalid textarea:focus, +.custom-input.is-invalid textarea:hover, +.custom-textarea.is-invalid input:focus, +.custom-textarea.is-invalid input:hover, +.custom-textarea.is-invalid textarea:focus, +.custom-textarea.is-invalid textarea:hover { + border: 2px solid rgba(255, 21, 83, 0.5); +} +.custom-input.is-valid input, +.custom-textarea.is-valid input { + border: 2px solid #22b259; +} +.custom-input.is-valid input:focus, .custom-input.is-valid input:hover, +.custom-textarea.is-valid input:focus, +.custom-textarea.is-valid input:hover { + border: 2px solid rgba(34, 178, 89, 0.5); +} +.custom-input .input-message, +.custom-textarea .input-message { + position: absolute; + right: 0; + bottom: -5px; +} +.custom-input .input-message.is-invalid, +.custom-textarea .input-message.is-invalid { + color: #ff0000; +} +.custom-input .input-message.is-valid, +.custom-textarea .input-message.is-valid { + color: #15ab07; +} + +.custom-toggle { + position: relative; + font-size: 18px; + line-height: 27px; + font-weight: 300; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + width: 500px; + padding: 14px 0 10px 36px; +} +@media screen and (max-width: 767px) { + .custom-toggle { + padding: 14px 0 10px 0; + width: 100%; + } +} +.custom-toggle:last-of-type { + padding: 14px 0 58px 36px; +} +@media screen and (max-width: 767px) { + .custom-toggle:last-of-type { + padding: 14px 0 58px 0; + } +} +.custom-toggle input { + position: absolute; + width: 1px; + height: 1px; + margin: -1px; + clip: rect(0 0 0 0); +} +.custom-toggle label { + position: relative; + padding-left: 52px; + cursor: pointer; +} +.custom-toggle label span { + margin-bottom: 0; + margin-left: 0; +} +.custom-toggle--checkbox .custom-toggle__icon { + position: absolute; + top: 0; + left: 0; + width: 28px; + height: 28px; + border: 1.5px solid #2c39f2; + -webkit-transition: border 0.3s ease; + transition: border 0.3s ease; +} +.custom-toggle--checkbox .custom-toggle__icon::before { + content: ""; + position: absolute; + top: 50%; + left: 50%; + width: 20px; + height: 20px; + background-color: rgba(44, 57, 242, 0); + -webkit-transform: translate(-50%, -50%); + -ms-transform: translate(-50%, -50%); + transform: translate(-50%, -50%); + -webkit-transition: background-color 0.3s ease; + transition: background-color 0.3s ease; +} +.custom-toggle--radio .custom-toggle__icon { + position: absolute; + top: 0; + left: 0; + width: 28px; + height: 28px; + border: 1px solid #2c39f2; + border-radius: 50%; + -webkit-transition: border 0.3s ease; + transition: border 0.3s ease; +} +.custom-toggle--radio .custom-toggle__icon::before { + content: ""; + position: absolute; + top: 50%; + left: 50%; + width: 20px; + height: 20px; + color: rgba(255, 255, 255, 0); + border-radius: 50%; + -webkit-transform: translate(-50%, -50%); + -ms-transform: translate(-50%, -50%); + transform: translate(-50%, -50%); + -webkit-transition: color 0.3s ease; + transition: color 0.3s ease; +} +.custom-toggle input:checked + .custom-toggle__icon { + border: 1.5px solid #2c39f2; +} +.custom-toggle input:checked + .custom-toggle__icon::before { + background-color: #2c39f2; +} +.custom-toggle.is-invalid label span { + color: #ff1553; +} +.custom-toggle .input-message { + position: absolute; + right: 0; + bottom: -5px; +} +.custom-toggle .input-message.is-invalid { + color: #ff0000; +} +.custom-toggle .input-message.is-valid { + color: #15ab07; +} + +.custom-select { + position: relative; + width: 300px; + padding: 14px 0 28px; + margin: 0 0 44px 0; + /* &.is-valid { + .custom-select__button { + border: 2px solid $color-eucalyptus; + + &:focus, + &:hover { + border: 2px solid rgba($color-eucalyptus, 0.5); + } + } + } */ +} +@media screen and (max-width: 767px) { + .custom-select { + padding: 4px 0 14px; + width: 100%; + } +} +.custom-select__label { + position: absolute; + top: 50%; + left: 10px; + -webkit-transform: translateY(-50%); + -ms-transform: translateY(-50%); + transform: translateY(-50%); + -webkit-transition: opacity 0.3s ease, -webkit-transform 0.3s ease; + transition: opacity 0.3s ease, -webkit-transform 0.3s ease; + transition: transform 0.3s ease, opacity 0.3s ease; + transition: transform 0.3s ease, opacity 0.3s ease, -webkit-transform 0.3s ease; + pointer-events: none; +} +@media screen and (max-width: 767px) { + .custom-select__label { + -webkit-transform: translateY(calc(-50% - 5px)); + -ms-transform: translateY(calc(-50% - 5px)); + transform: translateY(calc(-50% - 5px)); + } +} +.custom-select__placeholder { + position: absolute; + top: 50%; + left: 10px; + -webkit-transform: translateY(-50%); + -ms-transform: translateY(-50%); + transform: translateY(-50%); + -webkit-transition: opacity 0.3s ease, -webkit-transform 0.3s ease; + transition: opacity 0.3s ease, -webkit-transform 0.3s ease; + transition: transform 0.3s ease, opacity 0.3s ease; + transition: transform 0.3s ease, opacity 0.3s ease, -webkit-transform 0.3s ease; + pointer-events: none; +} +@media screen and (max-width: 767px) { + .custom-select__placeholder { + -webkit-transform: translateY(calc(-50% - 5px)); + -ms-transform: translateY(calc(-50% - 5px)); + transform: translateY(calc(-50% - 5px)); + } +} +.custom-select select { + position: absolute; + width: 1px; + height: 1px; + margin: -1px; + padding: 0; + overflow: hidden; + white-space: nowrap; + border: 0; + clip: rect(0 0 0 0); + -webkit-clip-path: inset(100%); + clip-path: inset(100%); +} +.custom-select__button { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + width: 100%; + height: 48px; + padding: 5px 10px; + background-color: rgba(255, 255, 255, 0); + border: 2px solid rgba(0, 0, 0, 0.2); + border-radius: 5px; + outline: none; + cursor: pointer; + -webkit-transition: border 0.3s ease; + transition: border 0.3s ease; +} +.custom-select__button:hover { + border: 2px solid rgba(0, 0, 0, 0.5); +} +.custom-select__button:focus { + border: 2px solid rgba(0, 0, 0, 0.8); +} +.custom-select__button:disabled { + pointer-events: none; + opacity: 0.3; +} +.custom-select__list { + position: absolute; + bottom: 10px; + z-index: 1; + width: 100%; + max-height: 100px; + margin: 0; + padding: 0; + overflow-y: auto; + list-style: none; + background-color: #ffffff; + border: 2px solid #000000; + -webkit-transform: translateY(100%); + -ms-transform: translateY(100%); + transform: translateY(100%); + visibility: hidden; + opacity: 0; + -webkit-transition: visibility 0.3s ease, opacity 0.3s ease; + transition: visibility 0.3s ease, opacity 0.3s ease; +} +.custom-select__item { + padding: 5px; + outline: none; + cursor: pointer; + -webkit-transition: background-color 0.3s ease; + transition: background-color 0.3s ease; +} +.custom-select__item[aria-selected=true] { + background-color: rgba(0, 0, 0, 0.2); +} +@media (hover: hover) { + .custom-select__item[aria-selected=true]:hover:not(.focus-visible) { + background-color: rgba(0, 0, 0, 0.2); + } +} +.custom-select__item[aria-selected=true].focus-visible:focus { + background-color: rgba(0, 0, 0, 0.2); +} +@media (hover: hover) { + .custom-select__item:hover:not(.focus-visible) { + background-color: rgba(0, 0, 0, 0.4); + } +} +.custom-select__item.focus-visible:focus { + background-color: rgba(0, 0, 0, 0.4); +} +.custom-select__error { + position: absolute; + bottom: -15px; + left: 0; + color: #ff1553; + opacity: 0; + -webkit-transition: opacity 0.1s ease; + transition: opacity 0.1s ease; +} +.custom-select__text { + font-size: 20px; + line-height: 24px; + -ms-flex-negative: 0; + flex-shrink: 0; + width: 80%; + overflow: hidden; + text-align: left; + white-space: nowrap; + text-overflow: ellipsis; + opacity: 0; + -webkit-transition: opacity 0.3s ease 0.1s; + transition: opacity 0.3s ease 0.1s; +} +.custom-select__text br { + display: none; +} +.custom-select__icon { + -ms-flex-negative: 0; + flex-shrink: 0; + width: 20px; + height: 10px; + margin-left: auto; + background-color: #000000; + -webkit-transition: -webkit-transform 0.3s ease; + transition: -webkit-transform 0.3s ease; + transition: transform 0.3s ease; + transition: transform 0.3s ease, -webkit-transform 0.3s ease; + -webkit-clip-path: polygon(100% 0, 100% 20%, 50% 100%, 0 20%, 0 0, 50% 80%); + clip-path: polygon(100% 0, 100% 20%, 50% 100%, 0 20%, 0 0, 50% 80%); +} +.custom-select.is-disabled { + pointer-events: none; +} +.custom-select.is-disabled .custom-select__list { + display: none; +} +.custom-select.open-up .custom-select__list { + bottom: auto; + top: 0; + -webkit-transform: translateY(calc(-100% + 10px)); + -ms-transform: translateY(calc(-100% + 10px)); + transform: translateY(calc(-100% + 10px)); +} +.custom-select.is-open .custom-select__list { + visibility: visible; + opacity: 1; +} +.custom-select.is-open .custom-select__icon { + -webkit-transform: rotate(180deg); + -ms-transform: rotate(180deg); + transform: rotate(180deg); +} +.custom-select.is-open .custom-select__label { + opacity: 0; +} +.custom-select.not-empty .custom-select__text { + opacity: 1; +} +.custom-select.not-empty .custom-select__label { + opacity: 0; +} +.custom-select.not-empty .custom-select__placeholder { + opacity: 0; +} +.custom-select.is-invalid .custom-select__error { + opacity: 1; +} +.custom-select.is-invalid .custom-select__button { + border: 2px solid #ff1553; +} +.custom-select.is-invalid .custom-select__button:focus, .custom-select.is-invalid .custom-select__button:hover { + border: 2px solid rgba(255, 21, 83, 0.5); +} +.custom-select--placeholder .custom-select__label { + -webkit-transform: translateY(calc(-50% - 40px)); + -ms-transform: translateY(calc(-50% - 40px)); + transform: translateY(calc(-50% - 40px)); + opacity: 1; +} +.custom-select--placeholder.is-open .custom-select__label { + opacity: 1; +} +.custom-select--placeholder.not-empty .custom-select__label { + opacity: 1; +} +.custom-select.slide-up.not-empty .custom-select__label, .custom-select.slide-up.is-open .custom-select__label { + -webkit-transform: translateY(calc(-50% - 40px)); + -ms-transform: translateY(calc(-50% - 40px)); + transform: translateY(calc(-50% - 40px)); + opacity: 1; +} +.custom-select.slide-up.not-empty .custom-select__text, .custom-select.slide-up.is-open .custom-select__text { + opacity: 1; +} +.custom-select .input-message { + position: absolute; + right: 0; + bottom: -5px; +} +.custom-select .input-message.is-invalid { + color: #ff0000; +} +.custom-select .input-message.is-valid { + color: #15ab07; +} + +header { + margin: 0 auto; + width: 1366px; +} +header::before { + position: absolute; + background-image: conic-gradient(from 151deg at 16.03% 39.06%, #003D85 32.2363382578deg, #B80027 313.3060026169deg); + width: 100%; + height: 642px; + content: ""; +} + +.header__logo { + position: absolute; + -webkit-box-ordinal-group: 2; + -ms-flex-order: 1; + order: 1; + top: 25px; + left: 103px; +} + +.header__contact-link { + position: absolute; + -webkit-box-ordinal-group: 2; + -ms-flex-order: 1; + order: 1; + top: 16px; + right: 107px; + font-family: ff-Alumnisans; + font-size: 24px; + font-weight: 600; + line-height: normal; + letter-spacing: -0.9px; + font-style: normal; + color: #ffffff; +} + +.intro { + margin: 0 auto; + width: 1366px; + padding: 35px 240px 51px 250px; +} + +.intro__wrapper { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: justify; + -ms-flex-pack: justify; + justify-content: space-between; + padding-right: 64px; +} + +.intro__text { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-align: end; + -ms-flex-align: end; + align-items: flex-end; + text-align: right; +} + +.intro__title { + font-family: "Alumni Sans", "Arial", sans-serif; + font-size: 50px; + font-weight: 600; + line-height: 114px; + letter-spacing: 1.8px; + color: #ffffff; + padding-bottom: 46px; +} + +.intro__subtitle { + -webkit-box-ordinal-group: 0; + -ms-flex-order: -1; + order: -1; + font-family: Alumni Sans; + font-size: 48px; + font-weight: 600; + line-height: normal; + letter-spacing: 1.44px; + color: #ffffff; + text-align: right; + padding-top: 110px; + padding-bottom: 12px; + padding-right: 50px; +} + +.intro__description { + position: absolute; + top: 305px; + left: -128px; + font-family: "Roboto Condensed", "Arial", sans-serif; + font-weight: 400; + font-size: 14px; + line-height: 1.5; + color: #ffffff; + letter-spacing: -0.7px; +} + +.intro__link-buy { + padding: 20px 56px; + letter-spacing: 0.9px; +} + +.button { + -webkit-box-sizing: border-box; + box-sizing: border-box; + display: inline-block; + text-align: center; + text-decoration: none; + font-family: "Roboto Condensed", "Arial", sans-serif; + font-weight: 600; + font-size: 11px; + line-height: normal; + color: #ffffff; + background-color: rgba(255, 255, 255, 0); + border: 4px solid #ffffff; + text-transform: uppercase; + cursor: pointer; +} + +.gym { + margin: 0 auto; + width: 1366px; + padding: 120px 103px 235px 163px; +} + +.gym__wrapper { + position: relative; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: justify; + -ms-flex-pack: justify; + justify-content: space-between; +} + +.gym__text { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + padding-top: 40px; + padding-right: 85px; +} + +.gym__title { + font-family: "Alumni Sans", "Arial", sans-serif; + font-size: 32px; + font-weight: 600; + line-height: normal; + letter-spacing: 1.44px; + color: #102654; + padding-bottom: 8px; +} + +.gym__subtitle { + font-family: "Roboto Condensed", "Arial", sans-serif; + font-size: 14px; + font-weight: 400; + line-height: 1.5; + color: #102654; + padding-bottom: 40px; + letter-spacing: 0.7px; +} + +.gym__description { + font-family: "Roboto Condensed", "Arial", sans-serif; + font-size: 16px; + font-weight: 300; + line-height: 1.5; + color: #102654; +} +.gym__description--supergym { + padding-bottom: 8px; +} + +.gym__video { + position: absolute; + right: 360px; + bottom: -116px; +} + +gym__video-button { + position: absolute; + left: 50px; +} + +/* @mixin hover-focus { + @media (hover: hover) { + &:hover:not(.focus-visible) { + @content; + } + } + + &.focus-visible:focus { + @content; + } + } +*/ +/* @include hover-focus { + opacity: 0.8; + } +*/ +/*@mixin hover { + @media (hover: hover) { + &:hover:not(.focus-visible) { + @content; + } + } + } +*/ +/*@mixin focus { + &.focus-visible:focus { + @content; + } + } +*/ +/*@mixin active { + &.focus-visible:active { + @content; + } + } +*/ \ No newline at end of file diff --git a/build/css/style.min.css b/build/css/style.min.css new file mode 100644 index 000000000..df58075d0 --- /dev/null +++ b/build/css/style.min.css @@ -0,0 +1,3 @@ +/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */ +html{-webkit-text-size-adjust:100%}details,main{display:block}h1{font-size:2em}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}code,kbd,pre,samp{font-size:1em;font-family:monospace,monospace}a{background-color:transparent;color:#000;text-decoration:none}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:none}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{margin:0;font-size:100%;line-height:1.15;font-family:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{display:table;max-width:100%;color:inherit;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto;resize:none}[type=checkbox],[type=radio],legend{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}summary{display:list-item}.custom-select__text br,[hidden],template{display:none}@font-face{font-style:normal;font-weight:400;font-family:"Roboto Condensed";font-display:swap;src:url(../fonts/RobotoCondensed.woff2) format("woff2")}@font-face{font-style:normal;font-weight:300;font-family:"Roboto Condensed";font-display:swap;src:url(../fonts/RobotoCondensed-Light.woff2) format("woff2")}@font-face{font-style:normal;font-weight:600;font-family:"Roboto Condensed";font-display:swap;src:url(../fonts/RobotoCondensed-Bold.woff2) format("woff2")}@font-face{font-style:normal;font-weight:600;font-family:"Alumni Sans";font-display:swap;src:url(../fonts/AlumniSans-SemiBold.woff2) format("woff2")}*,::after,::before{-webkit-box-sizing:border-box;box-sizing:border-box}body,html{margin:0;padding:0;min-height:100vh}html{font-style:normal;font-weight:300;font-size:16px;line-height:24px;font-family:"Roboto Condensed","Arial",sans-serif;color:#102654;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{width:100%;height:100%;background-color:#fff}img,video{display:block;max-width:100%;height:auto}input:-webkit-autofill{-webkit-box-shadow:inset 0 0 0 1000px #fff;box-shadow:inset 0 0 0 1000px #fff;-webkit-text-fill-color:#000}input,select,textarea{border-radius:0}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{opacity:1}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1}input:-ms-input-placeholder,textarea:-ms-input-placeholder{opacity:1}input::-ms-input-placeholder,textarea::-ms-input-placeholder{opacity:1}input::placeholder,textarea::placeholder{opacity:1}input:invalid,textarea:invalid{-webkit-box-shadow:none;box-shadow:none}input::-ms-clear,input::-ms-reveal{display:none}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-results-button,input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none;appearance:none}input::-webkit-inner-spin-button,input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none;appearance:none}input[type=number]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}input:matches([type=email],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=url]),select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:none;-moz-appearance:none;appearance:none}h1,h2,h3,p{margin:0;padding:0}.wrapper{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-height:100vh;min-height:calc(100*var(--vh, 1vh))}.wrapper .footer,.wrapper .header{-ms-flex-negative:0;flex-shrink:0}.wrapper main{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.rouble{font-family:"Rouble","Arial",sans-serif;text-transform:lowercase!important;font-weight:400!important}.custom-select select,.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;white-space:nowrap;border:0;clip:rect(0 0 0 0);-webkit-clip-path:inset(100%);clip-path:inset(100%)}.scroll-lock-ios{position:fixed;overflow:hidden}.scroll-lock{overflow:hidden}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.modal::-webkit-scrollbar,.no-scrollbar::-webkit-scrollbar{display:none}.no-transition{-webkit-transition:none!important;transition:none!important}.js-focus-visible :focus:not(.focus-visible){outline:0}.container{width:100%;max-width:1366px;margin:0 auto}.btn{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;padding:10px 20px;color:#fff;background-color:#2c39f2;border:0;cursor:pointer;-webkit-transition:opacity .3s ease;transition:opacity .3s ease}.btn--red{background-color:#ff1553}.btn:disabled{opacity:.5;pointer-events:none}@media (hover:hover){.btn:hover:not(.focus-visible){opacity:.8}}.btn.focus-visible:focus{opacity:.8}.custom-input label,.custom-textarea label,.modal{display:-webkit-box;display:-ms-flexbox;display:flex}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch;background-color:rgba(0,0,0,.8);-webkit-transform:scale(1.2);-ms-transform:scale(1.2);transform:scale(1.2);visibility:hidden;opacity:0;-webkit-transition:opacity .6s cubic-bezier(.55,0,.1,1),visibility .6s cubic-bezier(.55,0,.1,1),-webkit-transform .6s cubic-bezier(.55,0,.1,1);transition:opacity .6s cubic-bezier(.55,0,.1,1),transform .6s cubic-bezier(.55,0,.1,1),visibility .6s cubic-bezier(.55,0,.1,1);transition:opacity .6s cubic-bezier(.55,0,.1,1),transform .6s cubic-bezier(.55,0,.1,1),visibility .6s cubic-bezier(.55,0,.1,1),-webkit-transform .6s cubic-bezier(.55,0,.1,1);pointer-events:none;-ms-overflow-style:none;scrollbar-width:none}.modal__wrapper{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;min-height:100%;padding:60px 40px}@media (max-width:767px){.modal__wrapper{padding:60px 16px}}.modal__overlay{position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer}.modal__content{position:relative;width:600px;padding:40px;background-color:#fff}@media (max-width:767px){.modal__content{width:100%;padding:20px}}.modal__close-btn{position:absolute;top:22px;right:22px;z-index:1;width:40px;height:40px;padding:0;background:0 0;border:0;cursor:pointer}.modal--responsive .modal__content{width:100%}.modal--fit-content .modal__content{width:auto}@media (max-width:767px){.modal--fit-content .modal__content{width:100%}}.modal--no-scale{-webkit-transform:none;-ms-transform:none;transform:none}.modal--preload{-webkit-transition:none;transition:none}.modal.is-active{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);visibility:visible;opacity:1;pointer-events:auto}.custom-input,.custom-textarea{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;width:530px;padding:14px 0 28px}@media screen and (max-width:767px){.custom-input,.custom-textarea{padding:4px 0 48px;width:100%}}.custom-input label,.custom-textarea label{-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%}@media screen and (max-width:767px){.custom-input label,.custom-textarea label{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.custom-input label input,.custom-input label textarea,.custom-textarea label input,.custom-textarea label textarea{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:300px;min-height:48px;margin-left:auto;padding:10px;border:2px solid rgba(0,0,0,.2);border-radius:5px;outline:0;-webkit-transition:border .3s ease;transition:border .3s ease}@media screen and (max-width:767px){.custom-input label input,.custom-input label textarea,.custom-textarea label input,.custom-textarea label textarea{max-width:unset;width:100%}}.custom-input label input:hover,.custom-input label textarea:hover,.custom-textarea label input:hover,.custom-textarea label textarea:hover{border:2px solid rgba(0,0,0,.5)}.custom-input label input:focus,.custom-input label textarea:focus,.custom-textarea label input:focus,.custom-textarea label textarea:focus{border:2px solid rgba(0,0,0,.8)}@media screen and (max-width:767px){.custom-input__label,.custom-textarea__label{margin:0 0 18px}}.custom-input__error,.custom-textarea__error{position:absolute;right:0;bottom:35px;color:#ff1553;opacity:0;-webkit-transition:opacity .3s ease;transition:opacity .3s ease}@media screen and (max-width:767px){.custom-input__error,.custom-textarea__error{bottom:20px}}.custom-input.is-invalid input,.custom-input.is-invalid textarea,.custom-textarea.is-invalid input,.custom-textarea.is-invalid textarea{border:2px solid #ff1553}.custom-input.is-invalid input:focus,.custom-input.is-invalid input:hover,.custom-input.is-invalid textarea:focus,.custom-input.is-invalid textarea:hover,.custom-textarea.is-invalid input:focus,.custom-textarea.is-invalid input:hover,.custom-textarea.is-invalid textarea:focus,.custom-textarea.is-invalid textarea:hover{border:2px solid rgba(255,21,83,.5)}.custom-input.is-valid input,.custom-textarea.is-valid input{border:2px solid #22b259}.custom-input.is-valid input:focus,.custom-input.is-valid input:hover,.custom-textarea.is-valid input:focus,.custom-textarea.is-valid input:hover{border:2px solid rgba(34,178,89,.5)}.custom-input .input-message,.custom-textarea .input-message{position:absolute;right:0;bottom:-5px}.custom-input .input-message.is-invalid,.custom-textarea .input-message.is-invalid{color:red}.custom-input .input-message.is-valid,.custom-textarea .input-message.is-valid{color:#15ab07}.custom-toggle{position:relative;font-size:18px;line-height:27px;font-weight:300;display:-webkit-box;display:-ms-flexbox;display:flex;width:500px;padding:14px 0 10px 36px}@media screen and (max-width:767px){.custom-toggle{padding:14px 0 10px;width:100%}}.custom-toggle:last-of-type{padding:14px 0 58px 36px}@media screen and (max-width:767px){.custom-toggle:last-of-type{padding:14px 0 58px}}.custom-toggle input{position:absolute;width:1px;height:1px;margin:-1px;clip:rect(0 0 0 0)}.custom-toggle label{position:relative;padding-left:52px;cursor:pointer}.custom-toggle label span{margin-bottom:0;margin-left:0}.custom-toggle--checkbox .custom-toggle__icon,.custom-toggle--radio .custom-toggle__icon{position:absolute;top:0;left:0;width:28px;height:28px;border:1.5px solid #2c39f2;-webkit-transition:border .3s ease;transition:border .3s ease}.custom-toggle--checkbox .custom-toggle__icon::before,.custom-toggle--radio .custom-toggle__icon::before{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.custom-toggle--checkbox .custom-toggle__icon::before{background-color:transparent;-webkit-transition:background-color .3s ease;transition:background-color .3s ease}.custom-toggle--radio .custom-toggle__icon{border:1px solid #2c39f2;border-radius:50%}.custom-toggle--radio .custom-toggle__icon::before{color:transparent;border-radius:50%;-webkit-transition:color .3s ease;transition:color .3s ease}.custom-toggle input:checked+.custom-toggle__icon{border:1.5px solid #2c39f2}.custom-toggle input:checked+.custom-toggle__icon::before{background-color:#2c39f2}.custom-toggle.is-invalid label span{color:#ff1553}.custom-toggle .input-message{position:absolute;right:0;bottom:-5px}.custom-toggle .input-message.is-invalid{color:red}.custom-toggle .input-message.is-valid{color:#15ab07}.custom-select{position:relative;width:300px;padding:14px 0 28px;margin:0 0 44px}@media screen and (max-width:767px){.custom-select{padding:4px 0 14px;width:100%}}.custom-select__label{position:absolute;top:50%;left:10px;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:opacity .3s ease,-webkit-transform .3s ease;transition:transform .3s ease,opacity .3s ease;transition:transform .3s ease,opacity .3s ease,-webkit-transform .3s ease;pointer-events:none}@media screen and (max-width:767px){.custom-select__label{-webkit-transform:translateY(calc(-50% - 5px));-ms-transform:translateY(calc(-50% - 5px));transform:translateY(calc(-50% - 5px))}}.custom-select__placeholder{position:absolute;top:50%;left:10px;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:opacity .3s ease,-webkit-transform .3s ease;transition:transform .3s ease,opacity .3s ease;transition:transform .3s ease,opacity .3s ease,-webkit-transform .3s ease;pointer-events:none}@media screen and (max-width:767px){.custom-select__placeholder{-webkit-transform:translateY(calc(-50% - 5px));-ms-transform:translateY(calc(-50% - 5px));transform:translateY(calc(-50% - 5px))}}.custom-select__button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;height:48px;padding:5px 10px;background-color:transparent;border:2px solid rgba(0,0,0,.2);border-radius:5px;outline:0;cursor:pointer;-webkit-transition:border .3s ease;transition:border .3s ease}.custom-select__button:hover{border:2px solid rgba(0,0,0,.5)}.custom-select__button:focus{border:2px solid rgba(0,0,0,.8)}.custom-select__button:disabled{pointer-events:none;opacity:.3}.custom-select__list{position:absolute;bottom:10px;z-index:1;width:100%;max-height:100px;margin:0;padding:0;overflow-y:auto;list-style:none;background-color:#fff;border:2px solid #000;-webkit-transform:translateY(100%);-ms-transform:translateY(100%);transform:translateY(100%);visibility:hidden;opacity:0;-webkit-transition:visibility .3s ease,opacity .3s ease;transition:visibility .3s ease,opacity .3s ease}.custom-select__item{padding:5px;outline:0;cursor:pointer;-webkit-transition:background-color .3s ease;transition:background-color .3s ease}.custom-select__item[aria-selected=true]{background-color:rgba(0,0,0,.2)}@media (hover:hover){.custom-select__item[aria-selected=true]:hover:not(.focus-visible){background-color:rgba(0,0,0,.2)}}.custom-select__item[aria-selected=true].focus-visible:focus{background-color:rgba(0,0,0,.2)}@media (hover:hover){.custom-select__item:hover:not(.focus-visible){background-color:rgba(0,0,0,.4)}}.custom-select__item.focus-visible:focus{background-color:rgba(0,0,0,.4)}.custom-select__error{position:absolute;bottom:-15px;left:0;color:#ff1553;opacity:0;-webkit-transition:opacity .1s ease;transition:opacity .1s ease}.custom-select__text{font-size:20px;line-height:24px;-ms-flex-negative:0;flex-shrink:0;width:80%;overflow:hidden;text-align:left;white-space:nowrap;text-overflow:ellipsis;opacity:0;-webkit-transition:opacity .3s ease .1s;transition:opacity .3s ease .1s}.custom-select__icon{-ms-flex-negative:0;flex-shrink:0;width:20px;height:10px;margin-left:auto;background-color:#000;-webkit-transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease;-webkit-clip-path:polygon(100% 0,100% 20%,50% 100%,0 20%,0 0,50% 80%);clip-path:polygon(100% 0,100% 20%,50% 100%,0 20%,0 0,50% 80%)}.custom-select.is-disabled{pointer-events:none}.custom-select.is-disabled .custom-select__list{display:none}.custom-select.open-up .custom-select__list{bottom:auto;top:0;-webkit-transform:translateY(calc(-100% + 10px));-ms-transform:translateY(calc(-100% + 10px));transform:translateY(calc(-100% + 10px))}.custom-select.is-open .custom-select__list{visibility:visible;opacity:1}.custom-select.is-open .custom-select__icon{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.custom-select.is-open .custom-select__label{opacity:0}.custom-select.not-empty .custom-select__text{opacity:1}.custom-select.not-empty .custom-select__label,.custom-select.not-empty .custom-select__placeholder{opacity:0}.custom-select.is-invalid .custom-select__error{opacity:1}.custom-select.is-invalid .custom-select__button{border:2px solid #ff1553}.custom-select.is-invalid .custom-select__button:focus,.custom-select.is-invalid .custom-select__button:hover{border:2px solid rgba(255,21,83,.5)}.custom-select--placeholder .custom-select__label,.custom-select.slide-up.is-open .custom-select__label,.custom-select.slide-up.not-empty .custom-select__label{-webkit-transform:translateY(calc(-50% - 40px));-ms-transform:translateY(calc(-50% - 40px));transform:translateY(calc(-50% - 40px));opacity:1}.custom-select--placeholder.is-open .custom-select__label,.custom-select--placeholder.not-empty .custom-select__label,.custom-select.slide-up.is-open .custom-select__text,.custom-select.slide-up.not-empty .custom-select__text{opacity:1}.custom-select .input-message{position:absolute;right:0;bottom:-5px}.custom-select .input-message.is-invalid{color:red}.custom-select .input-message.is-valid{color:#15ab07}header{margin:0 auto;width:1366px}header::before{position:absolute;background-image:conic-gradient(from 151deg at 16.03% 39.06%,#003d85 32.2363382578deg,#b80027 313.3060026169deg);width:100%;height:642px;content:""}.header__contact-link,.header__logo{position:absolute;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.header__logo{top:25px;left:103px}.header__contact-link{top:16px;right:107px;font-family:ff-Alumnisans;font-size:24px;font-weight:600;line-height:normal;letter-spacing:-.9px;font-style:normal;color:#fff}.intro{margin:0 auto;width:1366px;padding:35px 240px 51px 250px}.intro__text,.intro__wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.intro__wrapper{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding-right:64px}.intro__text{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;text-align:right}.intro__subtitle,.intro__title{font-family:"Alumni Sans","Arial",sans-serif;font-size:50px;font-weight:600;line-height:114px;letter-spacing:1.8px;color:#fff;padding-bottom:46px}.intro__subtitle{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1;font-family:Alumni Sans;font-size:48px;line-height:normal;letter-spacing:1.44px;text-align:right;padding-top:110px;padding-bottom:12px;padding-right:50px}.intro__description{position:absolute;top:305px;left:-128px;font-family:"Roboto Condensed","Arial",sans-serif;font-weight:400;font-size:14px;line-height:1.5;color:#fff;letter-spacing:-.7px}.intro__link-buy{padding:20px 56px;letter-spacing:.9px}.button{-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;text-align:center;text-decoration:none;font-family:"Roboto Condensed","Arial",sans-serif;font-weight:600;font-size:11px;line-height:normal;color:#fff;background-color:transparent;border:4px solid #fff;text-transform:uppercase;cursor:pointer}.gym{margin:0 auto;width:1366px;padding:120px 103px 235px 163px}.gym__text,.gym__wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.gym__wrapper{position:relative;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.gym__text{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-top:40px;padding-right:85px}.gym__title{font-family:"Alumni Sans","Arial",sans-serif;font-size:32px;font-weight:600;line-height:normal;letter-spacing:1.44px;color:#102654;padding-bottom:8px}.gym__description,.gym__subtitle{font-family:"Roboto Condensed","Arial",sans-serif;line-height:1.5;color:#102654}.gym__subtitle{font-size:14px;font-weight:400;padding-bottom:40px;letter-spacing:.7px}.gym__description{font-size:16px;font-weight:300}.gym__description--supergym{padding-bottom:8px}.gym__video{position:absolute;right:360px;bottom:-116px}gym__video-button{position:absolute;left:50px} +/*# sourceMappingURL=style.min.css.map */ \ No newline at end of file diff --git a/build/css/style.min.css.map b/build/css/style.min.css.map new file mode 100644 index 000000000..905d25b11 --- /dev/null +++ b/build/css/style.min.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["vendor/normalize.scss","style.css","global/reboot.scss","blocks/custom-select.scss","global/fonts.scss","global/utils.scss","blocks/modal.scss","global/container.scss","blocks/btn.scss","mixins.scss","blocks/custom-input.scss","blocks/custom-toggle.scss","blocks/header.scss","blocks/intro.scss","blocks/button.scss","blocks/gym.scss"],"names":[],"mappings":";AAWA,I,CAGE,6B,CA6TF,O,CA3SA,I,CACE,a,CAQF,E,CAGE,a,CAWF,E,CACE,8B,CAAA,sB,CACA,Q,CACA,gB,CAkDF,I,CCfA,G,CD3BA,G,CC4BA,I,CD3BE,a,CACA,+B,CAUF,C,CACE,4B,CE1CA,U,CACA,oB,CFiDF,W,CAEE,wC,CAAA,gC,CAEA,kB,CAOF,C,CCdA,M,CDgBE,kB,CAmBF,K,CACE,a,CAQF,G,CCjBA,G,CDmBE,iB,CAEA,a,CACA,a,CACA,uB,CAGF,G,CACE,a,CAGF,G,CACE,S,CAUF,G,CACE,iB,CAWF,M,CCtBA,K,CACA,Q,CACA,M,CACA,Q,CDwBE,Q,CAEA,c,CACA,gB,CACA,mB,CAQF,M,CCxBA,K,CD2BE,gB,CAQF,M,CCzBA,M,CD4BE,mB,CCTF,+B,CACA,8B,CACA,+B,CDyBA,wB,CAIE,S,CAEA,iB,CCtBF,4B,CACA,2B,CACA,4B,CD2BA,qB,CAIE,6B,CAOF,Q,CACE,0B,CAUF,M,CACE,a,CAEA,c,CAGA,a,CACA,kB,CAOF,Q,CACE,uB,CAOF,Q,CACE,a,CE9NA,W,CFsOF,e,CClCA,Y,CDGA,M,CAiCE,6B,CAAA,qB,CACA,S,CAOF,wC,CClCA,wC,CDoCE,W,CAQF,a,CACE,mB,CAEA,4B,CAOF,wC,CACE,uB,CAQF,4B,CACE,Y,CAEA,yB,CAkBF,O,CACE,iB,CGxKE,uB,CH0LJ,Q,CARA,Q,CACE,Y,CI/VF,WACE,iB,CACA,e,CACA,8B,CAEA,iB,CACA,wD,AAGF,WACE,iB,CACA,e,CACA,8B,CAEA,iB,CACA,8D,AAGF,WACE,iB,CACA,e,CACA,8B,CAEA,iB,CACA,6D,AAIF,WACE,iB,CACA,e,CACA,yB,CAEA,iB,CACA,4DFlCF,C,CD0VA,O,CADA,Q,CCtVE,6B,CAAA,qB,CD6VF,I,CC1VA,I,CAEE,Q,CACA,S,CACA,gB,CAGF,I,CACE,iB,CACA,e,CACA,c,CACA,gB,CACA,iD,CACA,a,CAEA,kC,CACA,iC,CAEA,iC,CAKF,I,CACE,U,CACA,W,CAEA,qB,CAQF,G,CDqVA,K,CCnVE,a,CACA,c,CACA,W,CAaF,sB,CACE,0C,CAAA,kC,CAEA,4B,CAIF,K,CAaA,M,CDiUA,Q,CC5UE,e,CAEA,gC,CAAA,mC,CACE,S,CADF,uB,CAAA,0B,CACE,S,CADF,2B,CAAA,8B,CACE,S,CADF,4B,CAAA,+B,CACE,S,CADF,kB,CD0VF,qB,CCzVI,S,CAGF,a,CD0VF,gB,CCzVI,uB,CAAA,e,CAUF,gB,CAAA,iB,CAEE,Y,CD2VJ,gD,CCtVA,6C,CDuVA,iD,CACA,qD,CCpVE,uB,CAAA,e,CD0VF,gC,CCtVA,gC,CAEE,Q,CAEA,uB,CAAA,e,CAGF,kB,CACE,4B,CAAA,yB,CAAA,oB,CD4VF,cAAc,Y,CACd,a,CACA,e,CACA,a,CACA,U,CACA,W,CACA,W,CC9VA,M,CDuVA,Q,CC9UE,uB,CAAA,oB,CAAA,e,CD4VF,a,CACA,Y,CACA,a,CC3VA,M,CAIE,uB,CAAA,oB,CAAA,e,CAGF,E,CAAA,E,CAAA,E,CAKA,C,CAJE,Q,CACA,S,CGpIF,Q,CACE,iB,CAEA,mB,CAAA,mB,CAAA,Y,CACA,2B,CAAA,4B,CAAA,yB,CAAA,qB,CACA,gB,CAEA,mC,CJ6eF,gB,CI3eE,gB,CAEE,mB,CAAA,a,CAGF,a,CACE,kB,CAAA,mB,CAAA,W,CAIJ,O,CACE,uC,CAEA,kC,CACA,yB,CFqBA,qB,CEjBF,gB,CACE,iB,CAEA,S,CACA,U,CACA,W,CACA,S,CACA,e,CAEA,kB,CAEA,Q,CAEA,kB,CACA,6B,CAAA,qB,CAGF,gB,CACE,c,CAEA,e,CAGF,Y,CACE,e,CAGF,a,CACE,uB,CACA,oB,CC7BA,yB,CD+BA,gC,CACE,Y,CAIJ,c,CAEE,iC,CAAA,yB,CAGF,6BAAA,e,CACE,S,CErEF,U,CACE,U,CACA,gB,CACA,a,CCHF,I,CACE,0B,CAAA,0B,CAAA,mB,CACA,iB,CAEA,U,CAEA,wB,CACA,Q,CACA,c,CAEA,mC,CAAA,2B,CAEA,S,CACE,wB,CAGF,a,CACE,U,CAEA,mB,CCQF,qBACE,eAAA,e,CDLA,YCUF,wB,CDVE,U,CEVF,mB,CTwsBF,sB,CKrtBA,M,CIcI,mB,CAAA,mB,CAAA,Y,CJdJ,M,CACE,c,CACA,K,CACA,O,CACA,Q,CACA,M,CACA,Y,CAGA,2B,CAAA,4B,CAAA,yB,CAAA,qB,CACA,e,CACA,gC,CAEA,+B,CACA,4B,CAAA,wB,CAAA,oB,CACA,iB,CACA,S,CAEA,8I,CAAA,8H,CAAA,6K,CAIA,mB,CAEA,uB,CACA,oB,CAMA,e,CACE,iB,CAEA,mB,CAAA,mB,CAAA,Y,CACA,mB,CAAA,a,CACA,uB,CAAA,oB,CAAA,sB,CACA,wB,CAAA,qB,CAAA,kB,CACA,U,CACA,e,CACA,iB,CG+BF,yBHxCA,e,CAYI,mBAIJ,e,CACE,iB,CACA,K,CACA,M,CAEA,U,CACA,W,CAEA,c,CAGF,e,CACE,iB,CAEA,W,CACA,Y,CAEA,qB,CGOF,yBHbA,e,CASI,U,CACA,cAIJ,iB,CACE,iB,CACA,Q,CACA,U,CACA,S,CAEA,U,CACA,W,CACA,S,CAEA,c,CACA,Q,CACA,c,CAIA,kC,CACE,U,CAKF,mC,CACE,U,CGxBJ,yBHuBE,mC,CAII,YAKN,gB,CACE,sB,CAAA,kB,CAAA,c,CAGF,e,CACE,uB,CAAA,e,CAGF,gB,CACE,0B,CAAA,sB,CAAA,kB,CACA,kB,CACA,S,CAEA,mB,CIpHJ,a,CTqsBA,gB,CSnsBE,iB,CAEA,mB,CAAA,mB,CAAA,Y,CACA,W,CACA,mB,CAEA,oCARF,a,CT+sBA,gB,CStsBI,kB,CACA,YAGF,mB,CTwsBF,sB,CStsBI,wB,CAAA,qB,CAAA,kB,CACA,U,CAEA,oCALF,mB,CTmtBF,sB,CS7sBM,uB,CAAA,oB,CAAA,sB,CACA,2B,CAAA,4B,CAAA,yB,CAAA,uBAGF,yB,CTotBJ,4B,CACA,4B,CACA,+B,CSptBM,kB,CAAA,mB,CAAA,W,CACA,e,CACA,e,CACA,gB,CACA,Y,CAEA,+B,CACA,iB,CACA,S,CAEA,kC,CAAA,0B,CAEA,oCAdF,yB,CTsuBJ,4B,CACA,4B,CACA,+B,CSztBQ,e,CACA,YAGF,+B,CT2tBN,kC,CACA,kC,CACA,qC,CS5tBQ,+B,CAGF,+B,CT6tBN,kC,CACA,kC,CACA,qC,CS9tBQ,+B,CAMJ,oCADF,oB,CT8tBF,uB,CS5tBM,iBAIJ,oB,CT6tBF,uB,CS5tBI,iB,CACA,O,CACA,W,CAEA,a,CAEA,S,CAEA,mC,CAAA,2B,CAEA,oCAXF,oB,CTwuBF,uB,CS5tBM,aAKF,8B,CT4tBJ,iC,CACA,iC,CACA,oC,CS5tBM,wB,CAEA,oC,CAAA,oC,CT8tBN,uC,CACA,uC,CACA,uC,CACA,uC,CACA,0C,CACA,0C,CSjuBQ,mC,CAMJ,4B,CT+tBJ,+B,CS9tBM,wB,CAEA,kC,CAAA,kC,CTguBN,qC,CACA,qC,CS/tBQ,mC,CAKN,4B,CT8tBF,+B,CS7tBI,iB,CACA,O,CACA,W,CAEA,uC,CT+tBJ,0C,CS9tBM,S,CAGF,qC,CT+tBJ,wC,CS9tBM,a,CC3GN,c,CACE,iB,CACA,c,CACA,gB,CACA,e,CAEA,mB,CAAA,mB,CAAA,Y,CACA,W,CACA,wB,CAEA,oCAVF,c,CAWI,mB,CACA,YAGF,2B,CACE,wB,CAEA,oCAHF,2B,CAII,qBAIJ,oB,CACE,iB,CAEA,S,CACA,U,CACA,W,CAEA,kB,CAGF,oB,CACE,iB,CAEA,iB,CAEA,c,CAEA,yB,CACE,e,CACA,a,CAKF,6C,CA+BA,0C,CA9BE,iB,CACA,K,CACA,M,CAEA,U,CACA,W,CAEA,0B,CAEA,kC,CAAA,0B,CAEA,qD,CAgCA,kD,CACE,U,CACA,iB,CACA,O,CACA,Q,CAEA,U,CACA,W,CAKA,sC,CAAA,kC,CAAA,8B,CA5CF,qD,CASE,4B,CAIA,4C,CAAA,oC,CAMJ,0C,CAQE,wB,CACA,iB,CAIA,kD,CASE,iB,CAEA,iB,CAGA,iC,CAAA,yB,CAKN,iD,CACE,0B,CAEA,yD,CACE,wB,CAKF,oC,CACE,a,CAIJ,6B,CACE,iB,CACA,O,CACA,W,CAEA,wC,CACE,S,CAGF,sC,CACE,a,CRtIN,c,CACE,iB,CAEA,W,CACA,mB,CACA,e,CAEA,oCAPF,c,CAQI,kB,CACA,YAGF,qB,CACE,iB,CACA,O,CACA,S,CAEA,kC,CAAA,8B,CAAA,0B,CAEA,8D,CAAA,8C,CAAA,yE,CAEA,mB,CAEA,oCAXF,qB,CAYI,8C,CAAA,0C,CAAA,wCAIJ,2B,CACE,iB,CACA,O,CACA,S,CAEA,kC,CAAA,8B,CAAA,0B,CAEA,8D,CAAA,8C,CAAA,yE,CAEA,mB,CAEA,oCAXF,2B,CAYI,8C,CAAA,0C,CAAA,wCAqBJ,sB,CACE,mB,CAAA,mB,CAAA,Y,CACA,wB,CAAA,qB,CAAA,kB,CACA,U,CACA,W,CACA,gB,CAEA,4B,CACA,+B,CACA,iB,CACA,S,CACA,c,CAEA,kC,CAAA,0B,CAEA,4B,CACE,+B,CAGF,4B,CACE,+B,CAGF,+B,CACE,mB,CACA,U,CAIJ,oB,CACE,iB,CACA,W,CACA,S,CAEA,U,CACA,gB,CACA,Q,CACA,S,CACA,e,CAEA,e,CAEA,qB,CACA,qB,CACA,kC,CAAA,8B,CAAA,0B,CACA,iB,CACA,S,CAEA,uD,CAAA,+C,CAGF,oB,CACE,W,CAEA,S,CACA,c,CAEA,4C,CAAA,oC,CAEA,wC,CACE,+B,CAEA,qBACE,mDAAA,e,CACE,iCAIJ,4D,CACE,+B,CAIJ,qBACE,+BAAA,e,CACE,iCAIJ,wC,CACE,+B,CAIJ,qB,CACE,iB,CACA,Y,CACA,M,CAEA,a,CAEA,S,CAEA,mC,CAAA,2B,CAGF,oB,CACE,c,CACA,gB,CACA,mB,CAAA,a,CACA,S,CACA,e,CAEA,e,CACA,kB,CACA,sB,CAEA,S,CAEA,uC,CAAA,+B,CAOF,oB,CACE,mB,CAAA,a,CACA,U,CACA,W,CACA,gB,CAEA,qB,CAEA,6C,CAAA,6B,CAAA,wD,CAEA,qE,CAAA,6D,CAGF,0B,CACE,mB,CAEA,+C,CACE,Y,CAKF,2C,CACE,W,CACA,K,CACA,gD,CAAA,4C,CAAA,wC,CAKF,2C,CACE,kB,CACA,S,CAGF,2C,CACE,gC,CAAA,4B,CAAA,wB,CAGF,4C,CACE,S,CAKF,6C,CACE,S,CAGF,8C,CAIA,oD,CAHE,S,CASF,+C,CACE,S,CAGF,gD,CACE,wB,CAEA,sD,CAAA,sD,CAEE,mC,CAiBJ,iD,CAgBA,qD,CAAA,uD,CAfE,+C,CAAA,2C,CAAA,uC,CACA,S,CAGF,yD,CAIA,2D,CAYA,oD,CAAA,sD,CAfE,S,CAoBJ,6B,CACE,iB,CACA,O,CACA,W,CAEA,wC,CACE,S,CAGF,sC,CACE,a,CS1SN,M,CACE,a,CACA,Y,CAEA,c,CACE,iB,CACA,gH,CAEA,U,CACA,Y,CAEA,U,CAWJ,qB,CAPA,a,CAQE,iB,CACA,2B,CAAA,gB,CAAA,O,CATF,a,CAGE,Q,CACA,U,CAGF,qB,CAGE,Q,CACA,W,CACA,yB,CACA,c,CACA,e,CACA,kB,CACA,oB,CACA,iB,CACA,U,CCjCF,M,CACE,a,CACA,Y,CACA,6B,CASF,Y,CANA,e,CAOE,mB,CAAA,mB,CAAA,Y,CAPF,e,CAEE,wB,CAAA,qB,CAAA,6B,CACA,kB,CAGF,Y,CAEE,2B,CAAA,4B,CAAA,yB,CAAA,qB,CACA,qB,CAAA,kB,CAAA,oB,CACA,gB,CAcF,gB,CAVA,a,CACE,4C,CACA,c,CACA,e,CACA,iB,CACA,oB,CACA,U,CACA,mB,CAGF,gB,CACE,2B,CAAA,iB,CAAA,Q,CACA,uB,CACA,c,CAEA,kB,CACA,qB,CAEA,gB,CACA,iB,CACA,mB,CACA,kB,CAGF,mB,CACE,iB,CACA,S,CACA,W,CACA,iD,CACA,e,CACA,c,CACA,e,CACA,U,CACA,oB,CAGF,gB,CACE,iB,CACA,mB,CC1DF,O,CACE,6B,CAAA,qB,CACA,oB,CACA,iB,CACA,oB,CACA,iD,CACA,e,CACA,c,CACA,kB,CACA,U,CACA,4B,CACA,qB,CACA,wB,CACA,c,CCbF,I,CACE,a,CACA,Y,CACA,+B,CASF,U,CANA,a,CAOE,mB,CAAA,mB,CAAA,Y,CAPF,a,CACE,iB,CAEA,wB,CAAA,qB,CAAA,6B,CAGF,U,CAEE,2B,CAAA,4B,CAAA,yB,CAAA,qB,CACA,gB,CACA,kB,CAGF,W,CACE,4C,CACA,c,CACA,e,CACA,kB,CACA,qB,CACA,a,CACA,kB,CAaF,iB,CAVA,c,CAWE,iD,CAGA,e,CACA,a,CAfF,c,CAEE,c,CACA,e,CAGA,mB,CACA,mB,CAGF,iB,CAEE,c,CACA,e,CAIA,2B,CACE,kB,CAIJ,W,CACE,iB,CACA,W,CACA,a,CAGF,iB,CACE,iB,CACA,S","file":"style.min.css","sourcesContent":["/* stylelint-disable */\n/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n* Remove the margin in all browsers.\n*/\n\nbody {\n margin: 0;\n}\n\n/**\n* Render the `main` element consistently in IE.\n*/\n\nmain {\n display: block;\n}\n\n/**\n* Correct the font size and margin on `h1` elements within `section` and\n* `article` contexts in Chrome, Firefox, and Safari.\n*/\n\nh1 {\n margin: 0.67em 0;\n\n font-size: 2em;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n* 1. Add the correct box sizing in Firefox.\n* 2. Show the overflow in Edge and IE.\n*/\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n* 1. Correct the inheritance and scaling of font size in all browsers.\n* 2. Correct the odd `em` font sizing in all browsers.\n*/\n\npre {\n font-size: 1em; /* 2 */\n font-family: monospace, monospace; /* 1 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n* Remove the gray background on active links in IE 10.\n*/\n\na {\n background-color: transparent;\n}\n\n/**\n* 1. Remove the bottom border in Chrome 57-\n* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n*/\n\nabbr[title] {\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n\n border-bottom: none; /* 1 */\n}\n\n/**\n* Add the correct font weight in Chrome, Edge, and Safari.\n*/\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n* 1. Correct the inheritance and scaling of font size in all browsers.\n* 2. Correct the odd `em` font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp {\n font-size: 1em; /* 2 */\n font-family: monospace, monospace; /* 1 */\n}\n\n/**\n* Add the correct font size in all browsers.\n*/\n\nsmall {\n font-size: 80%;\n}\n\n/**\n* Prevent `sub` and `sup` elements from affecting the line height in\n* all browsers.\n*/\n\nsub,\nsup {\n position: relative;\n\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n* Remove the border on images inside links in IE 10.\n*/\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n* 1. Change the font styles in all browsers.\n* 2. Remove the margin in Firefox and Safari.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n margin: 0; /* 2 */\n\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n font-family: inherit; /* 1 */\n}\n\n/**\n* Show the overflow in IE.\n* 1. Show the overflow in Edge.\n*/\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n* Remove the inheritance of text transform in Edge, Firefox, and IE.\n* 1. Remove the inheritance of text transform in Firefox.\n*/\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n* Correct the inability to style clickable types in iOS and Safari.\n*/\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n* Remove the inner border and padding in Firefox.\n*/\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n padding: 0;\n\n border-style: none;\n}\n\n/**\n* Restore the focus styles unset by the previous rule.\n*/\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n* Correct the padding in Firefox.\n*/\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n* 1. Correct the text wrapping in Edge and IE.\n* 2. Correct the color inheritance from `fieldset` elements in IE.\n* 3. Remove the padding so developers are not caught out when they zero out\n* `fieldset` elements in all browsers.\n*/\n\nlegend {\n display: table; /* 1 */\n box-sizing: border-box; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n\n color: inherit; /* 2 */\n white-space: normal; /* 1 */\n}\n\n/**\n* Add the correct vertical alignment in Chrome, Firefox, and Opera.\n*/\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n* Remove the default vertical scrollbar in IE 10+.\n*/\n\ntextarea {\n overflow: auto;\n}\n\n/**\n* 1. Add the correct box sizing in IE 10.\n* 2. Remove the padding in IE 10.\n*/\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n* Correct the cursor style of increment and decrement buttons in Chrome.\n*/\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n* 1. Correct the odd appearance in Chrome and Safari.\n* 2. Correct the outline style in Safari.\n*/\n\n[type=\"search\"] {\n outline-offset: -2px; /* 2 */\n\n -webkit-appearance: textfield; /* 1 */\n}\n\n/**\n* Remove the inner padding in Chrome and Safari on macOS.\n*/\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n* 1. Correct the inability to style clickable types in iOS and Safari.\n* 2. Change font properties to `inherit` in Safari.\n*/\n\n::-webkit-file-upload-button {\n font: inherit; /* 2 */\n\n -webkit-appearance: button; /* 1 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n* Add the correct display in Edge, IE 10+, and Firefox.\n*/\n\ndetails {\n display: block;\n}\n\n/*\n* Add the correct display in all browsers.\n*/\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n* Add the correct display in IE 10+.\n*/\n\ntemplate {\n display: none;\n}\n\n/**\n* Add the correct display in IE 10.\n*/\n\n[hidden] {\n display: none;\n}\n","/* stylelint-disable */\n/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n/* Document\n ========================================================================== */\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n/**\n* Remove the margin in all browsers.\n*/\nbody {\n margin: 0;\n}\n\n/**\n* Render the `main` element consistently in IE.\n*/\nmain {\n display: block;\n}\n\n/**\n* Correct the font size and margin on `h1` elements within `section` and\n* `article` contexts in Chrome, Firefox, and Safari.\n*/\nh1 {\n margin: 0.67em 0;\n font-size: 2em;\n}\n\n/* Grouping content\n ========================================================================== */\n/**\n* 1. Add the correct box sizing in Firefox.\n* 2. Show the overflow in Edge and IE.\n*/\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n* 1. Correct the inheritance and scaling of font size in all browsers.\n* 2. Correct the odd `em` font sizing in all browsers.\n*/\npre {\n font-size: 1em; /* 2 */\n font-family: monospace, monospace; /* 1 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n/**\n* Remove the gray background on active links in IE 10.\n*/\na {\n background-color: transparent;\n}\n\n/**\n* 1. Remove the bottom border in Chrome 57-\n* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n*/\nabbr[title] {\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n border-bottom: none; /* 1 */\n}\n\n/**\n* Add the correct font weight in Chrome, Edge, and Safari.\n*/\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n* 1. Correct the inheritance and scaling of font size in all browsers.\n* 2. Correct the odd `em` font sizing in all browsers.\n*/\ncode,\nkbd,\nsamp {\n font-size: 1em; /* 2 */\n font-family: monospace, monospace; /* 1 */\n}\n\n/**\n* Add the correct font size in all browsers.\n*/\nsmall {\n font-size: 80%;\n}\n\n/**\n* Prevent `sub` and `sup` elements from affecting the line height in\n* all browsers.\n*/\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n/**\n* Remove the border on images inside links in IE 10.\n*/\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n/**\n* 1. Change the font styles in all browsers.\n* 2. Remove the margin in Firefox and Safari.\n*/\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n margin: 0; /* 2 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n font-family: inherit; /* 1 */\n}\n\n/**\n* Show the overflow in IE.\n* 1. Show the overflow in Edge.\n*/\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n* Remove the inheritance of text transform in Edge, Firefox, and IE.\n* 1. Remove the inheritance of text transform in Firefox.\n*/\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n* Correct the inability to style clickable types in iOS and Safari.\n*/\nbutton,\n[type=button],\n[type=reset],\n[type=submit] {\n -webkit-appearance: button;\n}\n\n/**\n* Remove the inner border and padding in Firefox.\n*/\nbutton::-moz-focus-inner,\n[type=button]::-moz-focus-inner,\n[type=reset]::-moz-focus-inner,\n[type=submit]::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\n/**\n* Restore the focus styles unset by the previous rule.\n*/\nbutton:-moz-focusring,\n[type=button]:-moz-focusring,\n[type=reset]:-moz-focusring,\n[type=submit]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n* Correct the padding in Firefox.\n*/\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n* 1. Correct the text wrapping in Edge and IE.\n* 2. Correct the color inheritance from `fieldset` elements in IE.\n* 3. Remove the padding so developers are not caught out when they zero out\n* `fieldset` elements in all browsers.\n*/\nlegend {\n display: table; /* 1 */\n box-sizing: border-box; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n color: inherit; /* 2 */\n white-space: normal; /* 1 */\n}\n\n/**\n* Add the correct vertical alignment in Chrome, Firefox, and Opera.\n*/\nprogress {\n vertical-align: baseline;\n}\n\n/**\n* Remove the default vertical scrollbar in IE 10+.\n*/\ntextarea {\n overflow: auto;\n}\n\n/**\n* 1. Add the correct box sizing in IE 10.\n* 2. Remove the padding in IE 10.\n*/\n[type=checkbox],\n[type=radio] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n* Correct the cursor style of increment and decrement buttons in Chrome.\n*/\n[type=number]::-webkit-inner-spin-button,\n[type=number]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n* 1. Correct the odd appearance in Chrome and Safari.\n* 2. Correct the outline style in Safari.\n*/\n[type=search] {\n outline-offset: -2px; /* 2 */\n -webkit-appearance: textfield; /* 1 */\n}\n\n/**\n* Remove the inner padding in Chrome and Safari on macOS.\n*/\n[type=search]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n* 1. Correct the inability to style clickable types in iOS and Safari.\n* 2. Change font properties to `inherit` in Safari.\n*/\n::-webkit-file-upload-button {\n font: inherit; /* 2 */\n -webkit-appearance: button; /* 1 */\n}\n\n/* Interactive\n ========================================================================== */\n/*\n* Add the correct display in Edge, IE 10+, and Firefox.\n*/\ndetails {\n display: block;\n}\n\n/*\n* Add the correct display in all browsers.\n*/\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n/**\n* Add the correct display in IE 10+.\n*/\ntemplate {\n display: none;\n}\n\n/**\n* Add the correct display in IE 10.\n*/\n[hidden] {\n display: none;\n}\n\n@font-face {\n font-style: normal;\n font-weight: 400;\n font-family: \"Roboto Condensed\";\n font-display: swap;\n src: url(\"../fonts/RobotoCondensed.woff2\") format(\"woff2\");\n}\n@font-face {\n font-style: normal;\n font-weight: 300;\n font-family: \"Roboto Condensed\";\n font-display: swap;\n src: url(\"../fonts/RobotoCondensed-Light.woff2\") format(\"woff2\");\n}\n@font-face {\n font-style: normal;\n font-weight: 600;\n font-family: \"Roboto Condensed\";\n font-display: swap;\n src: url(\"../fonts/RobotoCondensed-Bold.woff2\") format(\"woff2\");\n}\n@font-face {\n font-style: normal;\n font-weight: 600;\n font-family: \"Alumni Sans\";\n font-display: swap;\n src: url(\"../fonts/AlumniSans-SemiBold.woff2\") format(\"woff2\");\n}\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\nhtml,\nbody {\n margin: 0;\n padding: 0;\n min-height: 100vh;\n}\n\nhtml {\n font-style: normal;\n font-weight: 300;\n font-size: 16px;\n line-height: 24px;\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n color: #102654;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n text-rendering: optimizeLegibility;\n}\n\nbody {\n width: 100%;\n height: 100%;\n background-color: #ffffff;\n}\n\na {\n color: #000000;\n text-decoration: none;\n}\n\nimg,\nvideo {\n display: block;\n max-width: 100%;\n height: auto;\n}\n\ntextarea {\n resize: none;\n}\n\ninput:-webkit-autofill {\n box-shadow: inset 0 0 0 1000px #ffffff;\n -webkit-text-fill-color: #000000;\n}\n\ninput,\ntextarea {\n border-radius: 0;\n}\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1;\n}\ninput:invalid,\ntextarea:invalid {\n box-shadow: none;\n}\n\nselect {\n border-radius: 0;\n}\n\ninput::-ms-clear, input::-ms-reveal {\n display: none;\n}\n\ninput[type=search]::-webkit-search-decoration,\ninput[type=search]::-webkit-search-cancel-button,\ninput[type=search]::-webkit-search-results-button,\ninput[type=search]::-webkit-search-results-decoration {\n appearance: none;\n}\n\ninput::-webkit-outer-spin-button,\ninput::-webkit-inner-spin-button {\n margin: 0;\n appearance: none;\n}\n\ninput[type=number] {\n appearance: textfield;\n}\n\nselect,\ntextarea,\ninput:matches([type=email],\n[type=number],\n[type=password],\n[type=search],\n[type=tel],\n[type=text],\n[type=url]) {\n appearance: none;\n}\n\nbutton,\n[type=button],\n[type=reset],\n[type=submit] {\n appearance: none;\n}\n\nh1, h2, h3 {\n margin: 0;\n padding: 0;\n}\n\np {\n margin: 0;\n padding: 0;\n}\n\n.wrapper {\n position: relative;\n display: flex;\n flex-direction: column;\n min-height: 100vh;\n /* stylelint-disable-next-line */\n min-height: calc(100 * var(--vh, 1vh));\n}\n.wrapper .header,\n.wrapper .footer {\n flex-shrink: 0;\n}\n.wrapper main {\n flex-grow: 1;\n}\n\n.rouble {\n font-family: \"Rouble\", \"Arial\", sans-serif;\n /* stylelint-disable */\n text-transform: lowercase !important;\n font-weight: 400 !important;\n /* stylelint-enable */\n}\n\n.visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n white-space: nowrap;\n border: 0;\n clip: rect(0 0 0 0);\n clip-path: inset(100%);\n}\n\n.scroll-lock-ios {\n position: fixed;\n overflow: hidden;\n}\n\n.scroll-lock {\n overflow: hidden;\n}\n\n.no-scrollbar {\n -ms-overflow-style: none;\n scrollbar-width: none;\n}\n.no-scrollbar::-webkit-scrollbar {\n display: none;\n}\n\n.no-transition {\n /* stylelint-disable-next-line */\n transition: none !important;\n}\n\n.js-focus-visible :focus:not(.focus-visible) {\n outline: none;\n}\n\n.container {\n width: 100%;\n max-width: 1366px;\n margin: 0 auto;\n}\n.btn {\n display: inline-flex;\n padding: 10px 20px;\n color: #ffffff;\n background-color: #2c39f2;\n border: none;\n cursor: pointer;\n transition: opacity 0.3s ease;\n}\n.btn--red {\n background-color: #ff1553;\n}\n.btn:disabled {\n opacity: 0.5;\n pointer-events: none;\n}\n@media (hover: hover) {\n .btn:hover:not(.focus-visible) {\n opacity: 0.8;\n }\n}\n.btn.focus-visible:focus {\n opacity: 0.8;\n}\n\n.modal {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1000;\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n background-color: rgba(0, 0, 0, 0.8);\n transform: scale(1.2);\n visibility: hidden;\n opacity: 0;\n transition: opacity 0.6s cubic-bezier(0.55, 0, 0.1, 1), transform 0.6s cubic-bezier(0.55, 0, 0.1, 1), visibility 0.6s cubic-bezier(0.55, 0, 0.1, 1);\n pointer-events: none;\n -ms-overflow-style: none;\n scrollbar-width: none;\n}\n.modal::-webkit-scrollbar {\n display: none;\n}\n.modal__wrapper {\n position: relative;\n display: flex;\n flex-shrink: 0;\n justify-content: center;\n align-items: center;\n width: 100%;\n min-height: 100%;\n padding: 60px 40px;\n}\n@media (max-width: 767px) {\n .modal__wrapper {\n padding: 60px 16px;\n }\n}\n.modal__overlay {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n cursor: pointer;\n}\n.modal__content {\n position: relative;\n width: 600px;\n padding: 40px;\n background-color: #ffffff;\n}\n@media (max-width: 767px) {\n .modal__content {\n width: 100%;\n padding: 20px;\n }\n}\n.modal__close-btn {\n position: absolute;\n top: 22px;\n right: 22px;\n z-index: 1;\n width: 40px;\n height: 40px;\n padding: 0;\n background: rgba(255, 255, 255, 0);\n border: none;\n cursor: pointer;\n}\n.modal--responsive .modal__content {\n width: 100%;\n}\n.modal--fit-content .modal__content {\n width: auto;\n}\n@media (max-width: 767px) {\n .modal--fit-content .modal__content {\n width: 100%;\n }\n}\n.modal--no-scale {\n transform: none;\n}\n.modal--preload {\n transition: none;\n}\n.modal.is-active {\n transform: scale(1);\n visibility: visible;\n opacity: 1;\n pointer-events: auto;\n}\n\n.custom-input,\n.custom-textarea {\n position: relative;\n display: flex;\n width: 530px;\n padding: 14px 0 28px;\n}\n@media screen and (max-width: 767px) {\n .custom-input,\n.custom-textarea {\n padding: 4px 0 48px;\n width: 100%;\n }\n}\n.custom-input label,\n.custom-textarea label {\n display: flex;\n align-items: center;\n width: 100%;\n}\n@media screen and (max-width: 767px) {\n .custom-input label,\n.custom-textarea label {\n align-items: flex-start;\n flex-direction: column;\n }\n}\n.custom-input label input,\n.custom-input label textarea,\n.custom-textarea label input,\n.custom-textarea label textarea {\n flex-grow: 1;\n max-width: 300px;\n min-height: 48px;\n margin-left: auto;\n padding: 10px;\n border: 2px solid rgba(0, 0, 0, 0.2);\n border-radius: 5px;\n outline: none;\n transition: border 0.3s ease;\n}\n@media screen and (max-width: 767px) {\n .custom-input label input,\n.custom-input label textarea,\n.custom-textarea label input,\n.custom-textarea label textarea {\n max-width: unset;\n width: 100%;\n }\n}\n.custom-input label input:hover,\n.custom-input label textarea:hover,\n.custom-textarea label input:hover,\n.custom-textarea label textarea:hover {\n border: 2px solid rgba(0, 0, 0, 0.5);\n}\n.custom-input label input:focus,\n.custom-input label textarea:focus,\n.custom-textarea label input:focus,\n.custom-textarea label textarea:focus {\n border: 2px solid rgba(0, 0, 0, 0.8);\n}\n@media screen and (max-width: 767px) {\n .custom-input__label,\n.custom-textarea__label {\n margin: 0 0 18px 0;\n }\n}\n.custom-input__error,\n.custom-textarea__error {\n position: absolute;\n right: 0;\n bottom: 35px;\n color: #ff1553;\n opacity: 0;\n transition: opacity 0.3s ease;\n}\n@media screen and (max-width: 767px) {\n .custom-input__error,\n.custom-textarea__error {\n bottom: 20px;\n }\n}\n.custom-input.is-invalid input,\n.custom-input.is-invalid textarea,\n.custom-textarea.is-invalid input,\n.custom-textarea.is-invalid textarea {\n border: 2px solid #ff1553;\n}\n.custom-input.is-invalid input:focus, .custom-input.is-invalid input:hover,\n.custom-input.is-invalid textarea:focus,\n.custom-input.is-invalid textarea:hover,\n.custom-textarea.is-invalid input:focus,\n.custom-textarea.is-invalid input:hover,\n.custom-textarea.is-invalid textarea:focus,\n.custom-textarea.is-invalid textarea:hover {\n border: 2px solid rgba(255, 21, 83, 0.5);\n}\n.custom-input.is-valid input,\n.custom-textarea.is-valid input {\n border: 2px solid #22b259;\n}\n.custom-input.is-valid input:focus, .custom-input.is-valid input:hover,\n.custom-textarea.is-valid input:focus,\n.custom-textarea.is-valid input:hover {\n border: 2px solid rgba(34, 178, 89, 0.5);\n}\n.custom-input .input-message,\n.custom-textarea .input-message {\n position: absolute;\n right: 0;\n bottom: -5px;\n}\n.custom-input .input-message.is-invalid,\n.custom-textarea .input-message.is-invalid {\n color: #ff0000;\n}\n.custom-input .input-message.is-valid,\n.custom-textarea .input-message.is-valid {\n color: #15ab07;\n}\n\n.custom-toggle {\n position: relative;\n font-size: 18px;\n line-height: 27px;\n font-weight: 300;\n display: flex;\n width: 500px;\n padding: 14px 0 10px 36px;\n}\n@media screen and (max-width: 767px) {\n .custom-toggle {\n padding: 14px 0 10px 0;\n width: 100%;\n }\n}\n.custom-toggle:last-of-type {\n padding: 14px 0 58px 36px;\n}\n@media screen and (max-width: 767px) {\n .custom-toggle:last-of-type {\n padding: 14px 0 58px 0;\n }\n}\n.custom-toggle input {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n clip: rect(0 0 0 0);\n}\n.custom-toggle label {\n position: relative;\n padding-left: 52px;\n cursor: pointer;\n}\n.custom-toggle label span {\n margin-bottom: 0;\n margin-left: 0;\n}\n.custom-toggle--checkbox .custom-toggle__icon {\n position: absolute;\n top: 0;\n left: 0;\n width: 28px;\n height: 28px;\n border: 1.5px solid #2c39f2;\n transition: border 0.3s ease;\n}\n.custom-toggle--checkbox .custom-toggle__icon::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n width: 20px;\n height: 20px;\n background-color: rgba(44, 57, 242, 0);\n transform: translate(-50%, -50%);\n transition: background-color 0.3s ease;\n}\n.custom-toggle--radio .custom-toggle__icon {\n position: absolute;\n top: 0;\n left: 0;\n width: 28px;\n height: 28px;\n border: 1px solid #2c39f2;\n border-radius: 50%;\n transition: border 0.3s ease;\n}\n.custom-toggle--radio .custom-toggle__icon::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n width: 20px;\n height: 20px;\n color: rgba(255, 255, 255, 0);\n border-radius: 50%;\n transform: translate(-50%, -50%);\n transition: color 0.3s ease;\n}\n.custom-toggle input:checked + .custom-toggle__icon {\n border: 1.5px solid #2c39f2;\n}\n.custom-toggle input:checked + .custom-toggle__icon::before {\n background-color: #2c39f2;\n}\n.custom-toggle.is-invalid label span {\n color: #ff1553;\n}\n.custom-toggle .input-message {\n position: absolute;\n right: 0;\n bottom: -5px;\n}\n.custom-toggle .input-message.is-invalid {\n color: #ff0000;\n}\n.custom-toggle .input-message.is-valid {\n color: #15ab07;\n}\n\n.custom-select {\n position: relative;\n width: 300px;\n padding: 14px 0 28px;\n margin: 0 0 44px 0;\n /* &.is-valid {\n .custom-select__button {\n border: 2px solid $color-eucalyptus;\n\n &:focus,\n &:hover {\n border: 2px solid rgba($color-eucalyptus, 0.5);\n }\n }\n } */\n}\n@media screen and (max-width: 767px) {\n .custom-select {\n padding: 4px 0 14px;\n width: 100%;\n }\n}\n.custom-select__label {\n position: absolute;\n top: 50%;\n left: 10px;\n transform: translateY(-50%);\n transition: transform 0.3s ease, opacity 0.3s ease;\n pointer-events: none;\n}\n@media screen and (max-width: 767px) {\n .custom-select__label {\n transform: translateY(calc(-50% - 5px));\n }\n}\n.custom-select__placeholder {\n position: absolute;\n top: 50%;\n left: 10px;\n transform: translateY(-50%);\n transition: transform 0.3s ease, opacity 0.3s ease;\n pointer-events: none;\n}\n@media screen and (max-width: 767px) {\n .custom-select__placeholder {\n transform: translateY(calc(-50% - 5px));\n }\n}\n.custom-select select {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n white-space: nowrap;\n border: 0;\n clip: rect(0 0 0 0);\n clip-path: inset(100%);\n}\n.custom-select__button {\n display: flex;\n align-items: center;\n width: 100%;\n height: 48px;\n padding: 5px 10px;\n background-color: rgba(255, 255, 255, 0);\n border: 2px solid rgba(0, 0, 0, 0.2);\n border-radius: 5px;\n outline: none;\n cursor: pointer;\n transition: border 0.3s ease;\n}\n.custom-select__button:hover {\n border: 2px solid rgba(0, 0, 0, 0.5);\n}\n.custom-select__button:focus {\n border: 2px solid rgba(0, 0, 0, 0.8);\n}\n.custom-select__button:disabled {\n pointer-events: none;\n opacity: 0.3;\n}\n.custom-select__list {\n position: absolute;\n bottom: 10px;\n z-index: 1;\n width: 100%;\n max-height: 100px;\n margin: 0;\n padding: 0;\n overflow-y: auto;\n list-style: none;\n background-color: #ffffff;\n border: 2px solid #000000;\n transform: translateY(100%);\n visibility: hidden;\n opacity: 0;\n transition: visibility 0.3s ease, opacity 0.3s ease;\n}\n.custom-select__item {\n padding: 5px;\n outline: none;\n cursor: pointer;\n transition: background-color 0.3s ease;\n}\n.custom-select__item[aria-selected=true] {\n background-color: rgba(0, 0, 0, 0.2);\n}\n@media (hover: hover) {\n .custom-select__item[aria-selected=true]:hover:not(.focus-visible) {\n background-color: rgba(0, 0, 0, 0.2);\n }\n}\n.custom-select__item[aria-selected=true].focus-visible:focus {\n background-color: rgba(0, 0, 0, 0.2);\n}\n@media (hover: hover) {\n .custom-select__item:hover:not(.focus-visible) {\n background-color: rgba(0, 0, 0, 0.4);\n }\n}\n.custom-select__item.focus-visible:focus {\n background-color: rgba(0, 0, 0, 0.4);\n}\n.custom-select__error {\n position: absolute;\n bottom: -15px;\n left: 0;\n color: #ff1553;\n opacity: 0;\n transition: opacity 0.1s ease;\n}\n.custom-select__text {\n font-size: 20px;\n line-height: 24px;\n flex-shrink: 0;\n width: 80%;\n overflow: hidden;\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n opacity: 0;\n transition: opacity 0.3s ease 0.1s;\n}\n.custom-select__text br {\n display: none;\n}\n.custom-select__icon {\n flex-shrink: 0;\n width: 20px;\n height: 10px;\n margin-left: auto;\n background-color: #000000;\n transition: transform 0.3s ease;\n clip-path: polygon(100% 0, 100% 20%, 50% 100%, 0 20%, 0 0, 50% 80%);\n}\n.custom-select.is-disabled {\n pointer-events: none;\n}\n.custom-select.is-disabled .custom-select__list {\n display: none;\n}\n.custom-select.open-up .custom-select__list {\n bottom: auto;\n top: 0;\n transform: translateY(calc(-100% + 10px));\n}\n.custom-select.is-open .custom-select__list {\n visibility: visible;\n opacity: 1;\n}\n.custom-select.is-open .custom-select__icon {\n transform: rotate(180deg);\n}\n.custom-select.is-open .custom-select__label {\n opacity: 0;\n}\n.custom-select.not-empty .custom-select__text {\n opacity: 1;\n}\n.custom-select.not-empty .custom-select__label {\n opacity: 0;\n}\n.custom-select.not-empty .custom-select__placeholder {\n opacity: 0;\n}\n.custom-select.is-invalid .custom-select__error {\n opacity: 1;\n}\n.custom-select.is-invalid .custom-select__button {\n border: 2px solid #ff1553;\n}\n.custom-select.is-invalid .custom-select__button:focus, .custom-select.is-invalid .custom-select__button:hover {\n border: 2px solid rgba(255, 21, 83, 0.5);\n}\n.custom-select--placeholder .custom-select__label {\n transform: translateY(calc(-50% - 40px));\n opacity: 1;\n}\n.custom-select--placeholder.is-open .custom-select__label {\n opacity: 1;\n}\n.custom-select--placeholder.not-empty .custom-select__label {\n opacity: 1;\n}\n.custom-select.slide-up.not-empty .custom-select__label, .custom-select.slide-up.is-open .custom-select__label {\n transform: translateY(calc(-50% - 40px));\n opacity: 1;\n}\n.custom-select.slide-up.not-empty .custom-select__text, .custom-select.slide-up.is-open .custom-select__text {\n opacity: 1;\n}\n.custom-select .input-message {\n position: absolute;\n right: 0;\n bottom: -5px;\n}\n.custom-select .input-message.is-invalid {\n color: #ff0000;\n}\n.custom-select .input-message.is-valid {\n color: #15ab07;\n}\n\nheader {\n margin: 0 auto;\n width: 1366px;\n}\nheader::before {\n position: absolute;\n background-image: conic-gradient(from 151deg at 16.03% 39.06%, #003D85 32.2363382578deg, #B80027 313.3060026169deg);\n width: 100%;\n height: 642px;\n content: \"\";\n}\n\n.header__logo {\n position: absolute;\n order: 1;\n top: 25px;\n left: 103px;\n}\n\n.header__contact-link {\n position: absolute;\n order: 1;\n top: 16px;\n right: 107px;\n font-family: ff-Alumnisans;\n font-size: 24px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: -0.9px;\n font-style: normal;\n color: #ffffff;\n}\n\n.intro {\n margin: 0 auto;\n width: 1366px;\n padding: 35px 240px 51px 250px;\n}\n\n.intro__wrapper {\n display: flex;\n justify-content: space-between;\n padding-right: 64px;\n}\n\n.intro__text {\n display: flex;\n flex-direction: column;\n align-items: flex-end;\n text-align: right;\n}\n\n.intro__title {\n font-family: \"Alumni Sans\", \"Arial\", sans-serif;\n font-size: 50px;\n font-weight: 600;\n line-height: 114px;\n letter-spacing: 1.8px;\n color: #ffffff;\n padding-bottom: 46px;\n}\n\n.intro__subtitle {\n order: -1;\n font-family: Alumni Sans;\n font-size: 48px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.44px;\n color: #ffffff;\n text-align: right;\n padding-top: 110px;\n padding-bottom: 12px;\n padding-right: 50px;\n}\n\n.intro__description {\n position: absolute;\n top: 305px;\n left: -128px;\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 400;\n font-size: 14px;\n line-height: 1.5;\n color: #ffffff;\n letter-spacing: -0.7px;\n}\n\n.intro__link-buy {\n padding: 20px 56px;\n letter-spacing: 0.9px;\n}\n\n.button {\n box-sizing: border-box;\n display: inline-block;\n text-align: center;\n text-decoration: none;\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 600;\n font-size: 11px;\n line-height: normal;\n color: #ffffff;\n background-color: rgba(255, 255, 255, 0);\n border: 4px solid #ffffff;\n text-transform: uppercase;\n cursor: pointer;\n}\n\n.gym {\n margin: 0 auto;\n width: 1366px;\n padding: 120px 103px 235px 163px;\n}\n\n.gym__wrapper {\n position: relative;\n display: flex;\n justify-content: space-between;\n}\n\n.gym__text {\n display: flex;\n flex-direction: column;\n padding-top: 40px;\n padding-right: 85px;\n}\n\n.gym__title {\n font-family: \"Alumni Sans\", \"Arial\", sans-serif;\n font-size: 32px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.44px;\n color: #102654;\n padding-bottom: 8px;\n}\n\n.gym__subtitle {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 14px;\n font-weight: 400;\n line-height: 1.5;\n color: #102654;\n padding-bottom: 40px;\n letter-spacing: 0.7px;\n}\n\n.gym__description {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.5;\n color: #102654;\n}\n.gym__description--supergym {\n padding-bottom: 8px;\n}\n\n.gym__video {\n position: absolute;\n right: 360px;\n bottom: -116px;\n}\n\ngym__video-button {\n position: absolute;\n left: 50px;\n}\n\n/* @mixin hover-focus {\n @media (hover: hover) {\n &:hover:not(.focus-visible) {\n @content;\n }\n }\n\n &.focus-visible:focus {\n @content;\n }\n }\n*/\n/* @include hover-focus {\n opacity: 0.8;\n }\n*/\n/*@mixin hover {\n @media (hover: hover) {\n &:hover:not(.focus-visible) {\n @content;\n }\n }\n }\n*/\n/*@mixin focus {\n &.focus-visible:focus {\n @content;\n }\n }\n*/\n/*@mixin active {\n &.focus-visible:active {\n @content;\n }\n }\n*/","*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\nhtml,\nbody {\n margin: 0;\n padding: 0;\n min-height: 100vh;\n}\n\nhtml {\n font-style: normal;\n font-weight: 300;\n font-size: $fz-default;\n line-height: 24px;\n font-family: $ff-placeholder;\n color: $color-primary;\n\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n // оптимизация выравнивания шрифта относительно центра строки\n text-rendering: optimizeLegibility;\n // если по прежнему есть проблемы с выравниванием\n // https://transfonter.org/ - включите настройку https://prnt.sc/12rnt6g и переконвертируйте шрифт\n}\n\nbody {\n width: 100%;\n height: 100%;\n\n background-color: $color-default-white;\n}\n\na {\n color: $color-default-black;\n text-decoration: none;\n}\n\nimg,\nvideo {\n display: block;\n max-width: 100%;\n height: auto;\n}\n\ntextarea {\n resize: none;\n}\n\n// chrome autofill background removal\n// если на проекте у инпутов используются разные цвета фонов\\текста -\n// удалите это из глобала и используйте локально с нужными цветами\n// rgba не подойдет, сконвертируйте цвет в hex без прозрачности\n// если в стилях уже используется box-shadow есть другое решение -\n// задать к списку транзишенов `background-color 10000000s ease-out`\ninput:-webkit-autofill {\n box-shadow: inset 0 0 0 1000px $color-default-white;\n\n -webkit-text-fill-color: $color-default-black;\n}\n\n// firefox placeholder \\ invalid fix + ios bdrs\ninput,\ntextarea {\n border-radius: 0;\n\n &::placeholder {\n opacity: 1;\n }\n\n &:invalid {\n box-shadow: none;\n }\n}\n\nselect {\n border-radius: 0;\n}\n\n// ie11 X removal\ninput {\n &::-ms-clear,\n &::-ms-reveal {\n display: none;\n }\n}\n\n// chrome search X removal\ninput[type=\"search\"]::-webkit-search-decoration,\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-results-button,\ninput[type=\"search\"]::-webkit-search-results-decoration {\n appearance: none;\n}\n\n// input[number] arrows removal\ninput::-webkit-outer-spin-button,\ninput::-webkit-inner-spin-button {\n margin: 0;\n\n appearance: none;\n}\n\ninput[type=\"number\"] {\n appearance: textfield;\n}\n\n// ios button \\ inputs reset\nselect,\ntextarea,\ninput:matches([type=\"email\"],\n [type=\"number\"],\n [type=\"password\"],\n [type=\"search\"],\n [type=\"tel\"],\n [type=\"text\"],\n [type=\"url\"]) {\n appearance: none;\n}\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n appearance: none;\n}\n\nh1, h2, h3{\n margin: 0;\n padding: 0;\n}\n\np{\n margin: 0;\n padding: 0;\n}\n",".custom-select {\n position: relative;\n\n width: 300px;\n padding: 14px 0 28px;\n margin: 0 0 44px 0;\n\n @media screen and (max-width: 767px) {\n padding: 4px 0 14px;\n width: 100%;\n }\n\n &__label {\n position: absolute;\n top: 50%;\n left: 10px;\n\n transform: translateY(-50%);\n\n transition: transform 0.3s ease, opacity 0.3s ease;\n\n pointer-events: none;\n\n @media screen and (max-width: 767px) {\n transform: translateY(calc(-50% - 5px));\n }\n }\n\n &__placeholder {\n position: absolute;\n top: 50%;\n left: 10px;\n\n transform: translateY(-50%);\n\n transition: transform 0.3s ease, opacity 0.3s ease;\n\n pointer-events: none;\n\n @media screen and (max-width: 767px) {\n transform: translateY(calc(-50% - 5px));\n }\n }\n\n select {\n position: absolute;\n\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n\n white-space: nowrap;\n\n border: 0;\n\n clip: rect(0 0 0 0);\n clip-path: inset(100%);\n }\n\n &__button {\n display: flex;\n align-items: center;\n width: 100%;\n height: 48px;\n padding: 5px 10px;\n\n background-color: rgba(255, 255, 255, 0);\n border: 2px solid rgba(0, 0, 0, 0.2);\n border-radius: 5px;\n outline: none;\n cursor: pointer;\n\n transition: border 0.3s ease;\n\n &:hover {\n border: 2px solid rgba(0, 0, 0, 0.5);\n }\n\n &:focus {\n border: 2px solid rgba(0, 0, 0, 0.8);\n }\n\n &:disabled {\n pointer-events: none;\n opacity: 0.3;\n }\n }\n\n &__list {\n position: absolute;\n bottom: 10px;\n z-index: 1;\n\n width: 100%;\n max-height: 100px;\n margin: 0;\n padding: 0;\n overflow-y: auto;\n\n list-style: none;\n\n background-color: #ffffff;\n border: 2px solid #000000;\n transform: translateY(100%);\n visibility: hidden;\n opacity: 0;\n\n transition: visibility 0.3s ease, opacity 0.3s ease;\n }\n\n &__item {\n padding: 5px;\n\n outline: none;\n cursor: pointer;\n\n transition: background-color 0.3s ease;\n\n &[aria-selected=\"true\"] {\n background-color: rgba(0, 0, 0, 0.2);\n\n @media (hover: hover) {\n &:hover:not(.focus-visible) {\n background-color: rgba(0, 0, 0, 0.2);\n }\n }\n\n &.focus-visible:focus {\n background-color: rgba(0, 0, 0, 0.2);\n }\n }\n\n @media (hover: hover) {\n &:hover:not(.focus-visible) {\n background-color: rgba(0, 0, 0, 0.4);\n }\n }\n\n &.focus-visible:focus {\n background-color: rgba(0, 0, 0, 0.4);\n }\n }\n\n &__error {\n position: absolute;\n bottom: -15px;\n left: 0;\n\n color: #ff1553;\n\n opacity: 0;\n\n transition: opacity 0.1s ease;\n }\n\n &__text {\n font-size: 20px;\n line-height: 24px;\n flex-shrink: 0;\n width: 80%;\n overflow: hidden;\n\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n\n opacity: 0;\n\n transition: opacity 0.3s ease 0.1s;\n\n br {\n display: none;\n }\n }\n\n &__icon {\n flex-shrink: 0;\n width: 20px;\n height: 10px;\n margin-left: auto;\n\n background-color: #000000;\n\n transition: transform 0.3s ease;\n\n clip-path: polygon(100% 0, 100% 20%, 50% 100%, 0 20%, 0 0, 50% 80%);\n }\n\n &.is-disabled {\n pointer-events: none;\n\n .custom-select__list {\n display: none;\n }\n }\n\n &.open-up {\n .custom-select__list {\n bottom: auto;\n top: 0;\n transform: translateY(calc(-100% + 10px));\n }\n }\n\n &.is-open {\n .custom-select__list {\n visibility: visible;\n opacity: 1;\n }\n\n .custom-select__icon {\n transform: rotate(180deg);\n }\n\n .custom-select__label {\n opacity: 0;\n }\n }\n\n &.not-empty {\n .custom-select__text {\n opacity: 1;\n }\n\n .custom-select__label {\n opacity: 0;\n }\n\n .custom-select__placeholder {\n opacity: 0;\n }\n }\n\n &.is-invalid {\n .custom-select__error {\n opacity: 1;\n }\n\n .custom-select__button {\n border: 2px solid #ff1553;\n\n &:focus,\n &:hover {\n border: 2px solid rgba(#ff1553, 0.5);\n }\n }\n }\n\n /* &.is-valid {\n .custom-select__button {\n border: 2px solid $color-eucalyptus;\n\n &:focus,\n &:hover {\n border: 2px solid rgba($color-eucalyptus, 0.5);\n }\n }\n } */\n\n &--placeholder {\n .custom-select__label {\n transform: translateY(calc(-50% - 40px));\n opacity: 1;\n }\n\n &.is-open .custom-select__label {\n opacity: 1;\n }\n\n &.not-empty .custom-select__label {\n opacity: 1;\n }\n }\n\n &.slide-up.not-empty,\n &.slide-up.is-open {\n .custom-select__label {\n transform: translateY(calc(-50% - 40px));\n opacity: 1;\n }\n\n .custom-select__text {\n opacity: 1;\n }\n }\n\n .input-message {\n position: absolute;\n right: 0;\n bottom: -5px;\n\n &.is-invalid {\n color: #ff0000;\n }\n\n &.is-valid {\n color: #15ab07;\n }\n }\n}\n","@font-face {\n font-style: normal;\n font-weight: 400;\n font-family: \"Roboto Condensed\";\n\n font-display: swap;\n src: url(\"../fonts/RobotoCondensed.woff2\") format(\"woff2\");\n}\n\n@font-face {\n font-style: normal;\n font-weight: 300;\n font-family: \"Roboto Condensed\";\n\n font-display: swap;\n src: url(\"../fonts/RobotoCondensed-Light.woff2\") format(\"woff2\");\n}\n\n@font-face {\n font-style: normal;\n font-weight: 600;\n font-family: \"Roboto Condensed\";\n\n font-display: swap;\n src: url(\"../fonts/RobotoCondensed-Bold.woff2\") format(\"woff2\");\n}\n\n\n@font-face {\n font-style: normal;\n font-weight: 600;\n font-family: \"Alumni Sans\";\n\n font-display: swap;\n src: url(\"../fonts/AlumniSans-SemiBold.woff2\") format(\"woff2\");\n}\n",".wrapper {\n position: relative;\n\n display: flex;\n flex-direction: column;\n min-height: 100vh;\n /* stylelint-disable-next-line */\n min-height: calc(100 * var(--vh, 1vh));\n\n .header,\n .footer {\n flex-shrink: 0;\n }\n\n main {\n flex-grow: 1;\n }\n}\n\n.rouble {\n font-family: $ff-rouble;\n /* stylelint-disable */\n text-transform: lowercase !important;\n font-weight: 400 !important;\n /* stylelint-enable */\n}\n\n.visually-hidden {\n position: absolute;\n\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n\n white-space: nowrap;\n\n border: 0;\n\n clip: rect(0 0 0 0);\n clip-path: inset(100%);\n}\n\n.scroll-lock-ios {\n position: fixed;\n\n overflow: hidden;\n}\n\n.scroll-lock {\n overflow: hidden;\n}\n\n.no-scrollbar {\n -ms-overflow-style: none;\n scrollbar-width: none;\n\n &::-webkit-scrollbar {\n display: none;\n }\n}\n\n.no-transition {\n /* stylelint-disable-next-line */\n transition: none !important;\n}\n\n.js-focus-visible :focus:not(.focus-visible) {\n outline: none;\n}\n",".modal {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1000;\n\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n\n background-color: rgba($color-default-black, 0.8);\n transform: scale(1.2);\n visibility: hidden;\n opacity: 0;\n\n transition: opacity $trans-modal,\n transform $trans-modal,\n visibility $trans-modal;\n\n pointer-events: none;\n\n -ms-overflow-style: none;\n scrollbar-width: none;\n\n &::-webkit-scrollbar {\n display: none;\n }\n\n &__wrapper {\n position: relative;\n\n display: flex;\n flex-shrink: 0;\n justify-content: center;\n align-items: center;\n width: 100%;\n min-height: 100%;\n padding: 60px 40px;\n\n @include vp-767 {\n padding: 60px 16px;\n }\n }\n\n &__overlay {\n position: absolute;\n top: 0;\n left: 0;\n\n width: 100%;\n height: 100%;\n\n cursor: pointer;\n }\n\n &__content {\n position: relative;\n\n width: 600px;\n padding: 40px;\n\n background-color: $color-default-white;\n\n @include vp-767 {\n width: 100%;\n padding: 20px;\n }\n }\n\n &__close-btn {\n position: absolute;\n top: 22px;\n right: 22px;\n z-index: 1;\n\n width: 40px;\n height: 40px;\n padding: 0;\n\n background: $color-transparent;\n border: none;\n cursor: pointer;\n }\n\n &--responsive {\n .modal__content {\n width: 100%;\n }\n }\n\n &--fit-content {\n .modal__content {\n width: auto;\n\n @include vp-767 {\n width: 100%;\n }\n }\n }\n\n &--no-scale {\n transform: none;\n }\n\n &--preload {\n transition: none;\n }\n\n &.is-active {\n transform: scale(1);\n visibility: visible;\n opacity: 1;\n\n pointer-events: auto;\n }\n}\n",".container {\n width: 100%;\n max-width: 1366px;\n margin: 0 auto;\n // padding: 0 103px;\n\n\n // @include vp-1439 {\n // padding: 0 32px;\n // }\n\n // @include vp-1023 {\n // padding: 0 24px;\n // }\n\n @include vp-1199 {\n // padding: 0 45px;\n }\n\n @include vp-767 {\n // padding: 0 15px;\n }\n}\n",".btn {\n display: inline-flex;\n padding: 10px 20px;\n\n color: $color-default-white;\n\n background-color: $color-neon-blue;\n border: none;\n cursor: pointer;\n\n transition: opacity $trans-default;\n\n &--red {\n background-color: $color-torch-red;\n }\n\n &:disabled {\n opacity: 0.5;\n\n pointer-events: none;\n }\n\n @include hover-focus {\n opacity: 0.8;\n }\n}\n","@mixin retina {\n @media (min-resolution: $retina-dpi), (min-resolution: $retina-dppx) {\n @content;\n }\n}\n\n@mixin hover {\n @media (hover: hover) {\n &:hover:not(.focus-visible) {\n @content;\n }\n }\n}\n\n@mixin focus {\n &.focus-visible:focus {\n @content;\n }\n}\n\n@mixin active {\n &.focus-visible:active {\n @content;\n }\n}\n\n@mixin hover-focus {\n @media (hover: hover) {\n &:hover:not(.focus-visible) {\n @content;\n }\n }\n\n &.focus-visible:focus {\n @content;\n }\n}\n\n// Desktop first\n\n// @mixin vp-1919 {\n// @media (max-width: ($vp-1920 - 1px)) {\n// @content;\n// }\n// }\n\n// @mixin vp-1439 {\n// @media (max-width: ($vp-1440 - 1px)) {\n// @content;\n// }\n// }\n\n// @mixin vp-1279 {\n// @media (max-width: ($vp-1280 - 1px)) {\n// @content;\n// }\n// }\n\n@mixin vp-1199 {\n @media (max-width: ($vp-1200 - 1px)) {\n @content;\n }\n}\n\n// @mixin vp-1023 {\n// @media (max-width: ($vp-1024 - 1px)) {\n// @content;\n// }\n// }\n\n@mixin vp-767 {\n @media (max-width: ($vp-768 - 1px)) {\n @content;\n }\n}\n\n// @mixin vp-374 {\n// @media (max-width: ($vp-375 - 1px)) {\n// @content;\n// }\n// }\n\n// Mobile first\n\n// @mixin vp-375 {\n// @media (min-width: $vp-375) {\n// @content;\n// }\n// }\n\n// @mixin vp-768 {\n// @media (min-width: $vp-768) {\n// @content;\n// }\n// }\n\n// @mixin vp-1024 {\n// @media (min-width: $vp-1024) {\n// @content;\n// }\n// }\n\n// @mixin vp-1280 {\n// @media (min-width: $vp-1280) {\n// @content;\n// }\n// }\n\n// @mixin vp-1440 {\n// @media (min-width: $vp-1440) {\n// @content;\n// }\n// }\n\n// @mixin vp-1920 {\n// @media (min-width: $vp-1920) {\n// @content;\n// }\n// }\n\n// ---------------------------------\n\n// не нужно добавлять свои миксины для ресета списков, обнуления кнопок и прочие\n// этим вы усложняете работу команды, проверку вашего кода и будущую поддержку проекта\n",".custom-input,\n.custom-textarea {\n position: relative;\n\n display: flex;\n width: 530px;\n padding: 14px 0 28px;\n\n @media screen and (max-width: 767px) {\n padding: 4px 0 48px;\n width: 100%;\n }\n\n label {\n display: flex;\n align-items: center;\n width: 100%;\n\n @media screen and (max-width: 767px) {\n align-items: flex-start;\n flex-direction: column;\n }\n\n input,\n textarea {\n flex-grow: 1;\n max-width: 300px;\n min-height: 48px;\n margin-left: auto;\n padding: 10px;\n\n border: 2px solid rgba(#000000, 0.2);\n border-radius: 5px;\n outline: none;\n\n transition: border 0.3s ease;\n\n @media screen and (max-width: 767px) {\n max-width: unset;\n width: 100%;\n }\n\n &:hover {\n border: 2px solid rgba(#000000, 0.5);\n }\n\n &:focus {\n border: 2px solid rgba(#000000, 0.8);\n }\n }\n }\n\n &__label {\n @media screen and (max-width: 767px) {\n margin: 0 0 18px 0;\n }\n }\n\n &__error {\n position: absolute;\n right: 0;\n bottom: 35px;\n\n color: #ff1553;\n\n opacity: 0;\n\n transition: opacity 0.3s ease;\n\n @media screen and (max-width: 767px) {\n bottom: 20px;\n }\n }\n\n &.is-invalid {\n input,\n textarea {\n border: 2px solid #ff1553;\n\n &:focus,\n &:hover {\n border: 2px solid rgba(#ff1553, 0.5);\n }\n }\n }\n\n &.is-valid {\n input {\n border: 2px solid #22b259;\n\n &:focus,\n &:hover {\n border: 2px solid rgba(#22b259, 0.5);\n }\n }\n }\n\n .input-message {\n position: absolute;\n right: 0;\n bottom: -5px;\n\n &.is-invalid {\n color: #ff0000;\n }\n\n &.is-valid {\n color: #15ab07;\n }\n }\n}\n",".custom-toggle {\n position: relative;\n font-size: 18px;\n line-height: 27px;\n font-weight: 300;\n\n display: flex;\n width: 500px;\n padding: 14px 0 10px 36px;\n\n @media screen and (max-width: 767px) {\n padding: 14px 0 10px 0;\n width: 100%;\n }\n\n &:last-of-type {\n padding: 14px 0 58px 36px;\n\n @media screen and (max-width: 767px) {\n padding: 14px 0 58px 0;\n }\n }\n\n input {\n position: absolute;\n\n width: 1px;\n height: 1px;\n margin: -1px;\n\n clip: rect(0 0 0 0);\n }\n\n label {\n position: relative;\n\n padding-left: 52px;\n\n cursor: pointer;\n\n span {\n margin-bottom: 0;\n margin-left: 0;\n }\n }\n\n &--checkbox {\n .custom-toggle__icon {\n position: absolute;\n top: 0;\n left: 0;\n\n width: 28px;\n height: 28px;\n\n border: 1.5px solid #2c39f2;\n\n transition: border 0.3s ease;\n\n &::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n\n width: 20px;\n height: 20px;\n\n background-color: rgba(#2c39f2, 0);\n\n transform: translate(-50%, -50%);\n\n transition: background-color 0.3s ease;\n }\n }\n }\n\n &--radio {\n .custom-toggle__icon {\n position: absolute;\n top: 0;\n left: 0;\n\n width: 28px;\n height: 28px;\n\n border: 1px solid #2c39f2;\n border-radius: 50%;\n\n transition: border 0.3s ease;\n\n &::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n\n width: 20px;\n height: 20px;\n\n color: rgba(255, 255, 255, 0);\n\n border-radius: 50%;\n transform: translate(-50%, -50%);\n\n transition: color 0.3s ease;\n }\n }\n }\n\n input:checked + .custom-toggle__icon {\n border: 1.5px solid #2c39f2;\n\n &::before {\n background-color: #2c39f2;\n }\n }\n\n &.is-invalid {\n label span {\n color: #ff1553;\n }\n }\n\n .input-message {\n position: absolute;\n right: 0;\n bottom: -5px;\n\n &.is-invalid {\n color: #ff0000;\n }\n\n &.is-valid {\n color: #15ab07;\n }\n }\n}\n","header {\n margin: 0 auto;\n width: 1366px;\n\n &::before {\n position: absolute;\n background-image: $blue-to-red;\n\n width: 100%;\n height: 642px;\n\n content: \"\";\n }\n}\n\n.header__logo {\n position: absolute;\n order: 1;\n top: 25px;\n left: 103px;\n}\n\n.header__contact-link {\n position: absolute;\n order: 1;\n top: 16px;\n right: 107px;\n font-family: ff-Alumnisans;\n font-size: 24px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: -0.9px;\n font-style: normal;\n color: $color-default-white;\n}\n",".intro {\n margin: 0 auto;\n width: 1366px;\n padding: 35px 240px 51px 250px;\n}\n\n.intro__wrapper {\n display: flex;\n justify-content: space-between;\n padding-right: 64px;\n}\n\n.intro__text {\n display: flex;\n flex-direction: column;\n align-items: flex-end;\n text-align: right;\n\n}\n\n.intro__title {\n font-family: $ff-Alumnisans;\n font-size: 50px;\n font-weight: 600;\n line-height: 114px;\n letter-spacing: 1.8px;\n color: $color-default-white;\n padding-bottom: 46px;\n}\n\n.intro__subtitle {\n order: -1;\n font-family: Alumni Sans;\n font-size: 48px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.44px;\n color: $color-default-white;\n text-align: right;\n padding-top: 110px;\n padding-bottom: 12px;\n padding-right: 50px;\n}\n\n.intro__description{\n position: absolute;\n top: 305px;\n left: -128px;\n font-family: $ff-placeholder;\n font-weight: 400;\n font-size: 14px;\n line-height: 1.5;\n color: $color-default-white;\n letter-spacing: -0.7px;\n}\n\n.intro__link-buy{\n padding: 20px 56px;\n letter-spacing: 0.9px;\n}\n",".button {\n box-sizing: border-box;\n display: inline-block;\n text-align: center;\n text-decoration: none;\n font-family: $ff-placeholder;\n font-weight: 600;\n font-size: 11px;\n line-height: normal;\n color: $color-default-white;\n background-color: $color-transparent;\n border: 4px solid $color-default-white;\n text-transform: uppercase;\n cursor: pointer;\n}\n",".gym{\n margin: 0 auto;\n width: 1366px;\n padding: 120px 103px 235px 163px;\n}\n\n.gym__wrapper{\n position: relative;\n display: flex;\n justify-content: space-between;\n}\n\n.gym__text{\n display: flex;\n flex-direction: column;\n padding-top: 40px;\n padding-right: 85px;\n}\n\n.gym__title{\n font-family: $ff-Alumnisans;\n font-size: 32px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.44px;\n color: $color-primary;\n padding-bottom: 8px;\n}\n\n.gym__subtitle{\n font-family: $ff-placeholder;\n font-size: 14px;\n font-weight: 400;\n line-height: 1.5;\n color: $color-primary;\n padding-bottom: 40px;\n letter-spacing: 0.7px;\n}\n\n.gym__description{\n font-family: $ff-placeholder;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.5;\n color: $color-primary;\n\n &--supergym{\n padding-bottom: 8px;\n }\n}\n\n.gym__video{\n position: absolute;\n right: 360px;\n bottom: -116px;\n}\n\ngym__video-button{\n position: absolute;\n left: 50px;\n}\n"]} \ No newline at end of file diff --git a/build/fonts/AlumniSans-SemiBold.woff b/build/fonts/AlumniSans-SemiBold.woff new file mode 100644 index 0000000000000000000000000000000000000000..a6606e8e8c9b85e445be7aa012f8bb6c50875606 GIT binary patch literal 49924 zcmZsBb8seKu=X2Un{4c4V;gU@@y51o+qS*2ZQHhO+t%IR{qCRNsd{SWJg2*-tEc8n zPxrXUh=>3{0RKimH~{(I0mK*h-|YW4L_`#&0D!)ee`~n^Ar^K5MN~*w1ON!y_@}51 z0D!`_v9zy<%E~AJ012J|0KFvuU^0;dqwOH7p!6F62>E9lo*w|fivFgymXlGSXZoji z@Xwa)Kj;RjORE@I>DdAR&;d8A-sF&AT5Y1|@Q({x_$LGXe?T^|bTbA3Q2+7T z=>R|j$GfH0Z&M>Z!+-YvT@%3eA8=PLnoa+a|G0nl0EGWQ3b_V>VQS^*`p;Ju007bo z06;2mO0mngv@!T62men5>Yq)h1;||HSSvl(f9D_r|46)lAOw2_Ojzq#836$H{{+FX z{^{R;@kKt_+Bi4@08SJD0CG71Kw@x;k=J8uZ}d+W?&Uv&|G^Y8GU$Kf3<92kWcab6 zg9Lm8z=8c2OTb1f;6MKWn@a_T-^pLAV4Yw}|EACY(EnHfz;(?)*HBm2`qc$OjQ5l8 zQU~T<8!`u)N!J?&P>Txn{D14-qp^cMQ?WfgV}Ju95MxLY0F4L8=>O^KRp^K7>Kf_l zo`KH6!*3z~WsL3(l}iADq0!ZSyY9(}Mc8kDe{W~T)!q4=9N4(Kh6Mw=#}*NUfE+p{ z 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 literal 0 HcmV?d00001 diff --git a/build/fonts/AlumniSans-SemiBold.woff2 b/build/fonts/AlumniSans-SemiBold.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..7431d50699bd8c9ab4410b078b7a3a065b90c0bb GIT binary patch literal 35792 zcmV)aK&roYPew8T0RR910E^H75C8xG0e~<70E=t@0RR9100000000000000000000 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 literal 0 HcmV?d00001 diff --git a/build/fonts/Roboto-Condensed.woff b/build/fonts/Roboto-Condensed.woff new file mode 100644 index 0000000000000000000000000000000000000000..8825e992b05e61cf277871a5a5dd0b02f701ad6f GIT binary patch literal 93452 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Ξ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 fP&YBLzLi~=0(6MPp(taUUOC3EQ-MOyzn18`H) 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 literal 0 HcmV?d00001 diff --git a/build/fonts/RobotoCondensed-Bold.woff b/build/fonts/RobotoCondensed-Bold.woff new file mode 100644 index 0000000000000000000000000000000000000000..22ecd3ef7bbb4d41bd0de5b38fa0d76fe02b2508 GIT binary patch literal 93648 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

D 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 literal 0 HcmV?d00001 diff --git a/build/fonts/RobotoCondensed-Bold.woff2 b/build/fonts/RobotoCondensed-Bold.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..1c090024357e19a01c14a64952b176b27cc89f4f GIT binary patch literal 66100 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

T>=t<0|FJ1!ocJ#WO7lBxHu|x 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 literal 0 HcmV?d00001 diff --git a/build/fonts/RobotoCondensed-Light.woff b/build/fonts/RobotoCondensed-Light.woff new file mode 100644 index 0000000000000000000000000000000000000000..75187a9ff235cde20b5876ae199578d522410790 GIT binary patch literal 92176 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

  • HH1!x6S)54< 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 literal 0 HcmV?d00001 diff --git a/build/fonts/RobotoCondensed-Light.woff2 b/build/fonts/RobotoCondensed-Light.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..bda9da957017217aaff21783d3f6c7b7a47c269f GIT binary patch literal 64960 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 literal 0 HcmV?d00001 diff --git a/build/fonts/rouble.woff b/build/fonts/rouble.woff new file mode 100644 index 0000000000000000000000000000000000000000..b26ce1d0759bc7b0c88b15cd1db4439f6be624b0 GIT binary patch literal 4452 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 E59@U}egFUf literal 0 HcmV?d00001 diff --git a/build/fonts/rouble.woff2 b/build/fonts/rouble.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..31dec802132922b10965a3211814cbbe46d77aa1 GIT binary patch literal 2796 zcmV0RR9100000000000000000000 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 y#|QP_BGzJ=<^CTh0 literal 0 HcmV?d00001 diff --git a/build/img/Group 2 (1).png b/build/img/Group 2 (1).png new file mode 100644 index 0000000000000000000000000000000000000000..7bd114a2690212574e9db42b9b7f27dc6c3914d6 GIT binary patch literal 29185 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

    W;&l$H^}P_S|d7CIKyI(t`d0^6-Z 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 ZKL<8AUaOu9t^xo6002ovPDHLkV1g}*FC+i} literal 0 HcmV?d00001 diff --git a/build/img/Rectangle 5.2 (1).jpg b/build/img/Rectangle 5.2 (1).jpg new file mode 100644 index 0000000000000000000000000000000000000000..afbbdcd18d2b175da17f98c628c00517b24e3d1c GIT binary patch literal 296219 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

    De^+!+{>X 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%0AGHyWMiUcYNDvcZ{4DSK&aQrhdHM-^|yda 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 z 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 aO=m%_37#qMBYr8TWyCiuEU4(;^#1@t-)U+9 literal 0 HcmV?d00001 diff --git a/build/img/gym-background-desktop.jpg b/build/img/gym-background-desktop.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b6c411f1f9f684cc8d316ce0d7ca35e79d72ccc8 GIT binary patch literal 258991 zcmbrlX;@Ng7%sdJ6bD2zO-NJ>%CT}Nm7HzoSZY>UIZs);RKUVC6U41eXoxvfq?VOg zIb}Iy38dSx)Y8IP49zKrRJLJCXZ4-$I^T7Dzs_|IUjD)5df(?=&u~BYbFbfhzXgD@ zo0F>(0Fija3e{S-Bc?$^SHy79>3(1ta1%+$^q&7jIn;^fN0Brz( zNdM1!1OM*_A_av>%fMyjDD>9tJ9PE*4fgCcx3DDa+yB=ACubK|w0`aWX7C;#B16Gk?dPzd(t*7@v^xPioqgtJkixvTkMPmL~VDjc8qHaRst^J8gwMfBh5Px0CxyC4Ac ze;wKXH0=Lp7kCH|DHse2ga5G$A{7VzLN~#rbxdSb91g=nNSn8rCd;ZiX5O#l$>Ger z7u7<^ALX~;_l#}-@yE3P$Fl!D!|4A z+j~~$*dQ8mod!)Tl$yNd`cM<4y1kG750q7yX_YXV#NmI#zuMRbwTgePJ`%P?HbSxX?P^2r=vo*adImz|l6~=Q6%3|V>Lg;nnhxH`e+xnH#-PX1 zkyX)eAmt|`^jB3~ob5aNbIO{u;jQCxXv8^JXfO__&|ykA<+JzqjUHO(2#~llz?k2+ zRwOLQu<%H(H`-AtTQ%ljjR(Z8e70+4k9+P&+?lfa;n}sbKhr~{;v=;QWclw7IiYUZ z(s%!!Z&s^?WT=xeQvOaX?9Ig7GbsGw-EK8g!Am$OBe<_V#bWqX6F!crzBd|C< z-iPFo+j{;0XV5H$w8n=D)O_Vrm1{|5XP?xS}-1YC#8%-#Z#uqDVOWq!twrl8rU zM-Ac^e+{q8nm9DtHvMXK`zS{iO=;k_8Srwf=inK)&lBZ>?pm9wHeQ~KY5jbu+BfR$ zZcfnbdNSNdkd-PBk_=gIRR!UR{o(#0{a3MS2dF_;1y@kQ7+m^$br?Wsn`F;<`Nmmm z-%{elaEYzr=s;{hC0WZ z_4LtaAKJPNwXCt(UZ8YaE?Bmueb5E3omX&|d~YJp+(jej&PfYC|55qs_0^S=mq+ls#^F53StZ|?Lhv?ALE$7>aq*qMKOXqzAOWt2Z-IcLrIk=*P6HAo6;!&h2wIZ{hE zeWHAGt@gC&)xzkKg!BG$2{h-+8=)0VE4z_3%O z!NJHfz8L70{#MjGA#FdU;jUcW`O(roz;fr!d+~=^mYS`o;9?43$-}{8WL0X))+DwC z6NSq!W7CUqPYjpX%kA?TF8H(w>eWb6VL9kc9D%;K%L;db3^Y6AjQRpCOaQ^$P=By? zl%3*lKqo0^+{6=8(Klx=uI1f;df89MbjIn-H^^5`ABs;W0>OIMHhtf z9QNMZI2qp82cOhhkUr^loCTf9b!=^<= zo-M=mHuk+&J6mrf0|Ss~*cJveUD~M#Q!Ry8U>gXJB}G zt>IqEnj}}Wiu6Y?L}FJMT|EYh#Z2lJzmHcO-Au8YU0dnBM|9SOyvAs~N$!HD7h}lB z+2s2#kIWl_KD(~mCokB%G+DAsX857<@k~}-TeJtk?$Tart-ZRo{v@2^#uP{cz@;+Q}ffRcMt!;bcip$VpwEk5m`;DC(NK9 z2)XVnT{9jsK$}pjj)!j5lx;QH9_70(1@32dO`KgD_0)t8*R=1t4@+jbV2#_fXi%tx zQ^vVSF3xHUdoqQD_h2Gf@i4^K*tH3FiR`HHmOdpL zCkoy6KVn}OUNqw=%<&a%?4A|rj*wWElk5vvWsijQw`8mE%fO5J%b=YmvpQBT))(;F zx57zu@}*^7rw8Pi3=PakY=WjGPty}4#NmpuLR`7M<-5vV2CI_S=MKIA;-NPClDlvW z(Re~~Yg?zHqFhVRwqsfF1*C^;i;Y+pg_UT^m}R;RLT_fj-aawf8+S*Rhl9ciHdk@m zX)D~h9$j?f%9jn;SAKNL`bd9&@?gfr7KeNpB><2E!nd9T!~YZB(<&zEHfo{YVaC&j zlwmK#eEba{EFSf&%icN1&gw?2Xu3>VPC+qjqVxWtKQ(<3et}bhF3_kO0=Uo=_R1u{ zK+FLfV+{6IDqplLwWHP=k(EIM;%%m}Cf0;c@ZJ2gE8?BL|bZhgyrZET9p@%rz zfI}A>wVbh9C-!fCQ;md10SwLGz&pQ5DZhr%iKHoT(;MeP1J1fs)~T2pd+j&o#sLOd znauLlp~YH9QjS>Y@f+Za?*DBtxKfuI{}rP$a?Z^JfBoi?W+i=4*s5{jRJd-eQL?GB zoSTVd?BaoasuO1(pMA!f;QnIj4{<<_<$?_M*hLy51(q9YvD61Ie-8r;vm z2LD^mviRwj(S(5!-`>A#L$a`8I$XuoYqD)RP)M7X6f!)Zza#Ud+052wCk+q0`VY+V zzgp;O$--!LOMA!4^fY&zN#rq#r3NI_)Z#u&w&U)hg3+Ya!5Z=A#D9Ohb(8HO9?pqw z3hRI;Is9re+cLiXu=~i1Lm;dY;Y^EEr0zX!M=mN82I_x8Ty=;}aapzSQ*f-32WRn| zJ~_QpHO9xQZYMK6J0uMoZW=9})<%db!cIpQl#6eFD9z9D70(unrtIR{rRGD;jSm$w zWDf4js&mGsc|SV7OF%rZXTZnt(1?D+vG#_`4ZndIE-WT-^{-$Ck{g_{wM^6i&j2wRCFnIlw&)LAc{?800L6aK^Ncq-_L;XOuFEpjku)=#Y zihx6?Ic&S%Jg_nk7Jc#NXAqjxSo5d*c`CNiayD|XiEF%_jBgLApI0RHPy+;0!CcOg zOW^?}%|rRuW#$Soqa%m4$IvA;~u%PYyf|wcJ zVu;g-$hll9C{z=9#b9+Mn%&>#ka1fa3r|pfIauu zpu2he)`OTaPaIw>;mR(*71;IF)0|K(VScS`?E z{FBL4iRzRj|7>VVZG}YVCVMd;D_ypA(cblanNL7% zZ#WkPgYXbSV zmeTbEpMP2^L=vfhALDKcIGW z<1<&>V)xD$zi5Hn$Mh=+d#BVf-Ey~q2g?m51)JXovHp;UvAskEu4~yz^hC|0Hm}kr z=b83V*`+cT~OU8R?AFZ%Of8z8c>54h3i(}gDHJ!^bCVo@;o>htwdO9gThfz>&y?k!9#cp zee|Zmvsm;Kp{-BQ>K{j}H+D0S7kRo0>^s4^U?ltoOa|SfI$h);N4oF`EsHG%g(AYF zZfx*VrPel zC2Zo|3M>+To{R3ZDw*29WtJV@U6#GTkI5C^aXvo%(eGRCy2|nX%&N?LJQ^BKfMb^| zv06m{G2!C}!_vSpjlE^1HbAvj_eC%&YUClv*T8qP5!@_3=2m zJr_F438V?)rut#`iDQg?M zH==h5kWNv_=0U4TtFig& zc3r*jd~&>&fQ__@&HsrtZuU^JE{g-R)0)E{*g}Nq3$apuHpi=xUlVQ~VYxIr>~(!y z){s=662upAL`!THd$_Jm1{_18U;58~xo>js$(W5KM=-c%>#&Izx?*b=m7q+s0uQps zg8%r9vsXktE1KVSWAjPVovvLlE%Qm5M}pE3?>m=bmX)SKf26i1baZ~bG?_2gDdP!a zY;+Te#L>(#W zH!CZJCys5E+g(8ANHjhwYcQhE36tq0#$2FDn=S@3Nh4YkWIiQP`5l!3lLOH4CE3>L zo|q3=S*%)Y*gbB(hJr-lASZO<4hbH1<#k!fD<%au?2UH9^Kj)E{f&{QAM$P-p(36xI0qm&opl5 zd3D`8uo zYz#_SXe@9FCN|>L)gOo@AdoD{j4fHO3!O~0q+ruoPY7){xBt*X+xHtBJNjDhw$<6y z3mhgp34FTLWx})4)0rCa_f6lcjo*Twp4iDbYZOoM8Iibb3^W&Irz@i-YyNUODakKb zoZNk({Fbe2cI(F17Y*BP(;t$?d^N&u*0xj zeNxYqYg9NnSFfiLDqrOYT*`W!w_U@X>g(s~nmuwf{~Yw8Xj*gwdv0p}8VemK<9~I? z=_&VV)d8K;Jf1HOW^g3Eyz~=z@-yq#tYUupXNGzsM~q38gU<>~dLX00gj1(9vTP6g zB1W+)Z$--oq8b`vJV6QpXQKEN4S~&vEr}yD4JxCapWtRv-jCfdm>&XwGRgi;I4tw2 zRQwzlg;pkYJ(@JNOPr6ju zkojUl`JXH+pHjtfx0{VxOKz-0p={3}!#dqCW|+kj$ECLEwKwgU>{F%fnt1#hAT}F3 zd-=o}^i>_-Q}1N{J7%W~1yt^z@UJ8&X6M#d&6R_|mGnY(xyCwXsOaK=a>Zr~UF~{+ z-LQNMWoKMS{md!%?7h}~U&G!@N*DuslWD+y@i-~=He_h({Y4Ym-py<4)bclN&E7fB z+!r46*Y~9#u1D=Sxao=^y0fQ>%utJ2Q0{CA@ft)^R8P-8XZ7%78dhPaTDLo9lWjeQ zUVq0{g}18Cg=7btk9mwgj_k~$_%mWEU^R@!A3ThW=mNG0k1|0*HJ zU%5UrG>p0bfRuB0jyk*M;vHMVaH3RyA3NUKUN>}H@nMN!`q=Gc4ag~1(_8-9UDTHM zCKc-F;cSACe&S(33wlydRuf%uRD22Y6HHp7C%3{yZeTw`Q{(dF)yT+h${dkqO8?iz z{(GVL@4^sU=WWTq2$brFb?3rqPfsLUU5n5qwi>cc!q}1WYR&sovAbNG4Z6Z#$1G17 zlt3**3!mv}YGCMYQcfS2tyH8IHHd{zrZsH#PzyYNlB4YhX>WFY&te{{tVNPrtn3j_ zFAh9#?0oej`ZoZPX!FZOLzi}uq5A$1c5reUZ0^^yD>^kM_%X?0=DY9DpO=-FRZE_0 zarjeig~q&b70MOV5E7!{5oaJ}8G$FyWe5CQTfDjn9q{V21^>ZpO^I&qvWgqKpl&%V z8nUzQ#(98A(8X_z)v?m=E&NoQ_zft2vy#sEgo&-E^+Sn-h}|vi{imSw>qCgo;OR`k zF2#3o-diAK4D8Xt`_#UxRWHfG)$ZH?VJY%pab$Seuc%2*9#$j`)@}Bt)dWWR6-_b$ z&m7eUysyuc1$kP@eq_nSRsm8#tF{gf2W45J8=*`O!kO(grLWY>MsssTgWYGtrI4Sk zj?#*VP|{E=^C5=8N(vdZ+p8b2`w#pCg9@mH1Doo}%$BE_nVHLx8kP6%CU37W#dpqs zX-EdkWS}D?Gm9%eK9MZ#8cpKi7|}wC!UgoMw(>*k3o)&B9Wk?q1ut%X6-YUK>SClJ zT!lSWF5i!`4EC?B^UDfy3wM2z>E-ggOp)^!@!?sFbK_A2j7SwOl2Ci_Tn(~WvjZ-r z2CfUEX`JSE#*va~r?o|cYlE#6zh{YcSiM%=B9&U)=}AJUi`X~r(DQ||JMq!Ge=4j= zUP_CPs*s7MZYjNV(+|rcQEc+7>#Q^I*^2tuY%5-hJs#dKa}vYWbZ zZ9Fwo&x`Vd?yNAqn&i_`jGKVMe$ebKIL9e?}FU|c|pmzYy7t}SZf4GA%l_O+S=B7Qq}7sP!hL$PiBrbde-#@EgS}&5 z!cH4@TFA`Evjxh<@YBOZFX}5m%vsL@oYZ{rIa3~_f;Sdn*qT5&LMZ&?=1&U_Q5&cA z7Pvx+34^5+meYJU-DWq0w(yG0I5M7cX)J!V(+P{x1J=T!Xt#M|S^P%>inA&OM9T z^@(31O-s0)ev1b?Tq`*lHsKJo2ofyo1gg$p9Zwi-Y{K#&nlR!N3c^^Hh322XH!Sei zmZb4?NT+ioYPg^%r{Ek$S%jO4L%woDTAWxUO1>q<>_ z$CtR6$bJ608lLa(?Qf<$BfmGxq?cx`CS%y z4{&tH?bfZ+w!j0iH7M&Jd@Itu`TVzYVTx)!(`({*R25@6zs|7Bn&sO-TE8xodGLoA z^!{8hyOAV)aL#g7cMz(JNzVW02hF6JYye%`xFkZkc0G3XXlSAxjb$2}CS=wg0Vh|9 z{|qH8CwE$CKV0yIK>RvJ;N_+-Usog$2EQmvpQ{Qdb&2Q&;_lxuEK3M zBoGkX=8B$*i$~!^(E=aG4$p{3j|-$u2T_@z(aRD}E9?yd;4;Z3efdP96A?)^;kH?x zd}X*hfAF*+H8AYU;ZD1H#-cfs?1!>(Knu#XFD@AzEoikX1)*;**nQF6$2`bxG+9{W zX}Fc=NSpXICd+3c{LS~dah(TAR&%XWaGPYFLRNb5eO!htSJCP_*o+qNN3{7Xd{Ldk z5Ys(euhUh8#~?^AcLU+VWOmB+E4nY1mo;DV*Lt5vQ&zHpO^+In~T@)8yB2Ee4 zYuGTmw(cA;=sEk%n>A(JUSr_D-cpB;!mkF5)LB#29e)E<>QBfT7}yPuTz5HJ8Ji+q zq4e68554Du8Kb)o9vg#t!_AP2LCRvB54 zzpgqz@V%qae2ksgWJbI_NYmEdWt^9d|NJXvqI|RtX%V+>Cy?ye{-rSS1-e^?$nbD1 zelIi89+7rj#Q`yRb$>>kn@12>tzcCJwY{2NrX~^FjH?pw-ZuXrwuK=~_e)zp25i24IJoiYA+@2yvSAVVU$ymI&9#hgXau<2@95G`3-@u#WXn8y>f(79 z=kXll_M_q&ZnHBaTep834t62zzv9g8$&W@#jkcX7UDzp}1zm>r>a`@O_1nY`Xy)df zbDyiHUWD16wHqat?$|ls?_U_iI)b>K?A$Lrl)6NA?SDme9$e2z-5Yg&sdoeAqL%pP zFBdFa#?$1BQ^$+Kfs%^KTTgTSF-)A$h8PeeDnD|!Ek%bXWn7GT+AI}iWx8Mbyti>} zXc)s>L63)xhFBhT&hv}U`Psm=K7l)Zew=TU|u#n zBv{_cm~j7bjSojOMDkr(*ofaGK9`_=3=u~oGbo6;(AK6GDrxrWXLYt8L!L=GRp}b| zVb9#sXx!wCxr@sQ&5udvY>|}BwNHjnHSHQ!50`ibH&Z+6BF|8k*Xgc_t}~ox)W%!y zcUA%64K7gaOA|g;N&a9KJLct!Bs-y^eWY)`Cwg0F zA4&xkBKU0wI==oh2jZxWgnxwROM8mRDlbSl6KoE`Z+nt|aO&k50!GT?9pE#K`m0^; zz^fv^g$*iKD=y;Nlqsdvc=Te3r=xN@E#gL@{IgfpuQb$ES%H+8&wUpSm&UGVH=l4) zRbjZZExg{B7Ti9uUy*TC1tf8TZb+WH8OLdYZLTb3Jn_*L4L{2+>?THV$^PqhLj`bnat14jxT@MklQw zs6BOS_CB@`zjPb3Kg(PlYYRGq z4Gh2JfRi_?t7^3(*ZL>tTY>_HvX7mrn9_K^n8Pc72#a3t`^lXUi3(t#v74bqW6+!C z2h;HESZ~)|UCRT1xP;4GsVC#>#qy9ge*}g`@Q38jr7VYGdzC<+Q=V`Mu6MTNjvc3a zSXa_)e>8t` z%MYTH2K;`Z-J=aEbK?dBASGu2Qc~66UR#%0<81)2G?Y^lt8^}*7)RgUX!Qry*G+cZ1 zAOUo0>Pd=>T@kXbwb`s02|W*+Yjzm(t!Oif`a3u858$m8rqDeS0Q**N&u?`xx3nOz z(BwbgcL!cHWCGC;TR}8|7f5RH@Q7u9!CYGH6nI{{AmD!r1 zC1vM4P*L+p)QutJO=AJWdwFqM(RL=mj& zq8-)u4kYY6H#hmX;qGe155_zfM5qiYqzoLI%mtL21Q~$N;X{G*YolP&s%0Pr4)~1A zmiX8VhhJ~uiAzX*^oKpYxuYC#qOlo^ngeIPkS@zf-Exm2T>@NH9UU9wR64r0^ee5} z7Z1JHCs-f8mD$Q0zgg0PmRACKgN7fj&n!o}y7<(eQaRs|0$22a+6x!d)IQ{-X1%ih z!;ykd%Vr*jUraX)idUyxAlNuG^vRSl@<%F`0qtRtrt8{w+3^FLGqbWTU3gLbtZG>` z66K%Mf&y0O-6Q$5cpO7T&uyN+LFrYk@$|_bi0UN;Zpc6^yS$v>&?jx!6h0Kc{_2H< z9Y-6U2@`czWPSWTw$!a0P8WE`YRX6*b6BG8I9f=ewEM z>^W?yi@U$>NcSWN==+egjg zIXGQA^P?(q-g0m{r7{s5vQTG(mysT^^~L+UiI-(Yb0HOt_wjmI>?qhyB!iv0?j1;2 zFJn_1MwpG#EonugW?Q_pJ*^~~SHLXs~Y+5j51c+wW#8ekY9fdZh2brAAsk8e)w9tdg-&;!SpMQ5svrnzMkhnoTgUi zEswlogpqt46?V+64L#D-FnxG0@lDOwViZhk{q)NGi6N_04+w>%{{lVDqXy85}bN7ix|wgTz%_XgrEcbwb9;M=i6(4 zlLlV?5}rrqEIL+R>wQycFxX-okfo!n@Mvc&zG&53=lYrZ#~G#{@~HfoGnPR?6B#49 zRQ^c(msfF`_5RTmm&X|bySugTx4`orwoGhp{W0`l56g*paOb@H?IFi)`5IKxwaKli z;}tI#WO|4*EcKys7_qrV-P>Q*$8Z$a!K+Gs{evNmxB2~Yy zmA&oy!n*SJyZ#}^r&r&x1dJ=ux3P1r#QLPQ$#d5)A9z5pP{Toq<7%Pr2k&`I1pK2X zf1?HyAJIA)+=tugU3ALoYKV;KVC^yZLTqxqm4%tp$87J1w`H;8iw{4M0&J5~>Q0P7 zu}icEOr$CS0cr-Z)q)n-Q|76AY74D58VB@F&Hz`{#XW14vx5nuNJ0ntRjFgrI)AnY?{BCKIr0R;rrT* zQ5O`*v9WW{xU)k(`GywIX+o3LG_P(VTw6@u)j+c=HSTE+*@ zIVmX1iH~ExS{pnGcAt~``{Y}VDxa$P-@q1Z`om!L?aErU3U7!~rkQ!Y`bO8PZgn~; zZ<9}-E1%^TaSq?8zjzQ@t7D|Kr@x-X1B8TNT2x0!!F$w6ne3PKl!a%KmyXJ%tzxIc z97-&WEM>gCBe5v9d>7Gzco$@+Hj?haB5(+kZ1}VIsLU?w@Uf~I>58KH64|G69K+SQ z+E2zNFK=P@6zCD46R1uL=&Oq7a`JJC3>kqPgewjIHp|j57|d`tcO~$~7ERYTr7-PH z`XdY(xQL?*uyDFP8o)&B$vHJo^+`*scJF?F03q{Ls#5wmnI}7*9qbBSWvE@jZSS1> z7tq{C%?#b^|)@o5oGtF;ZKHnqS@t0zTj9Z#D;=3l&J@I)T<(=m=O+X z#R`*|YBjKl#R76L^Pz0sFK%XAs4Fi0xre9Xfrfl=#J8(}?=T#v*&Rl(9B#u|rS0Fe#4^5q z>E@{xh3>!tz8D$wdUO{d5VZ?vj-RwfB<6*>qG8G|J^TM)<@r7`642J?b#^x`XU`?~ z;1@x)+WhC1qx^|wb#Ukw^vyNL#v@_#>T4kZZX@F&oF5lVTDrajo2pAmesE9LrQbjR z)mF%BHldqRl9@_4D8C%_-9;ld>tsNjBY*wRuy0%Ti+7kO<0WqZqCEfih%)yo*?jkC)O8woc({sA6B zX1m!;i-_8Jr4Ep!b3N?wtA6kFQg;x4Y?T^xsZ+Kwsw?Ieq?W{BGaUpszrydsQYju? z9&0ksNG&BZ@xtm$D_pK{p1sQw$~f}p0M;8PH>i2rk_YKS5ME=Lkuwy(s+$e9#3YZj z?Vg6OZ1{@SG63WoZAS<3RZK9u+Er5(fq{0)ZCp^AeKOG+w$KeA;g>n)B(A2Mrjr?~ zaV_XGN6G^}Y}msNUnKXzqIK#KQZfosQcEd|;EL0%U?E)hW)l%^PrwL_u|L{oxbTh3 zqqKjt=jq&VDN~1jcD@q4gxfkjn-xnqr2Du&a4=ppbW7TrY>Mp3Xv&aDAR;f~CYqh3 zwLv{ud^S4P@Hf!-8#w5XNF376g-%YnOv&kx?Z-iZ_#yBTQf+b3ASmjX;XXa%tl~b!f>{+$BWDrEx*N69}gjTDQdn*>QWa&4+8iUDqDm zl;2P&wCqF?)oD-+*(9^?NcwA=xTU0k!E>FY8IIB}4&VDg;M*ksG|O>h$^_KLr1QIq z^AF7;r@OAA>fv3=ltUJ0XQ?)OIAnWcKUnhY5JOrQr$|qt&BJjh^plrgUN;nEG*DDu zC7gM@0RnuJyVp)Zi!I05o7w_z!!RO9Wxnflodw7Wq~unhTh9e!sLD{yRjn3Xj_sAM zZwi40q|XDxHwH->Y)@sa6eHVNGSZ!9D#gGEANdFT26oEc@{f4j$p;l;6C3Be?&=b; zX=t#8J4&{MtpP4G#<6af$~~9$shKWeB~vzS&6Zp^9MvXRG&S{mj&KT@X6*yHQL|+X zDSwFE#8Op00GZxMpa$+II}ypA!zgj=>Qz{r;UHVIvd5&XezaKldTG5SdbS=v@j969 zK`hqfw$q#sZmw5kCcZw)5q%o{{LiUr1_txrb|(}5V`CK4WSWhT@f1C&GmvrhvTrua zcP6!H8bgc{q~v6>)9$*KZTtof*^a#l%cw=+m~ZW8>$?*<=B}EyVFy9*uyJAQ@fF>2 zJcEvm=i#jLJ)A3Ajr5deCqVxW7Gl@mn9MRAw9WS^?;9sWHTxhGIv9A*{9<$n_~0kg ztQIzAqdS%h(4CaL$u6pYTH*5S)V?O723;0qXCj0mm!h5tQ6(%{Vu0DdPt%(5JNZ(zl8=W;mKsKdNhbF8P6&6qVpq z`79{NGmNqmQSr0`-;HZ(IDFw)ge#)+#MKLyl!O0>+uk$wMp^8b^n%g;(fziQO*7@D z1<)pVoiYNVy!reS^1Zp@uUjt+mW%(xo-w@$gsYIzrcK#9(|IRyW7_47eWt5UdBnxs zwi@{$_A8P!EY;;db3Zw{`=^bYg&P`qJmgk%OYSNP=sfmjBE5Z`CdDyJ8+iEjg+}1l z8b5PMQ1)-26mjiXW0iU{Buln$qKcty5*9%`R_$Vr)i=18=Ph+F`wl1_?wGmf*;T9UF-Ys&FJcv>EpS`e{Z*cwXClG zH`BAB!!IDtNouBdP2dM_% zFD$D~Abu5PmOl3F;ZICY)(joVnmBt&{Rhm@bic~@B)>Be^&{6% z)ftCAZans0MFdlI+piy=%Q^7+!fi9lXH~a8`^*ot|5cqH%6@+=?CyD$T*~WBhg2N` z$4XDt)m=J*P(1(R@|}oORlk!42S%rh!Bn<&so8Fk`begK^4oH}{u`ity0SufT<{yL5Q#eG8T zM-3*wHMO`W-sX@k&Mm>@_)@5c)~K29t~~Tey%wlJe(dzcA$cO-0jQBrb|Nv9pA&=D zB=uDHkVlif=CwMGY2Lhy4|Ry=lm$5kTQGK;Fg4+~bVo?-~;R44gM)w)@1jXF25qPMr6<<#wE z!iC1FxJ|~VzcURkNe|r7Y++`QvuAtEte0-lb5<0g99_f7V)|JE3=n#Sk2R8gMG zZ{YkRvi{x+4WpkkK!1aPR3ZO;={9|Q$lZ{E!Fa5+&&YhTs||)(7%XFT1ol4rRnQ`o zI$ItyJMN=jm2j_5hxAfT9q|a%BAAFdS0*%WyZRuTc;INIH+|6wWxAPzps*Yei7yJb zi0$o~opWEtR)aLm=ih+J7Q}Jpdxy|iPP76t_T_S2Ls)HMYQ}dqO-YoHSc8Ks`K3aQ zuFG9mYG=O~SLHQ-v639DR(KNX05&znq7pfToR!CZVV$H|z1{9C zj}H_Pe{FF63bWpo7a>hU;~R!{nW}2Glg+^m%W81B-u(GPNeNeto6@v(3!Zy9F@X{VhtiQF1#Wso9gJ3JR!1ZgaRe)V6 z6;~^=**o^Og0EitqosS+MB5L@0;uLMcE$sjCj4kEAz?3RK*SLiX6vUdFBX2TH-Un> z@}Hrfnvp{yg=9t)o-*)U>RyXpp^0^7t9|u_Ju&q^B-N%#3$F|AUiQr$dzF5?bQMDDgWcn@oRZD~u~{v;sOIm2 zA1C|I*Gz~v{RZF?xvH4QR)CZU4%I4xXT2LQI8=y??HTC< zwM&&*3g(4qOmIpk>XNdD+r;q3=;ySD1?!vTFL~}R|LQsksY3@R27^=s8M{05q<39+%M?fQ_Jk~w;Y*E&A7z5V;{KZH~`qV`wQ<`fzn$4W4< zstY_ikH%^K*s;huv-5nA?!@fcrhQpi-2Vh+&X%z7dwo`yosLHVNA^&`I%KzPTTw_O zMo8cSq!w%Che~fd$-}QB^+%(mhUfnDxen~LO|>cc>x}U*9EAX=Sz_3FJ8brYIX}Uj=gz{4k66M z9%`$20T#})$Yz=EY1l|0V>rG&nT_-yEtR0eB|$ac?50(+u}iKqO}FUUumy|?T`XW)_cf2|BjMON+7ns|xdVRCI?HLc7ShsEGYPTO?ja%`g!~olulw_ z=p@+egLFT!9v}0>vAZF>-$3}KP0UyZY1m$?&a%_fM={`}1UzHO{&yQgh{&Bcxe&$* z)H+xhNgDFjIdbyvUn}e9wE)E~6n>m(>|n^Xfk4jy88WA3N0wgrzv%*BTXGmo3N=Y) z68zJP7Q!%*U9ww*LT8#yfa z3Pk?C-2v(5K0ZN)NkNP6;v=eh*h@CeNK$4dAHb|F>g_o6?Bu}ewB+RVqm2AM9s!S$ zBEk<&YQ!>YQSH~C%5zIQ;ON%{8zLQ@CgOewLG&-=2qW z_byB7i{M3kF#1jZxw^01a7YL@lGPI8GP_ojPPS6{!y6QAsOQe`;!S6Uu5$*@rRzBK@ zM?kt9ZNpy1vRt5On>w*;3oJ(fNO9Kf#IjG35F1x66s43C4Hu5o^aliAodw$t6K=R$zN%2N-R1n&{Vi?myg+cHiu#if4wy8`?g25b^RX+hJo%MWwbo&~K{e*78M=vjD1 zdAetGcxLss>|(e_Ux!-rz`YTkG~VffiXOj98Ej`xvErwjzNBeF$6ee^D8M?dKnZ>j7dA$ubBR@5tS zt<2}zPNSobUiz%Bh*r!V_4K<$q#xJQx#A_pg_cc8B2JhV-Fs}WDmuw3l`gw8Qyyhq zZ92bazW!bIfK!WaM9zU@UgPInS|eiL=v(Qm&Ay+M?1D#~#IYTHpKMz&|oS?g>w8Sw40x z(o6G+8PUyohy7$~!oYe1$q3fLZAx{CxBoj-yb)FP5#8+Sws2td)qA-l<$yqanSuSd z=hNAdUMlX7DGXJe8;OmptUa~2BR9W!K(KB7-vl3Y7-A9JL>)taj) zW|T@QmXb3@%7!wftc*+>Ywl}~Vg26y{_9aPKA-pTdOfdKox&!pgJ;>q1IM$(v3cDP zlQWQWoAvZrkt^kegS#ze-rU*n19CC%wbvlmB6^3}Y_fySOJ65$qjVVLnJ@qL<2z}< zn^!Dd=iXFgG3KZ8)=p<4QYIPVq5x?&`>?W_@bOt4)(s(&!h?i^RU|Wi(`F?jk`b=% z@T`+;48Ic24`@2)dnTb?wu>JjJ4CXw4y%QP>#D=BiqXV3soQj8biy`RmWBS(|@~obz;$OUCJ2AsQEzq>FCb}S85y=MZY^B#S~4bniJ@L@S;Y3HtgdQ#K&r~1?5caiIh z-W`!Po_*QYk}hL%sIkgW;U8TZFC8|8`IP<@W;)l#>uIVr{dQfB^?kdc zqvMcoLQCwhliNjU<+0Towz&Jo^%=!vNXK1o+w-&1Pyea+cv=AZeI<D*Eeo9msyuo*V`of^}ZB z*0p%e*vzNRMjyON1Lb+;JC?kLNYkFFOTLbVYe94~<3;c}H@3LC^!OR~A3hQFgY1!u z=yxRJrVY~!VBm(z1>3eZz@j4W$+0!4Y&Rvwz z_CCyqo}Bocz6urF{ewhmm8YB!yd51skj$mpmLw|di~^_q-gyS7GH zkbgNTUswn3Q8BSq;pHI2{6+l6{A^B{w6vx0_0kG6f!!poyB- zOtyxi)Db~C0juwWru@-4?58aUi1$MNe%C$lNF7BbC%cD~C=`5Jek|*&ba>yOczz(+ z#n#AP+gN>_4NUu_^U1?$ZBi>$U}vmK*#<8*5cQRJJ8-ceD1%1G0@B1xc|;QT_{9K=G8}!^&S_B zMZ({fXH-n^rr#CQm=hdzU3JNf!3Qm{5&K!$&aU>)WE}?Dwo=m`@HdhR@vw^6_9una zoU)q4M9lM>5OqzH7^~y}3ZF!pZ;QverSi5t0Y6CVM%I+KIEtNA4-FGY*{N$VPIr?6 z_1|o>0^d284&SH3{p`VAu0}FwTSwUZ47-$*qtJ`+*vhn9gO7asFu0Q6A zR$Qvd9=%<(z{Oi$6U#TZA|NP!fN!;#0ITV|($b)O#Pwi({h(;qcWZ7Cnr!6sQ^2Mg z5!w-O)&Jg1@WWn3vB7fE-x79Fp?;6)Fumi5qMu|+Ln_&yEzUtY{8#dMZ1iKJj*Cr)n4+GH6u6J;(q|k zC}l2LHjW2;_;-CrT1iND!m-r2vl+RdyG~#lY zEWcU^l9TT@ycPw_VQsO^e13)tY^9AFsikm;GVxB-GTy?0p zPPVEi5?U-k|KTnd>XDHNiK6)T=s};@x2c27D$29Z9e_4kGXkIit=m8N6EzJwNw#uD zr!4-bGaX~$a1pkF)Z{iRQV>c01|w|0^@wS7_{u5j3lvf&r|v(5^f`ah@Ufvw!%40{ zCut~Nf52sxQUeROwt8?)7O9hJbhx@DE88J&U1F1e(s&Ve5uNnuUcd9Cyz*>~luAR<$oh4P7q5L28Q?v)kylZ(0<2Q^Uz4jtmU z^LimQ4;!jN>$Mw3+V7;*phO$0GS93HR7hDj8zLf6&9ozT=h@@6V>Jxte5I6 zo4KnrQREL2^w2KSw~#_X~-6B}>4<9_x!Ddc{F6^k`3saN_*Ori9? z5AfXr;bp#0Ez#nFlPXHKe~-X)=f%5IHF>U97xRM~)o8z;7WL7Y3jb!aQ;;{D1_pTt31L@qLVRfC%svb9w#DPDMkFlwEobt2eaaH`lyLbs2Yd9p~`nU+GwvFvRRq3 zW#q}R&XEmOJ??{!Vb4eZK$yYS#esOU$&<~8J~bl|kQl&D>mga&Mq@p`g$$N4o1Yd}6{w0zA(7Ouj* zh9-rrXC_WIVw4Jr(t${>Dy16hWWQIgrA7Cyy87O2m-_Jk(C+G8l(?>eoxUMV!Fc-Z z6Qs_qxyVEDAW&D`!&}-tRpc!X1*ndnQRHpQSh4me<%V3DsCk-S|As!aGXMQ& zWlp;;+VCU{Dg*r*HvCGNhMMqF$*oBw1>{Fb^4BbtJ*Ua9!~CPw1X9H6HI@hAYkAWp4ZwBUtKTLmABm@Q-Ji3u}|H9sW@{x*O zC?z%8|7(!$SAX~c|D6cV>w2#uJEE?ILpgnO!bXTy>4>pkv(p z;K$AwW_z2QxAS4sYzOYza61B;3ELL!uNw2*@DQEmwidjkwy-HF;-qym3v+0(X~uK4 zZo9n*PAO~P2ylaweXSaH-tq7<&8E;zhv3xvZIE^Y(wjY(YhH~N6TNIVw;hsQ`7tVs z0>V(MM+@q0Q9~DwweK$~!mYBGjT7Fevj(({7SMBPwJTcDD)x}d{KX zY~c9(25WaAHET3xYgk!=#Z%thE$y zRZF=i0I{+rvR5}oVYeaC6kjeJ%KAh#hnpeSoy#`0StGh?ZH1G9o_sERuSg*zo5;;; zzQW=Y-o3jj$V`0weI~Wl@^vmStnNe829;4}IWz6#4!1xWZ(heWkJZk_UZCSOO(dvKLcP zl6~4?ke-@{i%{ z&VWA<1X_nzsxHxNMC#EhnJwxqACCKX{H$4B7cnO8p{=U)#bwpx^kib4U}d2Jq!p#+ zZy1k|#bubNN6Znwe1whZw-!>Ug+_^T0!s&2*3qV;HQV-A^s=Ai%}c6gNu{Sq;vkfu zI}s)mM44yoD;g7j$0^$UE!0M3<0D~BldU<;WzoNBb1%&%LWCT?v74o{rj;L)1qtfO zV&i;0;8M8@@MyO9ConVEuczQB*>RhsSjP$N{4}z)BHlNx~z&3>3a@68Cacq#%A6=ttTT3p~_oIp>%k(a1_)sX7hKDX^@EN^cnp%K8l2C zKtx@}%u!{nw48>_;**ARt0G}z`&HjR5c#fHOF0fDARrY;gi4z(DTtOO|32SpLAIDl zHbSA(x|IFeEdD@LbPh!WF%0{#{V(0@lBc7}+J@e1&h+D}17{R*QJ|6)RqkkxWmK5Y z+S+*n!>FurCf+gOn}cUzL+%##D-lC)m?@~XHF-bN(!45{K)nzl8e2uP-kBYf5-wlN{=KUkq00T!OgXLXw?|qH?fqH zm{!y4}3S9C*gge$nQ!f1-P$S$#|5d6RtlsR+G?f2>QN?wBA0$wgvVK z!VB%6lD5We#Jo>it!&!^XqmTZ1@oX&$TAmpQg|G678Qxqj)rK-%5~Ws@B!66?H=Kh zQ~o6lJsShQUJlF@~Rd9?W`TN`W=Nx64 zm!;YgW4bU#F@oQ?oAP>&8_8#)#qim6metz#2hv8{ z!dX4NbX%_H1fBD1DUy5tTj{Nqe-NJ!{Sbv6GvXj-s^5ehDtzj-+u@4GdDX)`lNX#P z91DGJ(}Q<+I3A5w3#<3>@Di7Ap+*E zlL_)cEzd9SNoJ`5=Vta6-@WBfshM>s)TKE*{P8gp2M*D2NzbsVI@>j=wD;P_6#-R% z0@nhef1$kvuvQ9Y^?iMDe;}?qR^+=5FIc`b{mL6|i(ObB*G;D#HqUyK>tv>Ul=YR0 zby%-t+|JbTSIBpDn`;DbO{fMCU(E#e1=&}+y1{+TiW7>;1M0fTiJRe-Et=+FRr|1) z(?#^osb!*j)rP@i3;C3%ED6w?ly55dW$u&iYU;(CRK~V zGaS_>4sx8>D;+F_ja||e@?2?{!L{{r8eVl!$m9U&&A&OssDZ)xPp8L*iKCJL#oKAk zdK#$HY1_Bm@T-xzrsK=YEL~T5zbd=tgjl)K)t)uo)Y~pqS$8L3wYeJL*Rm$|T~=YW z4qlvEq7RvBm+KiKre^)pm|qL>{yaWJ9VqQ755KVGOF_KFxuB-EH|=)sy4G!OXDXS0 znyo58G~1mio@y!tc_40=`v@Q*=90wjq0r4NuYGf_`0?$T?7nTa`9IIx_x>{E**CCT zvBIyGY-aosYNz+HW3pK4)wR5lro6tNSL-Z(d;pJ4Qf20U?WFBR*YUH^O&_GEJIRmu zt0hrq?NJ|WYrYM{sR07n1K`p}0S1)5s9m5NWvvd&o@lT<`fzG6Q^}O^sV-K71%YRgn;N%P zkA;ya5p*ERNqW-Wi_poQ$TmuJ*6PRF#zLPMcc1#$kc9c7bf%CED)x$k(2LGdJ%P6( zSv`jjegV;Ff@Y@EcHJz}J$oI9< z)b<*O90e!vanQ}XD-2ikLV^%+iW|No!;_75_yK_XzmM8NtyzvzUWypA`S%=4R|Ca^ zr=)eoXnI81c#=&TE+ZPkqUc+@5P9a$q;t8jy#Q7sxk0WQR2McPizX*T=A9Bi4K#lf$V+wbM>Lhy!l%4M} zv^<}&%3aM#r&acBC`$-eV*C<}!}-kTRXDp`|F; z6V#53G4V@q;QtF<3Qch|N529jOX>+G|(TiB|>uR$M&`0WNo1`%;f- zXXCfGeJ0aryfqz8E;JX`9R$-YLr+3BlA^g>!Xp=lhWTh=cR`&QEizt$;kTP9JyP^1 ziKa-3w@avmt~fHzCFgVbz+mYhA9d8ADsf9ac+lf6Z=Vc-lF*M=A&W&bPlh&5z0lW&?cygkh9u>0n z55z)(nQqn6vbFBo*3F~o_B;)LtNERYPNs7gKr)+wtoo~1jWHHN$%dy(UV{7A{0;Ez z6o2<4MQSFRFm%XkN^x5ETH0baE4Tk2Yd+AHbi3%+6!1&3k_t_;SkLN??O#)?=gdmp zu8{ny1Q9^jpjN^&XN=98UqV};E2lPUHWF$Oi!I1z5t>qz z1btPrx)Ft#SQ?{8jDFZN-EU z2hvO5uC0*NKlcGxo0Z=+{0Q5$plPvicS&(qs&iEpik%P}IHZ66(aoQia-(YKGir}N zy^YpKD?}=8^$Ak7k@+0x!Symg0$W?#SF1gb#s~K1i}fXDHFqaNg0uH3Pa4lj^_|tY;~S*ZA$KGt+2fL> zl+eAWs46vTc#6L=>XK-_I1A32HNoAV!W75!i3TM1N*ij7q(n%`IC6%ayXYo)d(&xP z3iRT{u_M&F9^jf5rWCf4s=FPS=+}578`Q$%z`1SIe8Wz`+ND4Tzp6^U(sejjurC&V zjlZ$IeLLRV@s>M)f^RvEO6d3R8$59y7=@uTo#c?r^^c~tbK6la$_L5^XOzciMWe2{ z-72yQ5HlV%4lerLs#661V^BwZe|1Sn>9YZ!*||N9)#iIi0hx(bhvgyJwo<55cM(~O zHpV-H0)Hs?opRlnvV}EY*a#GQuJDy(mKI_Ht9J_rg_O}n@hc6g=vKpo$nrr+Y1lM0-Z*_G& zb-v&G{COdJ>&Bz%b+s>hRs}utE4QxN?CXsRizMuVl*Ops==I1~^ZuzZQOs z>IlfUe|Y=wWKbqVS#RG*8?--4uz>_T{T}R^NO3ybX@xe1o7TqMgZ3-ckx@@teTQo7 zw(a_5v&|Mt?~p>3Z?EP|{8jkjcdC7g=Y0GA%CSXKd66W@FxR*M=aO#do~Yf>8V;rH zi+Nr@zZ@PIIXD?I4>#0lmX3+ua&~VZ3D0=ajhAOyniiH?;L`3NDxt@R(`x2BPsR;8 zvBBBE&N8G{$h*Rj-&?K$+~l!?w+)9{V2_xMwlksQ%P&>s_(ub=>x180H&B$5?9sVx z@{q_p#8gRNE6F{2^8cMe@j#<#3a3IzPGeq#*yHV>{d2jP-T)F%)!SRp(s%+1ex)n% z`coa;Px2s}i75ryQoe3`Z4A-|E!)Sj$nD8U%Pzc$^q}36e8@9N(-E_o8gn(Fm!bhE4k|kY;r4RfAHUW?&RMCeeUo$Kh+t{)0qaj zq1`yDi482vVYKn&-(Kgt^pHIq9&klBHEt!)7NsuivVL$WQ%TNvu`<(okp*^S;U}SsMDifC!M}K z5e|$dqQ$?Mx4raBmbbGWjD$6p>Y*r6wB$##6Qd@+Vk)k7Jg)cG;bNWPRM|MZITx9JYq(YMaHZj|EYxe&Dx+twW)4$x>b2vhh)x%MkL9DM!$}s4aqYZ=dZ^R4Il` zkhZstBS6ln_*3o5TDVojsK-Ju;s+ zhbEE!Vc&fm$R?U1#wUwJUvvD3b(EP5XHU2xE^Umd2g|=~7Q)1bJ9n0{#NY251crv) z?!u*RPU+8L!c#KkIko<2ed8+%tMu{>Aty{mTp?|42>h`WVKWj1S1JzDY&m$$5>!b< z`&^JtDR5K18sQDy-%^ElMhX!A>+STqb4ZcW&%=w@tJ1NJ;L^6xU=96%hDD#s7}|Y~ zY%RPy!9ve1tqTyX*|A2?)=l@fZ;a9I;w+XZyy+n0i%^Qqk?>6@jnMU;&%=u!6^ZIT z4%HZOu4$-qQgHy600`k=585V}q*q_pR&g6 z(Oas=;wXeRLWWI`#-qtI?vAdswS-UGhr6aIV5c%nj?YoH%x!4T5NNWEErQRIID z2NtZxBY#8K>)p-plvHQMI!g5&`ZZRWLrlJT|C(g_jBB>^Aa|q zyW7cLwu0$e-y;U$t)h?~CK&}V9{PpBl?HZ4aWA)4~ve0oPN@S9&aBcfdI5y^Y?7Wbv z&Z|Yo%?tnTk`YW7{EFTai?t+*Do5yOb4k~!x-d^-akco(U!Ew_Jov&0Y0t#*C*X z6=w`*{{&}JZS1-G5gwX;xD@7qhFD-iisGK~eMt{HX%$ldiL|wYD___qOrOUbjTn8m zOs}V^3S$hH@eKtvC)!5;R)qH5T=M z-fv!=|L-AjL4U9 zViu@c-e`-;G7i23_J(hXv9NSLl$xe>U+r&z4DF-hau^hE&3oWWV4y5xg%n(-ITc8> ziC%HiVWB7EtsQtGUA-TT8E70Cwb}G9{P#DBpOxS46pO%{la%ZtI(38Rk!{C@eXP>z zIrQPRur=?T@B0d(DcC_zK;%IKVS?VrBKGVMkaBOY;hl(Q+s-wNyx{!V0_t7gy+xNTwcyM8OwN=MrtM|n+ zCyI;Hv5x43PDl6lAG9;$BG>q#y$)Zm_VamatNOHygL96Kb>}@2Gwz_>R;;vD_Zcna z9DO;H<}M@zSLdfsmd3|E<+S6yXm4tFvM*-ke8_*M66vh^rZeOsH@5!7WWFX3?NV}f za=B`_;Z9v+wD;W9vL=plVM?ui3YB2|nr;{P>i3JBF+y^|g8THR#!jzRuBEHOK|>0d32TeaZ_r8M@2mpYiisT$AwOkPKSajBneTrjtK zb9!0Wpl>+vCDCWmjr-;ccThIco|Nf+nXZ90L&Ut#7^15$eQC43A#-eJ`meg$+5L`) zFqs<1XVxj8-L1$35Mrg>ayWZljl;+r7?nCOJQJd^i@B7hJZS=bqkG z_K2D5YW}X!c_ime;j_?*#;GZTgEwzAF4hOkeV9`3n_YY`S(U%&l~*rX%5kmk4f_6D z=Z>Ah3%A_L&h_`hBDd6JhXgO0e1f~!?4t%gml+HXx>%>6<9Gw%`|XFz=E=HkHT!EE z+`V!}=`^Qv$10vZOuZbHv6F-Q(&ce}(b1VYd8u-Wg2l#_$xOe+qL>qDr1dSONs@f= zHlXSQZ1iK3ScD>8Ib0s~j+7mzN-;a<58atRaNtOOWBIPt7hnOtKc&G%ByI7+89ULA2W$amHK&%!|lQvnBvBpchCRywD1DCYH#Fr%`vP-$i&ZpkEr3Lym zT6lb2pLwJP1VX&EQkumsLl+%i00s*>6YE_ZC7fbt-au28KgRaMd<~1jAW1)O!jRhD zZ*iO+6vSVc%6h$$=EP6cFn_I znXMht`@XtGCFu%$UKb&4b9qxpP5Fn9w2*~)J&!%pQq7C|<>Bxvf*Q*P{I&yli}_U| z69s503@vlM@(v|CZN{II)eH$5v2^INm{0n&=##Om&}WEg1!o_v`OZ1+hA#n&+hxsh zAk3dPm~Bi>E!v?J`2)c2q{4kXOZOvbGE+@>bo{Yh{GOo?o8a!K(&$PUmp&sN)`#gNwbaiRm8Tmv3upn`T>#B+_r^$?5a)4$kX04EB zt&!m?$w<_5r?H07<5lw@bs2iJ-_P307h>srJP7&}s=*XBTLDDt(*tLnl#HkFNSQdS zJY$H|4ZS02%;;e^Inz96l@U^Fahpg%DWsKY)8tqNY_Jl3YRwY^gnvL6`>4at$+*p0 z6DRD^v_wu>Tb^y2eIKMlAO$Rl#w3=`m;XH&6j*r?Wv;lm()yCe8APr&xLo-E8bN6i zJ|yY&>`y4ve)oFxR3>WyAP=wo_g3EH8boDJ!^3J~ZW_s+S!` zubSaUwV5A{3!=GWXms(s)Dyl^IW_4zaHGuO1>3`y~~ZrxSX+dbI>8 zSdZu2(K>%$i7U5nPus-6Y6JL|#i-!GhuzZ|oD$pY#RbE)M}|8#-asFke(f{!Ht9n3 z2aNI;%(m;>ZKvHN8)uoP&i5WS+Ws!*ApQEGkRRSZZ(GFC&z#j?aSz51baWOB^^W}< zf5R@HD4T_g@8HrKb_UeD8OU7jM2z3KTW1KJL15}-f9c;ZP0v-|S@*rNE~B8}-@*OQ zCOLzptJ`kuT8W@9Cw{nP>Ez(*x3KJI+;!@1!idYn=F`Tu!M9%Rxzk2k3VRCOs{0Z5 z$!juXy$K~e-|Jx1ni(d7bL2MtI(bQR4JiZ^%UpM~7d$J+qvpb$pIWwETQxvh^4JX3 zoJ%cvFx3Cp(&zU@$Dv*g4%J-I|0%*3XMEI}%EgUwm$dw_>neT3F$4H@pS@ zPberISh(&lppnAz0tI#G@?0sSRXzz*=d)JzN|Y$wO#0 ztxELB;JR7|s3m|HXAa&;c#C6In;i0oLb94+mWfXTkNy|~Lybg>ir;JX$~1UsX#hm& zw~d2Gp|fu0I7T{28V{=5Gy7t6$sqL8(p)isOK3Z~1qcJi?J_+1QY74OyPgW;l#I}e zH!fAvv;L{(H-%Y5fbRPvb#@kU#<5M4{+i&=6)PeYO6}|1J(^Kg_}G^99%xF=BA)P78f&>%PpS9k zTGjHoUJ7t0Ed#LcuKO2nlZF`G+~dkNExLN8G^cNQy0eld+gI5>Q2;(NG5{Z~s#mfB z;32xH##F2vR||I9n>Dq=w8zWm=g+k$Edzg~Y@h}Vr_eyA1ipfW@^N3a(((I&&gink zZyGJPXn1h)pQDdF+pj>{927SvH#$vX8yzf>=wzFR-CjhUw<`vVk|uv|f#ZK!h*4uw z269u93%0@Dq9L=fu9;bqul+5B5F4d(`JZs--16;HZvqJ^U2cCMH`H0{WhWIp3ssZy zh=o8fD>WA!681cL4MS`GS}h&p5>uY+Cgb1fV+1+x5YX&P=uXBP#ldfH`Z9`1ukH!^ zSP;x9I2#tR=2`VhY8K@Dw;_c+-O9tsjo95aIkJO^HLttxL99_cnAWmjj-hKc5HA%! zMH3Z|`&$wwW1#d<+}LO=!}qZ2Z{;U3(4qwKOg|{D*GWC)CF7Fu=5ypy`Y(%-6i}=A zC#%E#v0VQwc9A!4zWDI0c>tAu+@CryvxY1-1S|4h(}2aSaZ%EbdEIGVtv2xD5K`FL z%9`>zT5z+Ho}4}7V`fC&JgoOe!uNX?JhLjhGN9MoB`S>Ew=(}7Jd?jx=Vs`)4; zIw-4$T%x16{&7hYojre5;w%Q4=bsaA9?=gcd!GSAy*t)^S-B`fHqZ%>{d<{r%GZL| zcIfE_FKU7*M(vs_%11JqjZ29D)~Gl#0(vIZW`R}Fsm!=p$kf-*`~&s~E|n6e?Sd0F zw=iM4kOdj#F){rorVA3JDnfO%I&G|1# ze>~GOo=S=4u`7rb@q*MU1;f!n_K@UA(`WM4C`KI*&KL0pDGMdtxi6|#LF~>dL!nst zC$w6=4T;IKVXHGWWgXU{H(eJ07h#U~7|STtK+if@I`FmKlfeE(xeQONc?NO7q)a7Q zqTOa%?B*9o2YuMHx*^S`UCvI>dvV&(Qp$p~aXEQ(Cl*G+P;3gL<8V|4F9HvUdz zWBJ-;!eV||t6$xQ=Ag`gJtz&CP0dzY*S`gljL`Q5u5T(Nfkf}3>5*$0mwP6t+>5r` zdv)j5X@hX`%5C?hHkr)I%h{?wZSeA;`8fyyIusfgem6WIaGtw@ciV>R-eiR2D%p?f z2Sx~+=%)K?khH#{R>D%og5z2#+VXPxZ)#Ot^;9$Fw8ch{S}Vj)~heUJ|2$;Sv`&Q+W&1F(^h@csM~s|UOO$)%hqwg zyenn z+q`f#A@43IGPmxfRCI?u9^g!4p4rIHYv(QfYKUD02YCLwSiL8omx-Q4cgu&9@7`b3 zK0C1_p$lf7ot{%rIru05Um{ul;D!<5JXlkvBRyI4t4T)yKkBx0vHTdX!QG1^UZw^{ z%5U8&Pj-oQLoyV$Z;M}jdqwp8p#H%oJG#^TiJme`)9yuK-@RzvkR)?BkAk(};C5E z-g~6lCB>6!ToPzzKoRrJGT?|_Cbq6#*H25Pn+;`=X5~OOGNYI^M72q>w+vg0%h^YG zxzqP<^0JLR-xtyXdmyY;ao{jceYuwZd+^DFwJV4%TWKVZ&ZV-$aX}Uxys~91vR$(| z;nl?K=+!c_@pP~0hl5(;g!GRM^b>Y}AQuMx*KJlzYxif! zq@<(Cu*fb`>N=~lfS7Jv_mTcwqH`d&{%vg=X83*=7H>Opn)AdQ+MVKfH+tQ{NC3PT zzP}f|G5L_=uK0=DX9%JJ(i~Gymo~7uF@G{-;(&y{y}YEgTSGe)dro;WEm;~$jibhN z+1gx|2PMY^xVWhvtTfD6o%)x8A_Ms!?d`rWG(4xKLOE$bZpU@CFqzWu3RX?TSXjgN z8!r$UX(~{iP12dRlMG5w&RAFM2WS0pH;ec~iQt48K^%R6wcUJ8013)yMXI+m26&b? z;uxz}MN@MYyAyn#c?fSm{%{~9^!H2^UjLOEv8h2Np`}IV+FoU+RhLsyckixL(Kw0Y z7k{xkS)~s~#6L?SL(5H$KK<#Bi|pA~H8T5IH&&h#`=amD{=@&3ko$hdy4xPL@86=o zDZ;JZJ^s1J*hA;l!NWZ#^dkgM3V~#3sHknrPv6w@hT|idS&HT_T!dRqRy&egf)h(U zJUgxho%{FmzO1UpJ6r-0)rYEUYOl)AzCX102?inv}SmZwpRzc-7+yVUg2?MYGIuVZnS2YP`G z`77zfqk+y>y~D1xhL6nMLR^3cBCdgTQrI)Kb!K? zKS_R#E0vloCpBB1;aLe6W8HXwcny9dyEyFZNR@YW^6M1eGT{J_^_?%VhT@# zH&TZ4s0rtINYr~x7QG9mDjurcRdGl;fCvmswb`*Tr%S}@OvZb_1uqYpMV#sJeqKDe zqtl)l{i?#DfGA%0g zUsg@U$2{y>P&PR(&YJkTLd@{*!duIh*^Vx%64}<{#zOM4fLt;*#+fz^X;5bMbVE?h z@SvhRIuY3VJ*c&%9UmeAh*P{)D?{1H$wooe`cqm&qb9K>che;xL}WLxJLqsD!2m%x zFQYVJVe{8;8uo7mac?H4U#ZYuU87xnY!J+XB%7Z;HfRi@Q_&FffGC7E)>)(uf_65K z*9VKQiy@itaJ zV470=FI%$|wj(CsBwqnrgNZRS53-!;rl^N_t#>}WE4?7O^nVnci6hf*9LI@L&UCns z3Q2Au_tD{um5SU72{HH0lp@!JP>zipBQb~C|v@JuxJ7X z>ca-qA|p8^p@^Ik&H0GRceZ|s)w_4Kqg9G=Bzi^yWJjNtG?o|8UFIM8$z-oGIs;5NqxsxZ4 zKh=gmBO<(jBCGr~pw`%H0;m6iC;3tQy@}TmZI@?thS*B$wVU>8yaDv_|nrHV` zXRI+vQ)4yoDO_3p3vOF=&1eXaAP`m!(i)DRoqxkWR{kH335ifVI%KG!yvZ z4)=qrQ)A9MMjNuFWU-`di_GIwQykbELV^3iM9j)c3p9$RRnaA0`chUi~2@{yX)1XXu3nlWck@9=9rklx!LJcA!UkU+17K@-8f^_=F6 zc;WD!F7=HbA!tLVHx`Q;bTZmhAzlXF@^c~S9m_oTv0B;{uQs8K2KFGc#+n;#sTp9c z@>6G6HyKwbPZSpzIGQ+IQsDTl)lb*@h&AP1v zb+`DKEG_$SgLMZXw6XuIN@OJJFV$cdP7FVZ^3ahO7j18f+q}C#H@&Bb$}cxJI6Qi@_;S7d zvm2K6w#cmSM4j<*RBZgLBW3+r(k}y(65Yv<7oy$_tEr+d8zc zdP+2Pkov=2@UN3-_i(8$8N80S`S~}6^yb!R$g90D=L@IB{RhIUu8+y>?P{_BDyL>~Xk3~Y(KCc1=+`kx4k6`f2e-}v{ynPwtO7n`04IPXh`Sn(d z{BFfS^Mw*xv)%LaDx%_4bUtmMm&K#B_sk8nq3VP91Rxoi0=&oiDou3YaNXEedO4aa zlBcBMcScWSiE@A!O8+gO4HVfMWgZR=$bF^dA7Z+4VW-X*IuB6@YT8W)#S)VqR!WmC z|McolBEwjiMzjJzpWdI=iZ+&1qjX8nbztV6D(Eg5|Hsf3-*aqqfUj3_=R);S8aggQ zjk;Ggf_jcRf$^?x;ZXi7|1RO=3kI$!pIt+a*;UnmFB=bg)LYATFHpEzhY3|5>w0@>;UUcly>?B2z{N*P)i+FVyoaY^4@?_=WR)aZ4cf9RXwU(zq^%%pI%Yaa@{rRxKh1i z|NeV1C|#)aic(wtyXh?SsBFIsr(Znynw&}bEx(`TAHXI;Ejd}HTfkY}#5FlupANG3 zs%Q;H^?Yp~Z&h-L7(vBuUc2e?o0iKM(KKUxWB=BE&e>KA-2i+2fH~RCGP$EU z%JKBhmW~OVl@zWIIbX4cJbu`;bM(vp;Xrmuyz;vrAElCIUti_r{)m23gZsN4r503Iqf#X8{YHPDg*O)#ZvXdf4v2%VfLvp{x6qX`|r`+h0phn-Sw}Pjr~JE~w3J$b6mKvn8`d6$MgEix3~( z5>N2NaED~OzYu(X4K`5OTWeQZ-ZA z&3qwPb41s{>au;-^8RW(#uS(^WmQn;V_*+wcY`7tNnLucOr|7&(8h%r-;+084`3L@ z4frl!yADBFC9;F^_oLhsz?ncA(B;Ms?YA=x&7UvUIMAZt`H$8$f{3usm##|59TN8# z-uYsoh^y5@(R#WCJ>3TgV2cB0BRO4xLcI0v;Q^Bv&?nZ`=0Y;9YO(?wEe-NTYwC!q z3_w&0e>sc6{fU&LBSOh77-)ks6fx)cq4gQziW^f>I48!@@iisk_JRE9wn+7%IIIm4 zhY)%!nbSu(0a}IWz07;+^vKBF^{84T;0?{G(LY5%l&Eh*8`faql!HRbK9wa>7F)gn zgs(AYc*O+p4Kg7_nxnLWX$p|G?J?6k-8FXX0eA%JHHkQp2M7P=P_0DC85WfTsl3Fo z!?o#3om}Tjq$tM;ydT)rGh)lrmK=4a^BLD`P9?(#yiQAaa4}fX!JdM1cBY@7)!92^ znBM1VVR27zQZVUb49&@j0dVT2h)P*btv5w%A3L#nwz~5X^GPx zbE^zp!wSI+!}>8Bl)FLcd2RGB{KPG7O?KaHU+=X5fP=t;!%`Voqw-Ua54#>lwdN8^ zOA6iQ7Q=vnyfB-b_`9Y3-!K80j9Kbe81&S1mGEeV_1@F3UvBdT(n14ejGg9B@gf~s z44LOo(nmK8^1`1L%c@A#!>>xR8XYnp@QJ|4%p&vk=J)oHdov~f4r_bt`qN0Bg+cBM zz$lg0M|I)PfNxSV6`Bu~ZfX8*0;{CkM=sZdG3Fyj&9Io-Q9pdacR3zCgp>JZ^mG@HK7j#TGRDk?4?r(!o& zZAvE+TWS9>u;oIMscbuO3-Yn@TH(7XzvxV4&-sd5^gB8?$#KY42i_f8ZQP%1wU^_h zlN>gE|7%6DBaA+7AH@t`zf0#&aW&Vd#qb=EPFllR>T-gNQRSodJlhMyp+EMI0D1WB zPXHCDB^WX%Ttz9P&Y`9XsmR-F5`luPWPGRh5=1! z`TH*PEsSbEffZFxj4+WkUagHNpQ}r+&9&IqeV9-7=V)boZ@|bveA;Pl&Khm_2bcrq z<5#P==zvjuS!ce7>e0+Tw;=ec;cvA6sIcmrH*NDyK8gcUv?a9deb3MtIGwxC$?wU< zTxcBM0GC#9&xXm-9XbXuE1pdTw358?+`#!0{EQ1%35&%oy+GrQHOeP%<&7JU;?K5X zZuGQWna67-oxJ&bsBQK%v#+v=2(B%&-2DyY zPRenA%5eu(hngJMhfevSQ92-Xty2cT7m8ypV>dJbzREvB&K2!jCW)s3AkhQ29VUcR zC~-Q$CX{r7C6yU%SH$%e3OOAeus~UK=Dw^=rB4sO5Wre{dJ>2JV^HLp#vP{83aLzZ z+3*EaO5pZ~Fi70yCo-tb$`6wuLsefCJsTnr+N@c!LFYna#eSHX>WzOL-3-+9?6bY= zJ#pmIohUjbexh&fEG7ZszF9V)Gjg*q&HUnok})Q1eIla{SAKS)Z!x!O{nJrQhIG_c zkvQHGmTmAb&EwI?Y`v~V0GKZ#B+K*%dPLMp<0;iE6w#-(ub4e&?c%7a9??DZDyi(I zShtJoxn-6~fouML7QwWor+L{w9Kx?>JxqS^8mprFYVoixd-P8sE#;|y_HXprPYfDQ zycP1#C=n3LW;*i*2Kpj}mtUwgQq|dyf^P}M$m|*U4rTd)m__&3>^5&b=+mbiI}bpO+<( z285Kp6bRzdxDn8v%KMdL*3zF?p=e!1sQbeX;(#hjDp;bbb(8@D}DD&s$X(kGBk-?~FHVqwa?80{{vU?NW!&UGkWjP#IQNW;V}!+yDqPjWtuMU(clEfnz^;pTQPwa z662WRJcGf7G*!+0n<;W>D^qL7L`wBHo=E!xcT5u@H*3dM zD^%2xPR1)WM$GZe;=yb_k7bk7F5Q28eZ+t1%VVD#;!$k68;*d3-*lKRKz}YiEZY3u zP#pjuh&2NEPP!py$8uyZrt!rSg>?lbV5lHaU7PFfpgJF4=`cnq$1^Hh8mRB}F>Wk~ ze#N#yb)gfA8x)vQl9c~ER)@+Wt=#w_z9gq9qNe5hCTWQ~FmTa4ypw%QXJN zx8RT8v}v}0#NV=r;~U%l2sJ6<#y+ksC7r%<;4o01EhW2_}W@StgL- z-Og1{^d^B-XY0mM^Q4>Y4owF`4H8*V-Tbd5POiZSCCBdEZp? zJxm8;{e7QzQ_$$XgXPQ+h}XtG85QP|xs>v`UCTdt#$_{A_7EE8?Wc%S9u3Bt_tDQ5 z3zkbxBkw(J%rR_YE}A~aKP}^3FXweukYeXxN(+bIsf%v8i`xyP!tq%xdGbHt+eRx9TEA+_?w*&ckmGSh_EI z0_^NhE>(<}AY%Nbee35in4+-Tb673$1>MZbpUw(ed;QS=wiI zux@^S$Qu+TrZ{6H{*a%|n;E)6X94M&KKqRNwuf2GB9YnQo!osA%?_e+`Inl< z2*b~z5B2u0p|ecTwb^>_XSQIMoW80RrCFVQVIJmp--NOuXB)+NB&9O3MscJZ=Lz|S z#CjSLG`w;j8}qrgzp55ijZe;2Wf?mH7Y=W@k%pubC)J8c(|;)bwT{arWh_jLS?}=-3G<_Ed56y{y>Vl{Agw zmvle^+t4q&4@S;Y@-F8U0gVmQk`Oeg$(Q%@$EoSNavilw-|<8*W$`Ti8zD!X{GiP5 zy=;+BM$a~9vW?owUcn@{Db4c|r^LM{f znLRcz$88;&>~S#l{orimEJk;zQuc*RwcyEDd|HZXkD#{Cd+z$Ax2%$szV2#M1byC&EJAbNaV)-Dg1k4DFZmMQtB@^jDx6-|#Hf zg1=5}BL{Hfas9KcOW$9v-*UH644t!$R5x~c*}6Az3Ip*p_W9!-TsqT`-hXV8#&3OD zf^TlZ6iYvQed_>xpjfmEk9Fpdnaa$)rk@4trO(|UFRza}&u6!KHAjv&@0v_R-T%0VH@hG9Z$c^yQ({Es_T;Tgj@wDWp zilv@9sXOMq#+W^vU!IgS&{Q45(Xa6-0aPLdAv{!Vdy7Q{*mtH2;G}gmCjd7|+92lc zsWDANUw+2E!{QUU3k^A-(o2$o+W=*sYeP>)NtgYgOB0ZuZ1Y!AHnv4@J1n6w!iM}u zR89?%)`l%@hJOuF-^GWFz;QN;s#nL4{vGzL5|O(UfQPS!Y~CUdS8Wf60#AW_Gi1s~ z$FiN&_S)%)*mrw_osRc0Cm%%=h3ybV3FgY~|!ck}5`>c!5e+EEnHM?lP-{p|5R zggIIvREy?Iqy!MnX(TqfuyJhTwWKp*NdGba+#N1)uE8BMB49HI&cv&Zlr8ND(||9( zzN@#j&%5cyAS9KRdq@Mv`QR zo`YeqU$8yG==+zdqb&kt)I_D3>hGzqwzqc^leo~?9zYua{ShNN_BG=DfZpH`C4k;= zFzE2f+I|D;G&}oGSza+hsSZ0YJx=nCIcOs=r6>6VhQZrNAa*=|E0oa5HN~}Xd-Hgn z1H2gb8^gWU%C+MdHz9!@+n#VQMmINtZ+01tC{G(zst9}9j+M|la|+!pv$8Wb-~4X* z@!jvz7js3c^kv{T6-VQ$@aLYSy?e1N^(u`@O`EMJj!}iknEx0~kC1b|c@plERREgO zPxx7?O6W@0R|jA%?qbM=yM4d)n|o^Ohv+xev@Q1rlr+Rw^baqUhwBhQ zD~7yE_Fss^b$MX?JGq< z-uyR*xfw^hn%<*eUZljY8qKOo{!;%jKO8I^6}+uncWgT{%f0y=(RU}o(h6ZVDKVi~ zV-r*dwZad^HizPoP)yBM)=pQuh}7=jujI#Vl%T}W{18F2aqkH0#Yg$nd%Mile1zev zFk0o6VU@GB?*`ITzRNC~7gg?L_x5WmhiCjXCUHdW0kmsb!Dn zu)KKbV_`jV!SP}U5bH-yEl8>@D{znE8WU?`?OwR@koRk)Ah+2a6A!RC*zM`uq0Lm0 zS4oqECn8cdyda^?d>8&BZjyG$sg-=YxY)#Qr!^}*y=L{$VgCdekZE_NUn4tOh=|g@ zT3M14=Vfm_ZWyAPEuO$xIsi&{GMsg}PQl;^cV3IX@GfV{B7|!#`I@bVRg+n4-eRA) z%NXf|Z+rV-R^Wv1Mea-dQ`Phz-daBrQB$_IXvg=zZRHU+I*TO%zByl~-53G!H^&%J zm)!|8SqeluZ!fh9@%=)0)$t{KSG(7%ij69b>@|~ zmv_Z7^p!+>LXTkC<8I`A8Wzea3b{ z(BqWDH^+urOSvMvG6qkv;4e3OR%>aH%J*hU6ufm)Qfovt>Ri_!Sd>>$UO|7Pxlg|0UqxxzKKs znW4m)iNm!u0%65<;J6SA{#`^pum@%8FqoBjIG)jx4J?-dJ?}(Y27LYiuNbvvWnlc+S|yAfu)OwOJ4u;PD^BZO>45gmWkrWU4J! zIahBrUO(Nk9ffH8s~`LLO{XS%Iv_%?X7deSzD5&o#_pKf7#;P@rS68r}PfWJh4#w+Bz)W+*F?|yMoTH zDI?xg>n%b^@R^+V^D6Euaxa-pv$2l)5GZyhyG89TENZ|n$ypF_L;XqF*Or;eA}T4I zZCA{Q?7riT{|UR4FnxE2m^}DShBSM#S5P|fEMkPj;cS=COLMA)vRNFZPK9P&u$^v0 z1`>`_j~8EpRYr2gw@4F~UiMS;pmmdqM-HRz4u`g{Qx2ld;VERxk(uhT=%CT*TnZ$f z{-p90H?)@VVl)@F!sdKDpQKtRND>QQ-Y~bQ!Ffg3avMI+byi7Ck2KI^8j5;Sc~W)$ z8!SKS$*5=POLU}v%04+NqsYTJkc|%&_WGh!zejig{|52cCF(^}fh9%B>+fP6 zh;7Q8@3U3wS>fQYT^vBd>$=<&1y?WwuBu@3{}^_<^46m`Q)H{v2vq}7FE~Sikys{Z z>o$n|eBTf?1K2HN4;z1;zx9{Xm`{kb#13m)g4RwE=@9Jkr8+BPB+y}(qNSNWb^UPq z&Whd}^V{mocp-d{x%v{!M=j^*fL^J&fiyciIHgYe3;vYr=B*vlPDptU3>I++{A>D@ zxg&o3bMZ7>>+a%sZEo9O*&%YS{eZ8BAD=Io@F{JU*5R%__W{E!p88pwrE=VwMUpn4 z5vWc`Q&Vvqr@v@I0ixxBDzRYgvz=S+Kmill%Y{T3KqS!d5_|xE)Agj z1+A@e-wffk6*q4U?YtZe_r&U0bMrw*EwZ_olI*1X_f)MA45Zgr^veh^`xY{QE?^GE3uJS%%3 zR-zn9dkT*ln8y6fIRShTUMP&9&ex+`3CEI3Kc!nuJG44tsZ5olTCxzo7t+y6I+PtB zUszEL4)KtS|FUcmtFdD*Buxq^0>3<$Nuk6*rI&*)yACY^W z&l{i<+|ln1EUOR%oOe-gy;`zJORtb`m4#Vv$)aLw12pyAokwM;dzWtf$6#08CAGjS zk(m4KqtA_Z3%c*ufr@YYh_+4)rF>5JoU(+CO0QKbg<9Nk@+wi8?e;+m-4{@5u)B4w z{9@gQ(*Zs$-)HP6%7d4`L3CQ!Y%09m>RKT4BA(xR=4tnz$}4}Cyz$tx56p9~^j^Fg z_my`hNC6|^hc~;wwaNYdIcf=Pt7P9PO0G8cU9)VkU%LDUEm!ZV8m%Bp2PLe`>qXax zFzdQ{G*l8b^^Ir3HEq_UHq{^}w^H zd)bP8nfR(rz zlG)d(SubYZhIj{Kr9^)BlBd>gL3&Kax6l~Nmz^GVSBG_Tz$7Y3Ame~`u5c&#U4hdM zIUK|iw9LWv`BECQ9{v&R$9F6L9E-?;*RWzX*U8r2^BtlD4K{bNXC~wU0sp zu^{~w6QBKh5Ic|@3H9GFyTdw>1YVf==F^;gaV50}m-kJGTGS#b{gp?ltI_RrR$^-_A|;A=QunG2FP| zw;2}P<&Q(0&kxgVNxbOUC{f5k+*vD_agW;RtSiC9pSX-NEHlekNTn8 zF0xHyem;nL>kojUnwa1-KYMIg!m!o@Bq)m$bdv=j?LapPC2a;NkLY%hn>nq1girCN zCZ!(a+sb3XYZ>DEmwXU!4ee51CvhhQ&XanUSkF|@o@Gzz%Xha)C+!%u^Plvk{uRm7 zKhWmR&8#?*|3=g80$5<8g9!DngH-^3;e}bg^C&W^4G?CcG!71marIcf{}^h!tCaP2 zZ2KMPwmw{Zt8LFeXgT@rD}IC0AQg-NTWeX&S6Xhd0eC|E!rqJJ_pECxac&py-L8Po zfV2XSGHH&a>Sup6*^}7Qg1uh*j#fGNA9H^0DO!+y3WEXGw0~LX5G6?cc7j&miBr@h zor5fz-=~~u3E>Wezk@IzlxMg%>waCQU#hYP;W5B{<@{gMCBXb3!a7n>C#}ocAv-ZW zJ`zxFe{Fr_KZa*x&Mo^>hvd&C)5YiZ+`WWs4%4h^z)`lFSm*I#OEo+3nJ1Co*BTpD z$B&Vl?y4=z{JLSqSt_-*cKcj!by3*Oa$xn>$t3*XB^0BD6jJz8(vd7x%ASt%vPD5C7A963BwBiz)RUe7H-&RcpSD~9zMV^TYFqT)V?-oR#O{y zXH;|fW(2hwA@C@ zm++nj3c;Rp8B0rpW0+V>y(9Ia*x`Pb0~zv_`g{l6N!C*Tiby0mo{rEXOCWm+k~Pdc zjdr%D*&)0Eq8zUhg93%aK|d0e4E?G>;@>Q%1mi~}C3wDnsw93}o?InC%jqnBWnEJS z=5y;!LB8Q7BQ-0Y_vR)>rs1DNPSawjx&ShO9J7dFtSi!C9E}JppC+4{#tuw$&Ng4+ zvm-w}I588E&bv9%$-x?_Ix*7Qxv0q|0c8szIva5`g(h;`OwY|Mdy=*>N2?&q9%{!q zJaK;~L11{ADWXtJ=qc^&*ARM!InWqqOy05e$9TibtUwJD$ zOF~S4o{SEm-<8?ZyS;dFY*O{>b*}vA!FPkH4jnJ=N+b{upSk9m90I>@_|K zWjF8aW>2gkq+a9F>>+m#Ps<&#Co!fcIn7@jyc)}57sy8!IEZ|Qn+)>`ARP?t(Z1Df zRbbr!bWXTvGG@mLIZ3z&@J$65Q>K8neP>1q8G?6gEBDmB91{1eww|Xd;y&5RD;VsI z-#$lP=M$T({5u))a{b7rx&a-Fe;6N7R;woWb)+tl3{U5c&M@&SEp%^JokJ}rpv`2r zGPCyW?I}B-kIr?b=N6m$nNH5FnVS!P0!LZqxX9vQKoW5VDy?6G??k;?F(dQ~ z6QfQ$P%lj!xiJuJtv7HjS^$uPfIR0)OX zZjaPfag^nxw%1ud3Hw$xz80)jUqau2Sm|0iHKc9%AI5wbTjI>wG1;?*hKOxtFuMV< zhh^pRfbQ;NU=>7q1#E(+taB1e|1vEXFiFClScE~$E`ET-UADisR^T_i0?ZB`fIdu| zA6yW&x%Cq4l0CY~_8NuK2%gfxi3i=`2h05MJ>BRTJ!*WRdrja+mtfPkjMD=%4uhbl z$Q9S?co7$XY`$GbnUtlboZGo~+jzd>n&5_@y=wT&W|Ws)ujr4-wV%>!KW%I}Z=HNF z7!}NV`T2HEL;PvG1p%+08owiCUo|>39gGEdm{h3se)aHjaNltE3=G5|9s6o(nL;EP z-m>Hm=n)4%WrMyr2}7_L(3k(arM%4K{vU(7&;>{jsgN$X!!@*V#llecGX;_?x^(Zz zA#TSN5K^ScsFMe4qJp|!+mmo3GI*D5(W(Q-9pSLspUuv+fJ|255M3xFcl>r+3`8YF zaN#3w{Sx7+9o8}}h5U3cmtEeQb94`m;@<_H@i-EP>a*+Fp1Fkh3iAtvH`+&XoyAv> zJ#K+FBzUGLX2VM0W)gQfblvRDJ!)kGO&%?$Ek6qQCZ(FaY}}V285~a1m8Cx2Nu;yh zKQVB47IO64f$Pim>jN*%4xYPD;@X>B_twHJw15Awv;D(C8a4HmEAS0fKFX5!RmLi* zPxF3~{&GiY+#gLcH;%~2XwjVMF%5503?4TDrZ;45S0LX^0;rx+-b${*Coc+GqjieT zC~RqlaqUyTrJq8RsM1E8VzBg15s{jfhS4o#60hZVu`dEs%b#vt>s7pVuiK#Oaqheu z%bBu~+>8;+aE~m)zNl&TqmcAFxlAJEFa3P?O~lkG##M9}?CXz16-eqoHih(CES*35 z(cENTzm?^P+e!K_01?S1kaeyCFR}OB&qse%pK{(q&xWDm$^Zz1bcXL%yf~!SF=>Q+ z+D$6k413x1TykHc5Y}A#7iUl^sMI5M{hI@eBp#7%06x)Z}YY! zBBRy{H9NMl6;PzEX~=>&9?;%BP6*Q_pQ-jR-KT%ap{3pS$)_2rY5R|An;XtYj+&y` zo(;tqJE*Ne+XBR>3XvEAV_V3^@-Ziogu(lN{V`l9exXno1Q`TauB6}E%*0A8puKjl z6O}(OSUhBRt|GP(Q(^eAC-qq`)GN`N8{iFUlQ6S@i_lAPHKw$DJWdjGCz9U0KY+HX ze}fD@sv(aOF%7z$XQJ|?x&EafhHO5C8`ggk{pe5c9$e=lk9S>^XsDRJ`)MpfHA%3? zD-Ox8e#rM6_xB_W`{brn1cgO8tv)+27$Et@j49i$nlj8eiO#7V%%|jNajKuHH#-Fn zJc<%F_jpElmmw|VhU{q!T@pHWk)rB%)oHVtfg?qOX%XEz!%DjZ@9q8QXZz7gs&qGT zf>w;)LAWOM_lYO8JU2|pO>&ii8Y0q~AG}8J5r|fs6-1WJC+&B2_s{HTa5m2S>mfzf z>7`%5PU0``+#2<(NuSPZrTAO`yWD1+|y3lihrSbXHK6wa>x$c4734%0L%K+JexKt zEEyGNpCN2V0oSs7Q8QyEyq4xTdGZarCU=PG8U%fy>FLO4-JNe|J!1=F*~*r}GZpml zyl?0D$Pi!CoTj9=2onfyO3SkMhOcAJ{{TEk$&Zn*esn%X7U=nK!D{X>U93GddQ;Lt zNznVO`jwc6W#cgx%UQjHf2g;kz6MRgA{Xts%*P7TJT2=}TfsQnW^axC{d^k^DE7qXN#u)otjDJtBh&G>%wF+_+isuuz)ufH#^ zq-5^j5VV#8_6E=#u;cuQzJLDxtBZP?rAOUj2wi|77inO?wedo|zBN7wATzF1>dz^* z@vSRjOF|f;?pBFOz$nnZaM~d?bMbhWJw-V@P&Xe)m}qPxEleKAm<}Fb`bgAZao+R5 zAijABooB7CBj2XD~NytUc~yb||kTa{e2Lj-Llb-sx9`{D}P-KKXop4-b6 zz9&`*+Z`=DA)pu(@Jap$D^N>n!oSEcP}Yppm~8dOGmc*Eit)nBEy|y5QUyTKuyWF?sI=cJp7f$ zdHXz39lkVEJ1IWBg|ZH9I6nhN<_gRG|B-Tcfq)AX<2 zq14nJ!xHUvueH?YskFw=;SwOX$j6Peiiq1Mijej@I)c=PV_L$CgYlFwsw(Yk1b;z@ ze}~Vy70OaaVoWQt$P}`8?xOKfvvDPx>dsLdN&1|;GGNs8xNXsQ$r7t*>s}^HL%fO2 zlJJ0|10&bte@fdnZXvzA3P*^y|59YkF5kQ~zkVk%tyo3fF|#*GAgN+$>EwFzATO;H z@_JS0T7(69*Ku=j2MZ#fr;s|EfoKOhzo+Am?O%}iITkVoA6mzyq#PA-4Eo7eT1@Rs9dU&nrB4F&gL`7!KZbwJ>x=eLOl#W0*kP`)vetZq=@ zYQgoa$-PXnBsIINH!ENi8*q3dMD%ccg3i50zdjxSCtuHMCu`X*LO2~m{7x2GIzW@A zc<|4RhV1)q38v{!MZjY%4te8KiD8n0mGxmd+y0cBz`fr=8}s`=hRNwJ z+oa}b&G$vet{RdEwM?lo$^e8x18uWWL&?-)*tYoIbOd^ulPYD>;l&zejz%#SAiIFD`QT>j! zTwN*ebboNQg|sTVi%5~tc#x2%MziC&I{6PrO>#xp`Y6#9qqMyaJf=O8_dzXm`aZ9; zS17HlRQ7j&&7eO+n&z{h_C@LEbJy}TJRmLp=$7dqkZsX;25J95sq^^`iASK=%5rW% zp%$>x-QTxvG%!C5GMU)75h+8^r!hO$^5+Y6l1~I?O<+JLLRl{Z9NtJC$2YQwH5 zF=r7X@nZjC9|u_Lck|E=ecjTbE2*>9(T{u7whKvTsXv;f2sv8zjfP>@0uW~9a(^C= zPur(at@k0sFS~to*5gITNk_bQ&TjYuGDe4!%=L?YYFF~T)^nDm2)7fhwLjqtUXEso zX1i*`*GB3@FU$geYXaX7vtQVRl$(uPJ$sh@N3tQU%M3FRlI#5L(=1VDbnkl!WWm&TM+B6ZwW5matNv$tkoyk=x9qcFA|K4}{h{pb2bn4HlAmS*}1@8vP33 zu5Rp;hIRo5Vohy8GlQLRpz>f{;wjgg&+^v!{o0|}4msa6U;E2KuIhd*s-RI&^S5)~ z9$D06v~1|KSV1thf!Ay7)DD^WwS1{3+_`>+Rkx~vxfF;!=cqaVO$7tBwcOOCotw{u zBOB(!={gvClSu!7?ZI(WtJ}g6k?lE4f{qG(G|o0*YRi!|;_eP1?rNy=$=&}LF1#d5 z?4)$6o;SOJa{2s|E`xsKl80~H6aM-#{M8Ds*-`oO$dQ%oNL16@32vB@J1(}leD2Os z8H@VH_`t(8Pq}AZ=0`Zh2QsLGE?6`4eW8B#!e#d&ci4?0Sa=M9kecp5b7p1WWw_1g^Peq0p*n|xU_C!UzAJ=E zU&E?WQq9SbJ;bOETxxCqb^`klh?0(Iyj;~AlyODqEf=%UdHwFi9~n1O=j5@0N6?K% z&r&t9+?0_*rz@{;>TS9pI_CJW;z?G%h-^ju7nTns19UCgU5o55?qjG?tva#f#oaw3 z$GhC|Rj8oz?p5!pu%Ge)*yF@GKzR?R&CLVCqw+v48@!ptC!1@go7TRqT>3StV@;Rhb@t z5|#TWO5ifse0iDPpKa0oy7=QaWcLu-i#hctkl|Lz;vKRGek$$YY1IOl0){O2_ydb= zXAGW-tdCcB*x1k7q~hK%muiMNPkmD=;aulEBn*s9 z<4;cvX+P+@>inj2^MG#~*6{7I@m}$21tveo6L2|*#WnA;KwlTpRuDp~1+mzwYF4AA z3oq)S59YZ(tFfq0=PqWbZDq6wQgbe2k>B=}#L01srFYLcjch3?XieLG_|6N5)ggpk9q@22FGEyfh>c4 z&L@;luH@p^?;;ED!;}oEKbnot@e^K!hxi#7T0Y(nQZEaXJ#+-#yQWVW0Lc&SwJUfp zqgn!1%meVsV&{xbd{ccS!~?GUViA5tFq3}O-0oNou1Dx2$k>kbX5YHszqn))g*;`8 zJ9vX3vJ47cN@a3-9ZK`5X_}5o+pB15T;S!UW=!RO457flgN@7g9PfF->bJz@Q$gu( zN0|A67#@}?LV`B{=O9tOG}_N>$gb2!q9xx)^Y`{9Q{F8r+7M@6D1Oc6zI!loQG9B$C7j=4N?z@B=%x{c z9)(GMoB(iSE2F2^rvcDN{Y{ldmRRROb>K*#bO5TlX;!}@cJbzPJqXz_h|qE#-Pakn zw0}=~MiMlAPRn`@1O2Vg*H+(qDC$6kB>T7E%7Hoja)IAdK#7@!O#R~j`uq2@47vNG zDSgwVLeGB^?eEzzNS0$We(UO_R{T&5yq`T_-8?*C&B}LQdfIk_d~vcX9)Ii?e3kW# zaR*cPQJ2vEXa)NhWFQ)2p7OMDs;6}Nij+hNc8T{f3as^9*p*+n&&5qLDIp@I5CBt= zzulP?Q7yL!(`A^t;nU1hzfX zN0G4+p-w_aH#Uwl?YM?07GuF#h6p67!1+X793WBD5^5U6Qy#@^Z|4qa_MuO@9q+rT zu_eJ8N%*q)pzZr7?{W4KxH9HBkxVI*n&{QAr3;M@L!82sTR6jqin7f#5kKgy&%f=X z3~3R){vm-Ye5qRfB=LO;taf{OPvFO_I7Ow2-rVo5rI2}7n)A2h)%q-cb;jU@Mu0Ny z$2jO~YF;cQJ#97FimXcjdk?2EwlS4HWh&F=kBnOz3n+H2h6H~Wm*_row_EooLI{es z(k)mDe{9^6dNJJ+H3&R;`?8gvk$V**XP6|c6Y2qgeoRv8fMPbt>=z=^K8G1?T=XRWX|WMSw27K)amCDZ^=pGQRqSYaL@`D^6tH5>B(>vGpL*5zB%qq3k^73D# zg+Jjwey}@dLw>28)n~zqc5fA_PPKfgw(?}rrfQy^liw(VE3>&QOeTw z!oA&VzgT&vuL~Fb`j*PKm~}+=6SuIi8r>cbBppY=tQ&QRnk_1IZwGCw8_y}CpVWev~;z+OyFTbV^gA#$l^y1Xqpq^u-N!*y@elS=NgWWsjD)&{4L2DwYEX#>*;m>{o9@3sZ*~Z_(3+;P%V|)rJb?+ zai>zzgyZ4jO(Q*CT zL>bS5nsJM8`Z#cj=|>VOQQFjd@bT53#wJ@gx2-OBxAG3}(Pjo_xmH)nnm_Az_|i?2 z#aIn^q+jBNQa=xE9lQv3%iU3&BqiO=I3{6CksZ_lUUMFDz}iH#R^lGGZ13OaM3- z9%}B)=5-O-POLYq9>wLg-U>l$PP4i>!<7zMEto^1_XRLYdy}G6;hx&Q{ ze~zv*Ajz)p+ihjr%G|4R<*qchQdydsnwoo1xh32K7gSc7GxzN-_d;@#6St|UDUQT} z;vOhC5D~cF>v_NOLA>B_&iVhQDnSTst{Sl6jE7hQX1{}2h(|6jSkH9LB0PA7yQ=j% z#$MBSd`nYlSoU9Zg5X_C%`8m>&P76mSH`D*M7yy)X%kZgght~)SD5^C9YzLI)*Y@v zlK-e->E%k=>P_eKgT*}lF)50zntGf|P|s1af9eELfA8n+F8(TsUCjW-WjGL1BX9%g z`Vv31Tt7q`<&8Zkk>LBf5{Ay^#4`6R03+%GJQ&fzB{QX$wR8skH|fqds@I9CP1nlf z#E45m*CyLW_-cjkKJ^knUPXV6c)OBl{&HnW{wNjJGhI3wv^#Vjw0A;L9KP9F#0IGf zGu^<{e*(HZ*e91`mmiOoDO1m81G|N9pz9XhoBn>Hy*R+)Z-JA?xY9J5FvRIceJMv zXm(Z&P_KTb+J4taw7YjL*c%6X{3zpel#95k`3uhE{20dU*oJ(oEuH2?b9I>fE_X0% z-%|b(?=WV(_I+RXW0(QdwIE7fP7Ybbt$cYUL9Di=?CV!q$GB&C!wE-se*C&>^zOVz z>h`O}AUHFpWn=@8CZ3#4D0kSwL4hW`iN?jH_tR?s1bcsb#kY4GbqA#wBul|0uBN4f z+{YBB{ckoh=CPA7HsbB)q3Db#@`mhN;~>kQE*U^_psUriFu!q z67U)`9HM3akUBz0j|#Iafem(>;OOVcUU7=+`3+F%ZlUYsqpk|;07&te|B+k$WscsX zc}^%7f9QLyZ0Cl_2afk~U7^dpXmNFi!C}b)Y4B78n+Gn;VQWYA zH;1%Jp1YYenRa7MlPsd+bQmkJ&9de>E&QqrRf00bs0#xD#ODQA&ER5Rk1@^&-;Loo zh#(LRbV%%x4^Zr|pvBMWZj){I$KV3i^s{3D(iO(M4hE&uo0*Cj4vnYC4Yb0>7Suf? z(|M(vvSFF2*JS2ND?P!9jaF>VZva7(s*CxBgbGtz=>g9x#9jBjlO|7;XUPOW2%eDy zfK5$CE0Q@R+@KWo2a>do#%TbrJE^rsRAsrAYM0J-1XWtU#Y%8<{H;vV2)Z{vJ;E_v z&Qk=jij&{2kapV@?hCj4EyR_d6y5zAx3X$#?!_;THLgoduCF()(RxE|1pZtihQvhq zmB9EZ-qd8SICocfp8&GNQd^O7C-}7cu3ym%e)dcaDgC3?UD!M=TpW^G-BOp_Nqf#Q zZ!@p$RodrHG1OlPf5W~Fv@?XGpxpiR6OVAyy43LvbYN-;zXMGj@7jvqyZZo7m9y+Z zoQCNxM#k1xv|9Em35kq)u2A1$E-Q|F@tK7oUQ~xlU?w!qyD!PJ!TcUk6BlLqaGS2= zM>XWn$%ODrwzdsf-(b0hI_jY>D>`ta`ZP_x+CcO)8m#U z*Gy}jp3+EVi!$(#7L1G*`{Iqvs#IX*bRH=+4d-x`l@vGUQ`fXxa&enu>i?Q=9}eB_ zU6m}*V`++h*3<3x22@+HY%x$I3zaBI2InihgdoFXPqq;Dxy=d?pw;|CI&&~rWPEAt z4V6Jkx~y;TcbjVjOuiw+@vr@_Jt3E<| zdY2J!W8;mfFXe$u>VY9sQsM6|1|t8iK}%>n%%p%Rv+Fi!ukAcP_ToFBfIDq{>`$!W2~M%5sd_rq$A1{D>wQz8`Az`p|Y9JGGgHp*y-xR!g^1ft9NRU{gl4EeCuSpVfImxj9f#^zi> zuB8__&{s*T&ywyqy&e^~P$A@ISs)G0lyV=C^!lAYgRNMpnXYWh8@CXf=J zGNDd%HtBh^*|3U9D?O=YUW0m{xsB^S6w|%4Ixv(6*3>rvI}PU!;1cm@uQ~ARkDC%(T{H{YNZ5~AP$D2bjRRuz*yzf~ zh{TAp&GZHnT~SN4_tzP=^nd`qg;-*@(W#AgPqn4Y&5p$li|i#S@6@EUYKOdK-#42B zaS!hF_s!R*+sm&p!3vjKpjFz*LL~u*LHiE@EXQs3ipo0stB|R0d%p$HMV#x|2nhyU zB7;$24Fy)Imkqe&7=STS2_KIUbs||Glr?kGbOrU|Z=605sM7Sy90<1HQ|rB+kgfq_ zptNUKLXGcM&J_|)9MldsD=`tTN#w`q8 zuG{%2u_G+r==^b+YE~0+(r+E)u+_W=4Jl~ImCl@ZI*8-kOcO6MS%ifW%$ zYHaO(?H7Li=3OwDm}(`1QMrEe5-ZmNspnahdtaK7aw}#4;LGS7#qya_wqQDQPx@cK zUf{Tt2P2G0NRgU@E2!UHnXJhjl%=b^!)Rwa)HhC{Q?}Y-rQ8@j^nM99^FZ#~F zMxMjLYxH;UETK=QL*F95A}(FKLp#GN)Z+M0<2(~hzo-N41}i^D&@dx58qDXVJ@dQe z_#OJN`0>496@jp=UUq*6Os+1PHQpnwXCq*K2Kb1?u~W){?Ry%3Yj^h(26=@Y)W$+2 z)&Uog@ghQg7`X8NKC}mb;>UWiuGwEzMo?SyGPAM(08paw)UUtM{bt*|&v&?m#cKo+ z`$YE3Q_}FO=R#aP^uKj~U8eSTey+%6%VS0V^P zEt^#pZcpa>sAM%8>ac0qRo+E>%JAFxvrjvy8qXj56FJRcJp)NrW0L=MJ*{3Ff(Qj_ z#4LGfkdt2`ntE-5I{` zIc9{P=-o-U-#}hPAeO6rA zLTIKR&*r*@bC;lI-_Abn`N<0ePA3>48}X_!F{{(p#%4zAH^mq4WBIZ${FfaFeaPTcv*)D6Z_IVo!#G^N$c2Lz@j|Hjl?< z?X*w7TKF}BW-B${O1sJNKDo}P{ej+>pRHO%p*$c|HqkNoO=XQn2)u;XTJ%C$-@b;A!VM;VM7(o_$&79qdBK-^iNU@po)G=(s3t+Ttj^)jZ4LB zl9E9HDk51j*V-)7Uq8YQp5ruBqU_xh>wc>=bh{>Ba409~aw*H;yP0!Z)@Q(O#RvPq z$odt85+g zL2!Ac_L-yCFH-yZQKjBduLf}a5ooQ173L_RGUjbE^;$n z>3W%?`Z8Ox)BM$vlz(IK_?u0TkJ4m~p8d3zF7tc>DUZ^|sE+Jozgj{JCqpPu>b>vu zx0CUWq?yItn7Z94FqbnqeCJcKUbthx5+<5?i7Y$SHFT#b4i36#{YZujT4_)ShDqzT z*4q2h?$%QN_{F&!$?282^*LCff@U4I-20VQS{rkc)%;>LNdM-&jvD-)ZeCo(sq;W; zJUP0;q%%NJe*)aF;!~nnpf8IxrI>iy;VX~8BtxhNPSW#%F!hcx{YE_H+?&**kMuxl zu(MEmy!F3s!mI~_H6pzJ(UR}p{F9QdZtPmSxu!{3#qL%w&7V}%)fpRSt*kWDH8KF9 zFCepAWBhw4kK3o{k%aqPjggHzXI&Y{2=bs3qeIRL?O8 zl*dNTy%hba4tjmb?8(nWIf3V4DHno*HJ|~a|dXz?lfE-3ho?w zTv6g&)N+#dR+)YsyZEup_W?WZB4q>PPGRmXQT|X5K4^p!5^>a~vDq&y$7xo}FYa=@ z7Qi@$&JE#Pb!niXf08UmgWb^!aA#nl*dv_5F`(N2Shh<_U=a%-VhlNG!BD25zK~2nu(DEYXTC^7}Nte@O>%*mcH;}gOO|FsK zyWd{ zxX*!~8WCEsZsV0;+pEPf1|^0W_$=aisL}1z<}NtsM|CWU*g3PfOTcaK%e1xUp(FCgla;VxS0WK z>Kos((K0@AIoT+)+bl{uL zKe;VoU~O2N+-hyAdP7-*^Q+RS5p|^oZ{NRC9ttb&JI%@f)O_9>Yj^@=zN{A4O%MyG z75A2>CV+ssTHwLs~fSQjCYX8akbze7dJtn#!AkmV^sTY5`(OhqA zPUE$&-}Q#6Xk3tq{8tfJS9!lc|CKJEwb2h|mC17k#y06~DC9Iylx$KEew@QFR|&+T z77}J!AHRJP%qpF$sm8S5Keix68&AwE`x)5;YQd?|r!$}afop5L^;@s)?vt1~{qEEt zOQFC5Wmu^|THT#mmx`R(Q_VWcZ<^bfgHRDRxxyrf5%yq6q34UcfQeq{5I62i#J!X3G8_ zi}?RMCW{!VsKdLaaD2~)yYcu-7?(S^d1cGb6X}bU*ylH;O76BKI|u1W-!tvjsmvm^ zqnx%h8^7x!4_`oU!Xlh-moev3v{Q0=&5EI+=I1st5D2UbKH`py;P+JI;3K>-BRg zcY7qB=RLAZnZkrC8q+amR=e;yP0!$wPdhC{RwL731C_JqML)WUh)_*p!b(KTv#Wod zZ30>Y0!}bUHee&)Wq`JRuh7-~Us2zqimkqA_4RtI)J3WeUVV1b=goUbi9TRZ-+-Hg z95F+pAubaKfqV9FA_&Q-=rx1=OXcVxE(FWwlfRMDqu4(>x4g5%=@Jmzp42R#8#J~D ztbVREeym}FQGKj2FgdrfzAXs5$zo&vK@w$vJH}8m2kW|OOy?*duoIODctN^J4YiBR z6Q)bD)8ZiQ)R)*BpHo zrv3=EiYf?-3UlqdN5~8_`xiTOD`oH$pUS6?pDv{MsARmEuv6SLD~K#neXQaIPjMem zEOIGq#373LhDtM6EpIwE&Wq=@YhC%`s2T*fuzxJ`2LWj8hdRr)T*h)ZtG$yu7^kFm9IyP2dCKM)u*(F1O_ z41ty&uO=lZH1zvhPE129EJMO}^uj$b_inQ0K6Ef*=Mf0f^bU18DzDkVErURtcriwJ z@56V(5A@T3PA4qy8c<`{-agCH`%HzS0-gz6a+w%~r(#h5_4rVe*t=gjXPbpI3;(%* zKJEDFW^Akg%emt?#V0v<1OEf9SJdzmH98+vb0H=nvh57XFbDHVu0E#KWzBeM=McoB zr+GM0pPPPRqzu+@WHat5dyvEae3Y*K-KsxGtSV-4j$LQe|1We~anJxZ_R*X%QN{48 zM{N|LrmvX0O28r3cPd0H(~Hm(ZN!EnRiqy!n97aP^?_D|aZnA)I|6Q`Ov z6&M}l*OnR*?2RQqOGfvY=W+LGXnVrs| zPSGSMM21-|GT13WRPBWvziutQDSxO)&pbcrY{ctw7}#RsAhcC{usg)g;*Slk;d{Pu zC>PSnDQfLS{fC{0UazD5Jz@oMv6il$7?{k{fRg&0rXmR%Tv&mcOhx&SSr?2y27oTj zx%t4h0NE@d&i46a3m`!WGiU$MVzMyfb#+Tk>-|!WI`i609vh504@;vE`U5U*gxU2@ zEMhHRj``NKe<-Id9ADC>3kqQbaCKj}1R;?dMjaL}3pOI7Yie@eF1Z3cmQPivq*gdIlTeWX zNQV)-=5V2K^>($wKVgr?cQkxTXYpGh&(lM~GACk!L*_zYPapfn3P>2$Qj$L3=3L=s zJ2zlrmyHVI7cb6P3DwMt{E`~NK4XS7^5?wMV#I}H_o(nQ?Da4U;FfRJd|B4-Ai4jv z0<{BTo+F+-4%4OPkX#)|!rhv_N8OpIcidgdH1UecO;)Q3$3HD*`7@hjH?*?hgQ4!U zrk6onrW^S?lpUCCy+}##pTAarALjg28$%hEHx09=4lA`Zm5A4Q4o~T+%7<7c`-c6b z%W6D$#&Ecj!`q{R4O)q)F#=q|&+OH8cGF)bS%AP!m^R4P(>-EC-DfU!QB#qx@4BUa zi_E?M6ciV|XUSWY`6If((i-GbKcVc2w#4Vp&j{3c5z8EKK--@^nr^uF&DhD9_ouh2 zi0Jej2Tk7YfbO%Orj_iK3ryzPl?^8)nm*V)&4jfXOuaDa5vN=v8(t{qX94{^^K;l; z<69{YMMT{2t*q}Z`i#Fjuaz-;FM6|cINND<#?pb9186Y>6Z>Ogi_Y!M=uWuR9sm8+ z{Nv~2o^KJVo3gJ(s)7fu`yC1}&9@&HindM<0_GA#0TaXVtIWuK8@Zg!YztJKt^>fK zeXqCoz6MUuTq3CvWEf{dX_MKbSc?<;{*2OoHzeW?YLD@xfpoCbKBK#GZ*%lal#n&Y?rgVmGr}}T$y6o<5^Tufl6+A0(33H;ZD}w4vC1#tw2I=M%bS)hyWFOGu$8R7P zo(303%kJEcvme(;QhpkzH`|@}(Ay`|AqRwf3PC*yf?s{%e^Ql4X56A*t}hWT*{8$E z^7sU*SB#CFFexrSe|z7H-l&vQ`39`WB5@5x1Wl1=Kf%}NYJc90h25%hS292pxmkv| zQjGG-9A<3#B+C_-^i+C8b29M;x~USO=z%1I8a@A-&0az|!9#K)yGUJs$0XKkL_$^X zPLH&{rzzA+5=iPAnX#=9Oa7p`9k|A;ArN@;ozC5}3W>3kvjh0|U0C$@V>SRLcujr1 zh&Y4j0KvJakzIjD4SM9PZtzv6!j^?Hce0&(8sAhb{dKu*mhdH;0S%;ZSE4(gT*{=H zbFQpSQ0oNu5iVuEH}ezF;Fewg#;4*%h$6$$D0;$E166D{a;{NB3M;rf)2`nOE;;g>-1S z(dd57I5Q%jnn$XdF`cS|Bzyt0FHF!Sy&QuGIZ_B7s;{6ymr`a%J#*+M`AkY?w7uIO z4{_QrYva-$sNiUGJ=d;89v6cjlXuuCH93j`$tBPZG#zytv4;lyn#TGqb>nq&IyfLS zdt65DR&#Y*P16_G`j*;ebg=9W((^TJ^#g%dG}>*>DQ;TO5Fj5?0LZ#~6Z*Yf2(!#g zm683Ah3()$K~w-wAHo5@CMapgzn%zv!?SRTiQvmR#(X8teto*FsdAcmqcQ!U^OtUY zyt(9UHnZ`&r$dGOer@aCq`fF{4Jg=a?H+$?ZZGqsBcIp!xpO*3Fk!!(GG*Zf)@nLh zmwVD+6SxhRXAWM|%p*oD{altA^ja9QHMCPy_bI00P5Gmu7uz0=MTvB?2-lp8(Sa^; z^Z%(UG6Vl$1Z3OL<+wklUp_F(jlA1AOXF-C?yRzMu^{Hxpri~SP=Yf}gK+P+-#&VToid6zDi0M15iVXd` zre_1(5e_%Q4o{39P9a#^q;a~9xx0(Iu~0{=am6HqfbR|+*Lx!)gOZ+J$gz*k&z{g- z%%g%gMW^bDPhKW4QxY;j3#mB&7j|@$04qQCF3j|<(f#h3*tlYtWjB}En#^#u*l!N8 z1`<-#!{GKn@|~69Sx0H4O)+ZYqHX@{MxQNCXLw_v_ILn^KU{_7x`#4@t?nr{C4jlVuLpifGp;bcf|uBA>5((v1Gr{vf*k?PoX zpS{T05W)yy)o8Zm^$nj<=>wJuAWoS3$8r^GFMIUwT0%dk4?gR=FbcfOT;ViyMRp_gvd-en49sE9WhJW;Kv_e^s+Q%Lk$B0kzH z5`{PkK-J?~G(7t>MVT^=Jj-_rF(dmw3b7WUMSHDHA+;OfO1u6B$hg;7h87YL_69b=doMpZ z<~&nSxFme&m7J#=^=j|#-;KmSYuS8iv`zUf+Kv<6dS_NG+lf=_SR}sdN5?|8uc5m8 z3IGqD_EAfX#CMXkon9^MjQlnV@%D+OBO}dn>fUui)%~P7Re4|O7yAJ>);Z=8S>TLm z2nXb~B21a+M|L%10GDT%glI6Q|3%bA_mI^{$HnlA`jd2Mg;vZWJK&}{>22eo2DuY3 z*Edb<|IT&g!;BD|x&){ZKmQC=hcac5+4nrvt4h|i-0w(Yu)rj6T9jhM#326Z#9 zOc8g5^?pX%Tk6_NKPM?F@6AELe{FJ>9b_IW_SUyH`D~FspXp=InCj6s9HCG@)F+Xp>k=(gxbyG#0lC$q5~UN>5AF{H02%WOp{) zF0!Ex9IfU?7p8z^ja_+tiwlBy#H5h{@M=WI9m0<>09J1m!l{01AscTa7j}86pH-jl zo(A-*UM-x9!G{-JZY`YMeH!^R{;l1hV!taC!DYI!r5oJ>xBH@f<8Q)7CgmIt>>_QIadf@suobKw9hHSTv9s&PplZR+R>zVc+6! z*(mXpq%h=mcnn2RHk*Ci=NO&?(x;-_jxdKudF47eMCXD@ilX?>y3vCrvKm=x_1QfXnqQ5qJ#hLT zpFU)FB>7B~=16A-44%n9y!l>zGHG4Jl=tpgHDO@1JU*z>>+?;Nsk!`97z;2OOnByN^fVf9DXF5qb(Q;6VbQ@xKOEVsgh=Nn7Kz0D6g2ehm1BMqR-=nf)uXOc9bb$; zpgMo1%vesmeRJO(Kiz4dA}d>rPP;SsGnb3|64%=K)`;SfWWNxLq-ax%5KS{nLm)ps zVDq=59HcGX9pQim)Cy|WEa3xxZ!TYbD8f5pM2}@WH3=2ed0%GZ&IcWwJ$^5A{GrlA zV0mWdgSR!@nrCQ_-LtCT78ho$$}Y?R`7_>u z%dWg^yetQzmTKA>>V%QV7L!VQty>Tw?(xHz%NAWmWSz)wRGlp=QqRhKYB&T! zxXd-u!zU3%SM@7*zdno(RAP$!Ib>XMCp;NH2!A~Fy8*rplJ;GRj{8PyII;yBcOhOh zSDrdkxbx_Y?lDMu zt05<9j2MUjZkymOzpa@qY5AMPhIbrv1HQAofN2i5h#y1%)}Ho{6Wh204A5l3rtJgJk5{L4OJO1ZvFJ@G9wiSN5V5o;muMr%h!-Lv_*kLe`wC z5&6Na0*7ZFDT*rG+on2k-NJNB#J!F6kA`-oHunHxtg!YO=P$E6fh_eVCqaU$7HNUR zF&cUU`wJ@PfZl*GA?O^`EK>o9D$f6prD3;Mej3HRV1lGuQLPb6fn!WT_+T5$q=qC3 zLzsL|zA)0sJugkh^fn_RaOh~+Hcr4e^wA3%0GwuUiSdII;cJ4R=aV{l(oGi!!zoEh zgwUC>?#;n;bJSrzx6MTWiwPhK`@Y`@bKxMLf^^c?hO~ro;ug&)RMC6S&pHvs=NXfq4H6^O!&7C2#W%UtD$sF+R^n|K&$9O=yj>=Tj9@Ic!&wd`sSNqxIfizXYe zEgB7^!{QJmL(nvCmjVSKg*YY-U#k;G@VW-e>j2kAZm*mOQAIkEV0re9lZB&14cCQY zGAb&q)3O2kmbg4g*OT3;tviGqB+> zH&D4KmF(|+A_YB3nVr)$lABCWkF~3;Gxf3DPMF6CKL(i2z=HA^1W~e5c1Qlw{eGD@ zi;M67imxYRTzCBHc&STZcUW3Ksm|%-X{$y(UGJl-K(Fc}E)c46sMp~FQ`HbBQI&!Rt9j5! zBy!+>%b5+c95K#_&av` z1$AVJeY<~QSD3nGQi}~RzCs6)a%)TZ^&SXX8U;U{=;`US?_Wep?M=E7WxT3B(%!in zre@E_woboXv1p!T6ij&0Cl58wi4{5^2QC~<>-B4;j~2ljTuO*TWMTbDxEAmUJfq(t zY=k{s@cII35RL`CN{G->CoxcwyDi3r@DZAM8j6JJ$rU1Vj>OO(RC!Q9*Rt$Lh_rs^c6OVilipg-H`=u8B&FAnnGOQGaok-cG%5jl*6%I>alq z5aEljIXv0StHrdpKH3hreBS``asCvLMQ0(oFplJ*f}fw||0`!M@pt7eMiX;m!aqyvf?K|KFfJ|Plr9l+k$XN*}l{hbXD0iY%N|%5xLmB zuTPm6^im2LknPk;L`VZYpX_{$ud|r$U7Xrm;d#2lcswP*LKKKIh*3M%AHGo3S@XsE zb((gw|K;kU;7%_vvu$Ie|2jGE$~6QwGGL8ZuGuO`gO{v#Di7TI0Q|RkjC9u7Hw~`$ zTQMLxpi76f9pf(Y9}5?RVDsq;xI;_)A+JG|(^yIDhvkw zpRJh*wLYTLE)x4DY*7G4e){-`c^<|=6z1-fNJ9cYr-<5MkJ0T%N?!=Kg!={D>zC2- z=Xq4!Q>{(S_VRT*n=mAG#0-iaS1mC6#}qxYSL+AGdsg9tX|lmQYFWaRrjV z|6(A7^3sh`%m0^`exUeajPW1KP{!5bF(0hgbN`XD@;jUUB=39c_ZSG_?pS7kj3Jne zp8F2bemflD{p!bTXn_u3f6c$M^M zE=wy~>?x8eBZl~&yWQSvm+()JCcX(uiJRs!RkFxDIA}&p=1qP^DrMOowB^YiX{?!& zhYLVaD6a#{+BgTN3%+`@)typa4-5PW_7>%hz-tI@^bp~9)d;`#5}*omH* zs&s}LO1l!vycuTm^LJWpH!Td}J5m~+XZRT>9x*8N=!r#Ru(Cq_jq80MFRdy_T}atP zL$B`>8G-zt_=9JhF)Lp7X4@fo0LZcE4a--`?d!Hkd&H~9O@lT+zW%H)t+in>qGv0!qO zZu}Y1r$UrlH)=T_Hcw}Xj-}sk1q6Pq+PpS9IO%oA*?sDv1nc3N@Y>i1hu^F6FP+G_ zEk{hdrCfz6)-nQ+5@Q$2mYp$0lY-=Orr4{X&{^AYzf z>hhg(sKc>;Qb zJoa@grpJ0mLm_06M*KqRMOLlPU!SPkis7*}m{Jt<#MwgJp*y0E76+;0x;=5blx zhJK~x-j+W2G@_hKWp3PNLK1{AY-=Dohp>HX1SOed5xw`T0d=AUOMhJ7kYtqsRRpuU<<;&~LtH(6 zJiGch6CH)xu{zh%2T2L$QklfvK`3>Z>FEc0T9#(DP9zt2r7q(u*6Tn9-GBt>y#m?QbYVInC7r zO?wLUuJ<;zu3zlSAn-^1T2c|>Bx~d_2yC%F#2y&1OH`E}H02b^AHPcI!WFQ zv9lA?GwUArl)9D<5?QVBfh!|`y||H)9AFieW89T{6JsBh(KMkr?QQn!RHqDZt;H~ zOtTwJGS-tos;o_+BHcjrn~JWEXjkAHxrPWy_zc?xNOhi`3K zYzjP-!;K%xIAYs{J77@92L+`xdbCcx(MGVRwB>}j_AUVFclJA4t3If5R4 zAp&;fzk4HJa_>*jPmv-BYw?PjkNjtLPr>xJ2qJp7Bcr#BN%v9F0Z1Xo>iIhwj|$w5 zaF?d8o^Gm-F@a>ME;L3xI(U{X<1tGg{zcuq@_z2#9z@vhCml$AtwzNG^Cn>PQ!4_bN3Baiy}2cYLXq zS`C3B-pD?vXa-&QyWwze!v6<(8fZIp=c+dPla;iTdgrI#9bE|h;@&>iH9S62NIyO~ z^zBjW#4fxHuREo^oIn+~ByOD;B07xWH>e}Mf9PQ9HIkPD2^@XM&b|dayT9@Kd1Z1* zjDO5U41S$&4jm2L0H5|Po+N8#++O7%wQcrJ>eg8AN+hiy$3ItXj^fSvHFvNcQ??+7 zrhA4u*$v4yHhV_%A!5MwPOfCfxE=HaojTFhzA@cmGEAG0$3smEgur=;4&TgxTS)!PJz2~)K$vVw2$!c9laO?na#a&G&`OR`21R#Dc zIZy2(5)NmN_{;iILKax3Hi)>Il8buVN+bUkjkoBLB6~qM!W{7I5B_6`au6aTd*cYx z8U~BV(8b<_&_#aXD=>rSq}77OJPwKO-6;5(n#isu)Ab~3?c)i>i!(7wdEHE@1nW`% z@W&l3kCqI}AN`!(+^uQeDj4G!?N8pg(7%7&(}? z05OHX0apwYkL;r%x`aPk)Y?-^dYCGI6vNqcf7%L4SWF)NTW2sRe|_sNxPOtMtOr3t zSCYo&d%P;Ij)?SoHw>q!Dq@H6Bs@vEwuvK1uO8B)=P=NZu9z}x*te{eVgiy9(u<3T z8LtH*zGrtDwP4(>Y1W>uHedFQ3hu#h0?&O42$kxKDjs`VcPw9gIiDIs;Et04eAiyC zV}(hee>}K)3B4%_noEP@>zWoD1C^XR0T_3mQpV`!q-mpgK zZ6>vc=>RkD3Cy+wQvM$A0sXR{v4IDssmw8SaNsUjX(ZF%H2L- zJ8B9{*Zhw^(T4r{7Wrw}Ci7NpUbm0C5Z8}%JyO*tFKR<8Kxz5iyC>bJVc z6M5;C!So;*{AT{^A{Ct%K`EJ^tbg|2x2yI_x2V@^GvBkYe=b#JGmsy>nk$sztW-7o zW^Jb|z!JLK+^ix`m08sg$+tTJaDh%5dkcWAq@D>`cSQG_p^Sl%y+ zt4+9_jD_Nx4nl$jQcF~g{KxdKL~1Va8{_=;3JY78Q_OKqbJlZtui#yoVSobSOf2v@ zw|;cDR?K6E_b6GQWCv#lA7tm973CVJKVagusbdb3bZ!Qb#6o7zoorO^jI}XGA^pO-EAB3#H>aRmq`1EA6R0;Cz^$- zfrI${sD>7vWCl10rBcS+LM+oute7LRXB7vPxW4KYcyObC*ou!Ez)%k^@*B)V8mMx8uon z{WIIL!kLEtW4H%csNQbvk!?`3rvVZecgEHz`zM+JpUf!#S{f%Q|yo%pHa+#@gXhZMn9P(MTc#en_ExW zf3$B*X-#A=4VHK{3f0CqCD~a67R(0e-HBbyHCgP z4ZIeTmcBI5Utf4;494qn)*P@4y%W1Ww7G!zB2Ur>zJwb##}#lT3105)vO%Y1%)u8q zoWvHC9UJ;tokgOQmpJP;8_<5Z9DA+fkgHi5era!x=(V-%Ep-1)lWYg8nEth#Z)?93 zvXlOyH#c^)FNZDM9d2fHqbE)1lX-~mivO`hxAL9j9sb91xojbSTU70^5O$t{6#acQ zZf{_f=nSM628(>qm^%Jj2a|h9wyjO4W=_$VRU;0vdp-8HscuIn&4EBF=mCiv^%jYiXDU6m)}TXS=2n3FfVQ}kAY z9%5wke=O-Bd4d6xhrwkQuiDSEMQ4PE`YPle{+U3lCgbo^hkr=yI88pU2*h=QrPaLg z8EV|MoCy(&a5-;{-d9RJBfHOFzn&AGyb+W|T&C%TA3X-&Ky>FVF%XFh7?Q!XQ>JnB z{hzobK%V+L@t?}rA92b(Y1L1zEq{$#I1%|Kqg}VUpcEME-I{}GY7L)jB2JBOAjxJJ zcL)YYryzW2%H9g4Xx?6S)Qiw~j8RE83F0o@7m7%F-X9Fa2X(013&)1DQ~!^nYmaAo z|Nl-ml}Zsps9Ymd?$@0XLdZR4bdyFb_uFizi)$_?*OS|Fnft8R$Xu3t5@J{kvmtjj z*Re~#&-drCe{GNL{dvFNuh;YSyzm|(QSRb4RFzy8Qpc%ln|&93Dj(E+y3g;vwOt;Y z6iWO?(>mU~0NQB4?r*#S1SS~Kf3Q)${`EYd>-$Mj8Z?}h{xwShk~VcEwcXarD)j}F zGXLHIeTzc5Bj4Z6n(**zF^u0nD@r?mCTq{2@!QmI%DIgJdh{UHud+0|-?+(lY3^}W zkEi?msY?!5c9$bishM8QIQzoP)j2c%e@z-aPzje7q*CRaZbj95-yTz0*e?)Md~+mC z@A+Dp^Hl1M6Q{&a!f8Fz?s-x@e-RU23N%?kchjc+o1Q+BcBz`} z^x(-~y#3pO@Y(UkCz)(Yw(=^lkZwrN%pjwhH6W1yECp$ZQ>?AaYM-!*in0Jgv`IhA zkBZ(bRx0DVUAg#B*Qu93$l?E8=VC&*FfP(fx{JX*a&G#o@oKD6VXkO4AaA|!RvVVDMjf!jw<`K@_ ztNQ)q@P&a0qg%2ms4~lBvd_ju3IlukW1Der1Iz97!nXGJWprZPGYTcA$~UQHP4+$qt@VxjcI=ar zeKb!Bc=yRGyy_tym9E$>ld7$~8|k-?a{TGHoq7Z=)d(@@)P8l@TEiiY-DW>M0i}6^ zlLZ`x@Q>sa7;Yx}VsV$}vc!HA|Burocp zR>Vc@9i=6QvD1I}=DuyH3~CvUmvC3+wi;i_7S3&p&v^fP(|2iBl9Wu$QX3qCZ5l52 z>uIuy{du;Xl3y^*;qB!6s`+nXzTywfbFDB!0)9N>8K7oOf`IX z7Re7HZB|PU_AkPYMks?J>#X;Nskx__;NM*PG^^!YV z8tJuE&!0u9>~Bq8WXc!46`rk()!fiVl!j!%xa9ABkQti~0}1CsyFY4dyd z5mhxUsmmA_r_ZtUt7^E}DF22~wO7SR4lTzs&d)o{;#EpXSt7H@>9Eo$f%c0%7m-yM3-v+=*Xt|(dKi# z*J?f&U(doVYUV;!rWUj3-tYJM0#)E+ZibeXR8-f2GTfisdJ@Q~gQ#?ZaItR~g7ktq z2LIhJ0^Ym1?}#!>yo+D#N|x$8!Ib5LZMUZc>2%qI5Gk{XpO`)y)EH_WXa+W(*gi4J zP0X51v9R)|qDh;^JjOyI+-Mdi_`Fq>k;5R(@g7Ac5-l)~Aw^1l`{x+Y>u}_Ob~^GEW9tb$LILCy~!kaeGLi*6ZQ9L5?n7W!$^I@QTgb)>~Wdtl89&T%hnACs|wn*v^HiII47$< z`cfdA*_vJ3RA29=()xYPhm8plAqBY9rQ=}e>0OsiYoZ+G*S<+RmEkxzUgyYKqp6RV z(Vg>|;9VG?JQW(~xDOK zF?W`?>!_BLv7dgQO%Bfr4BdR^LTRv70j?pUgR6tDM|iI_U=XC24oKkg3qMcT3X2eIW?vLq|-t)t(w#V?U zniqlsS|SfL*iCFlb^mm5v+dzZ>+}ECYTh(gkdjLn zO4PqwqE8U2DSIh**4NZOCvBUse?y^Z>fGEDzOx|IJ}<=1jaP&O%mFw6p4HZdtWT+8 z80}$uta7*U-y1)D7Ga`Sum42A9a`jHp z%pr9mE)j9L0}KxBVh%7?9-xk`!B?%Caga#B_pc`0e9eK@ufaPJ0YG89;qPe9nL>-y zv%ISu;~|8|WPFx^Rlija3U~hBiSP*(a!gS`_QAE0?+vKlq6= zXpCFtgHf#(v*iday<(>bM^$dScG28jT3J)(+ms78e7GUCmh2W$V)D~bA}jU89-NaLH;F5S<1}vnrVMw7el))mkp+47Fls?aPtBI>z5zXRBvK%Ll;k_&RXj~J= zVayIt6cteKF{QJ;%6(20t=I;jtwZ-jYsKtv=(0OR2q0?ee_WH5RU3wAt|y{VvyJRM z=6S82*c#PYr?7&nvnL~O5{^7dVZV8miU^kzQ_hvz3J z^t5U9dpMkBD=|PafAKicgnq%oH*N$MoOJoW9}?DXT^biu15RqRcq^n4ELVWk<1a;6 z(mLoOFl>Dt&)VBP$_1bTfCZq((xYv}@wA!9E>t|R&bCA4u3_*2ckCUS;u$X1EfKR@ zcRD*x%Sd|be)BM1RlCO~XBhlV^fL10+Qqc5ehR|r<@Ah@tfgg2nuRfi7rBQi+Fp_J z?!Kkx*8Porj;S>(B%Dvzal#0f$z1J+JW z(w4}|_db{H$UnD$BdzHsdoh1{XHCE|sEq~_% zZhYue7o(UNzwafqA0-m^pN{Fp827?QqVt#Z&Nz*VOH|-;!?yk>LeK%um=Km$2m8rO__fmCn~fWTz`ugr2733e z-}~_3ap6bbO8H}jg=IsiLH-UPF!*$kyIxZwk`7rx7ux$vR{T= z`MIwzkbwTe6#w_fA3mnhh-zP*$anK9pRc#?Thz*)8THhA+SThD>hkYsFx%!C z8D>IG3Vs(ERYf8KUNhhiGPQS}2}%JPambQ-r^%I%5$>{rr^69f`kT!XG|Yv>i=S_0 zoe`)ZYs9ds_I3vWwwRm56YUNp8Q8gKVl!9pl=iNo%%G9R3XAtZWQ1O@mItjNl6Qa# z?KZa#A;&VIk-rWmi1F0ME)Dyk89IsnCjF=9`gR4Ze0?Eizdb*@PWK+oFWb#8nwo6( zfDk6T*CY6Tl-Zp151g~nup8pI*ZOWieOWofX#0}cUVfcH0d!4@Rk3eKP(N`dQ~$M3 zJrF+k0491sc3^n73sm{WoGf_iCzCw4)r?LQN(eg7us!#*FV2tR<*M_tYx-tAIk^>j zu#REn(u@1-Zf)=@weHzlZGi5{1JbX3K>~77?rEy632W;sri{Tk2;~vK0q&?aM5`BP zk!PYpq>#qPd70_UE`T4rXT%SzI@%zB z>S+LA_?>c~sy{d%l9^AOM|Dpr-oo%J`jE^=D zoa+zLI#_%{Wde6Rws|GW`KYH=l3W;Q@W4UQbD3JPP@wTQx&A4D&KB$T_{;SUHrW2y za*=9%#y~7XLbx^-vf{H?kgY9a(H8OL(#;mc-OnO9D!sb*ER_EGHJ8SB_^{%u&7@at zD~n2pLgNnW&YhZNE?k(|G~zc&i?shDP; z8GNwAYn?s1{)jh(H~6PNtN0b_zgNbY-^9PU*Pr2AOCQemOxyQ2fJW{6%@Y@Rw`Aik zt?w-Sl<8b(9EjFW`W@3cZz6s|!TdW!8z^pC3i$PmA^-`>RvY&Ij*7=WXJrDLpQL*H zCw|1cV)54M-={to19?i9db>www%Z0Z0$Xq>(;KTXRz(CbnL$kJ&?d zFXv3*;?b`5Ce`kP%4vM}DWyWXN=ZTD6SG1(<4-FLYY9XSaf0G;mJ9pC$H!{sHhg%L z2K0*RfB3BO^NA+!SQqS!Pjap%Wx*7`N?%NEP_9QK9deGLX8_B9OBinwoO6}>NfX=s_K&|LxMQ;da~u&;vgybCNXwln-M7KYBXu~uo9 zmKioy36JZJoQt%ntIk)sQ_DKRs7DG@TT+rARrwI!GN6&iiZzxFOwqf=*LGXoMN?m< zVD|?g;*WhFecE<0@)-@#e8jKRy@jd^CS^=Mk%pS}_I9aZWJ;d+n4Eas`Pi4}Z6#oJ z!VPWXqGsv1JQm{Bcl4@N))~%c8~cf?4NsQTCy28>aew%rfA}UecI}uhUz26JTGd#P z61XJ^xJa(0o>+F4KEs5d7v90IqRqwP?Ev>YNc*q6ro%~@`WcLoQpSU&?htZqMf|%eWd=I#b;m@=yofXUq;g0x z_d@uq&sE{VhJX0FT*8+A@ZB~~8Z_?VC-ZMfA<1-v%O=2{4b`V=rl1yD7 ztvp&DP6H^972oqMHPX_P^+)D1Dja=oA_j_*Rv^-gMpXva1?c94oZf zy6Tdwb77!Vx&#~(c>|#TyS>Yo*XbSXFWe7c`vVopo#xZ*v%UpqhYevfu(Q4vvnT zj?u0=blqa>K}hHmfo6uJ>@OIv@Ws`grZBe>JOc9K9@NnSaCEZSP0q;4tj^tY%5`=# zC|zCK^j!O&XfuqV-nJ2k{EK74bT9>&`fpl=d7~cZS;d9Dv*jV6v*D$Cw88jh6&gEy z$6DBxkz5*6>@(4+Lyqhe)wjWxHM?%9Zr~vrR<(@{Ssrp3r93qsKONBw$P6jW-=<%y z(%{+T!^RwUvZXVD5(NRZs2j)>%Y4pWI|m5JCz@sux$M7L0$rlK>x}G9Pa#%qw3ut% z&k*dXaV=sjKB8H4Hu&x; zi0jSlTsRp0Isn}uE^wbeLw5%1$8Y5W30$myj9DxDA;)kxk>nk2gcuJLzS2oOgE$}F z(N%EfryAUpE~R1p?=LW=cfVzHNRMOoo>f6rSer zXkJr^C)|LH&y8B#ft`UXFubPIKbq?7h9(Cn#`|kY!UU(?rBv=c;F#r)?#&a3A?p;I zfrI@PZOxoSJDUM#x6;*OxsrTL6?7*u)Ubhf63u?W(HbLq3nl{Qwyla#sua=te-7{F zvtb?TCpey{9+{)Y*M5b&%=UEjAKJUaN|;TJkvWD?3s>owzQXYPjc0;8cEvm-8B=4J zswHQMmdw^>t@7@ zJA$WuT?Dl-yPs>|+KQHqI7U{sR~1VGeDhXB1Rb@OEDF{O$S0-Q@97o13+C*!wkCM& z>DV_rxEBnW4cNQ*v%lZO;~H!ubcTG8_dyJEB*oH5hSt#ihwmQ%err7g5G}Y2^O@`} zznc^qe|)omb~aW(Fs@aP0ZAcbHMkVqU^?f9`GrK!f@RK!$FT*RMtBt3uVyQSgmOvA zH6e(0Ls@TibeXc7BGhul3`NMNG*SJ8%|srq9ozRWO5ZC=2QuznOjtk9-ys3q!PklK zD3-(QUw*T|&RN+F;bJ-G7z;GT4rIK9ez=XT5P-`MzRGoCB~-I4hYUkz4Qx-s-Lg9+ z@N3Da*z8-3uGosByC@&HX++JUnM-KGHMtx-V9U`}j~^Nz-`K+Anz(rG zf1sI}jbG}t?60uXi>Pz(Th(B=gYRi2_}_0jJO!IQ9x@e^GzX7|hjjpeane|{LAyn< zCQlvUf+RmxnKDN>@9K;_t{stBS6YjjSeqMdTE+MR42kW}c|{*r(c#mRloj-Pbv|HQ z`=(Qd5wx&+wYYm2I(>*mrGFCnWm>qX?^Hs`yanl_M*(}GZNARm^M=28#)}|n9p%w% zXEL{GKZ;7GqrXt-u$q3vbD+pe1^GjSclWvZYoO=0e{pnJ?-_M%dmtf0^O=^v5SL90 z-F&3gJ~LKDZ%|q3CNRMjw^7{0smPYDjkx(7a5wUZP?|{}E$bN{G zUH8>5TPj;-yBwmrs$eTe`@kj1P@N7E@Y%~j#;?xaqS>BZ@_F~pz{tDZO#!X&s_H0g z+B&2#Ja(9s|6aJvXY9Gi>x2?zd30t*aWt%^*7`tCk(Ka#uj$Op?Bn@)$abq#2 z;GNUc4R11Xbc3Z|HZ$TO#qeA$X1`=*60rc_4g`bMeexGzc={+H24 z-a5Nkk&fhNrTAUL)KTifi|SuPN1JwW7KJA5*Ipwpvw->tGUm+wNN^mmD2mbOr^xg6KO#i8+_X%-tV zeICHEks|Qh%ynWJ3*6>$g0YLCV@1QWoijR07d>QtzW5EWPwaQ^SJS7zf1iNnKekYK zS>S%7SLKTKk~}c;jC|h@sFau*3>ba447j-UfHmm{{Fpw^4)RYyfV^wPL_>35#zMy) z=4CBhpC!O}(;SyO>`G58Fis!Q2|BNi3iQjz~4%b*2dtVAD%!m#jox(U+_!qnc93z*sWHFo+AEn=rz7W?{l8m7cp7oEe1 zR+AKNOZL4To`Z_J^jO%f;?<^i$S#kRtMbUA^wHwz4o4=(k`^h3u~z1`}n{ZEj8bj9lu@Gcs;Gj#ioCP?Sop} zz+-AC8QJRcISzqM%Z(AvHDv3cAQhDc|8nkQ?tg#y{5@j<`+pRL$UFHL+k(Zu&8nJ> z2HA}uq&RxRf}Plli-f(-=R3CNwaW|See-Q54tRs~E8z~E2>uaG`Do!zLe6-&xmj}~ z#L9DId-3U)FuROK$C~0OXauy#X4%*ZteUH)o^!RgB#)j~y_#8oQH@&ig98Foy>R~B zTy7!KUyuSsmUOG1hexv5jFlPK+eb|G_+WrRUZBsSmMrBY^KxP3gN!~JhRC@JR0h0R zlQE7b#v+U<)@=_(oM{=xAqB?)UAj(o>0*vwcOf)$a=s~%;0NC&v{1vMjQr5abA>0N znpkgtFK+}E4DOo?FIzKV2P1}vIF}BTBbPW^yjVDf7OsJXm zoxVXu27~|<`oBjx;vp5<8GvR7B^93D<+dtj9RTz8LPJbNi$$h-<>o^$7+x{XQ=VUo+JEzIa%gB7^32SEkGZq|B$4}Qi0gb+Y1&`d*@`gl+$Pf6xQ<9p2N zj_u*HxMrR55;Ib7qlFeYUt6V3F9qxxBG(Y3b|j6CbCN5Xpn^5mb9N{;MC~67S9Kwv z263>puzk}SIx7qLYLYiHvCs)S55LFSq6?^>gz7|!t?n@ecTKoOA@6h;*f;(mB}0bM zv}BMC@e5Nh2`)clt>ey|s%}+aeVEz#3Fs)Uz3IFj9%NZS@3`ywDB|*{vQ-*xK5DUs z;yedK6maaN=W*#DL9rm2KYUIqAqr#Hj`hIp ziYH5YGXZf1YEVl}7F3Wr{+oOU$h6F_f-DpK^Q$~u!;w8{6zk|mzG14FOH99v*UR6n z3N=4lN#0)EJ6ElN{UDIp`E8Vx*^?`*J-qiwr_#+hxTblBgirkOY-whx&C;siHgF@N?_}!5?&ciBh!b@|= z(AveouvaOzmrkwozb>pj(dF$hlLlx+ZEe4eacwkY(w=fPaYA(RREDEp-DrJ z@BkA_m6LA)Wr2re3J+fnSmh@wmKiQEju9wUa{)X1D0Re`o5Fi6T!2;RUAv2oC|W|Y ze@E~O*<1`CsP84?*Ob)iiCMPtom%@n&)6|s%@(3D!=|LcvYt)b9~?kFBA z?B^ElAW~cv10b2HGa-baGkUz}_%(pQey{=p{6ZT^l_rLcNx=UjSppWEsEy+?V|Cl?DUDY7BV)4PK(-QW`Yl+OwSq zJB@S3N@M=pQ&%?Ehj;^w<4qw0SS`keGKt0y6pQ)N@ zzyX{3-qxC|?ky>w6&iB;yVJk}?2pfxhUK!ayW;tdAV0(yw}5IIl$~v-CZ;3Bwy_tV z>qKTm-ih4J)7Y^%}ZvuVbo#fLP;16?kKUJSf0@3FzyB=h*o z=hBk1&9Rj`iYc_r_AS7py?OJD5p(6u;NcMmTSxOb%-#VKEIJ)D|F11mA?i_M&(Bmk z-`=7bG;YQ;npbAfIAC6`C%!_t81!?Nq}jF#GPm2Uco|u=t;qhmr+D$Y?5jLxw{jtQ zPO%PXg+VJ7n}YxNKdEOmF{RDkyRJ6}&BpM7Oki}CFK2JAIekkUFN{BgxI3DsvF^=2 z6|2)1fCwSLa4sn47Qv)J+>h%GW7`rOFO_KW66~vYo8%htxUsm}{dBk%3`GpP%v;9gXd@j=Igj*T+52 z>D*j)OWr0kmR?$imAgUpN1zJH6^N(w3bW)p^ZZx)yP=D?M8D;HN*E`rXR*fLCphDg z@q_l8ag_AHY?V5KrN<_8+|N5&rgK89+m_-_+5N=Lz{wmX`@;gL=EWLX+o(5fJ|odg@yY`!t*R5+>w zO0yNRrrDljft{KdE7PnTl1DQM>=1R@Y~$}w_>pV=7`gW@ly6^B#o9+#o_z>R>>=27 z%rJ$@Vk;S1V~T=_4<;O$;V+!T;>#`?R@mj1lv#`cJ~^^V^6DSxDU!uqy7#mp@zqO@ zpmcP67s*yku;$UUuyAa_nUL!bCXZb?U)gs~d~_ZQ?ar>vkf`XF?xFF2HG<7B$i`hv za|p9}BEJv3rXf#EOnKM>de|e+$qmx#uNT<-fXChA_V2z+{yX{hlF!vS z7L~qkD-d5Xm3ZAUfzI=cfCBTFzRLSal~0tt(mQC*Ua3_l13I7S<^+7zHLJhk$StWL z%@v~!Qy-Ha# zx;nkWxunu530j#^;-7{UG%#v*gyHslM4L zUHk*M%Pv(vtf`I>L+yw{i9-*z$2K8GdE^5*9;9nd^iHJii6=_k;T)k1XMO=2Jah|w zetD$WEF+@P@9KB-16S7|dHY^d%jx`xNBiXuKc}db>bLl4p4ZDZoHfI^4XEVUXpSn` ze%R6xQ!1tSSnXeCnFB4!Db|PbaNl-hU3MqnGU9QR1xzotY^ATW;?PS$@SEA4ISa1= z65AQL@d#eZr00{b{y;^!kHpx!5|+cgF?D0vdk2V2k*wrG58qfxO24)$(a0I&_9fvv zR8glSBR4QF*AM?R&AO&$4|%$p_xc>#CQ~cI<_6TlmFRua=Z1Sj;BWt{O^al;hL*u~ z1KtUvQ_iT*{OxnEDQ&xBbv^|K#5(CiB)?$f@yQ21tr}x^YyCfbCZBMz6S}Ja(Q0#y zHys*#6`uL?^Z$|7R=e%mww||LVBI%UV&B}t|dh4{NXb$TU~>ycWUVb-Tc*==BHQ_#eJc&RAw0gj<3T^C3!r zyovFEKpbxUk#m+61F-VMI%H1EyeT*pyM$^pKFw@N`OJ{*&JH!!VcI0Bt7%!=cIS}e zRq55GOSjMe$)NzLUT=)u!ym+ZtkWV|8&8n64D*ZEE zbi{*HYz!NkLng=v6q@Z?KJd7zaM7*jpa0=I#}Qzg^ML94ajm|Mm;>V$BvXuT8jGS~ zT)yh_(wV7rzvjqivFRPyUluT?cgMkFmWt^cM@C$#+KyGKpzr$!ZqL&m*w);le0W$s z)b@~xTOKN1dHBijSJX7dZ7XJZtUmGll$JDfyv#|ryi8F(3!H?F@0$IDm$mna1&Q~$ zRzxWWJKZTXTOJCuhh+(6-z?pTQ2NDnV3Joq0I1|dt2pr|9LzQk*Pw^Bqr~A747q77 z#<4~kQNSa-heqz%IAQWJ{M}tv2U~B&P4S;Kz(}Y6jOsH?1u@J!OC%%sI9FJ`%){*kNAX`q46UI|VG95wdBPO7VZN9aXW25y^bl$s z-1HG_Hlg|w^I0|)9G*>^kBh~sH47Sbze6wU^YX}%kgo%Fxy|6AFI!qq_wZADB=Aa~ zm#@FMvQs|fVrFBw^le7f-#i6?V}`Dw6jbs4A(PVB2^Tq_^R z`wOdrX~zD>=&f&RYKrYK0if~v82ZK`Q_OM&^oX{!6vI3Q7j3g{)$g+|^ZB``J~rV6 z2D{`?C9?YhGiI|<744jlBih8K)JWLb+(#K>zH=(A$5qjCY4}#jgSrY9Fx5Wl*2FDc z2h0Op8GEbmnZ@+5j*U2dCmx=OqKCexV^8(cAu5({?&YkwF++nwdYY!ik>D0 zLU6_aS>bgG0O{EyPO-4Nu#r|t!25JJ%Z<3E5v9(#HYhr4ZmdCI*u<1`%RESM7p>9{ z#o@0dv1fggVUK*p68z)|Bbo^u?~v0!vOF&R)2hk5fpIx^TT{hh_e@$yrCp}JR!fQd z+U;VV`jugSwV#3Wndo4V3jLEAQ$7xvcjgLD1lgR>%qWvo15>B06;>ylK{-!eR_11; zb!Dhu3wS>elvFVHY3{0Ic7SZrf`Q-40G)4+2Ug0J|Cy|BE2~J!R!9>7F&>PcypuY6> z#az)rOK>ZyXek;$2{2y;`QWD*ac#u$J{qXa^Yv*cnk7gpO`xd@vOMU=*I=>5A6>`0 z)$kSQgkpT_XtT{T0$EGyVFc>M7~U$`?QYGFVG~tS@;cTZYugXyM&x{V$GCd*c286V zyZ9NQ=6^@kyhF2sXdVf(g6Dm*11P3do|N$7t{mdH;yxGv{Np%RkB&|{6JKN&efr7K zL$?Klo_mrwF}nWj!NY`cg_1d*!o=GM=Ug>!6}jvP3r=UtLeUt|{usy;zX7SBwin^1 z!+4DIYiqcwCX^s65+?4sI4wg`omQ3Z zc`y<}q6uF+(9V|AuHSgxY$>#mF_IhT8^=?Ep;fKc%sal30MOojpyx9od zz8q_XVM~bAQhkP>zgM&ycY<3+oWXb=`@`oq2r%@3BEq{ogenuBzB|ZxhGtB?csksC zn2s@NFVG${6u}_dHL9p9(kdelhl(7T#CBDO&Olb{>Dv=>jU%v~e$`7&z>qX2`WfYo zZI0?v2%$B{Kr_D}xhe#Y(~~{w=4S^j-GweS;ioJ0HK%sKi{p&cRde<;xFh$UW^Wow z+Bkg%9Cd?^JRe>*8}?7|X(6)dCjeH)CP?hXGz-(D>`69^6^I+MT|~4Is88{%_z}TMK?_#ue(Z^ZqTRk~$u3J&SL;QVncwhxAmy?cjN|W;OPkWht4YI#4 zoR+MmQdN@fUddh01uv6V<2WMeyNxV>$$RuD%d?mx!F|`PSF-$vudYORaasj9PXvIO z5JC{H%h>2@37u92*)jGyxROpxSSl`8k0U;V6;|a)8)U7o|MV@;W=y(;W;M7SOCprT zD~IR!L6v$4xptAu~$zXVS2o`0^iVbel*>-a@-I7hfk9D2oxv7 zxGy*!#5<`)>ldJ%$z zlkF=nJN6oGSZJeackr>Y=TyB+##eBaq^8x?yc`eg?>prW0U}t^!jOF5?b0l;MJvQ5 zjceOROqIdGI{xro1PEL5!E6jQr}&h_cLXZ@t(ldm&jDyj8&{a6U0WkzO$_?8UW1+FU zL77@AM+8d;JUwK>zpuD3TzX{Avl{5I&NVR5oOHCDoc+qXiqG|ob0c9me^rFPqibb% zs%mpO!fP!`AS{m=bYHU3>ilalxq>T>3w^ekOB>4X{h3V!cdU7oPd(?zr%!oa%Ii>z z@AreBrCVb|@LDR*ck6z#W@pvchS<7@akqt4j{*tSJ7(J8tobV<6c(E^NpP-WM9oNL z#w9k}sLhJ{(w5*L&_7sBsY3vvMl8Eugqm!gfLpu5wrkSS4=oM~s_-F{280Mfw;Efd z7R0|yjHTJVwgn1DHBXnow}r|+C#}&oNwfXI-0`h`*Dxq&YB0Y!ihUC}lWMqCNFRuL zJLudUUjcg;9CMWV$O{rRLSY>*&gD=QT~o8 z<@I|@In)HLe7!q5VJ{o{`~9I?W}r^{R1NF0D!ch6LQ4^E*HKD|?IQEE5iMFlu+I>B z`!vTTJu@qvcrz?pGwaQH{7l<-1*Rx*ch`lzn2G)pg5h$jEqaE6$W%LW0=#u@u4sUu+pjqAp z!3*MBfB0|{R+(rIlu8}(<{S8XXhYcdMqE>r5p*DrK9Y4B>=~IHCLdL{amx~{f^mOR zRUh{iBqYc3ri(F+(IxQ5jM73t`DMU7VEGTupf=99mf4GFF4i$o#A6AXB|h` zI7VX)toa;c)|?TWO}A19!ifp2WJXXI?@)n^?l|N*;mo@dVC!aLN?Z zj6xhE1QnwR5hC9i1;Bm5x@No!zThwl_m1#7uX@6tJf@!I;&W9Yf0m^c61ein>xAuu zW!}Z5;qr6>UiouUMekJ`H=COdqg00j4)Ab6{DPT;p>S@N2A{@^L8fFT>My zv+E6vDkq>)!CvSBqb#EpvnGJi*^hQ+u+;N~KJ*mi_#`r3w?I=_bUp};<*Oec*d z+87<@xg${+bp=V$;(y<~p>lQ$YdW@gEdmLbmMHsp(KAGsOvprw@^rlJbO<~yY z@ABuS+Dq=wL7iR3RTTEx^4C8rYgi}t3{4RpCvMW7o`ocB>bu)D_LeuYM zZ_#t=^Oth(_l2_K&)&U!=;rGfVUz$97|UX@|D!-h13SL^7jggPAHJnQ+Ms$?w(o)Y z;>#CGGm&g&(wXMeLMa1bh(=0-C#b#WrZ1MGvptxPg#IJP(qW3*W~S3lM1zN~D^sT${pT94S7=|WDTzJ&b@Z9Cp``XUoLuue%!zJHSaRbGYw{0e_ns3a9 zafmf7;Tv@OR)QrEzlP)Rwzhx%I6dDZEBpQ1x7j(vgDq0Q*MI>V67@T^;&rqia`1pN zP-T@HS-6xrAo!wz*kBW#Vo}{U)r52g2+UMf$-1T5S)-}S^vZOF@|BRwiD%93 zDrN*ay}Gbyq8fz;{AxDGv-y4Nw}*imw`Oqj*b5+h8PK)d%iEjXIo~De8bKw0%euUC zSUN9&7i6ML0T(x7{PqKt0OQ>p0>=fD9DaBAU^XurYJ|I?ddT!{PNVe92_EX!hE0Fc z7F7a(yB^8ySj5SliPi223!yfl4|U#lpIzD7V0c6im{ww;IiXfkL2%Pepr`5S(g z-rPU=@vJPDCeU#{iT~wE1%coB7??KH)&ipm1B%F4UX3qH*c|eVIrk+nYxgJEk|v&I zw$=HcN1_Wdd+Xw!opICXk^XuNXZveNzvpF&VKXKzMT!hpNP-9L4^i}v_U?|Hw z$Hq#d4vh~MQCN*|gNkL1C31nP#5FH1!OzpnweB53mH#1!)#ftMnfc?X72M1`q}R2L zW!?F7!zX>kAM{0>|C%i}bqUu>u-mmE6wTTV+y9=c^Xd6->y*F``7AE%%+`gU4;o%O zJ=#IXgh**YeiCuJHUSxq`w{+_=+s+39ZjN<5_xZD-%}9gNRwZCOT*0#mF7WV$y|^| zE;BEVZE@!1(Y!mUC0kns`Kd<#%mpQ$_p8XwN{FQP!!~uho;`dpH-|(8kaT-I7V=6l zMH1a7c9LjsZ;5{<{8- zqMjoEXQMOprilaCzUrRhd&}#yvLokGZSv+)el14q3D@z6hxSs-7JKELwHFGo;@>U> zzu4J$#TzsCh&Tp7Q`cLMn0%A-s=dkol3#9CeDHAkfFPd($E0DQ!Z=BLvUh17t0?~U z=}Z7cF|QymX*(cv5>!LQI?Uu>+4na#3}0`TOgM)z^qxI>Vk^dPq9i-8q(8&;i9>nU zH6Jq*ONYVtB3DwEH&52L&x+RDH;s>fXM^L3-RW~aViNWKGYpSh-HaqL z;~(hRgZWOJxzx#yt?DC2=rSGY)aeHK{EaHVeb?ai2;I)&lb0h$5~ru`z~DGfjet(xStLQEYJt5Dp)fzzLb5p7BM9*e1HsO=+q+_eQ+&e*Wv^ zF41Av6;Xm8PNE@p-pWYq-Yc!6qJ+dL_p${6itg>3NnWNlen1X*xx;S)@uquoJrrxQ zE`Lqa%c)G>tpwT*#IxfmmH#2MiMHbdG7~+!5i*D7S;Gf19Cgn( zH(e*;PSU3u$d^z&Vc03H#V&EwZ-DbVV|wB@^gdddc-rPThi zX!W7s9nL`I$@Dy_d1jl6qSuCRe+vmLzW`j(P8;WvbM`v?IzUV}kNnB`AjSgyn4sRw z_Rhj^1CMwaP+(vLZwvk(M`z>6^!~s9&Z$pMNlr@cV&~*8xvSjecBeWK4vXAm!%j)e z8o3$6*eQ3p%W;2ln;3~%*a%~}KN5>!wdH1n+{`vH@0gw6`}_L`5_|9cdcLmbbv>@f zKba5SVYIG**9eQ!n52y>R^3+y;znbzYv03yQogHnNxhk^`&?mu5caI|O*;irKEjxY zow^M=H=0}jI{>RS?2`ZQz|axs%wSC$bQF>gwmls09dMdo;6hGirHpXl!r8s45SB9Hq278dOIxDCwsWl_$=;xt_E;rLs2sv%q&I zYijBQ^L9+PDt6RKq?*7ytE zqL8^@^-z0m&W`_O4nm8j z_-EK>AGlH(8X=W9uz0jSaB{gcM3fPwdCcdGywcT@)#0CCyzDluL1`;a$*pU^C80fqjV6E+&TS79e*oHfQwc+mcKa{5V+H_Za_lRqgS zI`#grOIxF<=NQ8{d+?P{m}f%9R~^l0*OW_O>%(j;htT$M`;LccZlZf$6*XAYSrkJl z;y87%2Y2}3k$8S`JJU~ck-9SvY&bbFs7LSQC~h1cXEud4YzrP zf3U~_`k|q9A7_*jgS-B~=c_L3$E<8JuXSB=x;pH8qji<{Z8e@&pk!XZ;Zr<;zI@O+ z`XD_#VfX$&ZL#Z6^@;e1$Bg%v9y&1J1ks+=27Y`5JHua-d|$N$54ejBd?!80{=Wg- zgkus2d3jr0%h?sD&?|&snR1eM%>2;~C#X!?c$`gI9T38WrQt(1gZO17pOcw2=IZeQ09< z-YIWOK6Dv>z;tPd4*+CAf)k)X1XOIt^pl$_){xR$i?0QA@JZ#W3O!S|Dr*9n*ZheH z_(%Pj!l)PQ&m0(ecK@)pOwOS0TbN$|JbDRNqj>+a!`Av&hmw$(aJR}MS8q9HziJLv zdFfbm;(LacQTnR@^U^a5`aQ1yUdWsDZZ_(@Yj}PmjJD#@yB7s!4tjhy3)GCi&wtl8 zomd1FqjWH(SfF-bzm!kM^z9S3^`UeCpP@>@~UHlfm?^z2yR5i<}&9j*|4y1IQfD zxqvJ>R~pa(;o8?0w92J=XA|3`=1AZVvLq)V-uo#y;t;@G-BpAWvphtTgv7;u3xX_8NfT%{8t^=e#51D6ku`!ffDrcyvU;ar6l};EQGqdO4tmu%{PkL}uES!pXLs|6Nu}%J;!Iwarp%1MS1~ zy5v`9G>TX~JK@?&+L8GUvj(*ey4UHxg)7xx+Ji6IYi;jTMohT#x=K1s8fF5%844ZW z+UN+7nen<}T|i$5XAF8mPFSG=YWf9xqCmQ^Fhe4b`{r2m4L-4s*DCvUoV1lE^lhFC z+`#xZ3%<_o4C9Y%II-A5gdvk}8 z4xb0um(Ju42ZLLfS1ukQp7i$830GPXLW}3uZ5Y8}$l|qGV(o=EJ&-+c6)3JitDS5s zu*4R`N%z4O(m?NwYL({{Un8cJ#x6{@I-IUpwyJ-2*}jXCsUN(7y}@wTb|xxKX5{WX zuY5N@Khf5}M3Au$cySHU+xhVDBpoJ-jxl$vekx-UfHoGzsjfd;xHItZ{cpc4?7dZs z_YG@1YQD1eXe@hdR@@1r5$=#2McshEEbqjgZTtw~kTE$OB14lFzy={8WF^okpug)( z^As2?peG~cD7uqEC?}w8%GhyDcdu0X%0vRAV%iB8kv|c!Z_8e`pA5zr`gd+QAsVJ# z{n84Wl8RhVV(Rx53>7-oAvw|}_0$i%31cOLV7I~vxCp6e_|`Cq5F#0C*;A`fO#ouv z0%6j_$g?vyf-!iDUF)iJ3zJV5L%QCycNk4OjY-uJre+)VJ0e>0(`E{tq~QE*CpQGjCqXi zA2h)f8533)EK!@nrXI1m%7G<$qPJK+1W=7Js`)9Gq@Z6B&2fyar2`=*!8P9u_jKaB zp+_a!@jc~~ES{>+u$RTC2IW_~{mL$Lyp1sNw63w_r;hz+_}CYLYI1_@q=^qQ$A^7{ z$7|;psVzlSrx$~%1R31mNVf0pD0`KoqN8oNu`(MKVo>;X`~J2r@`ScLaXc;5BM+I| zKIyggWxXMe{4x+Mo0SFe2@B$jKq*R)&Lt#DegP)MKbe5Zim0~|rADDzML2fvw^D0t z-Rudi?89|7wY9igS17N|nthb?w-(SJLdFfOFAYzVu$GI25oBT_^|c$2p4r5_%?b32C}qOzeU}?@zQV z{vctcJE}c7Yfkm9u522TWh|mYM&;^+m0gviRKgNXcx>02G+Iac zYT--OFQtxTRy|xhRO4zj=Ct`OdUk{#yRowoX04-R>l7>Q;7l)eQkoq0Da;SwNGGo| zjmdxo!DT|CiulMu6{!7BsMRTSdC(x<&h?mp-ur%U;>$CwqQ!MEVtu@MZk9rP#YUtL z=4jk>`V8|(ub(U%-H-t(%I)_R=g=^_`{(!$0^6IPa*{;|ECsTbS zj7fDeJ5|haeABYgvfR0E?%5f)TkJ+PyWdbw^)30ZXy5v&!;mJD{U|LtYPoke9<&Kc zi!B9pA`gLYF4zRz4^^!b$tC_ zFLHI)O#@<%SH#j{@Q@G3(Wg@+q2KyR=UkoEc#dn%7-Bkvai2kl&b5}E1g;bD(JUKt zFCa4l$qt_{eAM;xs_)tTf*Qec>c;xgm`OUva+sgiD88146Q7IcEEvk#&DGkRLA*i_ z`uqiKIQlb}+S=32r(rLa;QBk0W^wuvldYX)wWd*5`d#v!?$3c=S=TH>s}P0BmQqox z6CCtnd_36av4a%+K?d{!G9_jz({{b!z%=M{)KKY01Y+bar(aD==$XESR&_Stu+oit zfh%_{nDv_4`gbX%*H^#gv}wF%N9XCnrWvo(lWnnwDNpNWqb9rD&vjw~iE$>hR!=(x z4IeM~X6JaK4=+Ibbbd*>QRFulCZaqE(!5kCJg@?OC#mH>;Y5SKO`1U1v)s`~bE@}0 zC`{4J7xpkmmv5?R#u^^`gjTbnk8gqIsFOgDiVN!bs?d6*pyGJuq1INGhwGOv19tIJ=%88DB`0$<4lP7q6!J3*2t z#ZUTbwF4*SzETYpaeoFXm=Wagmzi)dy(9TqmuBxyY*!lGdPxCb zXB7COo6Fa~2^I!+t!91_n)Q@FvC$mIUt1t6;`m_kVTD;bwqswtFBkutU^$_>{k4$a z=VW**8No4BhGrS-P*v3jOcjb!`W$t^0VBxQfQ5C}U?v2QEro_4wy613$3_1y4V1^3 zb}ssev?7ltnxEx2%YjjAb?kfIH_2TZL=XcuODof^2}H|-$fNP{=tAY>@|PSOLsT`k z1^HCoJ9RTK{uq5~xus1|oomo3X#K4PJZGBbnLLu=lw_x0If;=Jyj6KGd24W?AOP7WAPo-q92CU}4702pp9i|=q6jk8fY*!9K7oy-iI}A7EHz3Y z9GT2Fc>hqTAbNpW?pU@oGi{VkYiMXF-bNSjhl1Mmcg`>~G-ha2ogSD^4KKKp5V^gV zf#jr1PDB#|3=gjnj?r$DFmZFxPkXjNifN5hYJ_U|yhhBa*%QI@lF`DwORVl03&B82 zJ-SP!xhzii)`U#!6DyT)>*<#A@XAlpDcTODw|n%pHMI)riaf(hOG#SfXt-#)IcBr( zZlL4ObE{V~0tdnpqw~+}7G$bL$#2x?*dD#r6qfTC^Of)%M7@t%*1+>`-UA@~{#>F43I8vQ_L8|anPH@C;&(HpS;OGI>Mh|-g#%3WqcFdLib4m#c98&>i-#G-kN^+VL2$Mz*j%7Mp|296@zB zPC~&dW+N`R%@j4_kPFAlYEM#k`m9lvpSkX;Abr}zo|tuSv}5V$C~wIy->~=$rj)eU z6MC~wWp&ju1S8%nz57$=Yqg`s4Rj7-6;1&j$d(4WDI%r?u z@%Mh&q3p`P=Z1dvKlboFT?75}#LVqXy?l&_-d?^Mad&zO@-7!?fF_rg?Z+={*=fYv zDXp=}2gwi?`OXk15`nPugUe9%U61rRR$r7?7o)YuVlBEXsJ9i9QLku~GJLcCpydT! z<->p1oiEY$KN7k4|38m84c@t~@hpb>KH-^=FP8K4X2BT)3%`$5POfi|y41k;D0Vx! za6g@BUyHv{H)4r7s_ zE^xH|gM!r0tAp=+$BQ!DNLoeVi;D>lmkN8ewHipO2D?@9tv4=4MZ6UZSYag#5e!Hn z$SIPq0vVasJkW!9pFT&<9!G^8Iw5;w(D%(iG@n(m)qns0s2c2xdp`XA2f^emYo2=U)A_qZ%}!SD1%q!3b*-XX{$8pPsbVsIyDo*(10i@8_-V z7L(RFB}cr%87g^@kd3DnX9AvgtER}`XU3|jFSvuC+5qov#Xadvj#>UR)$!HIzlJ;1 z+p}{stBa|HPBAO3i~HVFkW++y(C9C4%1SPD;S5J+yp3-0$m)nu9XV-n`fl4$U*(dk zTjN>|)dh_#WQ=V~{&902AKPvzgN1C`ee=M}>^a^Bci}yMeskPg-im?FBeBJe6jxrYd@H~ zb53A4@!x?-R{HbikD*&Q(h`2{f9K0)Hi*E)=_1p6 zrOxN_2|U>V^FRH2Wp$qZxY6+U&6`=2)=MsAh0~q&5B@t)S9&6`&?4hq7-{j*DCL^=k-EEpfD!}4drH&XHiu}jD@a$uS;rtb2n{5#s50e+g*EfRXe5-j{5 zgxq0S=Wu?v+J6UX@K24LXH&MnNpqIExaEGoEL$Cqc}hDTy?P;zZll^=7a5P<{ro{P-n{V8yky!9U6##xjlk(O+QAwbt!B|0-Dz@k$mNN28SvMCNB% z+&m>aUAz3Z^T|id*&1LhHb{E+qXZ6}BO~R+2m!epLM8DNY&6l5AB5E;p=ZyoU2*_8 zQ`Q1#--E7&-R)0XQO|=c?zQZIi>tt|KO;>R5bu!dJ@fO|1E2pC^L0V{+W#`#>MU;M z-`3R*IA=V;o1OM#&T!f<704-;_{v=(9!RU|`MF&)p&hik;_k{AKmKIRrf5e*sguwC76n^N-ATzjC(bL*PKNCkje^_aO+#LuS!&nlPd@Paf zUD@>Fkm~8<8CI(^rRKMSF4Z}2E-p5OdD7~)sO)v-H|W@Z2SE9Xxu=G=5PBv=FiuOx z=+f&UTMz|r7zvKr1%!I-x66BWcTx^nWD6)36ESh`l?T&kmLbt#!0+4bhQ>Rg(PvKY z+{KHqC=O#eMJ9TflFkRQ$F8gh!rsRWel z0bH76rl}0VdAv&z=_qt`o2cJdPbS_M%Kmu0VMU}9Tf?KZwoPrzoF81zD7@rjcTg|i zIh4I`_@XO|jE>$-yfC@=qDGTBL-FWrtDh~U&q=LkgR`dkejyz*yl;06up|L=m{30{ zuc$;#6-eOf(vPevFBKoWQXC(u*)M* zUEcCn`9SA_9Msp+g;?F0p=qt$*84O@+XFn33q3FkBjeWk!F09n;|Ijo;2&ihM18ei z3sO)p&Eb5Kx#rnUp_qmDW5V@J=kMsHhv=TY)VCN@I~UrPp?%G;`)=dp!a0xpGiqur zTJ?cFCh8VVHCK&_YLuK$q~d+W?w?jx>WaLKX~Ve6EGj z4orPxuS&ctHEq9&yT6^=I45~K`hcGupx^;KR2(s!c9b<7IU_ees+3rQJoRwhJN}&8 zNYnPY??7j11A7D+8(*HMdRiVH_lH8@&#$?(}ZIya^ zufVfX;(u9L;y8@s?{IlR(vF!&_kI(eUn`2FV`Mtp%!V`@ch9lPq*q7fPeV>PXa2M~ z8c_k4yP1}E-Zif+mvCrhRC(?6QwQVIHc!u1y@bgp^tsoaV^unn9OV5N=C(xT4_SH@ zWRvrhFAM0)_Uz>aJMk%qR=~1 zkGNUMWvYTvGFGtD6JwZ$zg7n%_v6jErO*M>lf71+u~_7Z>#yuWYkg}3IO#&Kz=&wRzBc+{I9Q(#dw{DubZTqu3W=ZY`OeUYt(K8vpP+JRR8+f z)xos+W*YicBxuHuM#VGi?iV3z7}|`Cedka~Y`o&B@gGeK&&2piH9*xWYhEs8{y6`A z@Zbs~WLO;7B%O2Q${{uD=2`I$@lWIR&nj-_8{bvwQ)X*fF@_;)k|PRHO&?3jYzZ}M z*ZwTv?{38Z9}e($$yqPFhQKZ(UegD~VzY75Z^1M0>Fky9X}<~VKVk@X8U`;I7RY&&{s#ub*=#6gXK<3jBx z(ECVs5L5|QI5%1$D3=`B7T)UJiHsp7O%4uZrHeo|)rdlxVP%`}e*R02BiF~7(_N@` z(jNo6-uWTKc;pg5n^8j^@g?;qw^nFh-dOq6ZBe3vq~?r|rLA!P3@c&DK3h^;hsnhe4EqNRrSo7%pKtD_ z7Z{0fU)_+mD>X-kkGMJ?+51*!i2ERb@xUzpoI)Z!fN=)6C5i+Lg;{?H=)L<6u{^tl zfc0;cct1g6Y90P2Fj%!}qr}3h`lzvI|B!O|z~AEOjx^IKQ#D!cO|+(>bs4+Li?#4- zDTAQLrJ4oYeInt{#q-W4b=U1U{qZ~##Tm0^dbv&+LeXV#Dfm_)wXW!HT&a}H%L&(t zFSZ|DPqXNW3 z61&ueY}|aWli+ynooGxHmvDIPme@kT9e;54sfv$dw*_gjtr6_>whyf~OFDP`YW;VP zL&W5Fa(v*>v{@aewJe3{@oGVF;3B@U@Dj|U%`ZR!V;H;QU%eX`|5bc$zottb4+D^b zUkQFTE2XCFJ*T)>~wzicqx?k_oxvDjbb$>Zn=_Nox^wh6klF@HgmzTpa|bc zIbA-g%~P54lBnS$S@?@{$RB_;u3Nm4@Nh9PuuO?XLlZ%Il|qWxow%}VT(p#1CAJfI zJR=6q7-FFPQOb`5OEnd@yCd0-fxJ-VRUOM`B|2{Izq;7E6g{kUuF+dK*Lg-$Nn7dq z%&5NcZl%)sv50AH;|h%xx2#L}vBkm;&5#%aj%6he`H21_^Z^K^_3Vd80iK|!of%gz zwib}eLFXg)ys&>c8Lz%zcnVa-*l_A1RXp@k)zTYCZLo`bc{`B3lg6HPFTOTjHAaQX z!K}B3Fn*)Mm+DWu9CL=~*PJ(A^T0j3iLG(X(>_PkyehA0=y%>?%A!oI3 zKJ=e$=Pm=D>*MFI+JlO7=$z2B@h3Vb#PWB*2InhWYu^>T`g62J;S;J8@_L7$p;2%52P(5cUPG|e zx&!w~N!yaS`rmbS*|&BXvbglv8F`F!zjP~T$5|AW-VO$3w+;8?z;|kA zL3#7jqo+Ph6&~213HtHH+2=nUIQsnD&5Hv9&K>*dot7d3 zGF$v3p&Ml!@-$v|znPB8I=%`~u=1(EOQ+96Q?S1aMC4lW?-TJ#D2v3dp9MBq0S&7b zk&m%_S@6UBq_A7kXs;fq?Mg-dJbgXn0V^gWMBC)|&*kV&A0COc81ii+($#ycCcxQ> z#_$~0sw$mglT3qWqc@lPU}xevY>4>e!rTL-^fp;_t-ML9yZopa23!>OKvT+o6}Dsv zW*vZM^I2^5K{cZ?kZ+ap<;@3AZ;;}V6n_D)m;T#?iO<>P>u;C_l^=MCG5sm2m9>dQ zV3|;{^Pc`xYs=alhb_rD-%3=6c9Xp>mYUxl6#p-peh3sa5Olz_cflr0$mzA1O$5y| zWCfhxf>aObpvwfyb)phbB?7rzyC-*OIczo<8E`u3yvdJ0i*Aq4^KUV2cYsgB{Lsrh z^b{*{+HA~V?`z>~&9jW9@A)^(lo0EkxAtSSnc=haxo0!yUIU;|aClMj0V;d!;w(}O z1+4e{#UScmZrHjP_ZTBJ069s~Z9CPcq!pWW24(i}32kfk=N~fCgujqbnqw`Kl6b@x z@@$Z~jh9)}WuMm04b}>F^%>|v6aTC-Fov5I)e88T!S^Pp#sIhrI`p9ph3wFI)(p?4GkGmi^bZ-ncV;KgnU-rp|iz`0b*G_+28NVFXs?$~1)k(PC zP>gIW;e4?tootGXnO@~^?6C30kev9VxxG$%y7AKl8QKr?FkYOIE1FfaNvFCe;c3l{_IR%y7=D#xlg{M?gh;WP2QvLh9Y_G zvHVTHx@fz)W_XZ@N!*Sxn_=02g5l${;s*j&&$N-~(Kxj{4JvDM%Da0WBDIRH2iOaU z)(P4bq7SO;ER%2Sr0eiOtTZ1NGk=a8F=FJ>+48z<=yV`YbMhwQHfcg}Uh~{Udgkpb zm)AzeV|-R(wOe+acx%k71`+owuM$0#NOu%;W1ZcjHJdypJ3eWB;>VB^tRQ>gApRZd z4@>Sc7wXfWh)>kx)dfUJa~#*P&A)YWU83M9lwFXgCoh$uF*bn<6J(kRnmZEgub}2S z?K_JqEF6! zNfkncM1+?zbvb!`3n44J!rpjh@_xso(QCiq_Veak;+s7k9ZTJ64uJi-&GrbI#*55r zwUyJV&VH|a-^r=|?rEC~L~~kdeSBF^c@THs3q3`+djvXH=BoufS|B9*LV#{z$inrM zK8PIdzN&7Iueva*yVT1H!Ce;k0i%Q0_Rh4HsfNf564%gNOTsDCt{m`mcECbIrK-t- zat5otUi*${TdDZ6gEN9=t1QokAQ`Z+YiPT6} z&nQR#2ocNi>-JLhG6Z$p3vQHR^kvVRdd9ELNgr~lYc^&NDRKcCg{*l(k}>%)q!qT# z*t5q$29#mR8~liJw&ei*06uDte+=QhQo!n_z!ZRn9fv~aamus`42+iC8nh5qqEPdh zhZU$Sxq)SSu;tLWuLxxu(~UZ^`uRa?{y5!?9Yc*ZYYP@GmU!yh6XcF)Iy=o47mRGa zX~_#QjKx*uXT4>x>Ale7TeAwdggKb_Qhe&3r8p>M@Mj>IF#ulkn@kAD0lRsRtT@%( zVcC=|h$1^kaz-GVB6cy$eu>llJw#FK5f`mUqS>&UW>C8c=;T_{Z5k$4W4wcH?H3ob zO%FIPUF2OL(Ol4)e&wWpcNOmOGJmoKC?I!7 zWeSVA_8U+r*rq9oe6$ghTgFU(rhdF$Alx)1;O8+)ap0W^p7`GeEaC9Sl^8uWE9N2< zYfSRj9EsIxXm4pK%_r|zYI*C}zN(cnC7Sna!FOJa=PtS0_xFc;4Vl$b#y(~Z#+wPz zI3wTvf-VgJ>Mls`c#by~DD)stesrusf!84Ly+Z^JdI@Bom|$YNZB$=RZt;u;W87v8 zf$-=!Q{r>9Cwrr~8duzZTK$iS`san7kC#16&R?x^^Is>y9BsVzE)RIxuV@t-by9O< zifj{Ke#k$XMzNtfxzRPAFJEJ~F-!CVJc?^&G#c_M0~9F?eu(5qs1OM@9zs8+i*SP3 zx8!tX1#lAQYWEnXAdgYk>QoZJ1qYUJ1cz`QyVoT2OsT$YVl8zuZ)MY7Zst>W2tlrR z+7!{DZO>^a4oeK)-*A6lXgfaJS~2K)w3y<<6=@XZpfG%WgLV?X9r}A^-eYSVe>HZS zH@N*}D)Ij>LllyhPL=(1pd{mrUjxk98n$pffyLaFfQElQaBfE|pCD@9e`*yg4Dbe` z=E^^v>?iyfudq5ROVfLe13OD9Ug5)8*#8bFezlOThK3ZVb^gh`pRhk(^$gcTEcUWjnI7Mw92cv* zY-?}5+-IQf^8yq*qFa?7P{wDC#x|gHtCzP`c$Q9r!S&3D5ORom<5QL!kan*~w6V$6 zU&mnH;m}UWQvn6Pr@qgMc=osHm(70*CKm2}r%^m7|2x3>x7C(KDQ*#uJ#1RT@YjIy zv8;9E-tUresLEL&HDJ#^{vCUH9XwbLuf;?bSFW@dri;xMFlPOct&xzRa+fjuHEx{U zt+8!IeWJ`E`rY=N%SV6Qv~-qJdv-GqHBgx|Nm(E*1S3qhJ)&B&!i(8g+-|0W8AMN% zX5^Q8l6I^n=-a6A1UP$#f{qg~hN&KyBfnGM2uprMnttTyD3^Zz(DRGE+HK-#{x3gX zc&(%nb>2rjRH;SaUCwKHm=m)`bOSjny|t4iO!SeYT+|GB@-tmG`MZ_7QjbzI%^B~E zzT%|5Ez`9>d$#FIkl^G2)`M`bff7I1I24{ItP%gUd|-3)7e&tC=ns2u4_}@OyTrNi z`5`IaHcyja*!f9c%-h*jzGd$eMPPm3ftu>^H!5gCz`h`GcChSx&Tn^bW@^}|PyP~s zi1twI;cYJ1k8YJpK1lArZxh5%@GF;NSAYoXmxI$pY$Z{xkjnC%Hg4m@_c!0L@)H&u zIpjhXYqi|!x%Lk34-V`}xV=MJZ=R@y2P;*2-MevY!^^)lyWr@%+eu)>UMz8X>kAy5 z%f&+j*U6ye$ai-7{Zx6>)<%3@%DZi)!ElaXcZcD9ric$Vh(qg2;%i2bRAZiOH!L;y zRTEDT*|}F3(D#P9bT{!;Tlc|&6E`0Igjc_K)bmRzsY>I&1Dl@Tw^zRXBnD;kQ-rN5 zf(=rdF!x-|bU(p_@mRs)c+#BAtsVj--Vmq29qdz;9>^r4V&2cF6)g|qYz_-GDcONt z%0iPQ9*^1wTfoUC^Rr58KKr09yrD7MHlKXxo2;{?m6*RYbM{_6U0-P?{SCaYg)L@0 zpEjK!9jV={1|Ab1=qul@w^+^#y_tDC*4!<0lAT7HG7RZN{$|3v&juktHy^@2MC^W<^8mM6tnbP> z(|4k6%9qJ7?-OYrn+gW4Vha#Xe^sZ~=w!m)+qh&;Yv}Z#`CGp8ENlCFT(8MZ;kMLn z49GK&`7JZ{!9vECRC$G(Sn^M0>oz!GDz{JVqL(Koyyqe>tJ>rh@LAVR+tac$u!^sK zC`ohr?rq{T_Gn(^7PjWKOJVBNO{1L9zrp>N)tTk$BmJ;v)tN110@PqI8Q1cu!B`(Y z`)3FRZl#xz-R0q`uKu80{o&`j%&H&Fxn30BqNmZi-0>^-;>gzhU zi5*5);$+^qBlW9oLnBV#81C!(-L>Xjrd5^k<{xeg{#eb(4T)}~kMY-#_f>^PQ7yy4 zox5wbYeg~z9koGg^)twzNV@;)oWZ?IDy+D(iyNArh}s7k=bU)2eivRbEBSZKyRm4- z6M?Galuv(YqVi*7*%3=KGd}yrX3rOl?t_FAD658gOD0nt@%Rs7O&{=(}0`pPlpkW?Hy$*jw%FMT+YVE#**7(Hd_TfD`PZb zHJ<-e(Jyr|S~Gj{#Hr?=&56|@MP$3e-mIykv!03(QBx_IA+|#OJd2tXY^EWSd4Djs zHn2Uvy6(<}^NNZM>sn<}@0wnJ`jz|W>t_lRv{ppU;y&LiEehStXKhc-J_DW2I-rEF zxt~t(-?!L=rIoAVA*XBoUpc-Q;u551ugx<~8j$?;LW7j??D%ZG4=XH-2TgXTUleuD zl&dE7YIbt2S=I+=KdCA|Uuc}$oDsLwjz$x|i;QPtg~jL;4n4!}Ew5_M%l|@QJ1E!n3V$#cMUsXbg!8pL*7Mq2BPynvrYF+6cw(S-10 zLqZK_xWTmiPJREdzx0J)Lad&dgXIfF3s6Me`tt$Z;NeU=9+`)e2`UUa|+;#5`lc}1Z-Af z{0|@MowL!^fYeo?YC!@CSGcF{BUmi@^mSL0|AdNd6pT=G?i^i_3lv!_0DmiKO>UF! zTpL)@@g$|ZsvD>jZE-R$bL=Xgrj4K#(48hRqH*dmgR>=Hr}AG;PTvp)nCGB>}m17NfByn{& zvGDwE#QdN)ow3+SH@`7zMu2VjVc367PK2Ce9|9z8v$`#A3O3GRy5XVj9|G z^Gj1po=HLOOCalanq++3z+}hC4>`5~`4l6mMPU<`mz~V7Ucfgt?}R7}w=f*Lc!4{t z4>jA-+y$Kp_s$WdW^w1|f>e8r@$sSQD0`JzYODD4+5oa;G@EOfOi-B<20xku!REf+ ztC2f4|0@{mHI*0$|8O;q+~q%|8HEH~YN_!H44`~iW_~$sandm?mHSD1l1#l}S^Mq< z+%3=h#e()>F1E6{8E%?C&-A<@ob*2Wib)(f#8;YpT$JwVnW4M{H_b&C=X2^{?+xRP zBy2S)AUhU z4eLv}f9zduF55&m)N7$Lx?#mq;N`b^;`t2Zq(^QjYQUwiDFogb^iqAtrK(!L zOWw!t*gMFRGl#$4{q<-zeqvdXRip9B7FKkr_02ZC%YPmzYXzEW>?9LHg)|9dSb)6U z*jdK9DTF17)%*nCaAl)Wh?nc}r-Q(gAwoq76CXkejBIaBpGN0DYD`BAacoeyIE(Q$}~_LIF=xiR3ZTlmW1BJ)O_{+?#zjvYu>HJZuG%h}uV z!r#ViejSb`ql{((*)5Oe9Z}_1CZ;WT)|xukef6E4e7>WbJH~gnJPQ z6JwP>U$@DfZ!^g}=o@R7`G8Apq6_d3?sATuzxyXs>2jUdr>I#Ug<ciSk;<>pFOU3QOb_3Ex}Ql1&H^`lA^{NoQhWoDCI_`f&Oj!fkKui|gp(_FSA|iD zRL2fv%Zgx4Ij~GLj=MUR73T7?Rw-_9PxTVoewQ+-VZg}wYEpBxV<%xDV-Q;k6yLF79`?IDlG z>9v^c#pL1;&G+wLa|TV`8IPYhbEo8y8{3DnrK$ThH+Mb%Q_Y?E^5d)Rhivr5#aCVg z*_%6dhv!5o)y=6uRc|ZK%e+rbtb zA)0lZ#q^AwYS9ojsD1sy%nX3pPM4M*ekqp|JX}+d8HJ3lBwp@z+lh{DgS)2Zx1BK@fPFaJ4E2{LZ3(h?iQm}tU6QJ;oLF_dr~&U z+uqaHK*Qr}gX@X^lGNyju+)Zl>$~`y}YT(tY>bh1b9t1F0W0Dl&TKCeOsh z!^4P9cZ2Hou+AoDiMVejiY?!%h41`7Yo-i0m#{2{8{5jvApbBag3B4;FnwXeHSvoe zPlJEe-Q3?WGLlAAY_QGQeKjaKGQ5X?gJ7neBr@nh%1W5|0YE^KPBZ${&RCG2*!=Rf zOKakua5mM-rF#1I%Fh7g7T`CJuJxP5+x&vELMSG0^eCAb7vT+NY;-RZTq~0^;ps8U@dsYf{w&%a448+V$%Ja96(DbE$vQhuI3HWzlx$$Nl$`&Nb!ml3{Oa>vRh+CZ_{jd9>Ef>6yIy>y7uI$g4Nr*o9q4+ zUfjkvaKNG=-|?Ni{F&c>b?FJx*U=qtvb0H`LvmE!A|YEyK(p{K3NkgueYuw`Ct(Q1 zS~_!e0f^e_t zpi3ofm4|s>$RpVJ&X%q$XNKp}NSjMueQwK2U{Tcg&R5De>jV+Fgn0Z!Y`agfQ4m`K zzs~az{qYcBQt)`ECpYN714^X1u`R-3FgcT4a;D}m|O?%upYa5v(6bd6ZY8o z;g=m(`uU=wT-55UVf#jYRUF4}?+nljW_AYlKsK1t6>vYQ@p&O}K(5jH(p;Fr?X7Y*?zcOYkBMXh;5gd%| zCEst&s7>mNAkNGTbPkqP2s-qg+en~^$cPNIx(Zmy)HuRmnYw_Uf-Q!e00!r>`u6rs ztsUo)X|&^PNv8^U6e)pB+nj-g1;X2`pM#fq%J1=qH#cB}McX;Lq*!^GUh> zAzqUK4pq{)*8cdDW5My0l`@clDF{dH6zEsOULn+W&zJvzE4IgN;Gy$%(tCC2Z>sOX z{*2k)&>BR9t>@T^M*beYoV!-h?{QSlS^r&eNP#npX_^qyHkuvF4rX1UiJp%gE6FL=dt zMk6hH-S^+scDpCrNLf@7Aw}KJA}?~J8ZRx_{vr&zy8pBpTkB1H=Vg*at%8rmXwy2E zD_znFag+49g4K7;8CB!CR45h^9WuqX7Ok<6Jm@^VS6_D?xjraV5Z#MAdwUD1B0egF zb^Aw?>StlpW)}WP++0WWe+S0+yp4RlsU`D@g3sNdC$HvoYg{^iqsWKC(xdvquxsFv zbl+JHLywATMuWOmT{L7QMSK!5P<9IJxjhdC9l)>)_tqTjli31mJ#>!1zQ5DE!>aYG z!k?Qm1oa|CYpj*52QsA!zj3hn0%bco#lfe$s@cC-Y z{krIeAX7GWda8!I_Y>ug9;e>{tT?bY&J8wTlhg`ZeL_}?E}%>8X4^f-SM=4|%^KDa z@F|ObKjfYo%EwtTIfsBt;ygI z`3(DXkULu0fbNpsCxY8*OWUbmKajRn&QYO{3(Z&sY^kSsb)l5~^dqr8a&M$a1EQHg2%iw4SV$hL++{KQLLfxhKb}u5S6B*vWUH);0OI`=x zzWmf{1qx|mLjj0}lc6vm=*V5!44Neo$RRv}sM7AYmgxv)8phVjE(@^$ zn0cahIvf7%6<7ej-k+S0@kfV;$PnqHV~mI8YckHty;Lh($kE0(DaxKnmxtgN^WC-O zJ)9rnNoXZqIH;(k3WmY&u8l(fgPyIX^+BtGYX!{OCy)F5&b!vRxc80syi0p2_*-BuakLW!-XjMhOMgBOxFM(~p#Rbij zDxLwR=|?fQhuba)Iy&bJGEE^B5VY8=S!tJ-j2r|?_zaX(4pjASS*plPS*x{f6Nv?#@qSUrYHh`w_QM}p zUWO~Y$2|{e%irF)C%nKHaW*lQpu?V-s_#oAr0yI}?DFHwz+f(94z!4l)9Qix?1E%-u zgSSIRTydA|F7A7}%taaB%xD|A;mb8n#zA!pA{+2aimP7xSK=q^_(>oCJJbMbM<$kv zwH;rQU9D}q!3*jorTQ9!(*V1KxwucTG}HVgex>R26TsLQp>TxPU0a9*Qdrt!l$rXC zZ(s^??+}qg_vy34<&~NJ`TYU2^~K`nNZ@dTONroFY0VyaYs7H%GV!6o`BE#7ok- zKjY><;}J;sRUHD}P+47Bx}<8bUpfXw*{42?KJHWqltu-vg6OL(>OxwznbwE_)r9~` zE@fipL<#%e0@V)4X%sl|CC2ce-1Mhekjymvd@mpA&d-0=ranZ36(E7|2Ki}pzVkRa z?uy08ukRULUF2z|fZBZ)7B-D`9OA6KN0u+qgN@VF)tWchd0HxzdGP1Yu5pe(^oGOw zt0SbWzy;pRz{VxWP<7q%vnkhyJms9%Y$h_~D=&~{Kxe_c`Z-o{HJkL5a*`&2j_UQ5 zZ=`1TvL$MD#qE7=%AT&>yrY5KM$5jpp+i>@$p$UaOwL*I<5|h zhm#wrbaWfTZDi8Br$+U*O)U~m+fLw@d|vEV zVRVTUgNzlLvERN9?(C<7?=pm-npZWolvI;x7o~rub)wZR`U`;(4U=!DjL?nQilXc- z_Yoa)Pg&drXUm*GwdQ&_w*2Z8k<}q$ zxD?oGD#}lSW8XsgHO6aIzvPcc@vSQX*#5r3zNR}ZYrT5pYuq_mb2Kgr8@ z1;=VC73FBzJGPc~qNg8?IMjdN@kR=zHwJbz`Bte956Tw>Ci_lIjE8{1Q{{XsJuF0V zN`J!q2Eb5)0C*|7_F&u2wSNwXq@Rto5Tr)U0e&I;jy*0GDbD>Cqms!%>k?kV|E#O5 z&ov+{*b!ytL!)S{1HFb`$uh%+DJO^Af~@7jX=EU2k`ewRTedW1Mmfavm%q)sUveP7 zOhIvZ^RDiN@%eaXhj}cp3(~}s zeU;EV_Q%m>h}cS`3P@{YN0R^i`1w^UD{-^0338{>0qMiP&POz?`xMsgB9N6s^K4<) z@<4v>Euyh;6Y@YrD?7-+w*PE?Sp@KUPsZO^Q8*(A-;YF>&*`Lzt_g4Q{9!b)w#!0A zzT1;^U?o2N+vN}ZUlbGs>9Yt=pDSH?fBP)UH2LHwMWma{+l#I%;Mx`@?LQQ^Vob}g zn%TH5gl1I*;kD>Zwp`ynDi&q+a5AW9X>_mSZB6-V&ci8G_5vAVB69xL=(^h+>1v*I z@Kg_grEyx~RXl3`Wkm_EdPwxmC;wuup8x2+X!G=Y@u8EK<@sc~d>gD=OuwuI0E`$-r`&+4FJdmq<=~YENDy$1%*TMX&eH9WuM#>$y7* z|NmO})n=bZ6cwaKypzg}9bi<-TASZ|PIv^uMee5(0D8+a?coX){ne zZPd5M+y(}i=Co0(IghZNl__%3))Gd|Z8!dPv0(lJy3`e&x%P1(Jj||@;MKwL_lmkP zAYMN(V`JSo>AJu!X%z}HLr#0=>`?1dd;t5M-mU_D|5CpaKdIa8?wkc8>aJ2*P-?g! z7OecW#^$N3&iwODZCR;g%o6q0O?SO@26l_@0W9-VNe@CZr#pd1))%s|;S;AndT^QD z8~&H^=2NT6@S+Ukn3%Z+MvNX(^;@V1b1w#E4nL?8VV}?>4aG!iw6lL3O${pKMtn~> zJ##NjO1`D>;!ihTd<%X$Qn(9KqCTf=r;5nONHL1DnW7x*6-6@SiO__9r=5MsR2+pp z{c5fmoXnKT6kY5yTkSBjauh^YqX`hc!4sV{bKfF>@6vKyB85^cyXGt!Y2xc7ZKWTT zyQSR{SbMdufZ#|}R_2-|ndu2XYlKCtHuY)gOh#n1Y`}7YsZnCdX)4@`=(%H?h&luX zM|v|>I`yxTozX>()<=2k%QxBYuPFMq!X{}0U;*}qp8^p91V3#I7dTMYj~f5ftK|PT zNMRaSmuuKrP1*n6E{y(eXtcG&CdnJVR?Pe68kW^tlzlnlpnd4#mG9Rl+itzK_CUoW z!||E95d54YRf2L5sZV?-BlhJ|32m{>tag5c|RJ!C*U! z>Wwp{PQohq$Xv+U>XUb!P`M{!pv?P^vBm`C7mA$jI`(DHimZH-m2UUpKiHbTUGTQK z?VrZq{L>#_Yk#YWB1~Zn|G4D$<;2Gv_9Kb+0D_LF9DtI4AHUmt(UM_wly16;vn zvYh6_Vn6p>2Y=}GzN?mBa9_VsFaG-g`?29;jo5n#FGIbxqf z-isxhY5{Glf&koW4jipaq4+HLtk8_|g-iZwYCwd`N^W`r*#xePb;_}Y;Ug@ZcIlBF z{Lz;LE1VZhpXxXXR(dyScN%sQLR%BjDkOOuH3uyB37qDZYsm7zKoinSagg1;E&z6= zfbnG(pQ@Tan>*AEno!*dc{&}`$_I6+ZMSp0^$$1Ah4o1?7=#$OUv@zjNN= zKD?{#;(G?gD^^^AF9h*6y%>7pDkj?2_GHRJ17TX==+?Hvnv5*oo+$kArA%G>?ogh_ zMp3!u05(h<7df3vw_!{afmQ)=?~#86eLQJKSDOM&z^D|BD4gbHJ{Q`SLuE=8P{lBi zEPCCm!RO9>9;1tN5}jzLztT+&TtGC$WC9bW>Fg-Z{D}WZEudso{R=6-{@nxK5&MntDk?MN?l|2qW8 zq{(`Wgf-+kV!g$LlX(`XlD^>R^HiRQ0w@MV@?S6p)zCfV+{FwfUUyGfCA2AelvW=> zD4So}OM6$h2>onZ%BG2auH^!x=q5@-;@ZvUies}&CafEkBLy}FzT5Oxu5`AWTN5(D;xGU#3ejAx1hM&Kb%WtPqr2^V0F1Y=JG1EVr~5 zSv)K5N}rW3n***g8$myd(P^VJ{0j+%I`W}k^QCPrZMsSe1%|}zuarl|cuv0hTuW<7 ztNx&8AqLTB#ljy6Bvm z{(7W>^)k$p`=)NMCWtVl5SmNWqwv4q&c?eoj z^0L9@<02KPr$tM-U4CbI7wh5|@`Or71?)X4Rjn6BWSI`=#RBsh#&I32vEJR?`pz5C7Wz;PF<~2x z6B~5YPdB_>q$9l^C0SBvJ-ruUKEz|J`p5C%oS+x{2K<2D)t99B!5GGq7HjOj59Syj^t1(` zf{O}`;*q-9XTD9pMTc=}euhcM8}lUoa$O#W>Yz+a6wiMLE_Z3GRhIH_)`Gl^-2RCX zy(QOdyiI7%obawi@2hAV?Gf;pCM->D-cTq}-#uG3UjB@5Q3Hj)cstj%xY17)J>Xl# zbRDKv?=^RpivM@$Pl*&}LvfYxjv!!GQ4V97vglme<%&H@gF+Dtf~u=~J{{>nUJP^1 zK44qlxrg6L|0df4>~51y)nBc?d6#50N?hDO(rxJ?7aBSNinh&d#nAV+gvUuw${ihv zvRQ8{iW)DsRy2`NmheEbt2IqOj4e(9!b|G8L#e+BP9ph)_WGf>%T9tI4}Q1+AyO_p z>0!amPsDgsLnCFeiQ8&5LC-$tK~7Hgam-xD`AF%D5A)`O9Fuf?=pno52Rhicz1o6& z%M_f=nfXx4k8(%-Ld-@~Ota=A%H#+uU=EbYmI6U(Oqq6(gkX%L^X#SIO@Hk12=;l5 zJFg_^jUbO_?H52mhwOJNo^81atz4mf-ODK1L+m^YeY+f0a+JO``2k~v4Ny&F?ku?I zj_DWSF04+%M4PVLUS8PEp6fVA%F=!Opk4ShRh?pIJyc*Se2<|*_3FOzB_u`DZ91cv zYr3H0OfbjCbJFpp@;G_v1&va7JvCanp^f!PyLhlu447R-Ehc1GOsbaZ@{-M=w#6Q1 zHS2LsG3?f9#;5AWngHoCdv9UC&Z}-59M)uB{dv-RoDt7~4|LOd6zUA~OiUGX#U-FF z&LB3*H_jgR&jc{hku9jI8Ko~cdQIRTHtD3&YBLkKA~n%4=u-T}?^%NIk8N_JB2#if zQm0cD+as8DgpM&%p^?xJ_E+D7qvL{b6CN;@1cUraYweLT|8y-gYU0<1QF}bT8@m|j zKBe!GKuRNWRc+GBWMAUMG>W!iw{s0|YY$S5DkfpqGj%IQor1nR?s5BvZy)=l?;6%E zL-V42tBq5a^G-yWm3SgCmE?$X8^oFFov0`KsrTV7R9RO| zp}%5c_N>@*A$Cqe4gv(m8Y}*V<)}CEN}sQO(if@H&CdYrpZs)Fci**@eVu!CqZItO zsV!&s>0v}1U9M-t*4CHF{)3#c6Yq%%y1Ft$vhk-8xdXq5g=sgZ`E7)4`#~tMl6$qG(zLOCdoc>jCS49VsJ*^!06H z)$N;2&e7Rnp;4`OeT@3PGfZ}_4QoTK-_Tb7JG37z=-ruXYB>121v*zcVI?{qw|~qm zmys@n0wxYcabP$zB^c^dWR4fuLiHI@1Jz5uCP32f+HZ+Nj^jcXWom+wv<`74#-2(D z-ZOs|Q90Ha-ROiY%=N)nE~%R|FS8C_)hghuH_h+rFBwRw4uBpm!taz$45yp)IK+QG zm%T8bV!v}h7rX~bLSLXQf@9mY0B!;M80PFjqT5GBS&Z}e4KMV0&QQle5V&y|;?tyg zgq<$ZMXwD%xK#~{>JQm=j>_&TAP*A@Iyqb=57tC5{)p7Tx^G_yMVRj;Qfl@w&bpso zkfy$|8L{gp`NL0+8g2KMi1sgZcSkF89cG55DSqj4Kf=7mn}7NXb9OvfEut_+$7)U=(P)~oCvpTMIQA&Q`2J15R!C-yi1f0T&70{2znm3E@W zbXOG5_W3C$=%C(CI<;gCdA5EbudHm1%7dLx1`$DhbG zmA~ZT%9}vQBz+v2f10M&7_Rvi7u~R~{&^!tg?V>KB7gpe5`XM*j&tZlE-LwxrY~Zw z`pxSiBb=&@>3i$j`iX0d5J!ILFM|B;lA8^~>y<#wl26w<c)Dd0FY* zlqpqTI>yASM_YR{HvDmY+#9!)kx|m(CEK(-`SFf{GnM?aIX)-CT8(w{H8aiTWHiPC zTUS^bS{4weeaQD89nPB{=3i}_7F>WCDF-;_A<`@6G6%yoiaz6DXHm;^{F4FRhVAL4 zVZ0F|e_W%_IDUPb3&@zS3kLWgSH68dLFoG>+m@&EM08qc2Vib{z~`m`D?LkzhfiGK z*@9iPePTqZRPS6Ce(h4aVT^b)Y6Qz^brjMn;sUKZ?XO~8cFV$bjDLLwJ zFxfo~s&R}WYf0%D;`)D#*nhG1+ak`|OAad7=J-{8>EQ=@cvwlj;@}iuhQ}Ri@Cn^v zo0efjkKrnt!hADTOCl2WK(^Fi-%j)ubdokx4yj+{YVxridw;Z@;$3BmaJ<5f^XUFr zR&1&C9gYcD+#8MUifXzS`m7R^dYM67Ly(od25s6eK6+S8BI;bt=oZl*l^qM2p%m-n9_oiQ`sk)e@1&|_89qmQ@v3Nk|&LcfF z{}sLNnzGZ`Df{1{7j2S4HL47NhUB{lca;I9tZRmDGkxnA%FIP&w1$|#&8sKeDzj5f zv^kX zu?}o<6T5fCWav16(hpX+2q0?_aCi-b37J|hh<|oGg~j;D(&Sq-rb{I0xg1?KgPk-A z+44G$N>$hDP1r_Q{&(p2DjPg`M@ms6C9QBQwxQ`+94@ey7*PJ@voqB3DZvWZy;~cg zxW=C~AI@z16c>!nv>=F9d}Iem5feAdmFSUW6+bkENTkFcK~q2Sf&4s!Le9bGGEN)_ zDB7R3*v2ke&&UO)uq4h|)Y@{;@t1&cL&zP#Wzj90cA_32W!i|gR2>bnMzoKcSWa5& z7W!;w5rfecEPr=y$twEFjm+*zU%pWo+gzaC_c^pz{Bz zibN-k3hIQf9M}*1!7J@i6qjk_)BcLkEF{|A9f?>Wv_SJ^^&2BTG3RmQ@X4iuj0*qv zK;+xS+N-Pn^x8*Xx4sZ$lbi8-KZw|WXS@Ayi3N_}ywHVAABAR-A{|sBA<$7wqs>&5 zN@a3gcy+)w*RSs2IWSNt{AjN6PJla_;Ex-eHGII!NFd&N+glB1)WHh4wVAWTAm?F} zChe%#|5Z>e)!OvBynDO?2$3 zHcY}7uttY_Ko_;!e!_?gV5Q`v&Bz(-Q2`}hMQ9|@38-0CP;KL}(@#@oj}wK~9Eqdo zsCGAIWIl;)T|K=l{Zc^dHP+*fjlV~k8bfvv)2(BH-?HjsV0k3l^>29x3i-ozt!e8K zI9bg5EVzs2+dehCRA5sxEoSiRfxaMrKLl{p__WCLfL+%nhm>5}V324o9^BMDmPjB9 zea7OCq2o90ZVVlx(`HM@g}+q^Qo;M)`PZQZzS&^~+_g931F;Cga+oh!f3L^7*)kMC zt?+6q4p|i;kY9Qns_epTaw8~FA<_;19qJz=FUKoF1e0?~T&X#ECtGtJ{!q#SUu%2p zbJfxMS(Co4*pu>iAo*R{lVEtjk<27AQC8>7lx;N=>gk(|hwAU;=P+HfPxT?sRehE$ zA2d;!rqXUwR@;0F*#8z>Bc@cXzV-E83CoVWpVC&B-$9`dHY*b|zbo#9jhiC(&j<({ z-&X)6N>FZlfT!5%oap0Ci!Qq_mt2m;Cb0~8uigO#$KlR=kkm|RdqH5?oHX5ke6dvk zEuVmkB!^LE{&&W<<$f6_nHu0WTYRrfSlDRo4-!4=Cf%vX`FbzS$pJ>*VR5b`bZkCd z_I`Tc{3pDl8@9QmP_56-hwy>f&k#+C#8`rrZtPLfMRd|EE~EIh@E*hT{A*ae(eR@y zEl(MD`FcCW$k6JqcMuBr7>7q|C3jyvXerS}#bw{n$Q~0@J=Umc!+;{NKru(^94hiZ zk>!v*Z}+xunF$FqslwjWH$azEK>U8zdblK2FqUZf*S>-mz4UBU= z@8d5J`omIe)_Tjc=3Q>q(0|JPLb8>(8mXNq>;B36AVcDaJ;lAF(m>AF&Pw80$E|_0 zDJ1@0r0T?&U!X=iceQAA8UCN`MfUXmy9Krfqmr7%{bWilnD544uimfDz|^ z0@|QtAf>AHk|1$q&W(F>hMg?BP8VGQ%mUj%JrBEN=U_2URKU$f&#@i%0$$7p>MSI*&Fm}wps$(4fc3#^G%CvbikI)R8 zMn(w-U-^Y$48-UEkW>dk6ZPc>KDVR*p_^wSouOl7w>6!1?)uEVlTZ*cJWg{uts3$5Wj5$@8>7v=} z$s}MZmj4_xv`nkk*utrq2e&&^S>shf@S&l>p|uU0Ebq3B-1YOj;GI8!tM7T|%z+!H zt(hN)d;vV1Nr~~Y-vnMA4D*w~VFWaND6`wlaUUIru@*akc;RWD3S7J$@fY4VHGa|F z$|>!UjY^>`k(W?D*bZ~Kks7&q{>8-e$5Zmx-d8_H`MXw>CFg3R`%QD^?9W!o*i?sM zcn-xzx5X{r6wV(!)13KyW#~q=6fn;xjJ@0b&e8CD>sNm@D^FXJ;FME6Mlk+bq=h8< zHL9}`HJn^rVDG}qHA0aKq)GNp4^UI~&ce|Q4}e2Z9zW#TU`+ihLgHsYvZNMf4a5>{Zn(SSQd5dN1j^>(TLQ* z$@kanzcvr84X&si&(JDWv743mYA-qA6|6mTP>l_UP4k{!^1WPFY73N=W^OKx2OHht zM|$dKK~GuQc?<3VNe}=vQ;oUFpI*#HROzH+>w&lls3@H>KAblgR_jGUOg&m7FH>#y zCch~GLy7Q#vv=YHRJm6|GJO$R00XF%tT=bKHeMN{E!Hj*lhjN58Ewu~*Y&IV)C542 zc(%4F{${;NLJz#V%9}QQ0Zggs!(CH5oageMa>aXhR-bC8$-!;x32)+`>%0kaW218* zC9=LX3p&B(Mtq^MX4N*V3Z>+FSf8DCcv+D)w)q87txV6Qo$RJPuN}ZO`m}61{_{)L z_gzR`)Du$(M~;0|fNgIAJ!`q8ge>!fvJ_g!9`dF5&$=9|}h4 z-S52;i<0l#R4ztqybK#z77ly0dd9AN9iGD<>nP$;e*2|V`Nzz3D%4tgS?l?5iy5!8nnv2rOs*)X@^Or(7!Y(8U9&AA zc~bL0(ZY5znaf?fXRvsC@n9B6WG|sft;cd7GRaQU&B{Rwk?JEmpjC=9;K5gVO}coS zQ8X9lofG%34;3}AShasUp3dgkVNVHEI|~d}x3P1Isph79+Se_e|%wo8JAAx`OY z-AQqCy8vaL=-FIms&w7gLePtGbNOt`5i*9_=ue_VK3kW@0kPn{do9+&4R$kkv z4JfbQ#i71uxlXyfcUGzD!MT`FFG8KBp?c9a&Q*j>PkuPkdAJv2dhiw$49V1|DUgSl z=ba8p;?*(If~0BzV-{FVKxRp&g);ooj5c|1bW~@av1Q>~V4)V2u#J_4DIU2}3Z~L^ z_r*OWPQXO+!)totfjdT+TW@`q>tOMg;a!Rox@H-QC)0Z7RvPK;oVPO?j2()zQSORi zuY`R;OB~M4C9D=o^jD$X;VpLFgIx00e8B%fI{j@*C&x15%8T$8`ir{N)&R6DWlTE; zZRA#!*8QMhC->S{8$+8cqFQxWDC!D!=)Xg2j=3$optTIl8P6s64# zfNPYX`SyBAKs(n;m;s-TuDnTIDwf*Ljh6EL>x?cq0EQNuq0e(Mqb= z|FOFd-jt->Sv6w+`3oVv%N`Y&JCcPv5yIbv>8=HJ|1)%QgUvlv{xs~F_dD86X zUwd8JKSyR|QaT=@WgT9Zqx;=s1Vw*%FZG+Ve>(1aa$zM^?jJ=FJNI6dS@jrdI@Y| zO`tS7Zd9wbJFn_&bG~B%TBSZ??B_@D()TweEnv}gefEa0`p-BOjgHoGgBvTq6;q%D zPqt=BoBsvdla_kQY8^LiOshp(&^{~6F*?I*X-ZV5)w_0uyO9=qx}0(G(j0pkJlsd- zQdi~=;(CWH)roQ1!b~&4tC$`0^RyDvAJuO!dt=YOlnhb*#yov7=WnIM$V)HN-S(?$ z)6Fp4gBTgfa!n$$?*F9e4RgBBQ>~!c^mEg5EOfIo@7dNU0t3Jv?i7?Jn%?>4j{OL} zE$tZ5?`iPDt3xkrHkS2MkG_)3f;HuULP|P5$BOH?HPJT+F1O6#RAseZt5zbxW&qXL zrjWKg>YcZ%e9?xh3TG`DL~g}uGbqEt8quivu_ivaLuVqkSJt<7T(@)aSa_h{ugR_ahi&d=)_^jrK zH3uleB}!lmd-@>W;-6i4)(0dqhjzj2$)Pat6})HmZOx~*cei@L)q8WoQrsb{KkXN$ zqU4vp>}r@NUHCW?y7Iexdh;nu!=9=C4!va4c~w9VaqV9<+ndxW#K+%zKX6yRW`52{ z9W?+iKz=zLQ`(yeD0P;=*xzjiVzZtVZ4EV8+_8i)+{VPGGiZqt$RVN$7A(3z&ofJW zY_b6wBCWVoNtEmX0l0y6;rLHCjDnj0ZMT*TfMQ>td|7bSb8Q@droGPO6l(qB_O{VX z#`K2x^+MU-y1yT82|K(p3^v_96z{u`eHi~L^Gn$27?I*Z$kaj>04q9*RiN?0d_;+* z3czUjq+Pgm-RNsJ6q%ZYI8hrbJ}&&D8jE#D4E*eEvG**z%3=wJ~%|DAi|qATdcm9CD-PU#)b z5o^A!YwH+k-Bm75jMJMyIVtZx*%{izw!c=0aNYF$`*YhLu8gCjD;G8hnwSP~A1rH| z7M?HV#vGdHC^pWrGe@&+eV5mBZSAW(v(MqxeSHam{q+Q1)s(-WSI zrMQTx^{OKp+6vR%tvWj7CRMn#j_%%SsIRO*6{y9&0$9~i;rn1!a=Edf8y8?&dX6w{y>kH67@`3W9HSsq2c?Sw(9PVhQ0y6i zjr1!$!b2n`Sk^hy`F4WciJY-hyz^xpiJCUCZOHR+F!ifseVzI)Q}CER0-tsSOIgI8 z+HuWylVKws%3NPGvb;{yZASU*SCUrZBphNTf>yo#)R=%|abkDTHHPhBr0KhRcY-&> zC2>fHg_6K?b6jWj&b~Ix7}5h*B(I$Bo;jHgzt8g?XWA2k$}oS7XlauYb7yE$(48om zvx3kqAF<9Ri3HMm237U>=c=mZJB}}yeR|RQB-Diov)cTnptwh$G#t{8eXdyQcW|Oz z&exmC-Nw{fTVrnygHoLq;b5jg7h7`cf)G^Ix&MCJuSF=?+yP*KKHCdKlEn))6?G$!G0bpzAXU-;81wCd-j!{a* z1+-ZVvp1pCk++6F_g#^fguW4{Jxuhn$#{G;S6PIwU@i^&eA?j+_?N#p-pf>#W(PGd zH7u*gt-miF$63dsDS_Gdzon#PPglGl)sI+Lj#C?Zmmy@!dZ0~WUFNwqN0ID8Os~~L zn=GG+59aQ6DZbD`1-(W`3w>0IO(y%094_!abQrJslS)R7Q_?khEu~XKNy{<0ezF>= z3)cGc$mq%(1l?I!I7wLDQ%=t_F8bbEtVVC1pMQ>587qH7eo#D}J6dYT-T!R{1Q<}t z1zP*(0Qx18`~Ne|7i>rIhCa4QH4l@KifHx>kde%xCYve}yre{b=(*(3S;u(t8X)qKh2``Mv6xw1Ku zjhrDFWjUu2o8pRW82ZV}{NYL)bmeTR6q8br~4Y8E8|HaU379SuIj0NCv()-}?k}7(Xc}cW$NZ z-!^^8ghq`QnC5ws^1j^YmLg7%m+hDt_Qpf{ya=UZbxrQeMv*cSuV$eS_*+%CFBG}R zhNNG$xT|SH4j!5buM6|i|2A7LXMw%OF9H458>$eL$+>jeFPGPI^Q^{?K$r9`E1ArJ z@1sw#uB7DGjRD787M;&mIo^M>)IszdNvpPP7lul_z{t%GMs-jPJUdvy1(coQ*aH%7 zupIu<8XB&oB5!L~G!P0bku=m=-WwRG^z*=nT0Wdj_8Lxe0#Dbw`5;&5B>Mw!T9qf! zXv4Cizb97I!sd!MP;F?>cw6rn0TOOwq6}@TjX|!;-2=o`gJOs1_8#n&>PGF$1HMI=@n1kKJo!@ zh+hsS;f)4C0bI%ADeoeuarQYV(R0kqbZn>^Bg2aVlv$^_06l}B+Aa-|6dLc+p(Rp) zSFrR2)%9n)JKQD;j*d>;{UcR$E_!R)e4|6{>Xi{~?w^dD={|VvhreF=xi-(Ya^-_e z)bQnQKwIylyH<HvU&Gka_!2M5Muc~ws%)#R{417u!A#ur zO!NMwH{N&gN7VY%Msje~PHsszT)l_f)L0B_d}~pZ$>XuAFU1BT`fbUB31__2_KOk3 zzJ*P>LxPc^&+U+6d$*<>q|62n;EZ0_J_$<19wARkoSa0@`S4H~6h3wC3~vEIQ_EXk z40;!5Yr}uuqnabc{@}A<(?Ma6!JuXjaF#oUx5fsh+)+S`XJLH7#zk z*>cT($VUzt@M$#@bk;LzJdl?`Rl*0mcH4~-FR%uRYu#;N`Yq+htO|thYdk5v_XM@=nM5;8d1Aza#%abmjm5>vx?8GpH^4hIOgz=h!gc%>3$#&x!1!cZ| zV!_&zS&3s%Uv;{S*I1b>JBeba@8j6R>U7Wg^mmoU`}n!%6mm!*)VgAgp|MbhX_a}4 zx0KX?54t!f<_6;A?3iIxZDPepZc#xt++`hfRG`Q60YR~8p81{FzuII3WpkhlEJ3Ct zIKlTE?TbVvK${hKZ1?);&-FGXKEq8xS(lo=Y+08z@y%P9hP+r^#PO|`Wa`jWJEO%(d2|@JBE6CKs`eJ-!|G1+!?; zvB-HIT3>ZG8C{4)h#ODf|l5Mt*hOOO4d^Ji-y zZ;X=m_q4W)OasYcAS$v}D9lIx5pL0PJG9K&F~@)XGY=2WrPRzzom8U3_~F=JqS+dt z#{UipRPu%AhGuu$iHB#zx*(IJohN)N?nyp!CuRh-uk#m8d|`}67F~${`~{7-rw(r$ zMod4L9oNFn8l(^-;9hZ>_G8-vB!Lx1H8{Ca;AT?<^)#o+_lT3{QT=4M<$Y=_ZJ>E+ zjH`UiCMU2u{B3paB}rsI5f-B!)>c=rn75O_1Vy%V9Bc12voZriK1LoKfqeo43Vnf= zOom7qt;3N>LyE+qd$nbJTRTCJIfdg_{#D#&52Wc-Fy!3w{vA3n)1jFjF;Pp2ja8x2 zo~%VQheieHI#%4=bjjCrgBcSMvD)m+f4}46t#xa;%Kri;>z?sQZhY(hlJIw-mtbiY zbO^06d55o>w$>8P58NBy5QlrWmJHm_>~!5DKs^)7If|#3^|SjlF0d)6KBi~-w3}0Qy zb4rAr%N$n~TV1Lor@AiY!{GyCD+tPgLv(+ZGe{4fxZO`*9`HUCqEg)Vdr{q~63Vabw6P*#)aZK`f|E~E%vn}?NCkq;O z2Nea2NcF20lxS&eI=AM@8}Hp+d`B%-e&&>hS#Zm9s9FtQjf4I3${BBuJ0(|HflnbB zRi91G4k7G>;tadH!;Ja~`Bx?L*Gv(!+M%}-gE*>313ui#mU!0f&x@v>9qt~(U)2$x zclVb2q%rFJAn!z0_d!ge21O$mHmB~l6tMLhm+zQ>U5VXs7GU|y431T=#9`5xuQD$P zI1w^^``Ym%r6-S;A!ga91*vy=J4q;B_WzqPQ^l%fCgVAvm^m9P!%`VViC?Fz?1PTL z^2gow8VF{Ctu67Y<0yFK{w2~Wo}nVaIg6sFt{2;r7NkDt@Vus|%)-tot$5OA&7NC2 zcnMngW%las*;jwQ+e|lJm#}uNLO~QA6OM6~7cQhkW#J);uIIW&aS~xg)v<<}76w0T z_YE+|MrvA2#Qr+p#RMg`$a4@u_I$_-1Zq0a)=Z*XQA%iC*CLC)@pI@6(n${=hyW>!LKrCfTdDeUj=aXT1Xv1c*`;`S%!%lru4Wkylbn;g!dvf+2aN;Y zeTjBav8N8yC0GLnyvtDrPG^hZxA~XKf49|)xX$$O7%1z;FS!DNuT(0Xcr_xSzM&zb zBlH)AbmPr(r_)sD#*>U1md%g4?;)P zA83Tdg|*5qE4sX{oqDhL=lU_NAhl-AaKrx&{Q&~D<=j{f`)K?i6+j{Cr&ghZW_#Yx zYTahL@y%bN5b>xu6Bp;kdd5~~)x9K(wh>)x-StyY{jjAyTzYX^rZi5xCELgMmW+zu ztNoZUl`NDJ(?;F$T1Jx=*%KEMxEr$^HB%Qex^$~&vyuynx0`OZZi9wv8U!JAPGplAPaYMa^Sesx zX)ji_w=z$-qZd7SYXs;_G`7BG+YaJNS8B`BdqQ-qFsdkWyLlfm;c4t?YY&T|e4@|O zy{=q!Ip$cZL{u5WOI|~C_Pzvbq-6Xp33>s8%VyIJ7vC9Oiqqm+6Ij#Fo$DO&>?;Eg^o4nTCM&!*Nmg525 z>&u(NqVw{JqK=!heoERComhIWT6K2by ztcr$Wy>ftou8wFFU{pYW!0WyBj}Vy&^v#*1u2d~sM}FY@+4Zv!sIT0xx%z|;>?rGG zALYQ;Rt-V1`zd5*_)lK<{6wOOOV;9TN4$GIJ+gf)vo4f+_07TlwC}oQ3)_dXR^$JQ zvuw;7zkz}d+^r~#7-8fM;GqED02pI}F6d@Xtn6$HKzxIlZwk5!syt9;i?J@`j5TMn z^-kv=4j52vM+eyg-c2WfxO8cy?GmkdxOU-7iyMbtg?95n7%yGjHoHBh?Qd+Y9!KzC z_bpSsie9FsIYQxa#Ue1E3<)0U2Pc=F0?iaacosSnb5?wbZXGhlj*&-q92SamhAw;+ z8uMj(uxU}pC7}{Y7@|Q(yd1R!$VvY*YuqH=-@7igGhT|Ecm66J&a5mAs<~bE3p0LK zkFDv6jBQrMZI6))ha#{8Z9yUb!NPL^z`Et-`egn{FxWwzDb?ywC zE3$-!fO7IC-b)}iqxe*>lq;`jH>&NQIN&(8IL5^&mq|#XSG=Q-rdKYzDO@PAyWE}+ z9wrNj%ACuWcQk|{K zSS@}9DLe<>2@_cDU&nyy7?=GA!ZQrv#Tg$1d%mblr)xd=B(QPa=OlH3fAX4KHug#C z^73)AbYE|AAbGaW0{0Ho2{vn|*;OE)my3KoEhzAKGxFftPSq&kbcly8IV&x~z7N&5 zJ2LK*vDB~o>$|VIWrIQ5Hh?smW#?(5HKFpOByZB0gdJZ`E9H6Xe2r}{=wc|=FLw0B z8=zS|a_Ope{I#;zOIUG?4)Uj&gZwUI(aUJQifAI_)k54239+RH=HJw!cEYX2?#MkG znBpnDhCGONek5}E(WFYriI$pW>)SwhcQ$h$5tp~WWs0`|PV*1JGnk?F0-xz0Sz9Q{} zdD#PIgqRRg$R4&7e+$swZVx}wO{Qc5bryt|zI5%d(q5y0iyQE}aKl>mtt~Kya=K#U zFLx!&UwFSNf#`HTDU+lU|^fNH5z*y$$Q z(@21TtJrL4RJ~r$OTBSiY*bV@s;U3F(%PWb$IT}hyv9HoF|iZQ>eH6$_SHKSr80Q9 zOVyy!kZr$H&No(Fc9`*|`PI+p|50@A;Y|1cAMgHlmrCj`ry|^UIpi=Zr=0H&2#t`_ zhTW2wnI)%T?CyYaymKta!pv!w!^no^d`pPgmdRlgau}P#4CDTNet)~J*|qKSe!mXS z=i`}2uoV_8pKaOMFBd;P@ORgZ`@y`@gswe}`-|3hZWhWp;_UNMuXpOrp3^bon;IK- z`udkFMO!tO2s4IV-Yl`S-wVVjbxA6(?@f3u6`f;Tr0I*l@@dXfupPL&F{=FNMUQm% zlcI0LsOqpa|45203$o30`+@1zzW;NiEdO!kP}x{Xd9e=V(N07*v1G0RsrG(WFm(>N z0Glc4&MkC|OBKS<+bg@U(#|h_-q!#Z6&j^bx1pmvKgy7{a(5eU`R)8|eZY-hJJOU- zIgs6?$0g?5zX)`icPOeU=VWZ(_u@uOHczV1Vsr^~^Fu<49WNQ(#QN;@X!M)sKqcYr zQ~O-F|G5lAB^`Blqw}!BsO5>Wxcl$ltW<=8$GxIR;iF5eYE;Z(d9wlfL?fL1YNKC8 z-AbaTM{{aWZ(5Tw;)TP##GGNbiNk0*4|tOzB>yPqD*na{QECECz$31-KJyJ_7lz(b zmnOa}S&tj^Ers>?n0+2rj)uJq4wrw^m>&<4bMjtuldf8Pls{^S=r({J?B9_O0b z+{#?qB3w2x+34w41u{FU0=a6_YPXnizl-#kI;{@ue1(`!$#I*|l4aN2=?sOaecO!>c7mG|Nm$*C!O*r{BigGv{6HHHmqMQrDQJ zRnH54*BvC>mgrE-=Jy}7>fURXxS}=mIBasRWebpX2I-6s9Gp=)E7IPt{_oI(^mq%Y zxXb9k;qF&64k_)2_0K}bP(Tvpa5aAg=}p?V_ok1KD%rkQY4{7x zr&GFp;GC=a8Z$rljGuHrkUruRT%;I22et@NaV@neV>$d76c@Zjod{GED-bHN(|eBV zo&HUj+%sj|BFvpxM#(}&4*!2-jIXV&ZslWt^C)A5T?tq$Uz9`B9yE~a0H)u>WDPlG z(W~B*Z=-GJMQxl@UHh`9SCg^0QO6mrt(=m$S??T~pRPrS!O1XkBI7pw$QBhap;{mJ zJkYs+;j1M8PKm7j0*v|$S`=B<&vr-|b%%ZrgaBoffS>kC=LKm{W7xq%m9Eo%Mp(-b zEZOaWPt8vq|6y3)^=`Q8HNGP`OT7tqG{dcJq9M|DWT|j^wsd?~Z_!R#F9dw8 z?Fvo2zJxGT()8KYut~!%h(vP|Q3R`8%nQOE3oDL48+baBxTL%6Y{OC4FEDEzVdX!3 zAaOIx%hE{2$lG4$wVLeZkNpIlNU_gTd1sgG3(t?H%$;z#bj~HIfP394u*^qgaP9I~ z%A>5zkPJ_PCVoYZDw6+y9em5!Bbg?p2ISPM!h`UsOn&KX=k-%H=67n_Ri~h0C$EW( z-~1=e@2_v(#lGrrBndLHj(yrce9X`cc=PTtYK&DwtR-cYgoH}VoU#laq%6r z^}(@zUha)pT`*sbtGgE>^5AKwml>qL$EXO2dp66!%elOpD9;N^H2~{$8X8+Rx^AGc z_Nug-gEZ(OFZC7T;>9EFwymv%{@(3o{mkjuaFQSzh8vOkuI^Bjmm=p`4K5jVb))*x z1#RhH{yX&T+EE&y_AT?)r6G+*Hvz=TJk36LWki{2Fj#FGk**8QKAO7;e* z7U}co=|lbV=GhCe88yTyx|um_KH8`iHuke|hv+1`NK#*;4dV_XEXwmS$ze`c*AJ&- zPCo6^x`O`oRM#P9vy)x^CTkkNado_irSbg_PGI+(upKwsPYR#k`2Qq>z4H)Jm=JRy z*UV^*_1af6BB(1BPh#^P3h7FVy&U@*i` zTNP(1elza}G8DW_TrbOuY-+=h^PN+5cF;fO8hvEXO<1+$XVbuKt)xlaomnP!rq1Gg zyZkhoVk4yQ$p{-hd0(eA^UZ4$z4CjC8(NX0Jpn4$DboNWd3}YA2GVXDiQ~t^c8Fev{k9vn$7k1K*bhlCt!4L%#nxtX(hLbIQ#y_k^+X1+)A~YJ3>Tx+@w~NbG81 zGcjgmh`3WDVb>GCskTs$YwdPTczPX&a9pmK67=_Mt1#nbz>x`pB?%*c-C4-@S&-R5 zT9S9$b4rgd5$L$!%D}kc459SwDaVB$0;rL6^p0@`GxMY7UyAhFNl1b_+^PJh~6cxn2_td7`H6N~Yj zV|LjKp4a{w8$7{X`$Jp$pMO*OwIs!w$xRth#EU!@{8H>#<~qvK{{TiTHGR2f`(!>T z@E&}LdcBe6Fz8Xbx!?#q*?A%dA&KCD`BON~m+hIlEKDyInsj-eMeHT(oSs-D=cKdE zKtVx`ZyEXeuXcEB9M*dZo(11tQ&)fQL9)y&~0f$irq=P zF}m`gg(B;HcBJvARw->$Tt4S^0{E0>g}%hiAx38uC`ey?-=(~{i9*eby-CZO8#EjY zC?nF42Fync!Mah1)BTAsn2ugPhHMedo!ml>Pyfr}Eu_YQ0Q?z5I4j#dd2P)}7+NFr zXMgzqv2W#x0zYHG?Ruq$9;>|xsTtm0 zbpU%mVAZ&2(upAiHae_EM3}9gGZ+7k{$J;Ix5aO!&`OaNV{VKDll}%B4k-yBhrdFi z?gEx^IL7qStljY0<=yzPXjGE^VDKtf+-h_)ip>)g`w#<}OjdK^)$Oso6f=7GdD#6? za`2i|1f?F?JhxXwJ+L^KfeeGnR~I_$J&2WY#CQFA7Bu)d z0D>FNubhH2oF)U$*!lSA3*I7-l}i<82OP%ypQ(VH9m00iHb}IMbz`5wm4#n3ljnlD z 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

    k7Tz8;~9gLGU{dt9)DmOOpO>nACUWsn5uLCi0Ht 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�^~Ra@Te@F;JgBvIoIfkjNSNB$Z8@Op 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 literal 0 HcmV?d00001 diff --git a/build/img/gym-background-desktop@2x.jpg b/build/img/gym-background-desktop@2x.jpg new file mode 100644 index 0000000000000000000000000000000000000000..70312d2be055168230387f5fe4ca031ad324da6d GIT binary patch literal 857603 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�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

    JaX#(p(f>|t3d+4TMt@|F7uU*Iz_2&JpU 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

    Sq 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
    sU7KrBb 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�PAu=oc)lAp_#3Bc?V#jMTg*<^a#^m(1d2#X` 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%0DIXN-;FN>2!Q^gXo-Y)Kvmp|f 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%0D9>cd@E>}J-^G-gU7w734fB| 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 S<@}lc=gZTI>Be@}oB!Z;vAf7>A;q>iR z`g(^?yYfe#YRtmg=LC=39)ymPvX99?1K0u33gqf(4~9Ok^JZG}En}Yy?)l4E2DRU5nfMN->MnEZpU&~x! zDLyUMQhxO{t9v@TdU(@M+$I*lR$JrDBx z#oE=s;x2JCeXUMk?P}idJh^vWFK&zON8X>dH^xtk(s)C{S{$Dhek4ALBwF{GqrZ-P zPTE`fde);Hd-U_F8%FZuP>H$|u>e)T08_)l5}h>R7P;1rDfL~^@EFO?4-(-yL8@)1 z89220UaHMm`Jb8^1hPw}Uo?_DjPkj5cV{e2*6K?ZB(W;)q@3klhekQ}Qc5}`y**-i zROKnt=A4|Q)4ZhIr2SjFe=~@e{ytm&y3hS-Vo74rOwcm-IHGnD58`_y&&zf&SL<0No*<0I1}kEKf4 zde~yGR{H+{jaP9GrU#+?Ig#Vn^#1@Y-8WuaD{NxBl*ma|!5JA%NXBi<{e*XEA+Hu>)FulX9f=|9?|#2P{ls!V5F!dX9SLhq4o4%nQMQOKct`dCjFJ1-|$OMjHYW#X-wWKyN+Wd5jmDN z(k}}nrIh)I#@gJnzCkcTNd3}n@@pk8tv9PuNjIxYwx@kP@c#he{ZGZO9^70@V|?;Y zG>&JG7kORS>|H67=4L15X(VOmz)AIO?M9l+puf8j^`AIPQpA{FO$f4XQTY{!r=oDNFoj=WMIMe-E@%Zv*_W@1~35Y(0wVPOQ6){hJF74k)TU*eXHm{AxN?^2It^^s~`J6_zDSozwnGsxb`%5 z^(B9p+F&IBNS}57pW{H*&*UZ}O; zD>|QJ)BK8GqWwkjTxlH65fKNLgXB=W53_(c1AsUK(~4BvZdYySw|-#$AM3fq)}#dh z6anl100g5)@y3c>5z1`qLD%vlENsFRU?cYh^nff00nVie~SGV{@i!s{{V#_ zMfxAHfADR)GJI(9)1xvxZ)fGYlC2(X7dseWu6B&=BRC#{yJ!CMAMpN&;{O1bF#iCr zhx!5O#Ql*@c_lJ?@*6*%2jnZSx1;>oQ21B%)fQwVZsh*}sNL82gprNkToN|F>xrhnnz+0e2r z-O{N7;!yn3`2K72Hl_Bxf5`qwmg3>AGSke(^?4D=mC0p8V2G?sWtA7@P;wP`01hfU ze~EslHBYnXe&T<@1k^w6o1#YGIyIiC85jme32Sud3Y>xw<&o48g=rmz3$Z;>(``5Z z0Mb|azr4ndwIO|X-(Ryc{SK_aHWuK3N0giqpGs?QyYfd`{=Vd4>NfWBv5r_Fkqb(t zB#9jgv`e{4vXDW^$i@y%YI?AHe_hWM@xFzkO=+x|w0$a49Drrh?Igf020+~j#&^Dd z-f!<5=@gn*SN{NpF{$vs@h{Dv7Wn%^(Gp!6RMGUblIitFxsi1HMSF*_hTZI*cMyh^ ztlS5+X$u>60iq~CH4QFDqWeFYoOfT>L*=g!!xR>}o5K`vy{YibHm?#aZEXy`7`76{ z10V(%VOMt?j10M@-TkpJ0QKqQO+ literal 0 HcmV?d00001 diff --git a/build/img/intro-background-desktop.png b/build/img/intro-background-desktop.png new file mode 100644 index 0000000000000000000000000000000000000000..ad995881f6526b570bf4201c2a7f5401bf3fed97 GIT binary patch literal 298280 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

    + + +
    +
    +
    +

    Вопросы и ответы

    +
    + +
    +
    + + + + +
    +
    +
    +
    +
    +
    +

    Как стать членом фитнес-центра?

    +
    + +
    +
    +
    +

    При первом посещении и покупке абонемента, необходимо заполнить анкету и подписать договор. + При покупке абонемента онлайн, анкета также заполняется онлайн и договор придет вам на + почту.

    +
    +
    +
    +
    +
    +
    +

    Где можно посмотреть расписание?

    +
    + +
    +
    +
    +

    При первом посещении и покупке абонемента, необходимо заполнить анкету и подписать договор. + При покупке абонемента онлайн, анкета также заполняется онлайн и договор придет вам на + почту.

    +
    +
    +
    +
    +
    +
    +

    Есть кулеры в центре? Предоставляются полотенца?

    +
    + +
    +
    +
    +

    При первом посещении и покупке абонемента, необходимо заполнить анкету и подписать договор. + При покупке абонемента онлайн, анкета также заполняется онлайн и договор придет вам на + почту.

    +
    +
    +
    +
    +
    +
    +

    Сколько тренеров работает в клубе и какова
    их квалификация?

    +
    + +
    +
    +
    +

    При первом посещении и покупке абонемента, необходимо заполнить анкету и подписать договор. + При покупке абонемента онлайн, анкета также заполняется онлайн и договор придет вам на + почту.

    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +

    Занятия с тренером входят в абонемент?

    +
    + +
    +
    +
    +

    При посещении тренажерного зала вам необходимо оплатить занятия с тренером отдельно. + В зале + всегда присутствует дежурный тренер, которому можно задать вопрос, получить небольшую + консультацию по тренажеру или технике выполнения упражнения.

    +
    +
    +
    +
    +
    +
    +

    Можно ли заморозить абонемент?

    +
    + +
    +
    +
    +

    При посещении тренажерного зала вам необходимо оплатить занятия с тренером отдельно. + В зале + всегда присутствует дежурный тренер, которому можно задать вопрос, получить небольшую + консультацию по тренажеру или технике выполнения упражнения.

    +
    +
    +
    +
    +
    +
    +

    Есть ли лимит по посещениям тренажерного зала и групповых занятий?

    +
    + +
    +
    +
    +

    При посещении тренажерного зала вам необходимо оплатить занятия с тренером отдельно. + В зале + всегда присутствует дежурный тренер, которому можно задать вопрос, получить небольшую + консультацию по тренажеру или технике выполнения упражнения.

    +
    +
    +
    +
    +
    +
    +

    Что такое семейный доступ и доступ для друзей?

    +
    + +
    +
    +
    +

    При посещении тренажерного зала вам необходимо оплатить занятия с тренером отдельно. + В зале + всегда присутствует дежурный тренер, которому можно задать вопрос, получить небольшую + консультацию по тренажеру или технике выполнения упражнения.

    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +

    Предлагает ли клуб услуги по консультированию по вопросам питания?

    +
    + +
    +
    +
    +

    Да. Вы можете обратиться как к своему тренеру, так и к нашему нутрициологу. Специалист + уточнит ваши данные, цели
    и предложит программу питания.

    +
    +
    +
    +
    +
    +
    +

    Проводятся ли в клубе какие-либо мероприятия
    или соревнования?

    +
    + +
    +
    +
    +

    Да. Вы можете обратиться как к своему тренеру, так и к нашему нутрициологу. Специалист + уточнит ваши данные, цели
    и предложит программу питания.

    +
    +
    +
    +
    +
    +
    +

    Можно ли приобрести в центре спортивное питание?

    +
    + +
    +
    +
    +

    Да. Вы можете обратиться как к своему тренеру, так и к нашему нутрициологу. Специалист + уточнит ваши данные, цели
    и предложит программу питания.

    +
    +
    +
    +
    +
    +
    +

    Есть ли в центре детская комната?

    +
    + +
    +
    +
    +

    Да. Вы можете обратиться как к своему тренеру, так и к нашему нутрициологу. Специалист + уточнит ваши данные, цели
    и предложит программу питания.

    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +

    Есть в фитнес-центре дресс-код?

    +
    + +
    +
    +
    +

    Для тренировок необходимо иметь предназначенную для этого закрытую спортивную обувь и + одежду. Верхняя и нижняя части тела должны быть закрыты (используйте футболки, майки, + спортивные брюки, шорты, кроссовки). В целях безопасности, запрещается тренироваться + босиком, в пляжных или домашних тапочках и т. п., исключения составляют специальные классы + (например, йога, пилатес).

    +
    +
    +
    +
    +
    +
    +

    Можно ли приводить с собой детей на тренировки?

    +
    + +
    +
    +
    +

    Для тренировок необходимо иметь предназначенную для этого закрытую спортивную обувь и + одежду. Верхняя и нижняя части тела должны быть закрыты (используйте футболки, майки, + спортивные брюки, шорты, кроссовки). В целях безопасности, запрещается тренироваться + босиком, в пляжных или домашних тапочках и т. п., исключения составляют специальные классы + (например, йога, пилатес).

    +
    +
    +
    +
    +
    +
    +

    Какие дополнительные правила посещения центра?

    +
    + +
    +
    +
    +

    Для тренировок необходимо иметь предназначенную для этого закрытую спортивную обувь и + одежду. Верхняя и нижняя части тела должны быть закрыты (используйте футболки, майки, + спортивные брюки, шорты, кроссовки). В целях безопасности, запрещается тренироваться + босиком, в пляжных или домашних тапочках и т. п., исключения составляют специальные классы + (например, йога, пилатес).

    +
    +
    +
    +
    +
    +
    +

    Нужна ли медицинская справка для посещения залов и бассейна?

    +
    + +
    +
    +
    +

    Для тренировок необходимо иметь предназначенную для этого закрытую спортивную обувь и + одежду. Верхняя и нижняя части тела должны быть закрыты (используйте футболки, майки, + спортивные брюки, шорты, кроссовки). В целях безопасности, запрещается тренироваться + босиком, в пляжных или домашних тапочках и т. п., исключения составляют специальные классы + (например, йога, пилатес).

    +
    +
    +
    +
    +
    +
    +
    +
    + + + + +
    diff --git a/source/js/main.js b/source/js/main.js index 1ec3b3e1f..104be7ef9 100644 --- a/source/js/main.js +++ b/source/js/main.js @@ -2,9 +2,8 @@ import {iosVhFix} from './utils/ios-vh-fix'; import {initModals} from './modules/modals/init-modals'; import {Form} from './modules/form-validate/form'; import {initTabs} from './modules/tabs/init-tabs'; -// import {swiper} from './vendor'; -// import Swiper from 'swiper'; - +import Swiper from '../js/vendor/swiper'; +import {initAccordions} from './modules/accordions/init-accordion'; // --------------------------------- @@ -54,6 +53,7 @@ window.addEventListener('DOMContentLoaded', () => { const form = new Form(); window.form = form; form.init(); + initAccordions(); }); initTabs(); swiper(); diff --git a/source/js/modules/accordions/accordions.js b/source/js/modules/accordions/accordions.js new file mode 100644 index 000000000..72c09eab0 --- /dev/null +++ b/source/js/modules/accordions/accordions.js @@ -0,0 +1,155 @@ +export class Accordions { + constructor() { + this._openHeight = 0; + this._windowWidth = window.innerWidth; + this._documentClickHandler = this._documentClickHandler.bind(this); + this._windowResizeHandler = this._windowResizeHandler.bind(this); + this._init(); + } + + _init() { + this.fullUpdate(); + document.addEventListener('click', this._documentClickHandler); + window.addEventListener('resize', this._windowResizeHandler); + } + + _documentClickHandler(evt) { + const target = evt.target; + if (!target.closest('[data-accordion="button"]')) { + return; + } + + evt.preventDefault(); + const parent = target.closest('[data-accordion="parent"]'); + + if (parent.dataset.destroy && !window.matchMedia(parent.dataset.destroy).matches) { + return; + } + + const element = target.closest('[data-accordion="element"]'); + if (element.classList.contains('is-active')) { + this.closeAccordion(element); + return; + } + this.openAccordion(element); + } + + _windowResizeHandler() { + if (this._windowWidth === window.innerWidth) { + return; + } + this._windowWidth = window.innerWidth; + this.updateAccordionsHeight(); + } + + closeAllAccordion(parent) { + const elements = parent.querySelectorAll('[data-accordion="element"]'); + elements.forEach((element) => { + const currentParent = element.closest('[data-accordion="parent"]'); + if (currentParent === parent) { + this.closeAccordion(element); + } + }); + } + + updateAccordionsHeight(element = null) { + if (element) { + const content = element.querySelector('[data-accordion="content"]'); + content.style.transition = 'none'; + content.style.maxHeight = `${content.scrollHeight}px`; + setTimeout(() => { + content.style.transition = null; + }); + return; + } + + const closeElements = document.querySelectorAll('[data-accordion="element"]:not(.is-active)'); + + closeElements.forEach((closeElement) => { + const parent = closeElement.closest('[data-accordion="parent"]'); + const content = closeElement.querySelector('[data-accordion="content"]'); + if (parent.dataset.destroy && !window.matchMedia(parent.dataset.destroy).matches) { + content.style.maxHeight = '100%'; + return; + } + content.style.maxHeight = null; + }); + + const openElements = document.querySelectorAll('[data-accordion="element"].is-active'); + openElements.forEach((openElement) => { + const content = openElement.querySelector('[data-accordion="content"]'); + const parent = openElement.closest('[data-accordion="parent"]'); + if (parent.dataset.destroy && !window.matchMedia(parent.dataset.destroy).matches) { + content.style.maxHeight = '100%'; + return; + } + content.style.transition = 'none'; + content.style.maxHeight = `${content.scrollHeight}px`; + setTimeout(() => { + content.style.transition = null; + }); + }); + } + + fullUpdate(parent = null, transition = false) { + let openElements; + if (parent) { + openElements = parent.querySelectorAll('[data-accordion="element"].is-active'); + } else { + openElements = document.querySelectorAll('[data-accordion="element"].is-active'); + } + openElements.forEach((openElement) => { + const innerParent = openElement.querySelector('[data-accordion="parent"]'); + if (innerParent) { + return; + } + this.openAccordion(openElement, transition); + }); + this.updateAccordionsHeight(); + } + + openAccordion(element, transition = true) { + const parentElement = element.closest('[data-accordion="parent"]'); + const contentElement = element.querySelector('[data-accordion="content"]'); + this._openHeight += contentElement.scrollHeight; + + if (parentElement.hasAttribute('data-single')) { + this.closeAllAccordion(parentElement); + } + + element.classList.add('is-active'); + if (transition) { + contentElement.style.maxHeight = `${this._openHeight}px`; + } else { + contentElement.style.transition = 'none'; + contentElement.style.maxHeight = `${this._openHeight}px`; + setTimeout(() => { + contentElement.style.transition = null; + }); + } + + if (parentElement.closest('[data-accordion="element"]')) { + this.openAccordion(parentElement.closest('[data-accordion="element"]'), transition); + return; + } + + this._openHeight = 0; + } + + closeAccordion(element, transition = true) { + const contentElement = element.querySelector('[data-accordion="content"]'); + if (!contentElement) { + return; + } + element.classList.remove('is-active'); + if (transition) { + contentElement.style.maxHeight = '0'; + } else { + contentElement.style.transition = 'none'; + contentElement.style.maxHeight = '0'; + setTimeout(() => { + contentElement.style.transition = null; + }); + } + } +} diff --git a/source/js/modules/accordions/index.js b/source/js/modules/accordions/index.js new file mode 100644 index 000000000..ee1b1cd64 --- /dev/null +++ b/source/js/modules/accordions/index.js @@ -0,0 +1,7 @@ +import {initAccordions} from './init-accordion'; + +window.addEventListener('DOMContentLoaded', () => { + window.addEventListener('load', () => { + initAccordions(); + }); +}); diff --git a/source/js/modules/accordions/init-accordion.js b/source/js/modules/accordions/init-accordion.js new file mode 100644 index 000000000..68db57c60 --- /dev/null +++ b/source/js/modules/accordions/init-accordion.js @@ -0,0 +1,10 @@ +import {Accordions} from './accordions'; +let accordions; + +const initAccordions = () => { + accordions = new Accordions(); + // Используйте в разработке экспортируемую переменную accordions, window сделан для бэкэнда + window.accordions = accordions; +}; + +export {initAccordions, accordions}; diff --git a/source/sass/blocks/accordion.scss b/source/sass/blocks/accordion.scss new file mode 100644 index 000000000..30d1d05a9 --- /dev/null +++ b/source/sass/blocks/accordion.scss @@ -0,0 +1,56 @@ +.accordion { + //max-width: 500px; + margin: 0 auto 50px auto; + + & & { + width: 90%; + margin: 0 auto; + } + + &__element:last-child { + margin-bottom: 0; + } + + &__element { + position: relative; + margin-bottom: 13px; + padding: 10px; + padding-right: 177px; + border-top: 1px solid $color-primary-light; + } + + &__element.is-active > &__button { + opacity: 0.5; + } + + &__button { + position: absolute; + right: 0; + top: 25px; + width: 42px; + height: 42px; + border: 1px solid $color-background-blue; + border-radius: 50%; + background-color: $color-transparent; + cursor: pointer; + } +} + +.accordion__title{ + padding-top: 24px; + padding-bottom: 14px; + font-family: $ff-placeholder; + font-size: 20px; + font-weight: 500; + line-height: 1.2; + color: $color-primary; + letter-spacing: 0.2px; +} + +.accordion__discription{ + font-family: $ff-placeholder; + font-size: 18px; + font-weight: 300; + line-height: 1.4; + color: $color-primary; +} diff --git a/source/sass/blocks/btn.scss b/source/sass/blocks/btn.scss index 3a7bef947..0227b91aa 100644 --- a/source/sass/blocks/btn.scss +++ b/source/sass/blocks/btn.scss @@ -1,9 +1,7 @@ .btn { display: inline-flex; padding: 10px 20px; - color: $color-default-white; - background-color: $color-neon-blue; border: none; cursor: pointer; diff --git a/source/sass/blocks/data-accordion.scss b/source/sass/blocks/data-accordion.scss new file mode 100644 index 000000000..21ebb2e0b --- /dev/null +++ b/source/sass/blocks/data-accordion.scss @@ -0,0 +1,13 @@ +[data-accordion="element"].is-active > [data-accordion="content"] { + max-height: 100%; +} + +[data-accordion="parent"].no-transition [data-accordion="content"] { + transition: none; +} + +[data-accordion="content"] { + max-height: 0; + transition: max-height 0.3s; + overflow: hidden; +} diff --git a/source/sass/blocks/faq.scss b/source/sass/blocks/faq.scss new file mode 100644 index 000000000..7e6415e32 --- /dev/null +++ b/source/sass/blocks/faq.scss @@ -0,0 +1,21 @@ +.faq{ + margin: 0 auto; + background-color: $color-background-grey; +} + +.faq__wrapper{ + padding-right: 103px; + padding-left: 103px; + padding-top: 120px; + padding-bottom: 120px; +} + +.faq__title{ + font-family: $ff-Alumnisans; + font-size: 36px; + font-weight: 600; + line-height: normal; + letter-spacing: 1.62px; + color: $color-primary; + padding-bottom: 40px; +} diff --git a/source/sass/blocks/gym-membership.scss b/source/sass/blocks/gym-membership.scss index 457f6e34e..2494dec2e 100644 --- a/source/sass/blocks/gym-membership.scss +++ b/source/sass/blocks/gym-membership.scss @@ -2,7 +2,8 @@ position: relative; margin: 0 auto; width: 1366px; - padding-bottom: 198px; + padding-top: 118px; + padding-bottom: 80px; background-color: $color-background-grey; } @@ -19,6 +20,6 @@ .gym-membership__image{ position: absolute; - right: -8px; - bottom: -259px; + right: -10px; + bottom: -255px; } diff --git a/source/sass/blocks/gym.scss b/source/sass/blocks/gym.scss index 5e1ecf072..91d902505 100644 --- a/source/sass/blocks/gym.scss +++ b/source/sass/blocks/gym.scss @@ -1,7 +1,7 @@ .gym { margin: 0 auto; width: 1366px; - padding: 80px 103px 284px 163px; + padding: 80px 103px 166px 163px; } .gym__wrapper { diff --git a/source/sass/blocks/super-games.scss b/source/sass/blocks/super-games.scss index 7fc4b3960..73f150430 100644 --- a/source/sass/blocks/super-games.scss +++ b/source/sass/blocks/super-games.scss @@ -1,6 +1,7 @@ .super-games{ margin: 0 auto; width: 1160px; + padding-top: 118px; padding-bottom: 106px; } @@ -57,7 +58,6 @@ font-size: 13px; } - .super-games__date-time{ display: flex; flex-direction: column; diff --git a/source/sass/blocks/tabs.scss b/source/sass/blocks/tabs.scss index 6344b7acd..27d117fca 100644 --- a/source/sass/blocks/tabs.scss +++ b/source/sass/blocks/tabs.scss @@ -21,7 +21,6 @@ content: ""; } - @media screen and (max-width: 767px) { flex-wrap: wrap; } @@ -94,8 +93,6 @@ margin: 0 0 20px 0; } } - - } .tabs--unset .tabs__content { @@ -107,3 +104,32 @@ overflow-y: auto; overflow-x: hidden; } + +.tabs__faq { + display: grid; + grid-template-columns: 260px 1fr; + gap: 30px; +} + +.tabs__categories { + display: flex; + flex-direction: column; + + & .btn { + background-color: $color-transparent; + border: 1px solid $color-primary-light; + margin-bottom: 10px; + } +} + +.tabs__category{ + padding-top: 18px; + padding-bottom: 16px; + display: flex; + justify-content: center; + font-family: $ff-placeholder; + font-size: 18px; + font-weight: 600; + line-height: 1; + color: $color-primary; +} diff --git a/source/sass/global/utils.scss b/source/sass/global/utils.scss index 90a313c43..6fafa6938 100644 --- a/source/sass/global/utils.scss +++ b/source/sass/global/utils.scss @@ -25,22 +25,22 @@ // /* stylelint-enable */ // } -// .visually-hidden { -// position: absolute; +.visually-hidden { + position: absolute; -// width: 1px; -// height: 1px; -// margin: -1px; -// padding: 0; -// overflow: hidden; + width: 1px; + height: 1px; + margin: -1px; + padding: 0; + overflow: hidden; -// white-space: nowrap; + white-space: nowrap; -// border: 0; + border: 0; -// clip: rect(0 0 0 0); -// clip-path: inset(100%); -// } + clip: rect(0 0 0 0); + clip-path: inset(100%); +} // .scroll-lock-ios { // position: fixed; diff --git a/source/sass/style.scss b/source/sass/style.scss index 65f6cf65e..a85ad06e7 100644 --- a/source/sass/style.scss +++ b/source/sass/style.scss @@ -37,6 +37,9 @@ @import "blocks/advantage.scss"; @import "blocks/promotions.scss"; @import "blocks/promotion.scss"; +@import "blocks/data-accordion.scss"; +@import "blocks/accordion.scss"; +@import "blocks/faq.scss"; // --------------------------------- diff --git a/source/sass/variables.scss b/source/sass/variables.scss index 092acd971..59564d85f 100644 --- a/source/sass/variables.scss +++ b/source/sass/variables.scss @@ -13,6 +13,7 @@ $color-transparent: rgba(255, 255, 255, 0); $color-neon-blue: #2c39f2; $color-torch-red: #ff1553; $color-primary: #102654; +$color-primary-light: rgba(16, 38, 84, 0.20); $color-banner-red: #ed0233; $color-blue: #103aae; $color-blue-secondary: #2e35ac; From 874f29576e09170f8e6ecce5cec6997fae04e5bf Mon Sep 17 00:00:00 2001 From: Anna Lopatina Date: Wed, 16 Aug 2023 20:04:41 +0300 Subject: [PATCH 7/8] form --- build/css/style.css | 396 ++++++++++++++++++++++------- build/css/style.min.css | 2 +- build/css/style.min.css.map | 2 +- build/img/Ellipse (1).png | Bin 0 -> 38627 bytes build/img/Ellipse.png | Bin 0 -> 11864 bytes build/img/reviews.png | Bin 0 -> 11864 bytes build/img/reviews@2.png | Bin 0 -> 11864 bytes build/img/reviews@2x.png | Bin 0 -> 38627 bytes build/img/rewie.png | Bin 0 -> 38627 bytes build/index.html | 341 +++++++++++++++---------- build/js/main.min.js | 41 ++- build/js/main.min.js.map | 2 +- source/img/reviews.png | Bin 0 -> 11864 bytes source/img/reviews@2x.png | Bin 0 -> 38627 bytes source/index.html | 341 +++++++++++++++---------- source/js/main.js | 52 +++- source/sass/blocks/accordion.scss | 83 ++++-- source/sass/blocks/advantages.scss | 2 +- source/sass/blocks/btn.scss | 6 +- source/sass/blocks/faq.scss | 2 +- source/sass/blocks/intro.scss | 2 +- source/sass/blocks/reviews.scss | 98 +++++++ source/sass/blocks/tabs.scss | 17 +- source/sass/blocks/trainer.scss | 108 +++++++- source/sass/global/reboot.scss | 10 - source/sass/global/utils.scss | 15 ++ source/sass/style.scss | 1 + source/sass/variables.scss | 3 +- source/sass/vendor/swiper.scss | 63 +---- 29 files changed, 1108 insertions(+), 479 deletions(-) create mode 100644 build/img/Ellipse (1).png create mode 100644 build/img/Ellipse.png create mode 100644 build/img/reviews.png create mode 100644 build/img/reviews@2.png create mode 100644 build/img/reviews@2x.png create mode 100644 build/img/rewie.png create mode 100644 source/img/reviews.png create mode 100644 source/img/reviews@2x.png create mode 100644 source/sass/blocks/reviews.scss diff --git a/build/css/style.css b/build/css/style.css index f97ef0d8f..796e5b140 100644 --- a/build/css/style.css +++ b/build/css/style.css @@ -397,9 +397,6 @@ template { transition-property: transform; transition-property: transform, -webkit-transform; } -.swiper-slide:hover .swiper-slide__title { - bottom: 216px; -} .swiper-slide-invisible-blank { visibility: hidden; @@ -568,8 +565,8 @@ template { .swiper-button-prev, .swiper-button-next { position: absolute; - top: 51%; - width: calc(var(--swiper-navigation-size) / 13 * 27); + top: 50%; + width: calc(var(--swiper-navigation-size) / 42 * 27); height: var(--swiper-navigation-size); margin-top: calc(0px - var(--swiper-navigation-size) / 2); z-index: 10; @@ -1149,67 +1146,6 @@ button.swiper-pagination-bullet { overflow: hidden; } -.swiper-slide__title { - position: absolute; - left: 50%; - margin-left: -22%; - bottom: 23px; - color: #ffffff; - letter-spacing: -0.4px; - z-index: 5; -} - -.swiper-slide__description { - display: -webkit-box; - display: -ms-flexbox; - display: flex; - -webkit-box-orient: vertical; - -webkit-box-direction: normal; - -ms-flex-direction: column; - flex-direction: column; - -webkit-box-align: center; - -ms-flex-align: center; - align-items: center; - position: absolute; - top: 0; - left: 0; - right: 0; - bottom: 0; - background: rgba(16, 38, 84, 0.89); - opacity: 0; - -webkit-transition: opacity 0.4s linear; - transition: opacity 0.4s linear; -} -.swiper-slide__description:hover { - opacity: 1; -} - -.swiper-slide__subtitle { - font-family: "Roboto Condensed", "Arial", sans-serif; - font-size: 15px; - font-weight: 400; - line-height: 1.5; - color: #b6bdcc; - padding-top: 76px; - padding-bottom: 34px; -} - -.swiper-slide__list { - margin: 0; - padding: 0; - padding-left: 24px; -} - -.swiper-slide__item { - font-family: "Roboto Condensed", "Arial", sans-serif; - font-size: 14px; - font-weight: 400; - line-height: 1.5; - color: #ffffff; - letter-spacing: -0.8px; - padding-bottom: 13px; -} - @font-face { font-style: normal; font-weight: 400; @@ -1370,16 +1306,6 @@ button, appearance: none; } -h1, h2, h3, h4 { - margin: 0; - padding: 0; -} - -p { - margin: 0; - padding: 0; -} - .wrapper { position: relative; display: -webkit-box; @@ -1402,6 +1328,21 @@ p { flex-grow: 1; } +h1, h2, h3, h4 { + margin: 0; + padding: 0; +} + +p { + margin: 0; + padding: 0; +} + +blockquote { + margin: 0; + padding: 0; +} + .visually-hidden { position: absolute; width: 1px; @@ -1440,14 +1381,6 @@ p { opacity: 0.5; pointer-events: none; } -@media (hover: hover) { - .btn:hover:not(.focus-visible) { - opacity: 0.8; - } -} -.btn.focus-visible:focus { - opacity: 0.8; -} .modal { position: fixed; @@ -2120,7 +2053,7 @@ header::before { .intro { margin: 0 auto; width: 1366px; - padding: 35px 240px 92px 250px; + padding: 33px 240px 92px 250px; } .intro__wrapper { @@ -2495,6 +2428,17 @@ header::before { line-height: 1; color: #102654; } +.tabs__category.is-active { + border: none; + background-image: linear-gradient(151deg, #ED0233 0%, #003EB7 100%); + color: #ffffff; +} +.tabs__category:hover, .tabs__category:focus { + border-color: #102654; +} +.tabs__category:default { + color: rgba(16, 38, 84, 0.2); +} .gym-membership { position: relative; @@ -2739,7 +2683,7 @@ header::before { position: relative; margin: 0 auto; width: 1366px; - padding-bottom: 105px; + padding-bottom: 102px; } .trainer__title { @@ -2758,13 +2702,120 @@ header::before { margin: 0 auto; } +.trainer__swiper-button-prev { + left: 28px; +} + +.trainer__swiper-button-next { + right: 28px; +} + +.trainer__swiper-button-prev, +.trainer__swiper-button-next { + width: 56px; + height: 56px; + background-color: rgba(255, 255, 255, 0); + border: 1px solid rgba(255, 255, 255, 0); + border-radius: 50%; +} +.trainer__swiper-button-prev:hover, .trainer__swiper-button-prev:focus-visible, +.trainer__swiper-button-next:hover, +.trainer__swiper-button-next:focus-visible { + border-color: #102654; +} +.trainer__swiper-button-prev:active, +.trainer__swiper-button-next:active { + background-color: #102654; + border-color: #102654; +} +.trainer__swiper-button-prev:active::after, .trainer__swiper-button-prev:active::after, +.trainer__swiper-button-next:active::after, +.trainer__swiper-button-next:active::after { + color: #ffffff; +} +.trainer__swiper-button-prev:disabled::after, +.trainer__swiper-button-next:disabled::after { + opacity: 0.3; +} + +.trainer__swiper-button-prev::after, +.trainer__swiper-button-next::after { + color: #102654; + font-size: 32px; +} + +.trainer__slide:hover .trainer__slide-title { + bottom: 216px; +} + +.trainer__slide-title { + position: absolute; + left: 50%; + margin-left: -22%; + bottom: 23px; + color: #ffffff; + letter-spacing: -0.4px; + z-index: 5; +} + +.trainer__slide-description { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: rgba(16, 38, 84, 0.89); + opacity: 0; + -webkit-transition: opacity 0.4s linear; + transition: opacity 0.4s linear; +} +.trainer__slide-description:hover { + opacity: 1; +} + +.trainer__slide-subtitle { + font-family: "Roboto Condensed", "Arial", sans-serif; + font-size: 15px; + font-weight: 400; + line-height: 1.5; + color: #b6bdcc; + padding-top: 76px; + padding-bottom: 34px; +} + +.trainer__slide-list { + margin: 0; + padding: 0; + padding-left: 24px; +} + +.trainer__slide-item { + font-family: "Roboto Condensed", "Arial", sans-serif; + font-size: 14px; + font-weight: 400; + line-height: 1.5; + color: #ffffff; + letter-spacing: -0.8px; + padding-bottom: 13px; +} + .advantages { margin: 0 auto; background-color: #f8f9fc; } .advantages__wrapper { - padding-top: 108px; + padding-top: 110px; padding-right: 172px; padding-bottom: 129px; padding-left: 172px; @@ -3032,33 +3083,80 @@ header::before { margin: 0 auto; } .accordion__element:last-child { + position: relative; margin-bottom: 0; } +.accordion__element:last-child::before { + position: absolute; + content: ""; + left: 0; + right: 0; + bottom: -21px; + height: 1px; + background-color: rgba(16, 38, 84, 0.2); +} .accordion__element { position: relative; - margin-bottom: 13px; - padding: 10px; - padding-right: 177px; + margin-bottom: 18px; + padding-top: 24px; border-top: 1px solid rgba(16, 38, 84, 0.2); } -.accordion__element.is-active > .accordion__button { - opacity: 0.5; +.accordion__element.is-active .accordion__toggle::after { + display: none; } .accordion__button { + width: 100%; + padding: 10px; + cursor: pointer; + border: none; + background-color: rgba(255, 255, 255, 0); +} +.accordion__wrapper { + padding: 5px 10px; +} + +.accordion__toggle { position: absolute; right: 0; top: 25px; width: 42px; height: 42px; - border: 1px solid #1c3374; + border: 1px solid #102654; border-radius: 50%; - background-color: rgba(255, 255, 255, 0); - cursor: pointer; +} +.accordion__toggle::before { + position: absolute; + content: ""; + width: 18px; + height: 1px; + left: 11px; + top: 21px; + background-color: #102654; +} +.accordion__toggle::after { + position: absolute; + content: ""; + width: 18px; + height: 1px; + left: 11px; + top: 21px; + background-color: #102654; + -webkit-transform: rotate(90deg); + -ms-transform: rotate(90deg); + transform: rotate(90deg); +} +.accordion__toggle:hover, .accordion__toggle:focus { + background-color: #102654; +} +.accordion__toggle:hover::before, .accordion__toggle:hover::after, .accordion__toggle:focus::before, .accordion__toggle:focus::after { + background-color: #ffffff; +} +.accordion__toggle:disabled { + opacity: 0.3; } .accordion__title { - padding-top: 24px; - padding-bottom: 14px; + text-align: left; font-family: "Roboto Condensed", "Arial", sans-serif; font-size: 20px; font-weight: 500; @@ -3084,7 +3182,7 @@ header::before { padding-right: 103px; padding-left: 103px; padding-top: 120px; - padding-bottom: 120px; + padding-bottom: 54px; } .faq__title { @@ -3097,6 +3195,108 @@ header::before { padding-bottom: 40px; } +.reviews { + margin: 0 auto; + width: 1366px; +} + +.reviews__wrapper { + padding-top: 116px; + padding-left: 103px; + padding-bottom: 120px; + padding-right: 103px; +} + +.reviews__title { + text-align: center; + font-family: "Alumni Sans", "Arial", sans-serif; + font-size: 36px; + font-weight: 600; + line-height: normal; + letter-spacing: 1.62px; + color: #102654; + padding-bottom: 40px; +} + +.reviews__slide-wrapper { + max-width: 560px; + margin: 0 auto; + padding: 54px 62px; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + gap: 27px; + background-color: #1c3374; + -webkit-filter: drop-shadow(rgba(28, 51, 116, 0.2)); + filter: drop-shadow(rgba(28, 51, 116, 0.2)); +} + +.reviews__swiper-button-prev { + left: 224px; +} + +.reviews__swiper-button-next { + right: 224px; +} + +.reviews__swiper-button-prev, +.reviews__swiper-button-next { + width: 56px; + height: 56px; + background-color: rgba(255, 255, 255, 0); + border: 1px solid rgba(255, 255, 255, 0); + border-radius: 50%; +} +.reviews__swiper-button-prev:hover, .reviews__swiper-button-prev:focus-visible, +.reviews__swiper-button-next:hover, +.reviews__swiper-button-next:focus-visible { + border-color: #102654; +} +.reviews__swiper-button-prev:active, +.reviews__swiper-button-next:active { + background-color: #102654; + border-color: #102654; +} +.reviews__swiper-button-prev:active::after, .reviews__swiper-button-prev:active::after, +.reviews__swiper-button-next:active::after, +.reviews__swiper-button-next:active::after { + color: #ffffff; +} +.reviews__swiper-button-prev:disabled::after, +.reviews__swiper-button-next:disabled::after { + opacity: 0.3; +} + +.reviews__swiper-button-prev::after, +.reviews__swiper-button-next::after { + font-size: 32px; + color: #102654; +} + +.reviews__images { + -ms-flex-item-align: start; + align-self: flex-start; + padding-top: 6px; +} + +.reviews__slide-title { + font-family: "Roboto Condensed", "Arial", sans-serif; + font-size: 17px; + font-weight: 700; + line-height: 1.5; + color: #ffffff; + padding-bottom: 10px; +} + +.reviews__slide-description { + font-family: "Roboto Condensed", "Arial", sans-serif; + font-size: 15px; + font-weight: 400; + line-height: 1.5; + color: #ffffff; + letter-spacing: -0.5px; +} + /* @mixin hover-focus { @media (hover: hover) { &:hover:not(.focus-visible) { diff --git a/build/css/style.min.css b/build/css/style.min.css index f98803c17..54d73eef9 100644 --- a/build/css/style.min.css +++ b/build/css/style.min.css @@ -1,3 +1,3 @@ /*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */ -@-webkit-keyframes swiper-preloader-spin{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes swiper-preloader-spin{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}html{-webkit-text-size-adjust:100%}.tabs__element p{margin:0}details,main{display:block}h1{font-size:2em}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}code,kbd,pre,samp{font-size:1em;font-family:monospace,monospace}a{background-color:transparent;color:#000;text-decoration:none}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:none}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{margin:0;font-size:100%;line-height:1.15;font-family:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{display:table;max-width:100%;color:inherit;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto;resize:none}[type=checkbox],[type=radio],legend{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}summary{display:list-item}[hidden],template{display:none}@font-face{font-family:"swiper-icons";src:url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");font-weight:400;font-style:normal}:root{--swiper-theme-color:#afafaf}.swiper,.swiper-wrapper{position:relative;z-index:1}.swiper{margin-left:auto;margin-right:auto;overflow:hidden;list-style:none;padding:0}.swiper-vertical>.swiper-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swiper-wrapper{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-box-sizing:content-box;box-sizing:content-box}.swiper-android .swiper-slide,.swiper-wrapper{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.swiper-pointer-events{-ms-touch-action:pan-y;touch-action:pan-y}.swiper-pointer-events.swiper-vertical{-ms-touch-action:pan-x;touch-action:pan-x}.swiper-slide{-ms-flex-negative:0;flex-shrink:0;width:100%;height:100%;position:relative;-webkit-transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform}.swiper-slide:hover .swiper-slide__title{bottom:216px}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height,-webkit-transform;transition-property:transform,height;transition-property:transform,height,-webkit-transform}.swiper-3d,.swiper-3d.swiper-css-mode .swiper-wrapper{-webkit-perspective:1200px;perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-wrapper{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear,right top,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:linear-gradient(to left,rgba(0,0,0,.5),transparent)}.swiper-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(transparent));background-image:linear-gradient(to right,rgba(0,0,0,.5),transparent)}.swiper-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:linear-gradient(to top,rgba(0,0,0,.5),transparent)}.swiper-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.5)),to(transparent));background-image:linear-gradient(to bottom,rgba(0,0,0,.5),transparent)}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-horizontal.swiper-css-mode>.swiper-wrapper{-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory}.swiper-vertical.swiper-css-mode>.swiper-wrapper{-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory}.swiper-centered>.swiper-wrapper::before{content:"";-ms-flex-negative:0;flex-shrink:0;-webkit-box-ordinal-group:10000;-ms-flex-order:9999;order:9999}.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{-webkit-margin-start:var(--swiper-centered-offset-before);margin-inline-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{-webkit-margin-before:var(--swiper-centered-offset-before);margin-block-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:"";position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:51%;width:calc(var(--swiper-navigation-size)/13*27);height:var(--swiper-navigation-size);margin-top:calc(0px - var(--swiper-navigation-size)/2);z-index:10;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:var(--swiper-navigation-color, var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;font-variant:initial;line-height:1}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:10px;right:auto}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:"prev"}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:10px;left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:"next"}.swiper-button-lock{display:none}.swiper-pagination{position:absolute;text-align:center;-webkit-transition:300ms opacity;transition:300ms opacity;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:10px;left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{-webkit-transform:scale(.33);-ms-transform:scale(.33);transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{-webkit-transform:scale(.66);-ms-transform:scale(.66);transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{-webkit-transform:scale(.33);-ms-transform:scale(.33);transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{-webkit-transform:scale(.66);-ms-transform:scale(.66);transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{-webkit-transform:scale(.33);-ms-transform:scale(.33);transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));height:var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));display:inline-block;border-radius:50%;background:var(--swiper-pagination-bullet-inactive-color, #000);opacity:var(--swiper-pagination-bullet-inactive-opacity, 0.2)}button.swiper-pagination-bullet{border:0;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color, var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:10px;top:50%;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap, 6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;-webkit-transition:200ms top,200ms -webkit-transform;transition:200ms transform,200ms top;transition:200ms transform,200ms top,200ms -webkit-transform}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap, 4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{-webkit-transition:200ms left,200ms -webkit-transform;transition:200ms transform,200ms left;transition:200ms transform,200ms left,200ms -webkit-transform}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{-webkit-transition:200ms right,200ms -webkit-transform;transition:200ms transform,200ms right;transition:200ms transform,200ms right,200ms -webkit-transform}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color, var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);-webkit-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{-webkit-transform-origin:right top;-ms-transform-origin:right top;transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:4px;left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:10px;position:relative;background:rgba(0,0,0,.1)}.swiper-horizontal>.swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.custom-select__text br,.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.swiper-slide-zoomed{cursor:move}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;-webkit-transform-origin:50%;-ms-transform-origin:50%;transform-origin:50%;-webkit-animation:swiper-preloader-spin 1s infinite linear;animation:swiper-preloader-spin 1s infinite linear;-webkit-box-sizing:border-box;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{-webkit-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;-webkit-transition-property:opacity;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cards,.swiper-cube,.swiper-flip{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{-webkit-transform-origin:100% 0;-ms-transform-origin:100% 0;transform-origin:100% 0}.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-next+.swiper-slide,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:"";background:#000;position:absolute;left:0;top:0;bottom:0;right:0;-webkit-filter:blur(50px);filter:blur(50px)}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-cards .swiper-slide,.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}.swiper-creative .swiper-slide{-webkit-transition-property:opacity,height,-webkit-transform;transition-property:transform,opacity,height;transition-property:transform,opacity,height,-webkit-transform}.swiper-cards .swiper-slide{-webkit-transform-origin:center bottom;-ms-transform-origin:center bottom;transform-origin:center bottom}.swiper-slide__title{position:absolute;left:50%;margin-left:-22%;bottom:23px;color:#fff;letter-spacing:-.4px;z-index:5}.swiper-slide__description{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(16,38,84,.89);opacity:0;-webkit-transition:opacity .4s linear;transition:opacity .4s linear}.swiper-slide__description:hover{opacity:1}.swiper-slide__subtitle{font-family:"Roboto Condensed","Arial",sans-serif;font-size:15px;font-weight:400;line-height:1.5;color:#b6bdcc;padding-top:76px;padding-bottom:34px}.swiper-slide__list{margin:0;padding:0 0 0 24px}.swiper-slide__item{font-size:14px;font-weight:400;line-height:1.5;color:#fff;letter-spacing:-.8px;padding-bottom:13px}@font-face{font-style:normal;font-weight:400;font-family:"Roboto Condensed";font-display:swap;src:url(../fonts/RobotoCondensed.woff2) format("woff2")}@font-face{font-style:normal;font-weight:300;font-family:"Roboto Condensed";font-display:swap;src:url(../fonts/RobotoCondensed-Light.woff2) format("woff2")}@font-face{font-style:normal;font-weight:600;font-family:"Roboto Condensed";font-display:swap;src:url(../fonts/RobotoCondensed-Bold.woff2) format("woff2")}@font-face{font-style:normal;font-weight:600;font-family:"Alumni Sans";font-display:swap;src:url(../fonts/AlumniSans-SemiBold.woff2) format("woff2")}*,::after,::before{-webkit-box-sizing:border-box;box-sizing:border-box}body,html{margin:0;padding:0;min-height:100vh}.swiper-slide__item,html{font-family:"Roboto Condensed","Arial",sans-serif}html{font-style:normal;font-weight:300;font-size:16px;line-height:24px;color:#102654;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{width:100%;height:100%;background-color:#fff}img,video{display:block;max-width:100%;height:auto}input:-webkit-autofill{-webkit-box-shadow:inset 0 0 0 1000px #fff;box-shadow:inset 0 0 0 1000px #fff;-webkit-text-fill-color:#000}input,select,textarea{border-radius:0}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{opacity:1}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1}input:-ms-input-placeholder,textarea:-ms-input-placeholder{opacity:1}input::-ms-input-placeholder,textarea::-ms-input-placeholder{opacity:1}input::placeholder,textarea::placeholder{opacity:1}input:invalid,textarea:invalid{-webkit-box-shadow:none;box-shadow:none}input::-ms-clear,input::-ms-reveal{display:none}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-results-button,input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none;appearance:none}input::-webkit-inner-spin-button,input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none;appearance:none}input[type=number]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}input:matches([type=email],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=url]),select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:none;-moz-appearance:none;appearance:none}h1,h2,h3,h4,p{margin:0;padding:0}.wrapper{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.wrapper .footer,.wrapper .header{-ms-flex-negative:0;flex-shrink:0}.wrapper main{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}.custom-select select,.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;white-space:nowrap;border:0;clip:rect(0 0 0 0);-webkit-clip-path:inset(100%);clip-path:inset(100%)}.container{width:100%;max-width:1366px;margin:0 auto}.btn{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;padding:10px 20px;color:#fff;background-color:#2c39f2;border:0;cursor:pointer;-webkit-transition:opacity .3s ease;transition:opacity .3s ease}.btn--red{background-color:#ff1553}.btn:disabled{opacity:.5;pointer-events:none}@media (hover:hover){.btn:hover:not(.focus-visible){opacity:.8}}.btn.focus-visible:focus{opacity:.8}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch;background-color:rgba(0,0,0,.8);-webkit-transform:scale(1.2);-ms-transform:scale(1.2);transform:scale(1.2);visibility:hidden;opacity:0;-webkit-transition:opacity .6s cubic-bezier(.55,0,.1,1),visibility .6s cubic-bezier(.55,0,.1,1),-webkit-transform .6s cubic-bezier(.55,0,.1,1);transition:opacity .6s cubic-bezier(.55,0,.1,1),transform .6s cubic-bezier(.55,0,.1,1),visibility .6s cubic-bezier(.55,0,.1,1);transition:opacity .6s cubic-bezier(.55,0,.1,1),transform .6s cubic-bezier(.55,0,.1,1),visibility .6s cubic-bezier(.55,0,.1,1),-webkit-transform .6s cubic-bezier(.55,0,.1,1);pointer-events:none;-ms-overflow-style:none;scrollbar-width:none}.modal::-webkit-scrollbar{display:none}.modal__wrapper{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;min-height:100%;padding:60px 40px}@media (max-width:767px){.modal__wrapper{padding:60px 16px}}.modal__overlay{position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer}.modal__content{position:relative;width:600px;padding:40px;background-color:#fff}@media (max-width:767px){.modal__content{width:100%;padding:20px}}.modal__close-btn{position:absolute;top:22px;right:22px;z-index:1;width:40px;height:40px;padding:0;background:0 0;border:0;cursor:pointer}.modal--responsive .modal__content{width:100%}.modal--fit-content .modal__content{width:auto}@media (max-width:767px){.modal--fit-content .modal__content{width:100%}}.modal--no-scale{-webkit-transform:none;-ms-transform:none;transform:none}.modal--preload{-webkit-transition:none;transition:none}.modal.is-active{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);visibility:visible;opacity:1;pointer-events:auto}.custom-input,.custom-textarea{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;width:530px;padding:14px 0 28px}@media screen and (max-width:767px){.custom-input,.custom-textarea{padding:4px 0 48px;width:100%}}.custom-input label,.custom-textarea label{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%}@media screen and (max-width:767px){.custom-input label,.custom-textarea label{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.custom-input label input,.custom-input label textarea,.custom-textarea label input,.custom-textarea label textarea{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:300px;min-height:48px;margin-left:auto;padding:10px;border:2px solid rgba(0,0,0,.2);border-radius:5px;outline:0;-webkit-transition:border .3s ease;transition:border .3s ease}@media screen and (max-width:767px){.custom-input label input,.custom-input label textarea,.custom-textarea label input,.custom-textarea label textarea{max-width:unset;width:100%}}.custom-input label input:hover,.custom-input label textarea:hover,.custom-textarea label input:hover,.custom-textarea label textarea:hover{border:2px solid rgba(0,0,0,.5)}.custom-input label input:focus,.custom-input label textarea:focus,.custom-textarea label input:focus,.custom-textarea label textarea:focus{border:2px solid rgba(0,0,0,.8)}@media screen and (max-width:767px){.custom-input__label,.custom-textarea__label{margin:0 0 18px}}.custom-input__error,.custom-textarea__error{position:absolute;right:0;bottom:35px;color:#ff1553;opacity:0;-webkit-transition:opacity .3s ease;transition:opacity .3s ease}@media screen and (max-width:767px){.custom-input__error,.custom-textarea__error{bottom:20px}}.custom-input.is-invalid input,.custom-input.is-invalid textarea,.custom-textarea.is-invalid input,.custom-textarea.is-invalid textarea{border:2px solid #ff1553}.custom-input.is-invalid input:focus,.custom-input.is-invalid input:hover,.custom-input.is-invalid textarea:focus,.custom-input.is-invalid textarea:hover,.custom-textarea.is-invalid input:focus,.custom-textarea.is-invalid input:hover,.custom-textarea.is-invalid textarea:focus,.custom-textarea.is-invalid textarea:hover{border:2px solid rgba(255,21,83,.5)}.custom-input.is-valid input,.custom-textarea.is-valid input{border:2px solid #22b259}.custom-input.is-valid input:focus,.custom-input.is-valid input:hover,.custom-textarea.is-valid input:focus,.custom-textarea.is-valid input:hover{border:2px solid rgba(34,178,89,.5)}.custom-input .input-message,.custom-textarea .input-message{position:absolute;right:0;bottom:-5px}.custom-input .input-message.is-invalid,.custom-textarea .input-message.is-invalid{color:red}.custom-input .input-message.is-valid,.custom-textarea .input-message.is-valid{color:#15ab07}.custom-toggle{position:relative;font-size:18px;line-height:27px;font-weight:300;display:-webkit-box;display:-ms-flexbox;display:flex;width:500px;padding:14px 0 10px 36px}@media screen and (max-width:767px){.custom-toggle{padding:14px 0 10px;width:100%}}.custom-toggle:last-of-type{padding:14px 0 58px 36px}@media screen and (max-width:767px){.custom-toggle:last-of-type{padding:14px 0 58px}}.custom-toggle input{position:absolute;width:1px;height:1px;margin:-1px;clip:rect(0 0 0 0)}.custom-toggle label{position:relative;padding-left:52px;cursor:pointer}.custom-toggle label span{margin-bottom:0;margin-left:0}.custom-toggle--checkbox .custom-toggle__icon,.custom-toggle--radio .custom-toggle__icon{position:absolute;top:0;left:0;width:28px;height:28px;border:1.5px solid #2c39f2;-webkit-transition:border .3s ease;transition:border .3s ease}.custom-toggle--checkbox .custom-toggle__icon::before,.custom-toggle--radio .custom-toggle__icon::before{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.custom-toggle--checkbox .custom-toggle__icon::before{background-color:transparent;-webkit-transition:background-color .3s ease;transition:background-color .3s ease}.custom-toggle--radio .custom-toggle__icon{border:1px solid #2c39f2;border-radius:50%}.custom-toggle--radio .custom-toggle__icon::before{color:transparent;border-radius:50%;-webkit-transition:color .3s ease;transition:color .3s ease}.custom-toggle input:checked+.custom-toggle__icon{border:1.5px solid #2c39f2}.custom-toggle input:checked+.custom-toggle__icon::before{background-color:#2c39f2}.custom-toggle.is-invalid label span{color:#ff1553}.custom-toggle .input-message{position:absolute;right:0;bottom:-5px}.custom-toggle .input-message.is-invalid{color:red}.custom-toggle .input-message.is-valid{color:#15ab07}.custom-select{position:relative;width:300px;padding:14px 0 28px;margin:0 0 44px}@media screen and (max-width:767px){.custom-select{padding:4px 0 14px;width:100%}}.custom-select__label{position:absolute;top:50%;left:10px;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:opacity .3s ease,-webkit-transform .3s ease;transition:transform .3s ease,opacity .3s ease;transition:transform .3s ease,opacity .3s ease,-webkit-transform .3s ease;pointer-events:none}@media screen and (max-width:767px){.custom-select__label{-webkit-transform:translateY(calc(-50% - 5px));-ms-transform:translateY(calc(-50% - 5px));transform:translateY(calc(-50% - 5px))}}.custom-select__placeholder{position:absolute;top:50%;left:10px;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:opacity .3s ease,-webkit-transform .3s ease;transition:transform .3s ease,opacity .3s ease;transition:transform .3s ease,opacity .3s ease,-webkit-transform .3s ease;pointer-events:none}@media screen and (max-width:767px){.custom-select__placeholder{-webkit-transform:translateY(calc(-50% - 5px));-ms-transform:translateY(calc(-50% - 5px));transform:translateY(calc(-50% - 5px))}}.custom-select__button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;height:48px;padding:5px 10px;background-color:transparent;border:2px solid rgba(0,0,0,.2);border-radius:5px;outline:0;cursor:pointer;-webkit-transition:border .3s ease;transition:border .3s ease}.custom-select__button:hover{border:2px solid rgba(0,0,0,.5)}.custom-select__button:focus{border:2px solid rgba(0,0,0,.8)}.custom-select__button:disabled{pointer-events:none;opacity:.3}.custom-select__list{position:absolute;bottom:10px;z-index:1;width:100%;max-height:100px;margin:0;padding:0;overflow-y:auto;list-style:none;background-color:#fff;border:2px solid #000;-webkit-transform:translateY(100%);-ms-transform:translateY(100%);transform:translateY(100%);visibility:hidden;opacity:0;-webkit-transition:visibility .3s ease,opacity .3s ease;transition:visibility .3s ease,opacity .3s ease}.custom-select__item{padding:5px;outline:0;cursor:pointer;-webkit-transition:background-color .3s ease;transition:background-color .3s ease}.custom-select__item[aria-selected=true]{background-color:rgba(0,0,0,.2)}@media (hover:hover){.custom-select__item[aria-selected=true]:hover:not(.focus-visible){background-color:rgba(0,0,0,.2)}}.custom-select__item[aria-selected=true].focus-visible:focus{background-color:rgba(0,0,0,.2)}@media (hover:hover){.custom-select__item:hover:not(.focus-visible){background-color:rgba(0,0,0,.4)}}.custom-select__item.focus-visible:focus{background-color:rgba(0,0,0,.4)}.custom-select__error{position:absolute;bottom:-15px;left:0;color:#ff1553;opacity:0;-webkit-transition:opacity .1s ease;transition:opacity .1s ease}.custom-select__text{font-size:20px;line-height:24px;-ms-flex-negative:0;flex-shrink:0;width:80%;overflow:hidden;text-align:left;white-space:nowrap;text-overflow:ellipsis;opacity:0;-webkit-transition:opacity .3s ease .1s;transition:opacity .3s ease .1s}.custom-select__icon{-ms-flex-negative:0;flex-shrink:0;width:20px;height:10px;margin-left:auto;background-color:#000;-webkit-transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease;-webkit-clip-path:polygon(100% 0,100% 20%,50% 100%,0 20%,0 0,50% 80%);clip-path:polygon(100% 0,100% 20%,50% 100%,0 20%,0 0,50% 80%)}.custom-select.is-disabled{pointer-events:none}.custom-select.is-disabled .custom-select__list{display:none}.custom-select.open-up .custom-select__list{bottom:auto;top:0;-webkit-transform:translateY(calc(-100% + 10px));-ms-transform:translateY(calc(-100% + 10px));transform:translateY(calc(-100% + 10px))}.custom-select.is-open .custom-select__list{visibility:visible;opacity:1}.custom-select.is-open .custom-select__icon{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.custom-select.is-open .custom-select__label{opacity:0}.custom-select.not-empty .custom-select__text{opacity:1}.custom-select.not-empty .custom-select__label,.custom-select.not-empty .custom-select__placeholder{opacity:0}.custom-select.is-invalid .custom-select__error{opacity:1}.custom-select.is-invalid .custom-select__button{border:2px solid #ff1553}.custom-select.is-invalid .custom-select__button:focus,.custom-select.is-invalid .custom-select__button:hover{border:2px solid rgba(255,21,83,.5)}.custom-select--placeholder .custom-select__label,.custom-select.slide-up.is-open .custom-select__label,.custom-select.slide-up.not-empty .custom-select__label{-webkit-transform:translateY(calc(-50% - 40px));-ms-transform:translateY(calc(-50% - 40px));transform:translateY(calc(-50% - 40px));opacity:1}.custom-select--placeholder.is-open .custom-select__label,.custom-select--placeholder.not-empty .custom-select__label,.custom-select.slide-up.is-open .custom-select__text,.custom-select.slide-up.not-empty .custom-select__text{opacity:1}.custom-select .input-message,.tabs__controls::before{position:absolute;right:0;bottom:-5px}.custom-select .input-message.is-invalid{color:red}.custom-select .input-message.is-valid{color:#15ab07}header{position:relative;margin:0 auto;width:1366px}header::before{position:absolute;background-image:conic-gradient(from 151deg at 16.03% 39.06%,#003d85 32.2363382578deg,#b80027 313.3060026169deg);width:1366px;height:642px;content:""}.header__contact-link,.header__logo{position:absolute;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.header__logo{top:25px;left:103px}.header__contact-link{top:16px;right:103px;font-family:ff-Alumnisans;font-size:24px;font-weight:600;line-height:normal;letter-spacing:-.6px;font-style:normal;color:#fff}.intro{margin:0 auto;width:1366px;padding:35px 240px 92px 250px}.intro__text,.intro__wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.intro__wrapper{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding-right:64px}.intro__text{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;text-align:right}.intro__subtitle,.intro__title{font-family:"Alumni Sans","Arial",sans-serif;font-size:50px;font-weight:600;line-height:114px;letter-spacing:1.8px;color:#fff;padding-bottom:46px}.intro__subtitle{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1;font-family:Alumni Sans;font-size:48px;line-height:normal;letter-spacing:1.44px;text-align:right;padding-top:110px;padding-bottom:12px;padding-right:50px}.intro__description{position:absolute;top:305px;left:-128px;font-family:"Roboto Condensed","Arial",sans-serif;font-weight:400;font-size:14px;line-height:1.5;color:#fff;letter-spacing:-.7px}.intro__link-buy{padding:20px 56px;letter-spacing:.9px}.button{-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;text-align:center;text-decoration:none;font-family:"Roboto Condensed","Arial",sans-serif;font-weight:600;font-size:11px;line-height:normal;color:#fff;background-color:transparent;border:4px solid #fff;text-transform:uppercase;cursor:pointer}.gym{margin:0 auto;width:1366px;padding:80px 103px 166px 163px}.gym__text,.gym__wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.gym__wrapper{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.gym__text{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-top:40px;padding-right:85px}.gym__title{font-family:"Alumni Sans","Arial",sans-serif;font-size:32px;font-weight:600;line-height:normal;letter-spacing:1.44px;color:#102654;padding-bottom:8px}.gym__description,.gym__subtitle{font-family:"Roboto Condensed","Arial",sans-serif;line-height:1.5;color:#102654}.gym__subtitle{font-size:14px;font-weight:400;padding-bottom:40px;letter-spacing:.7px}.gym__description{font-size:16px;font-weight:300}.gym__description--supergym{padding-bottom:8px}.gym__video-wrapper,[data-tabs=parent] [data-tabs=content]{position:relative}.gym__video{margin-left:378px;margin-top:-112px}.gym__video-button{position:absolute;width:100px;height:100px;top:64px;left:518px;background-color:transparent;border-radius:50%;border:0}.gym__button-image{-webkit-transform:rotate(150deg);-ms-transform:rotate(150deg);transform:rotate(150deg)}.gym__button-border{position:absolute;top:0;left:-9px;width:100px;height:100px}[data-tabs=parent]{overflow:hidden}[data-tabs=element].for-load,[data-tabs=parent].no-transition-global [data-tabs=content],[data-tabs=parent].no-transition-global [data-tabs=control],[data-tabs=parent].no-transition-global [data-tabs=element],[data-tabs=parent].no-transition>[data-tabs=content],[data-tabs=parent].no-transition>[data-tabs=control],[data-tabs=parent].no-transition>[data-tabs=element]{-webkit-transition:none;transition:none}[data-tabs=element]{position:absolute;visibility:hidden;opacity:0;-webkit-transition:opacity .3s ease-in,visibility .3s ease-in;transition:opacity .3s ease-in,visibility .3s ease-in}[data-tabs=element].for-load{position:static;visibility:visible;opacity:1}[data-tabs=element].is-active{z-index:1;visibility:visible;opacity:1}.tabs{max-width:100%}.tabs__controls{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding-bottom:12px;margin:0 auto 40px;width:342px}.tabs__controls::before{bottom:0;left:0;height:2px;background-color:rgba(120,120,120,.2);content:""}@media screen and (max-width:767px){.tabs__controls{-ms-flex-wrap:wrap;flex-wrap:wrap}}.tabs__control{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;text-transform:uppercase;cursor:pointer;opacity:.5;min-width:auto;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:0}@media screen and (max-width:1023px){.tabs__control{margin:0 10px;padding:15px}}@media screen and (max-width:767px){.tabs__control{margin:10px 2% 0;padding:10px;width:45%}}.tabs__control.is-active{opacity:1;pointer-events:none}.tabs__control.is-active::before{position:absolute;bottom:-12px;right:0;left:0;height:2px;background-color:#ed0233;content:""}.tabs__button{font-family:"Roboto Condensed","Arial",sans-serif;font-size:20px;font-weight:400;line-height:1.5;color:#102654;text-transform:none;letter-spacing:-1.1px;border:0}.tabs__content{margin-bottom:40px;-webkit-transition:height .3s;transition:height .3s}.tabs__element{width:100%}@media screen and (max-width:767px){.tabs__element{padding:15px}}.tabs__element p:not(:last-child){margin:0 0 20px}.tabs--unset .tabs__content{height:100px}.tabs--unset .tabs__element{height:100%;overflow-y:auto;overflow-x:hidden}.tabs__faq{display:-ms-grid;display:grid;-ms-grid-columns:260px 1fr;grid-template-columns:260px 1fr;gap:30px}.tabs__categories,.tabs__category{display:-webkit-box;display:-ms-flexbox;display:flex}.tabs__categories{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.tabs__categories .btn{background-color:transparent;border:1px solid rgba(16,38,84,.2);margin-bottom:10px}.tabs__category{padding-top:18px;padding-bottom:16px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-family:"Roboto Condensed","Arial",sans-serif;font-size:18px;font-weight:600;line-height:1;color:#102654}.gym-membership{position:relative;margin:0 auto;width:1366px;padding-top:118px;padding-bottom:80px;background-color:#f8f9fc}.gym-membership__title{font-family:"Alumni Sans","Arial",sans-serif;font-size:36px;font-weight:600;line-height:normal;letter-spacing:1.62px;color:#102654;padding-bottom:18px;text-align:center}.gym-membership__image{position:absolute;right:-10px;bottom:-255px}.cards__list{display:-ms-grid;display:grid;-ms-grid-columns:1fr 1fr 1fr;grid-template-columns:1fr 1fr 1fr;gap:30px;margin:0 auto;padding:0 103px;list-style-type:none;width:1366px}.cards__item{-webkit-box-sizing:border-box;box-sizing:border-box;border:7px solid transparent;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;text-align:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:54px 62px 60px;background-color:#fff}.cards__item--current{-o-border-image:linear-gradient(151deg,#ed0233 0,#003eb7 100%);border-image:linear-gradient(151deg,#ed0233 0,#003eb7 100%);border-image-slice:1}.cards__item--current .cards__link-buy{border:0;background-image:linear-gradient(151deg,#ed0233 0,#003eb7 100%);color:#fff;padding:26px 43px}.cards__title{font-family:"Roboto Condensed","Arial",sans-serif;font-weight:700;font-size:23px;line-height:1.1;color:#102654;margin-bottom:10px}.cards__description,.cards__price,.cards__price-shadow{font-family:"Roboto Condensed","Arial",sans-serif;line-height:1.5}.cards__description{font-weight:400;font-size:16px;color:#102654;margin-bottom:12px}.cards__price,.cards__price-shadow{font-weight:700}.cards__price{font-size:60px;color:#103aae;margin-top:-97px;margin-bottom:35px}.cards__price-shadow{font-size:100px;color:#e8e8e8}.cards__link-buy{color:#102654;font-size:11px;font-weight:700;letter-spacing:1.3px;border:2px solid #102654;padding:24px 39px}.super-games{margin:0 auto;width:1160px;padding-top:118px;padding-bottom:106px}.super-games__wrapper{display:-ms-grid;display:grid;-ms-grid-columns:500px auto;grid-template-columns:500px auto}.super-games__images{background-size:cover}.super-games__text{-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding:85px 75px 83px 77px;background-color:#ed0233}.super-games__intro{display:-ms-grid;display:grid;-ms-grid-columns:201px auto;grid-template-columns:201px auto;gap:50px}.super-games__title{font-family:"Alumni Sans","Arial",sans-serif;font-weight:600;font-size:56px;line-height:.96;color:#fff;letter-spacing:2.46px;text-transform:uppercase;padding-bottom:28px;text-align:center}.super-games__description{font-family:"Roboto Condensed","Arial",sans-serif;font-weight:400;font-size:18px;line-height:1.5;letter-spacing:-1px;color:#fff;padding-bottom:43px}.super-games__link-application{padding:25px 0;font-size:13px}.super-games__date-time{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:10px}.super-games__time-table{margin-top:-2px;font-family:"Roboto Condensed","Arial",sans-serif;font-weight:400;font-size:18px;line-height:1.5;color:#fff;letter-spacing:.7px}.super-games__date-wrapper{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:7px}.super-games__date-wrapper::before{position:absolute;top:4px;right:0;left:0;height:1px;background-color:#fff;content:""}.super-games__date{font-family:"Roboto Condensed","Arial",sans-serif;font-weight:700;font-size:40px;line-height:1.5;color:#fff}.super-games__month-year{font-size:14px}.trainer{position:relative;margin:0 auto;width:1366px;padding-bottom:105px}.trainer__title{font-family:"Alumni Sans","Arial",sans-serif;font-size:36px;font-weight:600;line-height:normal;letter-spacing:1.62px;color:#102654;padding-left:103px;padding-bottom:48px}.trainer__swiper{width:1160px;margin:0 auto}.advantages{margin:0 auto;background-color:#f8f9fc}.advantages__wrapper{padding:108px 172px 129px}.advantages__title{font-family:"Alumni Sans","Arial",sans-serif;font-size:36px;font-weight:600;line-height:normal;letter-spacing:1.62px;color:#102654;text-align:center;margin-bottom:29px}.advantages__list{margin:0;padding:0;list-style-type:none;display:-ms-grid;display:grid;-ms-grid-columns:1fr 240px 1fr;grid-template-columns:1fr 240px 1fr;-webkit-column-gap:54px;-moz-column-gap:54px;column-gap:54px;row-gap:130px}.advantage{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;gap:32px;padding-left:6px}.advantage:not(:nth-last-child(-n+3))::before{position:absolute;bottom:-76px;right:0;left:0;height:2px;background-color:#d10a42;opacity:.2;content:""}.advantage--center{-ms-grid-column:2;-ms-grid-column-span:1;grid-column:2/3;-ms-grid-row:1;-ms-grid-row-span:2;grid-row:1/3;margin-top:28px;margin-bottom:8px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;background-color:#1c3374;text-align:center;padding-top:42px;padding-left:0;gap:0}.advantage__number-wrapper{position:relative}.advantage__number{font-family:"Roboto Condensed","Arial",sans-serif;font-size:71px;font-weight:700;line-height:1.5;background-color:#0041ca;background-image:linear-gradient(129deg,#d10a42 0,#0041ca 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.advantage__number--center{font-size:76px;line-height:1.2;background-image:none;background-color:#fff;letter-spacing:1px}.advantage__number-text,.advantage__title{font-family:"Roboto Condensed","Arial",sans-serif;line-height:1.5}.advantage__number-text{position:absolute;bottom:2px;font-size:14px;font-weight:400;letter-spacing:-1px;color:#2e35ac}.advantage__title{padding-top:20px;padding-bottom:5px;font-size:20px;font-weight:700;letter-spacing:-.7px;color:#102654}.advantage__title--center{color:#fff;font-size:21px;letter-spacing:.7px;padding:0 0 33px}.advantage__description{font-family:"Roboto Condensed","Arial",sans-serif;font-size:16px;font-weight:300;line-height:1.4;color:#102654}.advantage__description--center{color:#fff}.promotions{margin:0 auto}.promotions__wrapper{padding:126px 103px 120px}.promotions__title{font-family:"Alumni Sans","Arial",sans-serif;font-size:54px;font-weight:600;line-height:normal;letter-spacing:1.62px;color:#102654;text-align:center;margin-bottom:34px}.promotions__list{margin:0;padding:0;list-style-type:none;display:-ms-grid;display:grid;-ms-grid-columns:1fr 1fr;grid-template-columns:1fr 1fr;gap:40px}.promotion{padding:18px 28px;-webkit-box-sizing:border-box;box-sizing:border-box;border:7px solid transparent;-o-border-image:linear-gradient(151deg,#ed0233 0,#003eb7 100%);border-image:linear-gradient(151deg,#ed0233 0,#003eb7 100%);border-image-slice:1}.promotion--big{padding:0;-ms-grid-row:1;-ms-grid-row-span:2;grid-row:1/3;display:-webkit-box;display:-ms-flexbox;display:flex;border:0}.promotion__text{padding:37px 44px;background-color:#ed0233}.promotion__title{font-family:"Roboto Condensed","Arial",sans-serif;font-size:22px;font-weight:700;line-height:1.5;color:#1c3374;padding-bottom:5px}.promotion__title--big{font-size:23px;color:#fff}.promotion__description,.promotion__price{font-family:"Roboto Condensed","Arial",sans-serif;font-size:70px;font-weight:700;line-height:.76;color:#fff;padding-bottom:26px}.promotion__description{font-size:16px;font-weight:400;line-height:1.4;color:#1c3374;letter-spacing:-.9px;padding-bottom:66px}.promotion__description--big{padding-bottom:183px;color:#fff;font-size:18px;letter-spacing:-.9px}.promotion__link{font-family:"Roboto Condensed","Arial",sans-serif;font-size:12px;font-weight:700;line-height:1.4;color:#1c3374;letter-spacing:.6px;text-transform:uppercase;border-bottom:1px solid #1c3374}.promotion__link--big{font-size:14px;color:#fff;border-bottom:1px solid #fff}[data-accordion=element].is-active>[data-accordion=content]{max-height:100%}[data-accordion=parent].no-transition [data-accordion=content]{-webkit-transition:none;transition:none}[data-accordion=content]{max-height:0;-webkit-transition:max-height .3s;transition:max-height .3s;overflow:hidden}.accordion{margin:0 auto 50px}.accordion .accordion{width:90%;margin:0 auto}.accordion__element:last-child{margin-bottom:0}.accordion__element{position:relative;margin-bottom:13px;padding:10px 177px 10px 10px;border-top:1px solid rgba(16,38,84,.2)}.accordion__element.is-active>.accordion__button{opacity:.5}.accordion__button{position:absolute;right:0;top:25px;width:42px;height:42px;border:1px solid #1c3374;border-radius:50%;background-color:transparent;cursor:pointer}.accordion__discription,.accordion__title{font-family:"Roboto Condensed","Arial",sans-serif;color:#102654}.accordion__title{padding-top:24px;padding-bottom:14px;font-size:20px;font-weight:500;line-height:1.2;letter-spacing:.2px}.accordion__discription{font-size:18px;font-weight:300;line-height:1.4}.faq{margin:0 auto;background-color:#f8f9fc}.faq__wrapper{padding:120px 103px}.faq__title{font-family:"Alumni Sans","Arial",sans-serif;font-size:36px;font-weight:600;line-height:normal;letter-spacing:1.62px;color:#102654;padding-bottom:40px} +@-webkit-keyframes swiper-preloader-spin{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes swiper-preloader-spin{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}html{-webkit-text-size-adjust:100%}.tabs__element p{margin:0}details,main{display:block}h1{font-size:2em}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}code,kbd,pre,samp{font-size:1em;font-family:monospace,monospace}a{background-color:transparent;color:#000;text-decoration:none}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:none}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{margin:0;font-size:100%;line-height:1.15;font-family:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{display:table;max-width:100%;color:inherit;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto;resize:none}[type=checkbox],[type=radio],legend{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}summary{display:list-item}[hidden],template{display:none}@font-face{font-family:"swiper-icons";src:url("data:application/font-woff;charset=utf-8;base64, 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");font-weight:400;font-style:normal}:root{--swiper-theme-color:#afafaf}.swiper,.swiper-wrapper{position:relative;z-index:1}.swiper{margin-left:auto;margin-right:auto;overflow:hidden;list-style:none;padding:0}.swiper-vertical>.swiper-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swiper-wrapper{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform;-webkit-box-sizing:content-box;box-sizing:content-box}.swiper-android .swiper-slide,.swiper-wrapper{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.swiper-pointer-events{-ms-touch-action:pan-y;touch-action:pan-y}.swiper-pointer-events.swiper-vertical{-ms-touch-action:pan-x;touch-action:pan-x}.swiper-slide{-ms-flex-negative:0;flex-shrink:0;width:100%;height:100%;position:relative;-webkit-transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height,-webkit-transform;transition-property:transform,height;transition-property:transform,height,-webkit-transform}.swiper-3d,.swiper-3d.swiper-css-mode .swiper-wrapper{-webkit-perspective:1200px;perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-wrapper{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear,right top,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:linear-gradient(to left,rgba(0,0,0,.5),transparent)}.swiper-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(transparent));background-image:linear-gradient(to right,rgba(0,0,0,.5),transparent)}.swiper-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear,left bottom,left top,from(rgba(0,0,0,.5)),to(transparent));background-image:linear-gradient(to top,rgba(0,0,0,.5),transparent)}.swiper-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,.5)),to(transparent));background-image:linear-gradient(to bottom,rgba(0,0,0,.5),transparent)}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-horizontal.swiper-css-mode>.swiper-wrapper{-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory}.swiper-vertical.swiper-css-mode>.swiper-wrapper{-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory}.swiper-centered>.swiper-wrapper::before{content:"";-ms-flex-negative:0;flex-shrink:0;-webkit-box-ordinal-group:10000;-ms-flex-order:9999;order:9999}.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{-webkit-margin-start:var(--swiper-centered-offset-before);margin-inline-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{-webkit-margin-before:var(--swiper-centered-offset-before);margin-block-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:"";position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:50%;width:calc(var(--swiper-navigation-size)/42*27);height:var(--swiper-navigation-size);margin-top:calc(0px - var(--swiper-navigation-size)/2);z-index:10;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:var(--swiper-navigation-color, var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;font-variant:initial;line-height:1}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:10px;right:auto}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:"prev"}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:10px;left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:"next"}.swiper-button-lock{display:none}.swiper-pagination{position:absolute;text-align:center;-webkit-transition:300ms opacity;transition:300ms opacity;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:10px;left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{-webkit-transform:scale(.33);-ms-transform:scale(.33);transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{-webkit-transform:scale(.66);-ms-transform:scale(.66);transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{-webkit-transform:scale(.33);-ms-transform:scale(.33);transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{-webkit-transform:scale(.66);-ms-transform:scale(.66);transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{-webkit-transform:scale(.33);-ms-transform:scale(.33);transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));height:var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));display:inline-block;border-radius:50%;background:var(--swiper-pagination-bullet-inactive-color, #000);opacity:var(--swiper-pagination-bullet-inactive-opacity, 0.2)}button.swiper-pagination-bullet{border:0;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color, var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:10px;top:50%;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap, 6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;-webkit-transition:200ms top,200ms -webkit-transform;transition:200ms transform,200ms top;transition:200ms transform,200ms top,200ms -webkit-transform}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap, 4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{-webkit-transition:200ms left,200ms -webkit-transform;transition:200ms transform,200ms left;transition:200ms transform,200ms left,200ms -webkit-transform}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{-webkit-transition:200ms right,200ms -webkit-transform;transition:200ms transform,200ms right;transition:200ms transform,200ms right,200ms -webkit-transform}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color, var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);-webkit-transform-origin:left top;-ms-transform-origin:left top;transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{-webkit-transform-origin:right top;-ms-transform-origin:right top;transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:4px;left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:10px;position:relative;background:rgba(0,0,0,.1)}.swiper-horizontal>.swiper-scrollbar{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.custom-select__text br,.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.swiper-slide-zoomed{cursor:move}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;-webkit-transform-origin:50%;-ms-transform-origin:50%;transform-origin:50%;-webkit-animation:swiper-preloader-spin 1s infinite linear;animation:swiper-preloader-spin 1s infinite linear;-webkit-box-sizing:border-box;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{-webkit-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;-webkit-transition-property:opacity;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cards,.swiper-cube,.swiper-flip{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{-webkit-transform-origin:100% 0;-ms-transform-origin:100% 0;transform-origin:100% 0}.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-next+.swiper-slide,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:"";background:#000;position:absolute;left:0;top:0;bottom:0;right:0;-webkit-filter:blur(50px);filter:blur(50px)}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-cards .swiper-slide,.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}.swiper-creative .swiper-slide{-webkit-transition-property:opacity,height,-webkit-transform;transition-property:transform,opacity,height;transition-property:transform,opacity,height,-webkit-transform}.swiper-cards .swiper-slide{-webkit-transform-origin:center bottom;-ms-transform-origin:center bottom;transform-origin:center bottom}@font-face{font-style:normal;font-weight:400;font-family:"Roboto Condensed";font-display:swap;src:url(../fonts/RobotoCondensed.woff2) format("woff2")}@font-face{font-style:normal;font-weight:300;font-family:"Roboto Condensed";font-display:swap;src:url(../fonts/RobotoCondensed-Light.woff2) format("woff2")}@font-face{font-style:normal;font-weight:600;font-family:"Roboto Condensed";font-display:swap;src:url(../fonts/RobotoCondensed-Bold.woff2) format("woff2")}@font-face{font-style:normal;font-weight:600;font-family:"Alumni Sans";font-display:swap;src:url(../fonts/AlumniSans-SemiBold.woff2) format("woff2")}*,::after,::before{-webkit-box-sizing:border-box;box-sizing:border-box}body,html{margin:0;padding:0;min-height:100vh}html{font-style:normal;font-weight:300;font-size:16px;line-height:24px;font-family:"Roboto Condensed","Arial",sans-serif;color:#102654;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{width:100%;height:100%;background-color:#fff}img,video{display:block;max-width:100%;height:auto}input:-webkit-autofill{-webkit-box-shadow:inset 0 0 0 1000px #fff;box-shadow:inset 0 0 0 1000px #fff;-webkit-text-fill-color:#000}input,select,textarea{border-radius:0}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{opacity:1}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1}input:-ms-input-placeholder,textarea:-ms-input-placeholder{opacity:1}input::-ms-input-placeholder,textarea::-ms-input-placeholder{opacity:1}input::placeholder,textarea::placeholder{opacity:1}input:invalid,textarea:invalid{-webkit-box-shadow:none;box-shadow:none}input::-ms-clear,input::-ms-reveal{display:none}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-results-button,input[type=search]::-webkit-search-results-decoration{-webkit-appearance:none;appearance:none}input::-webkit-inner-spin-button,input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none;appearance:none}input[type=number]{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}input:matches([type=email],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=url]),select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.wrapper{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.wrapper .footer,.wrapper .header{-ms-flex-negative:0;flex-shrink:0}.wrapper main{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1}blockquote,h1,h2,h3,h4,p{margin:0;padding:0}.custom-select select,.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;white-space:nowrap;border:0;clip:rect(0 0 0 0);-webkit-clip-path:inset(100%);clip-path:inset(100%)}.container{width:100%;max-width:1366px;margin:0 auto}.btn{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;padding:10px 20px;color:#fff;background-color:#2c39f2;border:0;cursor:pointer;-webkit-transition:opacity .3s ease;transition:opacity .3s ease}.btn--red{background-color:#ff1553}.btn:disabled{opacity:.5;pointer-events:none}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch;background-color:rgba(0,0,0,.8);-webkit-transform:scale(1.2);-ms-transform:scale(1.2);transform:scale(1.2);visibility:hidden;opacity:0;-webkit-transition:opacity .6s cubic-bezier(.55,0,.1,1),visibility .6s cubic-bezier(.55,0,.1,1),-webkit-transform .6s cubic-bezier(.55,0,.1,1);transition:opacity .6s cubic-bezier(.55,0,.1,1),transform .6s cubic-bezier(.55,0,.1,1),visibility .6s cubic-bezier(.55,0,.1,1);transition:opacity .6s cubic-bezier(.55,0,.1,1),transform .6s cubic-bezier(.55,0,.1,1),visibility .6s cubic-bezier(.55,0,.1,1),-webkit-transform .6s cubic-bezier(.55,0,.1,1);pointer-events:none;-ms-overflow-style:none;scrollbar-width:none}.modal::-webkit-scrollbar{display:none}.modal__wrapper{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;min-height:100%;padding:60px 40px}@media (max-width:767px){.modal__wrapper{padding:60px 16px}}.modal__overlay{position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer}.modal__content{position:relative;width:600px;padding:40px;background-color:#fff}@media (max-width:767px){.modal__content{width:100%;padding:20px}}.modal__close-btn{position:absolute;top:22px;right:22px;z-index:1;width:40px;height:40px;padding:0;background:0 0;border:0;cursor:pointer}.modal--responsive .modal__content{width:100%}.modal--fit-content .modal__content{width:auto}@media (max-width:767px){.modal--fit-content .modal__content{width:100%}}.modal--no-scale{-webkit-transform:none;-ms-transform:none;transform:none}.modal--preload{-webkit-transition:none;transition:none}.modal.is-active{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);visibility:visible;opacity:1;pointer-events:auto}.custom-input,.custom-textarea{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;width:530px;padding:14px 0 28px}@media screen and (max-width:767px){.custom-input,.custom-textarea{padding:4px 0 48px;width:100%}}.custom-input label,.custom-textarea label{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%}@media screen and (max-width:767px){.custom-input label,.custom-textarea label{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.custom-input label input,.custom-input label textarea,.custom-textarea label input,.custom-textarea label textarea{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:300px;min-height:48px;margin-left:auto;padding:10px;border:2px solid rgba(0,0,0,.2);border-radius:5px;outline:0;-webkit-transition:border .3s ease;transition:border .3s ease}@media screen and (max-width:767px){.custom-input label input,.custom-input label textarea,.custom-textarea label input,.custom-textarea label textarea{max-width:unset;width:100%}}.custom-input label input:hover,.custom-input label textarea:hover,.custom-textarea label input:hover,.custom-textarea label textarea:hover{border:2px solid rgba(0,0,0,.5)}.custom-input label input:focus,.custom-input label textarea:focus,.custom-textarea label input:focus,.custom-textarea label textarea:focus{border:2px solid rgba(0,0,0,.8)}@media screen and (max-width:767px){.custom-input__label,.custom-textarea__label{margin:0 0 18px}}.custom-input__error,.custom-textarea__error{position:absolute;right:0;bottom:35px;color:#ff1553;opacity:0;-webkit-transition:opacity .3s ease;transition:opacity .3s ease}@media screen and (max-width:767px){.custom-input__error,.custom-textarea__error{bottom:20px}}.custom-input.is-invalid input,.custom-input.is-invalid textarea,.custom-textarea.is-invalid input,.custom-textarea.is-invalid textarea{border:2px solid #ff1553}.custom-input.is-invalid input:focus,.custom-input.is-invalid input:hover,.custom-input.is-invalid textarea:focus,.custom-input.is-invalid textarea:hover,.custom-textarea.is-invalid input:focus,.custom-textarea.is-invalid input:hover,.custom-textarea.is-invalid textarea:focus,.custom-textarea.is-invalid textarea:hover{border:2px solid rgba(255,21,83,.5)}.custom-input.is-valid input,.custom-textarea.is-valid input{border:2px solid #22b259}.custom-input.is-valid input:focus,.custom-input.is-valid input:hover,.custom-textarea.is-valid input:focus,.custom-textarea.is-valid input:hover{border:2px solid rgba(34,178,89,.5)}.custom-input .input-message,.custom-textarea .input-message{position:absolute;right:0;bottom:-5px}.custom-input .input-message.is-invalid,.custom-textarea .input-message.is-invalid{color:red}.custom-input .input-message.is-valid,.custom-textarea .input-message.is-valid{color:#15ab07}.custom-toggle{position:relative;font-size:18px;line-height:27px;font-weight:300;display:-webkit-box;display:-ms-flexbox;display:flex;width:500px;padding:14px 0 10px 36px}@media screen and (max-width:767px){.custom-toggle{padding:14px 0 10px;width:100%}}.custom-toggle:last-of-type{padding:14px 0 58px 36px}@media screen and (max-width:767px){.custom-toggle:last-of-type{padding:14px 0 58px}}.custom-toggle input{position:absolute;width:1px;height:1px;margin:-1px;clip:rect(0 0 0 0)}.custom-toggle label{position:relative;padding-left:52px;cursor:pointer}.custom-toggle label span{margin-bottom:0;margin-left:0}.custom-toggle--checkbox .custom-toggle__icon,.custom-toggle--radio .custom-toggle__icon{position:absolute;top:0;left:0;width:28px;height:28px;border:1.5px solid #2c39f2;-webkit-transition:border .3s ease;transition:border .3s ease}.custom-toggle--checkbox .custom-toggle__icon::before,.custom-toggle--radio .custom-toggle__icon::before{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.custom-toggle--checkbox .custom-toggle__icon::before{background-color:transparent;-webkit-transition:background-color .3s ease;transition:background-color .3s ease}.custom-toggle--radio .custom-toggle__icon{border:1px solid #2c39f2;border-radius:50%}.custom-toggle--radio .custom-toggle__icon::before{color:transparent;border-radius:50%;-webkit-transition:color .3s ease;transition:color .3s ease}.custom-toggle input:checked+.custom-toggle__icon{border:1.5px solid #2c39f2}.custom-toggle input:checked+.custom-toggle__icon::before{background-color:#2c39f2}.custom-toggle.is-invalid label span{color:#ff1553}.custom-toggle .input-message{position:absolute;right:0;bottom:-5px}.custom-toggle .input-message.is-invalid{color:red}.custom-toggle .input-message.is-valid{color:#15ab07}.custom-select{position:relative;width:300px;padding:14px 0 28px;margin:0 0 44px}@media screen and (max-width:767px){.custom-select{padding:4px 0 14px;width:100%}}.custom-select__label{position:absolute;top:50%;left:10px;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:opacity .3s ease,-webkit-transform .3s ease;transition:transform .3s ease,opacity .3s ease;transition:transform .3s ease,opacity .3s ease,-webkit-transform .3s ease;pointer-events:none}@media screen and (max-width:767px){.custom-select__label{-webkit-transform:translateY(calc(-50% - 5px));-ms-transform:translateY(calc(-50% - 5px));transform:translateY(calc(-50% - 5px))}}.custom-select__placeholder{position:absolute;top:50%;left:10px;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);-webkit-transition:opacity .3s ease,-webkit-transform .3s ease;transition:transform .3s ease,opacity .3s ease;transition:transform .3s ease,opacity .3s ease,-webkit-transform .3s ease;pointer-events:none}@media screen and (max-width:767px){.custom-select__placeholder{-webkit-transform:translateY(calc(-50% - 5px));-ms-transform:translateY(calc(-50% - 5px));transform:translateY(calc(-50% - 5px))}}.custom-select__button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;height:48px;padding:5px 10px;background-color:transparent;border:2px solid rgba(0,0,0,.2);border-radius:5px;outline:0;cursor:pointer;-webkit-transition:border .3s ease;transition:border .3s ease}.custom-select__button:hover{border:2px solid rgba(0,0,0,.5)}.custom-select__button:focus{border:2px solid rgba(0,0,0,.8)}.custom-select__button:disabled{pointer-events:none;opacity:.3}.custom-select__list{position:absolute;bottom:10px;z-index:1;width:100%;max-height:100px;margin:0;padding:0;overflow-y:auto;list-style:none;background-color:#fff;border:2px solid #000;-webkit-transform:translateY(100%);-ms-transform:translateY(100%);transform:translateY(100%);visibility:hidden;opacity:0;-webkit-transition:visibility .3s ease,opacity .3s ease;transition:visibility .3s ease,opacity .3s ease}.custom-select__item{padding:5px;outline:0;cursor:pointer;-webkit-transition:background-color .3s ease;transition:background-color .3s ease}.custom-select__item[aria-selected=true]{background-color:rgba(0,0,0,.2)}@media (hover:hover){.custom-select__item[aria-selected=true]:hover:not(.focus-visible){background-color:rgba(0,0,0,.2)}}.custom-select__item[aria-selected=true].focus-visible:focus{background-color:rgba(0,0,0,.2)}@media (hover:hover){.custom-select__item:hover:not(.focus-visible){background-color:rgba(0,0,0,.4)}}.custom-select__item.focus-visible:focus{background-color:rgba(0,0,0,.4)}.custom-select__error{position:absolute;bottom:-15px;left:0;color:#ff1553;opacity:0;-webkit-transition:opacity .1s ease;transition:opacity .1s ease}.custom-select__text{font-size:20px;line-height:24px;-ms-flex-negative:0;flex-shrink:0;width:80%;overflow:hidden;text-align:left;white-space:nowrap;text-overflow:ellipsis;opacity:0;-webkit-transition:opacity .3s ease .1s;transition:opacity .3s ease .1s}.custom-select__icon{-ms-flex-negative:0;flex-shrink:0;width:20px;height:10px;margin-left:auto;background-color:#000;-webkit-transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease;-webkit-clip-path:polygon(100% 0,100% 20%,50% 100%,0 20%,0 0,50% 80%);clip-path:polygon(100% 0,100% 20%,50% 100%,0 20%,0 0,50% 80%)}.custom-select.is-disabled{pointer-events:none}.accordion__element.is-active .accordion__toggle::after,.custom-select.is-disabled .custom-select__list{display:none}.custom-select.open-up .custom-select__list{bottom:auto;top:0;-webkit-transform:translateY(calc(-100% + 10px));-ms-transform:translateY(calc(-100% + 10px));transform:translateY(calc(-100% + 10px))}.custom-select.is-open .custom-select__list{visibility:visible;opacity:1}.custom-select.is-open .custom-select__icon{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.custom-select.is-open .custom-select__label{opacity:0}.custom-select.not-empty .custom-select__text{opacity:1}.custom-select.not-empty .custom-select__label,.custom-select.not-empty .custom-select__placeholder{opacity:0}.custom-select.is-invalid .custom-select__error{opacity:1}.custom-select.is-invalid .custom-select__button{border:2px solid #ff1553}.custom-select.is-invalid .custom-select__button:focus,.custom-select.is-invalid .custom-select__button:hover{border:2px solid rgba(255,21,83,.5)}.custom-select--placeholder .custom-select__label,.custom-select.slide-up.is-open .custom-select__label,.custom-select.slide-up.not-empty .custom-select__label{-webkit-transform:translateY(calc(-50% - 40px));-ms-transform:translateY(calc(-50% - 40px));transform:translateY(calc(-50% - 40px));opacity:1}.custom-select--placeholder.is-open .custom-select__label,.custom-select--placeholder.not-empty .custom-select__label,.custom-select.slide-up.is-open .custom-select__text,.custom-select.slide-up.not-empty .custom-select__text{opacity:1}.custom-select .input-message,.tabs__controls::before{position:absolute;right:0;bottom:-5px}.custom-select .input-message.is-invalid{color:red}.custom-select .input-message.is-valid{color:#15ab07}header{position:relative;margin:0 auto;width:1366px}header::before{position:absolute;background-image:conic-gradient(from 151deg at 16.03% 39.06%,#003d85 32.2363382578deg,#b80027 313.3060026169deg);width:1366px;height:642px;content:""}.header__contact-link,.header__logo{position:absolute;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.header__logo{top:25px;left:103px}.header__contact-link{top:16px;right:103px;font-family:ff-Alumnisans;font-size:24px;font-weight:600;line-height:normal;letter-spacing:-.6px;font-style:normal;color:#fff}.intro{margin:0 auto;width:1366px;padding:33px 240px 92px 250px}.intro__text,.intro__wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.intro__wrapper{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding-right:64px}.intro__text{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;text-align:right}.intro__subtitle,.intro__title{font-family:"Alumni Sans","Arial",sans-serif;font-size:50px;font-weight:600;line-height:114px;letter-spacing:1.8px;color:#fff;padding-bottom:46px}.intro__subtitle{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1;font-family:Alumni Sans;font-size:48px;line-height:normal;letter-spacing:1.44px;text-align:right;padding-top:110px;padding-bottom:12px;padding-right:50px}.intro__description{position:absolute;top:305px;left:-128px;font-family:"Roboto Condensed","Arial",sans-serif;font-weight:400;font-size:14px;line-height:1.5;color:#fff;letter-spacing:-.7px}.intro__link-buy{padding:20px 56px;letter-spacing:.9px}.button{-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;text-align:center;text-decoration:none;font-family:"Roboto Condensed","Arial",sans-serif;font-weight:600;font-size:11px;line-height:normal;color:#fff;background-color:transparent;border:4px solid #fff;text-transform:uppercase;cursor:pointer}.gym{margin:0 auto;width:1366px;padding:80px 103px 166px 163px}.gym__text,.gym__wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.gym__wrapper{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.gym__text{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-top:40px;padding-right:85px}.gym__title{font-family:"Alumni Sans","Arial",sans-serif;font-size:32px;font-weight:600;line-height:normal;letter-spacing:1.44px;color:#102654;padding-bottom:8px}.gym__description,.gym__subtitle{font-family:"Roboto Condensed","Arial",sans-serif;line-height:1.5;color:#102654}.gym__subtitle{font-size:14px;font-weight:400;padding-bottom:40px;letter-spacing:.7px}.gym__description{font-size:16px;font-weight:300}.gym__description--supergym{padding-bottom:8px}.gym__video-wrapper,[data-tabs=parent] [data-tabs=content]{position:relative}.gym__video{margin-left:378px;margin-top:-112px}.gym__video-button{position:absolute;width:100px;height:100px;top:64px;left:518px;background-color:transparent;border-radius:50%;border:0}.gym__button-image{-webkit-transform:rotate(150deg);-ms-transform:rotate(150deg);transform:rotate(150deg)}.gym__button-border{position:absolute;top:0;left:-9px;width:100px;height:100px}[data-tabs=parent]{overflow:hidden}[data-tabs=element].for-load,[data-tabs=parent].no-transition-global [data-tabs=content],[data-tabs=parent].no-transition-global [data-tabs=control],[data-tabs=parent].no-transition-global [data-tabs=element],[data-tabs=parent].no-transition>[data-tabs=content],[data-tabs=parent].no-transition>[data-tabs=control],[data-tabs=parent].no-transition>[data-tabs=element]{-webkit-transition:none;transition:none}[data-tabs=element]{position:absolute;visibility:hidden;opacity:0;-webkit-transition:opacity .3s ease-in,visibility .3s ease-in;transition:opacity .3s ease-in,visibility .3s ease-in}[data-tabs=element].for-load{position:static;visibility:visible;opacity:1}[data-tabs=element].is-active{z-index:1;visibility:visible;opacity:1}.tabs{max-width:100%}.tabs__controls{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding-bottom:12px;margin:0 auto 40px;width:342px}.tabs__controls::before{bottom:0;left:0;height:2px;background-color:rgba(120,120,120,.2);content:""}@media screen and (max-width:767px){.tabs__controls{-ms-flex-wrap:wrap;flex-wrap:wrap}}.tabs__control{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;text-transform:uppercase;cursor:pointer;opacity:.5;min-width:auto;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:0}@media screen and (max-width:1023px){.tabs__control{margin:0 10px;padding:15px}}@media screen and (max-width:767px){.tabs__control{margin:10px 2% 0;padding:10px;width:45%}}.tabs__control.is-active{opacity:1;pointer-events:none}.tabs__control.is-active::before{position:absolute;bottom:-12px;right:0;left:0;height:2px;background-color:#ed0233;content:""}.tabs__button{font-family:"Roboto Condensed","Arial",sans-serif;font-size:20px;font-weight:400;line-height:1.5;color:#102654;text-transform:none;letter-spacing:-1.1px;border:0}.tabs__content{margin-bottom:40px;-webkit-transition:height .3s;transition:height .3s}.tabs__element{width:100%}@media screen and (max-width:767px){.tabs__element{padding:15px}}.tabs__element p:not(:last-child){margin:0 0 20px}.tabs--unset .tabs__content{height:100px}.tabs--unset .tabs__element{height:100%;overflow-y:auto;overflow-x:hidden}.tabs__faq{display:-ms-grid;display:grid;-ms-grid-columns:260px 1fr;grid-template-columns:260px 1fr;gap:30px}.tabs__categories,.tabs__category{display:-webkit-box;display:-ms-flexbox;display:flex}.tabs__categories{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.tabs__categories .btn{background-color:transparent;border:1px solid rgba(16,38,84,.2);margin-bottom:10px}.tabs__category{padding-top:18px;padding-bottom:16px;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-family:"Roboto Condensed","Arial",sans-serif;font-size:18px;font-weight:600;line-height:1;color:#102654}.tabs__category.is-active{border:0;background-image:linear-gradient(151deg,#ed0233 0,#003eb7 100%);color:#fff}.tabs__category:focus,.tabs__category:hover{border-color:#102654}.tabs__category:default{color:rgba(16,38,84,.2)}.gym-membership{position:relative;margin:0 auto;width:1366px;padding-top:118px;padding-bottom:80px;background-color:#f8f9fc}.gym-membership__title{font-family:"Alumni Sans","Arial",sans-serif;font-size:36px;font-weight:600;line-height:normal;letter-spacing:1.62px;color:#102654;padding-bottom:18px;text-align:center}.gym-membership__image{position:absolute;right:-10px;bottom:-255px}.cards__list{display:-ms-grid;display:grid;-ms-grid-columns:1fr 1fr 1fr;grid-template-columns:1fr 1fr 1fr;gap:30px;margin:0 auto;padding:0 103px;list-style-type:none;width:1366px}.cards__item{-webkit-box-sizing:border-box;box-sizing:border-box;border:7px solid transparent;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;text-align:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:54px 62px 60px;background-color:#fff}.cards__item--current{-o-border-image:linear-gradient(151deg,#ed0233 0,#003eb7 100%);border-image:linear-gradient(151deg,#ed0233 0,#003eb7 100%);border-image-slice:1}.cards__item--current .cards__link-buy{border:0;background-image:linear-gradient(151deg,#ed0233 0,#003eb7 100%);color:#fff;padding:26px 43px}.cards__title{font-family:"Roboto Condensed","Arial",sans-serif;font-weight:700;font-size:23px;line-height:1.1;color:#102654;margin-bottom:10px}.cards__description,.cards__price,.cards__price-shadow{font-family:"Roboto Condensed","Arial",sans-serif;line-height:1.5}.cards__description{font-weight:400;font-size:16px;color:#102654;margin-bottom:12px}.cards__price,.cards__price-shadow{font-weight:700}.cards__price{font-size:60px;color:#103aae;margin-top:-97px;margin-bottom:35px}.cards__price-shadow{font-size:100px;color:#e8e8e8}.cards__link-buy{color:#102654;font-size:11px;font-weight:700;letter-spacing:1.3px;border:2px solid #102654;padding:24px 39px}.super-games{margin:0 auto;width:1160px;padding-top:118px;padding-bottom:106px}.super-games__wrapper{display:-ms-grid;display:grid;-ms-grid-columns:500px auto;grid-template-columns:500px auto}.super-games__images{background-size:cover}.super-games__text{-webkit-box-sizing:border-box;box-sizing:border-box;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding:85px 75px 83px 77px;background-color:#ed0233}.super-games__intro{display:-ms-grid;display:grid;-ms-grid-columns:201px auto;grid-template-columns:201px auto;gap:50px}.super-games__title{font-family:"Alumni Sans","Arial",sans-serif;font-weight:600;font-size:56px;line-height:.96;color:#fff;letter-spacing:2.46px;text-transform:uppercase;padding-bottom:28px;text-align:center}.super-games__description{font-family:"Roboto Condensed","Arial",sans-serif;font-weight:400;font-size:18px;line-height:1.5;letter-spacing:-1px;color:#fff;padding-bottom:43px}.super-games__link-application{padding:25px 0;font-size:13px}.super-games__date-time{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;gap:10px}.super-games__time-table{margin-top:-2px;font-family:"Roboto Condensed","Arial",sans-serif;font-weight:400;font-size:18px;line-height:1.5;color:#fff;letter-spacing:.7px}.super-games__date-wrapper{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:7px}.super-games__date-wrapper::before{position:absolute;top:4px;right:0;left:0;height:1px;background-color:#fff;content:""}.super-games__date{font-family:"Roboto Condensed","Arial",sans-serif;font-weight:700;font-size:40px;line-height:1.5;color:#fff}.super-games__month-year{font-size:14px}.trainer{position:relative;margin:0 auto;width:1366px;padding-bottom:102px}.trainer__title{font-family:"Alumni Sans","Arial",sans-serif;font-size:36px;font-weight:600;line-height:normal;letter-spacing:1.62px;color:#102654;padding-left:103px;padding-bottom:48px}.trainer__swiper{width:1160px;margin:0 auto}.trainer__swiper-button-prev{left:28px}.trainer__swiper-button-next{right:28px}.trainer__swiper-button-next,.trainer__swiper-button-prev{width:56px;height:56px;background-color:transparent;border:1px solid transparent;border-radius:50%}.trainer__swiper-button-next:focus-visible,.trainer__swiper-button-next:hover,.trainer__swiper-button-prev:focus-visible,.trainer__swiper-button-prev:hover{border-color:#102654}.trainer__swiper-button-next:active,.trainer__swiper-button-prev:active{background-color:#102654;border-color:#102654}.trainer__swiper-button-next:active::after,.trainer__swiper-button-prev:active::after{color:#fff}.trainer__swiper-button-next:disabled::after,.trainer__swiper-button-prev:disabled::after{opacity:.3}.trainer__swiper-button-next::after,.trainer__swiper-button-prev::after{color:#102654;font-size:32px}.trainer__slide:hover .trainer__slide-title{bottom:216px}.trainer__slide-title{position:absolute;left:50%;margin-left:-22%;bottom:23px;color:#fff;letter-spacing:-.4px;z-index:5}.trainer__slide-description{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(16,38,84,.89);opacity:0;-webkit-transition:opacity .4s linear;transition:opacity .4s linear}.trainer__slide-description:hover{opacity:1}.trainer__slide-subtitle{font-family:"Roboto Condensed","Arial",sans-serif;font-size:15px;font-weight:400;line-height:1.5;color:#b6bdcc;padding-top:76px;padding-bottom:34px}.trainer__slide-list{margin:0;padding:0 0 0 24px}.trainer__slide-item{font-family:"Roboto Condensed","Arial",sans-serif;font-size:14px;font-weight:400;line-height:1.5;color:#fff;letter-spacing:-.8px;padding-bottom:13px}.advantages{margin:0 auto;background-color:#f8f9fc}.advantages__wrapper{padding:110px 172px 129px}.advantages__title{font-family:"Alumni Sans","Arial",sans-serif;font-size:36px;font-weight:600;line-height:normal;letter-spacing:1.62px;color:#102654;text-align:center;margin-bottom:29px}.advantages__list{margin:0;padding:0;list-style-type:none;display:-ms-grid;display:grid;-ms-grid-columns:1fr 240px 1fr;grid-template-columns:1fr 240px 1fr;-webkit-column-gap:54px;-moz-column-gap:54px;column-gap:54px;row-gap:130px}.advantage{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;gap:32px;padding-left:6px}.advantage:not(:nth-last-child(-n+3))::before{position:absolute;bottom:-76px;right:0;left:0;height:2px;background-color:#d10a42;opacity:.2;content:""}.advantage--center{-ms-grid-column:2;-ms-grid-column-span:1;grid-column:2/3;-ms-grid-row:1;-ms-grid-row-span:2;grid-row:1/3;margin-top:28px;margin-bottom:8px;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;background-color:#1c3374;text-align:center;padding-top:42px;padding-left:0;gap:0}.advantage__number-wrapper{position:relative}.advantage__number{font-family:"Roboto Condensed","Arial",sans-serif;font-size:71px;font-weight:700;line-height:1.5;background-color:#0041ca;background-image:linear-gradient(129deg,#d10a42 0,#0041ca 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.advantage__number--center{font-size:76px;line-height:1.2;background-image:none;background-color:#fff;letter-spacing:1px}.advantage__number-text,.advantage__title{font-family:"Roboto Condensed","Arial",sans-serif;line-height:1.5}.advantage__number-text{position:absolute;bottom:2px;font-size:14px;font-weight:400;letter-spacing:-1px;color:#2e35ac}.advantage__title{padding-top:20px;padding-bottom:5px;font-size:20px;font-weight:700;letter-spacing:-.7px;color:#102654}.advantage__title--center{color:#fff;font-size:21px;letter-spacing:.7px;padding:0 0 33px}.advantage__description{font-family:"Roboto Condensed","Arial",sans-serif;font-size:16px;font-weight:300;line-height:1.4;color:#102654}.advantage__description--center{color:#fff}.promotions{margin:0 auto}.promotions__wrapper{padding:126px 103px 120px}.promotions__title{font-family:"Alumni Sans","Arial",sans-serif;font-size:54px;font-weight:600;line-height:normal;letter-spacing:1.62px;color:#102654;text-align:center;margin-bottom:34px}.promotions__list{margin:0;padding:0;list-style-type:none;display:-ms-grid;display:grid;-ms-grid-columns:1fr 1fr;grid-template-columns:1fr 1fr;gap:40px}.promotion{padding:18px 28px;-webkit-box-sizing:border-box;box-sizing:border-box;border:7px solid transparent;-o-border-image:linear-gradient(151deg,#ed0233 0,#003eb7 100%);border-image:linear-gradient(151deg,#ed0233 0,#003eb7 100%);border-image-slice:1}.promotion--big{padding:0;-ms-grid-row:1;-ms-grid-row-span:2;grid-row:1/3;display:-webkit-box;display:-ms-flexbox;display:flex;border:0}.promotion__text{padding:37px 44px;background-color:#ed0233}.promotion__title{font-family:"Roboto Condensed","Arial",sans-serif;font-size:22px;font-weight:700;line-height:1.5;color:#1c3374;padding-bottom:5px}.promotion__title--big{font-size:23px;color:#fff}.promotion__description,.promotion__price{font-family:"Roboto Condensed","Arial",sans-serif;font-size:70px;font-weight:700;line-height:.76;color:#fff;padding-bottom:26px}.promotion__description{font-size:16px;font-weight:400;line-height:1.4;color:#1c3374;letter-spacing:-.9px;padding-bottom:66px}.promotion__description--big{padding-bottom:183px;color:#fff;font-size:18px;letter-spacing:-.9px}.promotion__link{font-family:"Roboto Condensed","Arial",sans-serif;font-size:12px;font-weight:700;line-height:1.4;color:#1c3374;letter-spacing:.6px;text-transform:uppercase;border-bottom:1px solid #1c3374}.promotion__link--big{font-size:14px;color:#fff;border-bottom:1px solid #fff}[data-accordion=element].is-active>[data-accordion=content]{max-height:100%}[data-accordion=parent].no-transition [data-accordion=content]{-webkit-transition:none;transition:none}[data-accordion=content]{max-height:0;-webkit-transition:max-height .3s;transition:max-height .3s;overflow:hidden}.accordion{margin:0 auto 50px}.accordion .accordion{width:90%;margin:0 auto}.accordion__element:last-child{position:relative;margin-bottom:0}.accordion__element:last-child::before{position:absolute;content:"";left:0;right:0;bottom:-21px;height:1px;background-color:rgba(16,38,84,.2)}.accordion__element{position:relative;margin-bottom:18px;padding-top:24px;border-top:1px solid rgba(16,38,84,.2)}.accordion__button{width:100%;padding:10px;cursor:pointer;border:0;background-color:transparent}.accordion__wrapper{padding:5px 10px}.accordion__toggle{position:absolute;right:0;top:25px;width:42px;height:42px;border:1px solid #102654;border-radius:50%}.accordion__toggle::after,.accordion__toggle::before{position:absolute;content:"";width:18px;height:1px;left:11px;top:21px;background-color:#102654}.accordion__toggle::after{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.accordion__toggle:focus,.accordion__toggle:hover{background-color:#102654}.accordion__toggle:focus::after,.accordion__toggle:focus::before,.accordion__toggle:hover::after,.accordion__toggle:hover::before{background-color:#fff}.accordion__toggle:disabled{opacity:.3}.accordion__discription,.accordion__title{font-family:"Roboto Condensed","Arial",sans-serif;color:#102654}.accordion__title{text-align:left;font-size:20px;font-weight:500;line-height:1.2;letter-spacing:.2px}.accordion__discription{font-size:18px;font-weight:300;line-height:1.4}.faq{margin:0 auto;background-color:#f8f9fc}.faq__wrapper{padding:120px 103px 54px}.faq__title{font-family:"Alumni Sans","Arial",sans-serif;font-size:36px;font-weight:600;line-height:normal;letter-spacing:1.62px;color:#102654;padding-bottom:40px}.reviews{margin:0 auto;width:1366px}.reviews__wrapper{padding:116px 103px 120px}.reviews__title{text-align:center;font-family:"Alumni Sans","Arial",sans-serif;font-size:36px;font-weight:600;line-height:normal;letter-spacing:1.62px;color:#102654;padding-bottom:40px}.reviews__slide-wrapper{max-width:560px;margin:0 auto;padding:54px 62px;display:-webkit-box;display:-ms-flexbox;display:flex;gap:27px;background-color:#1c3374;-webkit-filter:drop-shadow(rgba(28,51,116,.2));filter:drop-shadow(rgba(28,51,116,.2))}.reviews__swiper-button-prev{left:224px}.reviews__swiper-button-next{right:224px}.reviews__swiper-button-next,.reviews__swiper-button-prev{width:56px;height:56px;background-color:transparent;border:1px solid transparent;border-radius:50%}.reviews__swiper-button-next:focus-visible,.reviews__swiper-button-next:hover,.reviews__swiper-button-prev:focus-visible,.reviews__swiper-button-prev:hover{border-color:#102654}.reviews__swiper-button-next:active,.reviews__swiper-button-prev:active{background-color:#102654;border-color:#102654}.reviews__swiper-button-next:active::after,.reviews__swiper-button-prev:active::after{color:#fff}.reviews__swiper-button-next:disabled::after,.reviews__swiper-button-prev:disabled::after{opacity:.3}.reviews__swiper-button-next::after,.reviews__swiper-button-prev::after{font-size:32px;color:#102654}.reviews__images{-ms-flex-item-align:start;align-self:flex-start;padding-top:6px}.reviews__slide-description,.reviews__slide-title{font-family:"Roboto Condensed","Arial",sans-serif;line-height:1.5;color:#fff}.reviews__slide-title{font-size:17px;font-weight:700;padding-bottom:10px}.reviews__slide-description{font-size:15px;font-weight:400;letter-spacing:-.5px} /*# sourceMappingURL=style.min.css.map */ \ No newline at end of file diff --git a/build/css/style.min.css.map b/build/css/style.min.css.map index c77069fd2..a98d40d64 100644 --- a/build/css/style.min.css.map +++ b/build/css/style.min.css.map @@ -1 +1 @@ -{"version":3,"sources":["vendor/swiper.scss","vendor/normalize.scss","blocks/tabs.scss","style.css","global/reboot.scss","blocks/custom-select.scss","global/fonts.scss","global/utils.scss","global/container.scss","blocks/btn.scss","mixins.scss","blocks/modal.scss","blocks/custom-input.scss","blocks/custom-toggle.scss","blocks/header.scss","blocks/intro.scss","blocks/button.scss","blocks/gym.scss","blocks/data-tabs.scss","blocks/gym-membership.scss","blocks/cards.scss","blocks/super-games.scss","blocks/trainer.scss","blocks/advantages.scss","blocks/advantage.scss","blocks/promotions.scss","blocks/promotion.scss","blocks/data-accordion.scss","blocks/accordion.scss","blocks/faq.scss"],"names":[],"mappings":"A;AAyjBA,yCACE,E,CACE,gC,CAAA,0B,AAFJ,iCACE,E,CACE,gC,CAAA,0BChjBJ,I,CAGE,6B,CC0EA,gB,CD/DA,Q,CAkTF,O,CA3SA,I,CACE,a,CAQF,E,CAGE,a,CAWF,E,CACE,8B,CAAA,sB,CACA,Q,CACA,gB,CAkDF,I,CEfA,G,CF3BA,G,CE4BA,I,CF3BE,a,CACA,+B,CAUF,C,CACE,4B,CG1CA,U,CACA,oB,CHiDF,W,CAEE,wC,CAAA,gC,CAEA,kB,CAOF,C,CEdA,M,CFgBE,kB,CAmBF,K,CACE,a,CAQF,G,CEjBA,G,CFmBE,iB,CAEA,a,CACA,a,CACA,uB,CAGF,G,CACE,a,CAGF,G,CACE,S,CAUF,G,CACE,iB,CAWF,M,CEtBA,K,CACA,Q,CACA,M,CACA,Q,CFwBE,Q,CAEA,c,CACA,gB,CACA,mB,CAQF,M,CExBA,K,CF2BE,gB,CAQF,M,CEzBA,M,CF4BE,mB,CETF,+B,CACA,8B,CACA,+B,CFyBA,wB,CAIE,S,CAEA,iB,CEtBF,4B,CACA,2B,CACA,4B,CF2BA,qB,CAIE,6B,CAOF,Q,CACE,0B,CAUF,M,CACE,a,CAEA,c,CAGA,a,CACA,kB,CAOF,Q,CACE,uB,CAOF,Q,CACE,a,CG9NA,W,CHsOF,e,CElCA,Y,CFGA,M,CAiCE,6B,CAAA,qB,CACA,S,CAOF,wC,CElCA,wC,CFoCE,W,CAQF,a,CACE,mB,CAEA,4B,CAOF,wC,CACE,uB,CAQF,4B,CACE,Y,CAEA,yB,CAkBF,O,CACE,iB,CAkBF,Q,CARA,Q,CACE,Y,CDlVF,WACE,0B,CACA,4rE,CACA,e,CACA,kBAGF,K,CACE,4B,CAGF,O,CAgBA,e,CACE,iB,CAGA,S,CApBF,O,CACE,gB,CACA,iB,CAEA,e,CACA,e,CAEA,S,CAKF,gC,CACE,2B,CAAA,4B,CAAA,yB,CAAA,qB,CAGF,e,CAEE,U,CACA,W,CAEA,mB,CAAA,mB,CAAA,Y,CACA,6C,CAAA,6B,CAAA,+C,CACA,8B,CAAA,sB,CAGF,6B,CAVA,e,CAYE,oC,CAAA,4B,CAGF,sB,CACE,sB,CAAA,kB,CAGF,sC,CACE,sB,CAAA,kB,CAGF,a,CACE,mB,CAAA,a,CACA,U,CACA,W,CACA,iB,CACA,6C,CAAA,6B,CAAA,+C,CAEA,wC,CACE,Y,CAIJ,6B,CACE,iB,CAIF,kB,CGyUA,gC,CHvUE,W,CAGF,kC,CACE,uB,CAAA,oB,CAAA,sB,CACA,oD,CAAA,oC,CAAA,sD,CAIF,U,CG8UA,0C,CH5UE,0B,CAAA,kB,CGwVF,8B,CANA,wB,CACA,+B,CAIA,sC,CAHA,oC,CACA,qC,CACA,mC,CHnVA,0B,CAQE,mC,CAAA,2B,CAGF,+B,CGmVA,sC,CAHA,oC,CACA,qC,CACA,mC,CH7UE,iB,CACA,M,CACA,K,CACA,U,CACA,W,CACA,mB,CACA,U,CAGF,+B,CACE,0B,CAGF,oC,CACE,iG,CAAA,oE,CAGF,qC,CACE,iG,CAAA,qE,CAGF,mC,CACE,mG,CAAA,mE,CAGF,sC,CACE,mG,CAAA,sE,CAIF,gC,CACE,a,CACA,oB,CAEA,uB,CAIF,mD,CACE,Y,CAGF,8C,CACE,6B,CAGF,kD,CACE,gC,CAAA,4B,CAGF,gD,CACE,gC,CAAA,4B,CAGF,wC,CACE,U,CACA,mB,CAAA,a,CACA,+B,CAAA,mB,CAAA,U,CAGF,4E,CACE,yD,CAAA,wD,CAGF,0D,CACE,W,CACA,c,CACA,yC,CAGF,0E,CACE,0D,CAAA,uD,CAGF,wD,CACE,U,CACA,a,CACA,0C,CAGF,8C,CACE,+B,CAGF,sD,CACE,U,CACA,iB,CACA,M,CACA,K,CACA,mB,CAGF,wE,CACE,U,CACA,gC,CAGF,sE,CACE,S,CACA,iC,CAGF,K,CACE,6B,CGiWF,mB,CH3VA,mB,CAEE,iB,CACA,O,CACA,+C,CACA,oC,CACA,sD,CACA,U,CACA,c,CACA,mB,CAAA,mB,CAAA,Y,CACA,wB,CAAA,qB,CAAA,kB,CACA,uB,CAAA,oB,CAAA,sB,CACA,+D,CGoWF,0C,CHjWA,0C,CAEE,W,CACA,W,CACA,mB,CGoWF,yB,CHjWA,yB,CAEE,wB,CACA,uC,CACA,6B,CACA,gB,CAEA,oB,CACA,a,CAGF,mB,CGiWA,+B,CH/VE,S,CACA,U,CAGF,yB,CGiWA,qC,CH/VE,c,CAGF,mB,CGiWA,+B,CH/VE,U,CACA,S,CAGF,yB,CGiWA,qC,CH/VE,c,CAGF,mB,CACE,Y,CAgBF,kB,CACE,iB,CACA,iB,CACA,gC,CAAA,wB,CACA,oC,CAAA,4B,CACA,U,CAGF,2C,CACE,S,CGsWF,6C,CACA,uD,CAFA,yB,CHjWA,2B,CAIE,W,CACA,M,CACA,U,CAIF,kC,CACE,e,CACA,W,CAGF,4D,CACE,4B,CAAA,wB,CAAA,oB,CACA,iB,CAGF,mE,CAIA,wE,CAHE,0B,CAAA,sB,CAAA,kB,CAOF,wE,CACE,4B,CAAA,wB,CAAA,oB,CAGF,6E,CACE,4B,CAAA,wB,CAAA,oB,CAGF,wE,CACE,4B,CAAA,wB,CAAA,oB,CAGF,6E,CACE,4B,CAAA,wB,CAAA,oB,CAGF,yB,CACE,sF,CACA,wF,CACA,oB,CACA,iB,CACA,+D,CACA,6D,CAGF,+B,CACE,Q,CACA,Q,CACA,S,CACA,uB,CAAA,e,CACA,uB,CACA,oB,CAAA,e,CAGF,sD,CACE,c,CAGF,oC,CACE,sB,CAGF,gC,CACE,kD,CACA,oE,CGoXF,qD,CHjXA,2C,CAEE,U,CACA,O,CACA,uC,CAAA,+B,CGqXF,+E,CHlXA,qE,CAEE,0D,CACA,a,CGqXF,uF,CHlXA,6E,CAEE,O,CACA,kC,CAAA,8B,CAAA,0B,CACA,S,CGuXF,iH,CHpXA,uG,CAEE,oB,CACA,oD,CAAA,oC,CAAA,4D,CAGF,uE,CGuXA,iF,CHrXE,4D,CAGF,+E,CGuXA,yF,CHrXE,Q,CACA,kC,CAAA,8B,CAAA,0B,CACA,kB,CAGF,yG,CGyXA,mH,CHvXE,qD,CAAA,qC,CAAA,6D,CAGF,0F,CACE,sD,CAAA,sC,CAAA,8D,CAIF,8B,CACE,0B,CACA,iB,CAGF,kE,CACE,oE,CACA,iB,CACA,M,CACA,K,CACA,U,CACA,W,CACA,0B,CAAA,sB,CAAA,kB,CACA,iC,CAAA,6B,CAAA,yB,CAGF,8E,CACE,kC,CAAA,8B,CAAA,0B,CAGF,iD,CGqYA,2D,CAEA,gG,CADA,sF,CHlYE,U,CACA,U,CACA,M,CACA,K,CGyYF,wF,CACA,kG,CAFA,yD,CHrYA,+C,CAIE,S,CACA,W,CACA,M,CACA,K,CAGF,uB,CACE,Y,CAIF,iB,CACE,kB,CACA,iB,CAEA,yB,CAGF,oC,CACE,iB,CACA,O,CACA,U,CACA,U,CACA,U,CACA,S,CAGF,kC,CACE,iB,CACA,S,CACA,M,CACA,U,CACA,S,CACA,U,CAGF,sB,CACE,W,CACA,U,CACA,iB,CACA,yB,CACA,kB,CACA,M,CACA,K,CAGF,6B,CACE,W,CKlVE,uB,CLqVJ,sB,CACE,Y,CAGF,sB,CACE,U,CACA,W,CACA,mB,CAAA,mB,CAAA,Y,CACA,uB,CAAA,oB,CAAA,sB,CACA,wB,CAAA,qB,CAAA,kB,CACA,iB,CG8YF,6B,CH3YA,0B,CG0YA,0B,CHvYE,c,CACA,e,CACA,qB,CAAA,kB,CAGF,oB,CACE,W,CASF,sB,CACE,U,CACA,W,CACA,iB,CACA,Q,CACA,O,CACA,iB,CACA,gB,CACA,U,CACA,4B,CAAA,wB,CAAA,oB,CACA,0D,CAAA,kD,CACA,6B,CAAA,qB,CACA,yE,CACA,iB,CACA,4B,CAGF,4B,CACE,6B,CAGF,4B,CACE,6B,CAUF,4B,CACE,iB,CACA,M,CACA,K,CACA,mB,CACA,S,CACA,a,CAGF,iC,CACE,2C,CAAA,mC,CACA,a,CAGF,4B,CACE,kB,CAAA,c,CAGF,mC,CACE,kB,CAAA,c,CACA,2B,CAAA,4B,CAAA,yB,CAAA,qB,CAGF,2C,CACE,2C,CAAA,mC,CAGF,0B,CACE,mB,CACA,mC,CAAA,2B,CAGF,wC,CACE,mB,CAGF,iC,CG4ZA,sD,CH1ZE,mB,CAyGF,a,CAtGA,Y,CAkEA,Y,CAjEE,gB,CAGF,0B,CACE,mB,CACA,kC,CACA,0B,CACA,S,CACA,iB,CACA,4B,CAAA,wB,CAAA,oB,CACA,U,CACA,W,CAGF,wC,CACE,mB,CAGF,qC,CACE,+B,CAAA,2B,CAAA,uB,CGmaF,sD,CH9ZE,mB,CAGF,iC,CGgaA,+B,CAEA,6C,CADA,+B,CH7ZE,mB,CACA,kB,CGmaF,wC,CACA,sC,CACA,uC,CHlaA,qC,CAIE,S,CACA,kC,CACA,0B,CAGF,gC,CACE,iB,CACA,M,CACA,Q,CACA,U,CACA,W,CACA,U,CACA,S,CAGF,uC,CACE,U,CACA,e,CACA,iB,CACA,M,CACA,K,CACA,Q,CACA,O,CACA,yB,CAAA,iB,CAOF,0B,CACE,mB,CACA,kC,CACA,0B,CACA,S,CAGF,wC,CACE,mB,CAGF,iC,CGiaA,sD,CH/ZE,mB,CGoaF,wC,CACA,sC,CACA,uC,CHnaA,qC,CAIE,S,CACA,kC,CACA,0B,CAcF,2B,CAXA,8B,CAaE,kC,CACA,0B,CACA,e,CAfF,8B,CAIE,4D,CAAA,4C,CAAA,8D,CAOF,2B,CACE,sC,CAAA,kC,CAAA,8B,CAMF,oB,CACE,iB,CACA,Q,CACA,gB,CACA,W,CACA,U,CACA,oB,CACA,S,CAGF,0B,CACE,mB,CAAA,mB,CAAA,Y,CACA,2B,CAAA,4B,CAAA,yB,CAAA,qB,CACA,wB,CAAA,qB,CAAA,kB,CACA,iB,CACA,K,CACA,M,CACA,O,CACA,Q,CACA,6B,CACA,S,CACA,qC,CAAA,6B,CAEA,gC,CACE,S,CAKJ,uB,CACE,iD,CACA,c,CACA,e,CACA,e,CACA,a,CACA,gB,CACA,mB,CAGF,mB,CACE,Q,CAEA,kB,CAGF,mB,CAEE,c,CACA,e,CACA,e,CACA,U,CACA,oB,CACA,mB,CM9wBF,WACE,iB,CACA,e,CACA,8B,CAEA,iB,CACA,wD,AAGF,WACE,iB,CACA,e,CACA,8B,CAEA,iB,CACA,8D,AAGF,WACE,iB,CACA,e,CACA,8B,CAEA,iB,CACA,6D,AAIF,WACE,iB,CACA,e,CACA,yB,CAEA,iB,CACA,4DFlCF,C,CD0tCA,O,CADA,Q,CCttCE,6B,CAAA,qB,CD6tCF,I,CC1tCA,I,CAEE,Q,CACA,S,CACA,gB,CJ6vBF,mB,CI1vBA,I,CAKE,iD,CALF,I,CACE,iB,CACA,e,CACA,c,CACA,gB,CAEA,a,CAEA,kC,CACA,iC,CAEA,iC,CAKF,I,CACE,U,CACA,W,CAEA,qB,CAQF,G,CDqtCA,K,CCntCE,a,CACA,c,CACA,W,CAaF,sB,CACE,0C,CAAA,kC,CAEA,4B,CAIF,K,CAaA,M,CDisCA,Q,CC5sCE,e,CAEA,gC,CAAA,mC,CACE,S,CADF,uB,CAAA,0B,CACE,S,CADF,2B,CAAA,8B,CACE,S,CADF,4B,CAAA,+B,CACE,S,CADF,kB,CD0tCF,qB,CCztCI,S,CAGF,a,CD0tCF,gB,CCztCI,uB,CAAA,e,CAUF,gB,CAAA,iB,CAEE,Y,CD2tCJ,gD,CCttCA,6C,CDutCA,iD,CACA,qD,CCptCE,uB,CAAA,e,CD0tCF,gC,CCttCA,gC,CAEE,Q,CAEA,uB,CAAA,e,CAGF,kB,CACE,4B,CAAA,yB,CAAA,oB,CD4tCF,cAAc,Y,CACd,a,CACA,e,CACA,a,CACA,U,CACA,W,CACA,W,CC9tCA,M,CDutCA,Q,CC9sCE,uB,CAAA,oB,CAAA,e,CD4tCF,a,CACA,Y,CACA,a,CC3tCA,M,CAIE,uB,CAAA,oB,CAAA,e,CAGF,E,CAAA,E,CAAA,E,CAAA,E,CAKA,C,CAJE,Q,CACA,S,CGpIF,Q,CACE,iB,CAEA,mB,CAAA,mB,CAAA,Y,CACA,2B,CAAA,4B,CAAA,yB,CAAA,qB,CJ82CF,gB,CIz2CE,gB,CAEE,mB,CAAA,a,CAGF,a,CACE,kB,CAAA,mB,CAAA,W,CF6BF,qB,CEjBF,gB,CACE,iB,CAEA,S,CACA,U,CACA,W,CACA,S,CACA,e,CAEA,kB,CAEA,Q,CAEA,kB,CACA,6B,CAAA,qB,CCzCF,U,CACE,U,CACA,gB,CACA,a,CCHF,I,CACE,0B,CAAA,0B,CAAA,mB,CACA,iB,CACA,U,CACA,wB,CACA,Q,CACA,c,CAEA,mC,CAAA,2B,CAEA,S,CACE,wB,CAGF,a,CACE,U,CAEA,mB,CCUF,qBACE,eAAA,e,CDPA,YCYF,wB,CDZE,U,CErBJ,M,CACE,c,CACA,K,CACA,O,CACA,Q,CACA,M,CACA,Y,CAEA,mB,CAAA,mB,CAAA,Y,CACA,2B,CAAA,4B,CAAA,yB,CAAA,qB,CACA,e,CACA,gC,CAEA,+B,CACA,4B,CAAA,wB,CAAA,oB,CACA,iB,CACA,S,CAEA,8I,CAAA,8H,CAAA,6K,CAIA,mB,CAEA,uB,CACA,oB,CAEA,yB,CACE,Y,CAGF,e,CACE,iB,CAEA,mB,CAAA,mB,CAAA,Y,CACA,mB,CAAA,a,CACA,uB,CAAA,oB,CAAA,sB,CACA,wB,CAAA,qB,CAAA,kB,CACA,U,CACA,e,CACA,iB,CD+BF,yBCxCA,e,CAYI,mBAIJ,e,CACE,iB,CACA,K,CACA,M,CAEA,U,CACA,W,CAEA,c,CAGF,e,CACE,iB,CAEA,W,CACA,Y,CAEA,qB,CDOF,yBCbA,e,CASI,U,CACA,cAIJ,iB,CACE,iB,CACA,Q,CACA,U,CACA,S,CAEA,U,CACA,W,CACA,S,CAEA,c,CACA,Q,CACA,c,CAIA,kC,CACE,U,CAKF,mC,CACE,U,CDxBJ,yBCuBE,mC,CAII,YAKN,gB,CACE,sB,CAAA,kB,CAAA,c,CAGF,e,CACE,uB,CAAA,e,CAGF,gB,CACE,0B,CAAA,sB,CAAA,kB,CACA,kB,CACA,S,CAEA,mB,CCpHJ,a,CTgiDA,gB,CS9hDE,iB,CAEA,mB,CAAA,mB,CAAA,Y,CACA,W,CACA,mB,CAEA,oCARF,a,CT0iDA,gB,CSjiDI,kB,CACA,YAGF,mB,CTmiDF,sB,CSliDI,mB,CAAA,mB,CAAA,Y,CACA,wB,CAAA,qB,CAAA,kB,CACA,U,CAEA,oCALF,mB,CT8iDF,sB,CSxiDM,uB,CAAA,oB,CAAA,sB,CACA,2B,CAAA,4B,CAAA,yB,CAAA,uBAGF,yB,CT+iDJ,4B,CACA,4B,CACA,+B,CS/iDM,kB,CAAA,mB,CAAA,W,CACA,e,CACA,e,CACA,gB,CACA,Y,CAEA,+B,CACA,iB,CACA,S,CAEA,kC,CAAA,0B,CAEA,oCAdF,yB,CTikDJ,4B,CACA,4B,CACA,+B,CSpjDQ,e,CACA,YAGF,+B,CTsjDN,kC,CACA,kC,CACA,qC,CSvjDQ,+B,CAGF,+B,CTwjDN,kC,CACA,kC,CACA,qC,CSzjDQ,+B,CAMJ,oCADF,oB,CTyjDF,uB,CSvjDM,iBAIJ,oB,CTwjDF,uB,CSvjDI,iB,CACA,O,CACA,W,CAEA,a,CAEA,S,CAEA,mC,CAAA,2B,CAEA,oCAXF,oB,CTmkDF,uB,CSvjDM,aAKF,8B,CTujDJ,iC,CACA,iC,CACA,oC,CSvjDM,wB,CAEA,oC,CAAA,oC,CTyjDN,uC,CACA,uC,CACA,uC,CACA,uC,CACA,0C,CACA,0C,CS5jDQ,mC,CAMJ,4B,CT0jDJ,+B,CSzjDM,wB,CAEA,kC,CAAA,kC,CT2jDN,qC,CACA,qC,CS1jDQ,mC,CAKN,4B,CTyjDF,+B,CSxjDI,iB,CACA,O,CACA,W,CAEA,uC,CT0jDJ,0C,CSzjDM,S,CAGF,qC,CT0jDJ,wC,CSzjDM,a,CC3GN,c,CACE,iB,CACA,c,CACA,gB,CACA,e,CAEA,mB,CAAA,mB,CAAA,Y,CACA,W,CACA,wB,CAEA,oCAVF,c,CAWI,mB,CACA,YAGF,2B,CACE,wB,CAEA,oCAHF,2B,CAII,qBAIJ,oB,CACE,iB,CAEA,S,CACA,U,CACA,W,CAEA,kB,CAGF,oB,CACE,iB,CAEA,iB,CAEA,c,CAEA,yB,CACE,e,CACA,a,CAKF,6C,CA+BA,0C,CA9BE,iB,CACA,K,CACA,M,CAEA,U,CACA,W,CAEA,0B,CAEA,kC,CAAA,0B,CAEA,qD,CAgCA,kD,CACE,U,CACA,iB,CACA,O,CACA,Q,CAEA,U,CACA,W,CAKA,sC,CAAA,kC,CAAA,8B,CA5CF,qD,CASE,4B,CAIA,4C,CAAA,oC,CAMJ,0C,CAQE,wB,CACA,iB,CAIA,kD,CASE,iB,CAEA,iB,CAGA,iC,CAAA,yB,CAKN,iD,CACE,0B,CAEA,yD,CACE,wB,CAKF,oC,CACE,a,CAIJ,6B,CACE,iB,CACA,O,CACA,W,CAEA,wC,CACE,S,CAGF,sC,CACE,a,CRtIN,c,CACE,iB,CAEA,W,CACA,mB,CACA,e,CAEA,oCAPF,c,CAQI,kB,CACA,YAGF,qB,CACE,iB,CACA,O,CACA,S,CAEA,kC,CAAA,8B,CAAA,0B,CAEA,8D,CAAA,8C,CAAA,yE,CAEA,mB,CAEA,oCAXF,qB,CAYI,8C,CAAA,0C,CAAA,wCAIJ,2B,CACE,iB,CACA,O,CACA,S,CAEA,kC,CAAA,8B,CAAA,0B,CAEA,8D,CAAA,8C,CAAA,yE,CAEA,mB,CAEA,oCAXF,2B,CAYI,8C,CAAA,0C,CAAA,wCAqBJ,sB,CACE,mB,CAAA,mB,CAAA,Y,CACA,wB,CAAA,qB,CAAA,kB,CACA,U,CACA,W,CACA,gB,CAEA,4B,CACA,+B,CACA,iB,CACA,S,CACA,c,CAEA,kC,CAAA,0B,CAEA,4B,CACE,+B,CAGF,4B,CACE,+B,CAGF,+B,CACE,mB,CACA,U,CAIJ,oB,CACE,iB,CACA,W,CACA,S,CAEA,U,CACA,gB,CACA,Q,CACA,S,CACA,e,CAEA,e,CAEA,qB,CACA,qB,CACA,kC,CAAA,8B,CAAA,0B,CACA,iB,CACA,S,CAEA,uD,CAAA,+C,CAGF,oB,CACE,W,CAEA,S,CACA,c,CAEA,4C,CAAA,oC,CAEA,wC,CACE,+B,CAEA,qBACE,mDAAA,e,CACE,iCAIJ,4D,CACE,+B,CAIJ,qBACE,+BAAA,e,CACE,iCAIJ,wC,CACE,+B,CAIJ,qB,CACE,iB,CACA,Y,CACA,M,CAEA,a,CAEA,S,CAEA,mC,CAAA,2B,CAGF,oB,CACE,c,CACA,gB,CACA,mB,CAAA,a,CACA,S,CACA,e,CAEA,e,CACA,kB,CACA,sB,CAEA,S,CAEA,uC,CAAA,+B,CAOF,oB,CACE,mB,CAAA,a,CACA,U,CACA,W,CACA,gB,CAEA,qB,CAEA,6C,CAAA,6B,CAAA,wD,CAEA,qE,CAAA,6D,CAGF,0B,CACE,mB,CAEA,+C,CACE,Y,CAKF,2C,CACE,W,CACA,K,CACA,gD,CAAA,4C,CAAA,wC,CAKF,2C,CACE,kB,CACA,S,CAGF,2C,CACE,gC,CAAA,4B,CAAA,wB,CAGF,4C,CACE,S,CAKF,6C,CACE,S,CAGF,8C,CAIA,oD,CAHE,S,CASF,+C,CACE,S,CAGF,gD,CACE,wB,CAEA,sD,CAAA,sD,CAEE,mC,CAiBJ,iD,CAgBA,qD,CAAA,uD,CAfE,+C,CAAA,2C,CAAA,uC,CACA,S,CAGF,yD,CAIA,2D,CAYA,oD,CAAA,sD,CAfE,S,CAoBJ,6B,CHnRA,uB,CGoRE,iB,CACA,O,CACA,W,CAEA,wC,CACE,S,CAGF,sC,CACE,a,CS1SN,M,CACE,iB,CACA,a,CACA,Y,CAEA,c,CACE,iB,CACA,gH,CAEA,Y,CACA,Y,CAEA,U,CAWJ,qB,CAPA,a,CAQE,iB,CACA,2B,CAAA,gB,CAAA,O,CATF,a,CAGE,Q,CACA,U,CAGF,qB,CAGE,Q,CACA,W,CACA,yB,CACA,c,CACA,e,CACA,kB,CACA,oB,CACA,iB,CACA,U,CClCF,M,CACE,a,CACA,Y,CACA,6B,CASF,Y,CANA,e,CAOE,mB,CAAA,mB,CAAA,Y,CAPF,e,CAEE,wB,CAAA,qB,CAAA,6B,CACA,kB,CAGF,Y,CAEE,2B,CAAA,4B,CAAA,yB,CAAA,qB,CACA,qB,CAAA,kB,CAAA,oB,CACA,gB,CAcF,gB,CAVA,a,CACE,4C,CACA,c,CACA,e,CACA,iB,CACA,oB,CACA,U,CACA,mB,CAGF,gB,CACE,2B,CAAA,iB,CAAA,Q,CACA,uB,CACA,c,CAEA,kB,CACA,qB,CAEA,gB,CACA,iB,CACA,mB,CACA,kB,CAGF,mB,CACE,iB,CACA,S,CACA,W,CACA,iD,CACA,e,CACA,c,CACA,e,CACA,U,CACA,oB,CAGF,gB,CACE,iB,CACA,mB,CC1DF,O,CACE,6B,CAAA,qB,CACA,oB,CACA,iB,CACA,oB,CACA,iD,CACA,e,CACA,c,CACA,kB,CACA,U,CACA,4B,CACA,qB,CACA,wB,CACA,c,CCbF,I,CACE,a,CACA,Y,CACA,8B,CAQF,U,CALA,a,CAME,mB,CAAA,mB,CAAA,Y,CANF,a,CAEE,wB,CAAA,qB,CAAA,6B,CAGF,U,CAEE,2B,CAAA,4B,CAAA,yB,CAAA,qB,CACA,gB,CACA,kB,CAGF,W,CACE,4C,CACA,c,CACA,e,CACA,kB,CACA,qB,CACA,a,CACA,kB,CAaF,iB,CAVA,c,CAWE,iD,CAGA,e,CACA,a,CAfF,c,CAEE,c,CACA,e,CAGA,mB,CACA,mB,CAGF,iB,CAEE,c,CACA,e,CAIA,2B,CACE,kB,CAIJ,mB,CC9BA,sC,CD+BE,iB,CAGF,W,CACE,iB,CACA,iB,CAIF,kB,CACE,iB,CACA,W,CACA,Y,CACA,Q,CACA,U,CACA,4B,CACA,iB,CACA,Q,CAGF,kB,CACE,gC,CAAA,4B,CAAA,wB,CAGF,mB,CACE,iB,CACA,K,CACA,S,CACA,W,CACA,Y,CChFF,kB,CACE,e,CAgCF,4B,CfsuEA,2D,Ce3vEI,2D,Cf4vEJ,2D,CAPA,oD,Ce7vEI,oD,Cf8vEJ,oD,Ce3vEM,uB,CAAA,e,CAiBN,mB,CACE,iB,CAEA,iB,CACA,S,CAEA,6D,CAAA,qD,CAGF,4B,CACE,e,CACA,kB,CACA,S,CAKF,6B,CACE,S,CAEA,kB,CACA,S,ChB7CF,K,CACE,c,CAGF,e,CACE,iB,CACA,mB,CAAA,mB,CAAA,Y,CACA,wB,CAAA,qB,CAAA,6B,CAEA,mB,CACA,kB,CACA,W,CAEA,uB,CAEE,Q,CAEA,M,CACA,U,CACA,qC,CACA,U,CAGF,oCAnBF,e,CAoBI,kB,CAAA,gBAIJ,c,CACE,iB,CACA,mB,CAAA,mB,CAAA,Y,CACA,wB,CACA,c,CACA,U,CACA,c,CACA,uB,CAAA,oB,CAAA,sB,CACA,S,CAEA,qCAVF,c,CAWI,a,CACA,c,AAGF,oCAfF,c,CAgBI,gB,CACA,Y,CACA,WAGF,wB,CACE,S,CACA,mB,CAEA,gC,CACE,iB,CACA,Y,CACA,O,CACA,M,CACA,U,CACA,wB,CACA,U,CAKN,a,CACE,iD,CACA,c,CACA,e,CACA,e,CACA,a,CACA,mB,CACA,qB,CACA,Q,CAGF,c,CACE,kB,CACA,6B,CAAA,qB,CAGF,c,CACE,U,CAEA,oCAHF,c,CAII,c,AAMA,qBAAA,Y,CACE,e,CAKN,2B,CACE,Y,CAGF,2B,CACE,W,CACA,e,CACA,iB,CAGF,U,CACE,gB,CAAA,Y,CACA,0B,CAAA,+B,CACA,Q,CAGF,iB,CAWA,e,CAGE,mB,CAAA,mB,CAAA,Y,CAdF,iB,CAEE,2B,CAAA,4B,CAAA,yB,CAAA,qB,CAEA,sB,CACE,4B,CACA,kC,CACA,kB,CAIJ,e,CACE,gB,CACA,mB,CAEA,uB,CAAA,oB,CAAA,sB,CACA,iD,CACA,c,CACA,e,CACA,a,CACA,a,CiBrIF,e,CACE,iB,CACA,a,CACA,Y,CACA,iB,CACA,mB,CACA,wB,CAGF,sB,CACE,4C,CACA,c,CACA,e,CACA,kB,CACA,qB,CACA,a,CACA,mB,CACA,iB,CAGF,sB,CACE,iB,CACA,W,CACA,a,CCvBF,Y,CACE,gB,CAAA,Y,CACA,4B,CAAA,iC,CACA,Q,CACA,a,CACA,e,CACA,oB,CACA,Y,CAGF,Y,CACE,6B,CAAA,qB,CACA,4B,CACA,mB,CAAA,mB,CAAA,Y,CACA,2B,CAAA,4B,CAAA,yB,CAAA,qB,CACA,iB,CACA,wB,CAAA,qB,CAAA,kB,CAIA,sB,CACA,qB,CAEA,qB,CACE,8D,CAAA,2D,CACA,oB,CAEA,sC,CACE,Q,CACA,+D,CACA,U,CACA,iB,CAKN,a,CACE,iD,CACA,e,CACA,c,CACA,e,CACA,a,CACA,kB,CAGF,mB,CASA,a,CAUA,oB,CACE,iD,CAGA,e,CAvBF,mB,CAEE,e,CACA,c,CAEA,a,CACA,kB,CAGF,a,CAUA,oB,CAEE,e,CAZF,a,CAGE,c,CAEA,a,CACA,gB,CACA,kB,CAGF,oB,CAGE,e,CAEA,a,CAGF,gB,CACE,a,CACA,c,CACA,e,CACA,oB,CACA,wB,CACA,iB,CC9EF,Y,CACE,a,CACA,Y,CACA,iB,CACA,oB,CAGF,qB,CACE,gB,CAAA,Y,CACA,2B,CAAA,gC,CAGF,oB,CACE,qB,CAGF,kB,CACE,6B,CAAA,qB,CACA,mB,CAAA,mB,CAAA,Y,CACA,2B,CAAA,4B,CAAA,yB,CAAA,qB,CAIA,2B,CACA,wB,CAGF,mB,CACE,gB,CAAA,Y,CACA,2B,CAAA,gC,CACA,Q,CAGF,mB,CACE,4C,CACA,e,CACA,c,CACA,e,CACA,U,CACA,qB,CACA,wB,CACA,mB,CACA,iB,CAGF,yB,CACE,iD,CACA,e,CACA,c,CACA,e,CACA,mB,CACA,U,CACA,mB,CAGF,8B,CACE,c,CACA,c,CAGF,uB,CACA,mB,CAAA,mB,CAAA,Y,CACA,2B,CAAA,4B,CAAA,yB,CAAA,qB,CACA,Q,CAGA,wB,CACE,e,CACA,iD,CACA,e,CACA,c,CACA,e,CACA,U,CACA,mB,CAGF,0B,CACE,iB,CACA,mB,CAAA,mB,CAAA,Y,CACA,wB,CAAA,qB,CAAA,kB,CACA,O,CAEA,kC,CACE,iB,CACA,O,CACA,O,CACA,M,CACA,U,CACA,qB,CACA,U,CAIJ,kB,CACE,iD,CACA,e,CACA,c,CACA,e,CACA,U,CAGF,wB,CACE,c,CCtGF,Q,CACE,iB,CACA,a,CACA,Y,CACA,oB,CAGF,e,CACE,4C,CACA,c,CACA,e,CACA,kB,CACA,qB,CACA,a,CACA,kB,CACA,mB,CAGF,gB,CACE,Y,CACA,a,CCpBF,W,CACE,a,CACA,wB,CAGF,oB,CAIE,yB,CAGF,kB,CACE,4C,CACA,c,CACA,e,CACA,kB,CACA,qB,CACA,a,CACA,iB,CACA,kB,CAGF,iB,CACE,Q,CACA,S,CACA,oB,CACA,gB,CAAA,Y,CACA,8B,CAAA,mC,CACA,uB,CAAA,oB,CAAA,e,CACA,a,CC9BF,U,CACE,iB,CACA,mB,CAAA,mB,CAAA,Y,CACA,Q,CACA,gB,CAEA,eAAA,8B,CACE,iB,CACA,Y,CACA,O,CACA,M,CACA,U,CACA,wB,CACA,U,CACA,U,CAGF,kB,CACE,iB,CAAA,sB,CAAA,e,CACA,c,CAAA,mB,CAAA,Y,CACA,e,CACA,iB,CACA,2B,CAAA,4B,CAAA,yB,CAAA,qB,CACA,wB,CACA,iB,CACA,gB,CACA,c,CACA,K,CAIJ,0B,CACE,iB,CAGF,kB,CACE,iD,CACA,c,CACA,e,CACA,e,CACA,wB,CACA,+D,CACA,4B,CAAA,oB,CACA,mC,CAEA,0B,CACE,c,CACA,e,CACA,qB,CACA,qB,CACA,kB,CAIJ,uB,CAWA,iB,CAGE,iD,CAGA,e,CAjBF,uB,CACE,iB,CACA,U,CAEA,c,CACA,e,CAEA,mB,CACA,a,CAGF,iB,CACE,gB,CACA,kB,CAEA,c,CACA,e,CAEA,oB,CACA,a,CAEA,yB,CAEE,U,CACA,c,CACA,mB,CACA,gB,CAIJ,uB,CACE,iD,CACA,c,CACA,e,CACA,e,CACA,a,CAEA,+B,CACE,U,CC5FJ,W,CACE,a,CAGF,oB,CAIE,yB,CAGF,kB,CACE,4C,CACA,c,CACA,e,CACA,kB,CACA,qB,CACA,a,CACA,iB,CACA,kB,CAGF,iB,CACE,Q,CACA,S,CACA,oB,CACA,gB,CAAA,Y,CACA,wB,CAAA,6B,CACA,Q,CC5BF,U,CACE,iB,CACA,6B,CAAA,qB,CACA,4B,CACA,8D,CAAA,2D,CACA,oB,CAEA,e,CACE,S,CACA,c,CAAA,mB,CAAA,Y,CACA,mB,CAAA,mB,CAAA,Y,CACA,Q,CAIJ,gB,CACE,iB,CACA,wB,CAGF,iB,CACE,iD,CACA,c,CACA,e,CACA,e,CACA,a,CACA,kB,CAEA,sB,CACE,c,CACA,U,CAaJ,uB,CATA,iB,CACE,iD,CACA,c,CACA,e,CACA,e,CACA,U,CACA,mB,CAGF,uB,CAEE,c,CACA,e,CACA,e,CACA,a,CACA,oB,CACA,mB,CAEA,4B,CACE,oB,CACA,U,CACA,c,CACA,oB,CAIJ,gB,CACE,iD,CACA,c,CACA,e,CACA,e,CACA,a,CACA,mB,CACA,wB,CACA,+B,CAEA,qB,CACE,c,CACA,U,CACA,4B,CCzEJ,2D,CACE,e,CAGF,8D,CACE,uB,CAAA,e,CAGF,wB,CACE,Y,CACA,iC,CAAA,yB,CACA,e,CCXF,U,CAEE,kB,CAEA,qB,CACE,S,CACA,a,CAGF,8B,CACE,e,CAGF,mB,CACE,iB,CACA,kB,CAEA,4B,CACA,sC,CAGF,gD,CACE,U,CAGF,kB,CACE,iB,CACA,O,CACA,Q,CACA,U,CACA,W,CACA,wB,CACA,iB,CACA,4B,CACA,c,CAeJ,uB,CAXA,iB,CAYE,iD,CAIA,a,CAhBF,iB,CACE,gB,CACA,mB,CAEA,c,CACA,e,CACA,e,CAEA,mB,CAGF,uB,CAEE,c,CACA,e,CACA,e,CCrDF,I,CACE,a,CACA,wB,CAGF,a,CAIE,mB,CAGF,W,CACE,4C,CACA,c,CACA,e,CACA,kB,CACA,qB,CACA,a,CACA,mB","file":"style.min.css","sourcesContent":["/* stylelint-disable */\n/**\n * Swiper 7.4.1\n * Most modern mobile touch slider and framework with hardware accelerated transitions\n * https://swiperjs.com\n *\n * Copyright 2014-2021 Vladimir Kharlampidi\n *\n * Released under the MIT License\n *\n * Released on: December 24, 2021\n */\n\n@font-face {\n font-family: 'swiper-icons';\n src: url('data:application/font-woff;charset=utf-8;base64, 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');\n font-weight: 400;\n font-style: normal;\n}\n\n:root {\n --swiper-theme-color: #afafaf;\n}\n\n.swiper {\n margin-left: auto;\n margin-right: auto;\n position: relative;\n overflow: hidden;\n list-style: none;\n\n padding: 0;\n /* Fix of Webkit flickering */\n z-index: 1;\n}\n\n.swiper-vertical>.swiper-wrapper {\n flex-direction: column;\n}\n\n.swiper-wrapper {\n position: relative;\n width: 100%;\n height: 100%;\n z-index: 1;\n display: flex;\n transition-property: transform;\n box-sizing: content-box;\n}\n\n.swiper-android .swiper-slide,\n.swiper-wrapper {\n transform: translate3d(0px, 0, 0);\n}\n\n.swiper-pointer-events {\n touch-action: pan-y;\n}\n\n.swiper-pointer-events.swiper-vertical {\n touch-action: pan-x;\n}\n\n.swiper-slide {\n flex-shrink: 0;\n width: 100%;\n height: 100%;\n position: relative;\n transition-property: transform;\n\n &:hover .swiper-slide__title{\n bottom: 216px;\n }\n}\n\n.swiper-slide-invisible-blank {\n visibility: hidden;\n}\n\n/* Auto Height */\n.swiper-autoheight,\n.swiper-autoheight .swiper-slide {\n height: auto;\n}\n\n.swiper-autoheight .swiper-wrapper {\n align-items: flex-start;\n transition-property: transform, height;\n}\n\n/* 3D Effects */\n.swiper-3d,\n.swiper-3d.swiper-css-mode .swiper-wrapper {\n perspective: 1200px;\n}\n\n.swiper-3d .swiper-wrapper,\n.swiper-3d .swiper-slide,\n.swiper-3d .swiper-slide-shadow,\n.swiper-3d .swiper-slide-shadow-left,\n.swiper-3d .swiper-slide-shadow-right,\n.swiper-3d .swiper-slide-shadow-top,\n.swiper-3d .swiper-slide-shadow-bottom,\n.swiper-3d .swiper-cube-shadow {\n transform-style: preserve-3d;\n}\n\n.swiper-3d .swiper-slide-shadow,\n.swiper-3d .swiper-slide-shadow-left,\n.swiper-3d .swiper-slide-shadow-right,\n.swiper-3d .swiper-slide-shadow-top,\n.swiper-3d .swiper-slide-shadow-bottom {\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n z-index: 10;\n}\n\n.swiper-3d .swiper-slide-shadow {\n background: rgba(0, 0, 0, 0.15);\n}\n\n.swiper-3d .swiper-slide-shadow-left {\n background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n\n.swiper-3d .swiper-slide-shadow-right {\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n\n.swiper-3d .swiper-slide-shadow-top {\n background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n\n.swiper-3d .swiper-slide-shadow-bottom {\n background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n\n/* CSS Mode */\n.swiper-css-mode>.swiper-wrapper {\n overflow: auto;\n scrollbar-width: none;\n /* For Firefox */\n -ms-overflow-style: none;\n /* For Internet Explorer and Edge */\n}\n\n.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {\n display: none;\n}\n\n.swiper-css-mode>.swiper-wrapper>.swiper-slide {\n scroll-snap-align: start start;\n}\n\n.swiper-horizontal.swiper-css-mode>.swiper-wrapper {\n scroll-snap-type: x mandatory;\n}\n\n.swiper-vertical.swiper-css-mode>.swiper-wrapper {\n scroll-snap-type: y mandatory;\n}\n\n.swiper-centered>.swiper-wrapper::before {\n content: '';\n flex-shrink: 0;\n order: 9999;\n}\n\n.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {\n margin-inline-start: var(--swiper-centered-offset-before);\n}\n\n.swiper-centered.swiper-horizontal>.swiper-wrapper::before {\n height: 100%;\n min-height: 1px;\n width: var(--swiper-centered-offset-after);\n}\n\n.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {\n margin-block-start: var(--swiper-centered-offset-before);\n}\n\n.swiper-centered.swiper-vertical>.swiper-wrapper::before {\n width: 100%;\n min-width: 1px;\n height: var(--swiper-centered-offset-after);\n}\n\n.swiper-centered>.swiper-wrapper>.swiper-slide {\n scroll-snap-align: center center;\n}\n\n.swiper-virtual.swiper-css-mode .swiper-wrapper::after {\n content: '';\n position: absolute;\n left: 0;\n top: 0;\n pointer-events: none;\n}\n\n.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {\n height: 1px;\n width: var(--swiper-virtual-size);\n}\n\n.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {\n width: 1px;\n height: var(--swiper-virtual-size);\n}\n\n:root {\n --swiper-navigation-size: 44px;\n /*\n --swiper-navigation-color: var(--swiper-theme-color);\n */\n}\n\n.swiper-button-prev,\n.swiper-button-next {\n position: absolute;\n top: 51%;\n width: calc(var(--swiper-navigation-size) / 13 * 27);\n height: var(--swiper-navigation-size);\n margin-top: calc(0px - (var(--swiper-navigation-size) / 2));\n z-index: 10;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--swiper-navigation-color, var(--swiper-theme-color));\n}\n\n.swiper-button-prev.swiper-button-disabled,\n.swiper-button-next.swiper-button-disabled {\n opacity: 0.35;\n cursor: auto;\n pointer-events: none;\n}\n\n.swiper-button-prev:after,\n.swiper-button-next:after {\n font-family: swiper-icons;\n font-size: var(--swiper-navigation-size);\n text-transform: none !important;\n letter-spacing: 0;\n text-transform: none;\n font-variant: initial;\n line-height: 1;\n}\n\n.swiper-button-prev,\n.swiper-rtl .swiper-button-next {\n left: 10px;\n right: auto;\n}\n\n.swiper-button-prev:after,\n.swiper-rtl .swiper-button-next:after {\n content: 'prev';\n}\n\n.swiper-button-next,\n.swiper-rtl .swiper-button-prev {\n right: 10px;\n left: auto;\n}\n\n.swiper-button-next:after,\n.swiper-rtl .swiper-button-prev:after {\n content: 'next';\n}\n\n.swiper-button-lock {\n display: none;\n}\n\n// :root {\n/*\n --swiper-pagination-color: var(--swiper-theme-color);\n --swiper-pagination-bullet-size: 8px;\n --swiper-pagination-bullet-width: 8px;\n --swiper-pagination-bullet-height: 8px;\n --swiper-pagination-bullet-inactive-color: #000;\n --swiper-pagination-bullet-inactive-opacity: 0.2;\n --swiper-pagination-bullet-opacity: 1;\n --swiper-pagination-bullet-horizontal-gap: 4px;\n --swiper-pagination-bullet-vertical-gap: 6px;\n */\n// }\n.swiper-pagination {\n position: absolute;\n text-align: center;\n transition: 300ms opacity;\n transform: translate3d(0, 0, 0);\n z-index: 10;\n}\n\n.swiper-pagination.swiper-pagination-hidden {\n opacity: 0;\n}\n\n/* Common Styles */\n.swiper-pagination-fraction,\n.swiper-pagination-custom,\n.swiper-horizontal>.swiper-pagination-bullets,\n.swiper-pagination-bullets.swiper-pagination-horizontal {\n bottom: 10px;\n left: 0;\n width: 100%;\n}\n\n/* Bullets */\n.swiper-pagination-bullets-dynamic {\n overflow: hidden;\n font-size: 0;\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n transform: scale(0.33);\n position: relative;\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {\n transform: scale(1);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {\n transform: scale(1);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {\n transform: scale(0.66);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {\n transform: scale(0.33);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {\n transform: scale(0.66);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {\n transform: scale(0.33);\n}\n\n.swiper-pagination-bullet {\n width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));\n height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));\n display: inline-block;\n border-radius: 50%;\n background: var(--swiper-pagination-bullet-inactive-color, #000);\n opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);\n}\n\nbutton.swiper-pagination-bullet {\n border: none;\n margin: 0;\n padding: 0;\n box-shadow: none;\n -webkit-appearance: none;\n appearance: none;\n}\n\n.swiper-pagination-clickable .swiper-pagination-bullet {\n cursor: pointer;\n}\n\n.swiper-pagination-bullet:only-child {\n display: none !important;\n}\n\n.swiper-pagination-bullet-active {\n opacity: var(--swiper-pagination-bullet-opacity, 1);\n background: var(--swiper-pagination-color, var(--swiper-theme-color));\n}\n\n.swiper-vertical>.swiper-pagination-bullets,\n.swiper-pagination-vertical.swiper-pagination-bullets {\n right: 10px;\n top: 50%;\n transform: translate3d(0px, -50%, 0);\n}\n\n.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet,\n.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {\n margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;\n display: block;\n}\n\n.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,\n.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {\n top: 50%;\n transform: translateY(-50%);\n width: 8px;\n}\n\n.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,\n.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n display: inline-block;\n transition: 200ms transform, 200ms top;\n}\n\n.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,\n.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {\n margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);\n}\n\n.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,\n.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {\n left: 50%;\n transform: translateX(-50%);\n white-space: nowrap;\n}\n\n.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,\n.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n transition: 200ms transform, 200ms left;\n}\n\n.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n transition: 200ms transform, 200ms right;\n}\n\n/* Progress */\n.swiper-pagination-progressbar {\n background: rgba(0, 0, 0, 0.25);\n position: absolute;\n}\n\n.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {\n background: var(--swiper-pagination-color, var(--swiper-theme-color));\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n transform: scale(0);\n transform-origin: left top;\n}\n\n.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {\n transform-origin: right top;\n}\n\n.swiper-horizontal>.swiper-pagination-progressbar,\n.swiper-pagination-progressbar.swiper-pagination-horizontal,\n.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,\n.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {\n width: 100%;\n height: 4px;\n left: 0;\n top: 0;\n}\n\n.swiper-vertical>.swiper-pagination-progressbar,\n.swiper-pagination-progressbar.swiper-pagination-vertical,\n.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,\n.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {\n width: 4px;\n height: 100%;\n left: 0;\n top: 0;\n}\n\n.swiper-pagination-lock {\n display: none;\n}\n\n/* Scrollbar */\n.swiper-scrollbar {\n border-radius: 10px;\n position: relative;\n // -ms-touch-action: none;\n background: rgba(0, 0, 0, 0.1);\n}\n\n.swiper-horizontal>.swiper-scrollbar {\n position: absolute;\n left: 1%;\n bottom: 3px;\n z-index: 50;\n height: 5px;\n width: 98%;\n}\n\n.swiper-vertical>.swiper-scrollbar {\n position: absolute;\n right: 3px;\n top: 1%;\n z-index: 50;\n width: 5px;\n height: 98%;\n}\n\n.swiper-scrollbar-drag {\n height: 100%;\n width: 100%;\n position: relative;\n background: rgba(0, 0, 0, 0.5);\n border-radius: 10px;\n left: 0;\n top: 0;\n}\n\n.swiper-scrollbar-cursor-drag {\n cursor: move;\n}\n\n.swiper-scrollbar-lock {\n display: none;\n}\n\n.swiper-zoom-container {\n width: 100%;\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n text-align: center;\n}\n\n.swiper-zoom-container>img,\n.swiper-zoom-container>svg,\n.swiper-zoom-container>canvas {\n max-width: 100%;\n max-height: 100%;\n object-fit: contain;\n}\n\n.swiper-slide-zoomed {\n cursor: move;\n}\n\n/* Preloader */\n// :root {\n/*\n --swiper-preloader-color: var(--swiper-theme-color);\n */\n// }\n.swiper-lazy-preloader {\n width: 42px;\n height: 42px;\n position: absolute;\n left: 50%;\n top: 50%;\n margin-left: -21px;\n margin-top: -21px;\n z-index: 10;\n transform-origin: 50%;\n animation: swiper-preloader-spin 1s infinite linear;\n box-sizing: border-box;\n border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));\n border-radius: 50%;\n border-top-color: transparent;\n}\n\n.swiper-lazy-preloader-white {\n --swiper-preloader-color: #fff;\n}\n\n.swiper-lazy-preloader-black {\n --swiper-preloader-color: #000;\n}\n\n@keyframes swiper-preloader-spin {\n 100% {\n transform: rotate(360deg);\n }\n}\n\n/* a11y */\n.swiper .swiper-notification {\n position: absolute;\n left: 0;\n top: 0;\n pointer-events: none;\n opacity: 0;\n z-index: -1000;\n}\n\n.swiper-free-mode>.swiper-wrapper {\n transition-timing-function: ease-out;\n margin: 0 auto;\n}\n\n.swiper-grid>.swiper-wrapper {\n flex-wrap: wrap;\n}\n\n.swiper-grid-column>.swiper-wrapper {\n flex-wrap: wrap;\n flex-direction: column;\n}\n\n.swiper-fade.swiper-free-mode .swiper-slide {\n transition-timing-function: ease-out;\n}\n\n.swiper-fade .swiper-slide {\n pointer-events: none;\n transition-property: opacity;\n}\n\n.swiper-fade .swiper-slide .swiper-slide {\n pointer-events: none;\n}\n\n.swiper-fade .swiper-slide-active,\n.swiper-fade .swiper-slide-active .swiper-slide-active {\n pointer-events: auto;\n}\n\n.swiper-cube {\n overflow: visible;\n}\n\n.swiper-cube .swiper-slide {\n pointer-events: none;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n z-index: 1;\n visibility: hidden;\n transform-origin: 0 0;\n width: 100%;\n height: 100%;\n}\n\n.swiper-cube .swiper-slide .swiper-slide {\n pointer-events: none;\n}\n\n.swiper-cube.swiper-rtl .swiper-slide {\n transform-origin: 100% 0;\n}\n\n.swiper-cube .swiper-slide-active,\n.swiper-cube .swiper-slide-active .swiper-slide-active {\n pointer-events: auto;\n}\n\n.swiper-cube .swiper-slide-active,\n.swiper-cube .swiper-slide-next,\n.swiper-cube .swiper-slide-prev,\n.swiper-cube .swiper-slide-next+.swiper-slide {\n pointer-events: auto;\n visibility: visible;\n}\n\n.swiper-cube .swiper-slide-shadow-top,\n.swiper-cube .swiper-slide-shadow-bottom,\n.swiper-cube .swiper-slide-shadow-left,\n.swiper-cube .swiper-slide-shadow-right {\n z-index: 0;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n}\n\n.swiper-cube .swiper-cube-shadow {\n position: absolute;\n left: 0;\n bottom: 0px;\n width: 100%;\n height: 100%;\n opacity: 0.6;\n z-index: 0;\n}\n\n.swiper-cube .swiper-cube-shadow:before {\n content: '';\n background: #000;\n position: absolute;\n left: 0;\n top: 0;\n bottom: 0;\n right: 0;\n filter: blur(50px);\n}\n\n.swiper-flip {\n overflow: visible;\n}\n\n.swiper-flip .swiper-slide {\n pointer-events: none;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n z-index: 1;\n}\n\n.swiper-flip .swiper-slide .swiper-slide {\n pointer-events: none;\n}\n\n.swiper-flip .swiper-slide-active,\n.swiper-flip .swiper-slide-active .swiper-slide-active {\n pointer-events: auto;\n}\n\n.swiper-flip .swiper-slide-shadow-top,\n.swiper-flip .swiper-slide-shadow-bottom,\n.swiper-flip .swiper-slide-shadow-left,\n.swiper-flip .swiper-slide-shadow-right {\n z-index: 0;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n}\n\n.swiper-creative .swiper-slide {\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n overflow: hidden;\n transition-property: transform, opacity, height;\n}\n\n.swiper-cards {\n overflow: visible;\n}\n\n.swiper-cards .swiper-slide {\n transform-origin: center bottom;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n overflow: hidden;\n}\n\n.swiper-slide__title {\n position: absolute;\n left: 50%;\n margin-left: -22%;\n bottom: 23px;\n color: #ffffff;\n letter-spacing: -0.4px;\n z-index: 5;\n}\n\n.swiper-slide__description {\n display: flex;\n flex-direction: column;\n align-items: center;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(16, 38, 84, 0.89);\n opacity: 0;\n transition: opacity .4s linear;\n\n &:hover {\n opacity: 1;\n }\n}\n\n\n.swiper-slide__subtitle {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 15px;\n font-weight: 400;\n line-height: 1.5;\n color: #b6bdcc;\n padding-top: 76px;\n padding-bottom: 34px;\n}\n\n.swiper-slide__list {\n margin: 0;\n padding: 0;\n padding-left: 24px;\n}\n\n.swiper-slide__item {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 14px;\n font-weight: 400;\n line-height: 1.5;\n color: #ffffff;\n letter-spacing: -0.8px;\n padding-bottom: 13px;\n}\n","/* stylelint-disable */\n/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n* Remove the margin in all browsers.\n*/\n\nbody {\n margin: 0;\n}\n\n/**\n* Render the `main` element consistently in IE.\n*/\n\nmain {\n display: block;\n}\n\n/**\n* Correct the font size and margin on `h1` elements within `section` and\n* `article` contexts in Chrome, Firefox, and Safari.\n*/\n\nh1 {\n margin: 0.67em 0;\n\n font-size: 2em;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n* 1. Add the correct box sizing in Firefox.\n* 2. Show the overflow in Edge and IE.\n*/\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n* 1. Correct the inheritance and scaling of font size in all browsers.\n* 2. Correct the odd `em` font sizing in all browsers.\n*/\n\npre {\n font-size: 1em; /* 2 */\n font-family: monospace, monospace; /* 1 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n* Remove the gray background on active links in IE 10.\n*/\n\na {\n background-color: transparent;\n}\n\n/**\n* 1. Remove the bottom border in Chrome 57-\n* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n*/\n\nabbr[title] {\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n\n border-bottom: none; /* 1 */\n}\n\n/**\n* Add the correct font weight in Chrome, Edge, and Safari.\n*/\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n* 1. Correct the inheritance and scaling of font size in all browsers.\n* 2. Correct the odd `em` font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp {\n font-size: 1em; /* 2 */\n font-family: monospace, monospace; /* 1 */\n}\n\n/**\n* Add the correct font size in all browsers.\n*/\n\nsmall {\n font-size: 80%;\n}\n\n/**\n* Prevent `sub` and `sup` elements from affecting the line height in\n* all browsers.\n*/\n\nsub,\nsup {\n position: relative;\n\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n* Remove the border on images inside links in IE 10.\n*/\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n* 1. Change the font styles in all browsers.\n* 2. Remove the margin in Firefox and Safari.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n margin: 0; /* 2 */\n\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n font-family: inherit; /* 1 */\n}\n\n/**\n* Show the overflow in IE.\n* 1. Show the overflow in Edge.\n*/\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n* Remove the inheritance of text transform in Edge, Firefox, and IE.\n* 1. Remove the inheritance of text transform in Firefox.\n*/\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n* Correct the inability to style clickable types in iOS and Safari.\n*/\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n* Remove the inner border and padding in Firefox.\n*/\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n padding: 0;\n\n border-style: none;\n}\n\n/**\n* Restore the focus styles unset by the previous rule.\n*/\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n* Correct the padding in Firefox.\n*/\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n* 1. Correct the text wrapping in Edge and IE.\n* 2. Correct the color inheritance from `fieldset` elements in IE.\n* 3. Remove the padding so developers are not caught out when they zero out\n* `fieldset` elements in all browsers.\n*/\n\nlegend {\n display: table; /* 1 */\n box-sizing: border-box; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n\n color: inherit; /* 2 */\n white-space: normal; /* 1 */\n}\n\n/**\n* Add the correct vertical alignment in Chrome, Firefox, and Opera.\n*/\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n* Remove the default vertical scrollbar in IE 10+.\n*/\n\ntextarea {\n overflow: auto;\n}\n\n/**\n* 1. Add the correct box sizing in IE 10.\n* 2. Remove the padding in IE 10.\n*/\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n* Correct the cursor style of increment and decrement buttons in Chrome.\n*/\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n* 1. Correct the odd appearance in Chrome and Safari.\n* 2. Correct the outline style in Safari.\n*/\n\n[type=\"search\"] {\n outline-offset: -2px; /* 2 */\n\n -webkit-appearance: textfield; /* 1 */\n}\n\n/**\n* Remove the inner padding in Chrome and Safari on macOS.\n*/\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n* 1. Correct the inability to style clickable types in iOS and Safari.\n* 2. Change font properties to `inherit` in Safari.\n*/\n\n::-webkit-file-upload-button {\n font: inherit; /* 2 */\n\n -webkit-appearance: button; /* 1 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n* Add the correct display in Edge, IE 10+, and Firefox.\n*/\n\ndetails {\n display: block;\n}\n\n/*\n* Add the correct display in all browsers.\n*/\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n* Add the correct display in IE 10+.\n*/\n\ntemplate {\n display: none;\n}\n\n/**\n* Add the correct display in IE 10.\n*/\n\n[hidden] {\n display: none;\n}\n",".tabs {\n max-width: 100%;\n}\n\n.tabs__controls {\n position: relative;\n display: flex;\n justify-content: space-between;\n margin: 0 auto;\n padding-bottom: 12px;\n margin-bottom: 40px;\n width: 342px;\n\n &::before {\n position: absolute;\n bottom: 0;\n right: 0;\n left: 0;\n height: 2px;\n background-color: rgba(120, 120, 120, 0.20);\n content: \"\";\n }\n\n @media screen and (max-width: 767px) {\n flex-wrap: wrap;\n }\n}\n\n.tabs__control {\n position: relative;\n display: flex;\n text-transform: uppercase;\n cursor: pointer;\n opacity: 0.5;\n min-width: auto;\n justify-content: center;\n padding: 0;\n\n @media screen and (max-width: 1023px) {\n margin: 0 10px;\n padding: 15px;\n }\n\n @media screen and (max-width: 767px) {\n margin: 10px 2% 0;\n padding: 10px;\n width: 45%;\n }\n\n &.is-active {\n opacity: 1;\n pointer-events: none;\n\n &::before {\n position: absolute;\n bottom: -12px;\n right: 0;\n left: 0;\n height: 2px;\n background-color: $color-banner-red;\n content: \"\";\n }\n }\n}\n\n.tabs__button {\n font-family: $ff-placeholder;\n font-size: 20px;\n font-weight: 400;\n line-height: 1.5;\n color: $color-primary;\n text-transform: none;\n letter-spacing: -1.1px;\n border: none;\n}\n\n.tabs__content {\n margin-bottom: 40px;\n transition: height 0.3s;\n}\n\n.tabs__element {\n width: 100%;\n\n @media screen and (max-width: 767px) {\n padding: 15px;\n }\n\n p {\n margin: 0;\n\n &:not(:last-child) {\n margin: 0 0 20px 0;\n }\n }\n}\n\n.tabs--unset .tabs__content {\n height: 100px;\n}\n\n.tabs--unset .tabs__element {\n height: 100%;\n overflow-y: auto;\n overflow-x: hidden;\n}\n\n.tabs__faq {\n display: grid;\n grid-template-columns: 260px 1fr;\n gap: 30px;\n}\n\n.tabs__categories {\n display: flex;\n flex-direction: column;\n\n & .btn {\n background-color: $color-transparent;\n border: 1px solid $color-primary-light;\n margin-bottom: 10px;\n }\n}\n\n.tabs__category{\n padding-top: 18px;\n padding-bottom: 16px;\n display: flex;\n justify-content: center;\n font-family: $ff-placeholder;\n font-size: 18px;\n font-weight: 600;\n line-height: 1;\n color: $color-primary;\n}\n","/* stylelint-disable */\n/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n/* Document\n ========================================================================== */\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n/**\n* Remove the margin in all browsers.\n*/\nbody {\n margin: 0;\n}\n\n/**\n* Render the `main` element consistently in IE.\n*/\nmain {\n display: block;\n}\n\n/**\n* Correct the font size and margin on `h1` elements within `section` and\n* `article` contexts in Chrome, Firefox, and Safari.\n*/\nh1 {\n margin: 0.67em 0;\n font-size: 2em;\n}\n\n/* Grouping content\n ========================================================================== */\n/**\n* 1. Add the correct box sizing in Firefox.\n* 2. Show the overflow in Edge and IE.\n*/\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n* 1. Correct the inheritance and scaling of font size in all browsers.\n* 2. Correct the odd `em` font sizing in all browsers.\n*/\npre {\n font-size: 1em; /* 2 */\n font-family: monospace, monospace; /* 1 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n/**\n* Remove the gray background on active links in IE 10.\n*/\na {\n background-color: transparent;\n}\n\n/**\n* 1. Remove the bottom border in Chrome 57-\n* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n*/\nabbr[title] {\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n border-bottom: none; /* 1 */\n}\n\n/**\n* Add the correct font weight in Chrome, Edge, and Safari.\n*/\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n* 1. Correct the inheritance and scaling of font size in all browsers.\n* 2. Correct the odd `em` font sizing in all browsers.\n*/\ncode,\nkbd,\nsamp {\n font-size: 1em; /* 2 */\n font-family: monospace, monospace; /* 1 */\n}\n\n/**\n* Add the correct font size in all browsers.\n*/\nsmall {\n font-size: 80%;\n}\n\n/**\n* Prevent `sub` and `sup` elements from affecting the line height in\n* all browsers.\n*/\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n/**\n* Remove the border on images inside links in IE 10.\n*/\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n/**\n* 1. Change the font styles in all browsers.\n* 2. Remove the margin in Firefox and Safari.\n*/\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n margin: 0; /* 2 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n font-family: inherit; /* 1 */\n}\n\n/**\n* Show the overflow in IE.\n* 1. Show the overflow in Edge.\n*/\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n* Remove the inheritance of text transform in Edge, Firefox, and IE.\n* 1. Remove the inheritance of text transform in Firefox.\n*/\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n* Correct the inability to style clickable types in iOS and Safari.\n*/\nbutton,\n[type=button],\n[type=reset],\n[type=submit] {\n -webkit-appearance: button;\n}\n\n/**\n* Remove the inner border and padding in Firefox.\n*/\nbutton::-moz-focus-inner,\n[type=button]::-moz-focus-inner,\n[type=reset]::-moz-focus-inner,\n[type=submit]::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\n/**\n* Restore the focus styles unset by the previous rule.\n*/\nbutton:-moz-focusring,\n[type=button]:-moz-focusring,\n[type=reset]:-moz-focusring,\n[type=submit]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n* Correct the padding in Firefox.\n*/\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n* 1. Correct the text wrapping in Edge and IE.\n* 2. Correct the color inheritance from `fieldset` elements in IE.\n* 3. Remove the padding so developers are not caught out when they zero out\n* `fieldset` elements in all browsers.\n*/\nlegend {\n display: table; /* 1 */\n box-sizing: border-box; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n color: inherit; /* 2 */\n white-space: normal; /* 1 */\n}\n\n/**\n* Add the correct vertical alignment in Chrome, Firefox, and Opera.\n*/\nprogress {\n vertical-align: baseline;\n}\n\n/**\n* Remove the default vertical scrollbar in IE 10+.\n*/\ntextarea {\n overflow: auto;\n}\n\n/**\n* 1. Add the correct box sizing in IE 10.\n* 2. Remove the padding in IE 10.\n*/\n[type=checkbox],\n[type=radio] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n* Correct the cursor style of increment and decrement buttons in Chrome.\n*/\n[type=number]::-webkit-inner-spin-button,\n[type=number]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n* 1. Correct the odd appearance in Chrome and Safari.\n* 2. Correct the outline style in Safari.\n*/\n[type=search] {\n outline-offset: -2px; /* 2 */\n -webkit-appearance: textfield; /* 1 */\n}\n\n/**\n* Remove the inner padding in Chrome and Safari on macOS.\n*/\n[type=search]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n* 1. Correct the inability to style clickable types in iOS and Safari.\n* 2. Change font properties to `inherit` in Safari.\n*/\n::-webkit-file-upload-button {\n font: inherit; /* 2 */\n -webkit-appearance: button; /* 1 */\n}\n\n/* Interactive\n ========================================================================== */\n/*\n* Add the correct display in Edge, IE 10+, and Firefox.\n*/\ndetails {\n display: block;\n}\n\n/*\n* Add the correct display in all browsers.\n*/\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n/**\n* Add the correct display in IE 10+.\n*/\ntemplate {\n display: none;\n}\n\n/**\n* Add the correct display in IE 10.\n*/\n[hidden] {\n display: none;\n}\n\n/* stylelint-disable */\n/**\n * Swiper 7.4.1\n * Most modern mobile touch slider and framework with hardware accelerated transitions\n * https://swiperjs.com\n *\n * Copyright 2014-2021 Vladimir Kharlampidi\n *\n * Released under the MIT License\n *\n * Released on: December 24, 2021\n */\n@font-face {\n font-family: \"swiper-icons\";\n src: url(\"data:application/font-woff;charset=utf-8;base64, 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\");\n font-weight: 400;\n font-style: normal;\n}\n:root {\n --swiper-theme-color: #afafaf;\n}\n\n.swiper {\n margin-left: auto;\n margin-right: auto;\n position: relative;\n overflow: hidden;\n list-style: none;\n padding: 0;\n /* Fix of Webkit flickering */\n z-index: 1;\n}\n\n.swiper-vertical > .swiper-wrapper {\n flex-direction: column;\n}\n\n.swiper-wrapper {\n position: relative;\n width: 100%;\n height: 100%;\n z-index: 1;\n display: flex;\n transition-property: transform;\n box-sizing: content-box;\n}\n\n.swiper-android .swiper-slide,\n.swiper-wrapper {\n transform: translate3d(0px, 0, 0);\n}\n\n.swiper-pointer-events {\n touch-action: pan-y;\n}\n\n.swiper-pointer-events.swiper-vertical {\n touch-action: pan-x;\n}\n\n.swiper-slide {\n flex-shrink: 0;\n width: 100%;\n height: 100%;\n position: relative;\n transition-property: transform;\n}\n.swiper-slide:hover .swiper-slide__title {\n bottom: 216px;\n}\n\n.swiper-slide-invisible-blank {\n visibility: hidden;\n}\n\n/* Auto Height */\n.swiper-autoheight,\n.swiper-autoheight .swiper-slide {\n height: auto;\n}\n\n.swiper-autoheight .swiper-wrapper {\n align-items: flex-start;\n transition-property: transform, height;\n}\n\n/* 3D Effects */\n.swiper-3d,\n.swiper-3d.swiper-css-mode .swiper-wrapper {\n perspective: 1200px;\n}\n\n.swiper-3d .swiper-wrapper,\n.swiper-3d .swiper-slide,\n.swiper-3d .swiper-slide-shadow,\n.swiper-3d .swiper-slide-shadow-left,\n.swiper-3d .swiper-slide-shadow-right,\n.swiper-3d .swiper-slide-shadow-top,\n.swiper-3d .swiper-slide-shadow-bottom,\n.swiper-3d .swiper-cube-shadow {\n transform-style: preserve-3d;\n}\n\n.swiper-3d .swiper-slide-shadow,\n.swiper-3d .swiper-slide-shadow-left,\n.swiper-3d .swiper-slide-shadow-right,\n.swiper-3d .swiper-slide-shadow-top,\n.swiper-3d .swiper-slide-shadow-bottom {\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n z-index: 10;\n}\n\n.swiper-3d .swiper-slide-shadow {\n background: rgba(0, 0, 0, 0.15);\n}\n\n.swiper-3d .swiper-slide-shadow-left {\n background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n\n.swiper-3d .swiper-slide-shadow-right {\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n\n.swiper-3d .swiper-slide-shadow-top {\n background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n\n.swiper-3d .swiper-slide-shadow-bottom {\n background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n\n/* CSS Mode */\n.swiper-css-mode > .swiper-wrapper {\n overflow: auto;\n scrollbar-width: none;\n /* For Firefox */\n -ms-overflow-style: none;\n /* For Internet Explorer and Edge */\n}\n\n.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {\n display: none;\n}\n\n.swiper-css-mode > .swiper-wrapper > .swiper-slide {\n scroll-snap-align: start start;\n}\n\n.swiper-horizontal.swiper-css-mode > .swiper-wrapper {\n scroll-snap-type: x mandatory;\n}\n\n.swiper-vertical.swiper-css-mode > .swiper-wrapper {\n scroll-snap-type: y mandatory;\n}\n\n.swiper-centered > .swiper-wrapper::before {\n content: \"\";\n flex-shrink: 0;\n order: 9999;\n}\n\n.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {\n margin-inline-start: var(--swiper-centered-offset-before);\n}\n\n.swiper-centered.swiper-horizontal > .swiper-wrapper::before {\n height: 100%;\n min-height: 1px;\n width: var(--swiper-centered-offset-after);\n}\n\n.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {\n margin-block-start: var(--swiper-centered-offset-before);\n}\n\n.swiper-centered.swiper-vertical > .swiper-wrapper::before {\n width: 100%;\n min-width: 1px;\n height: var(--swiper-centered-offset-after);\n}\n\n.swiper-centered > .swiper-wrapper > .swiper-slide {\n scroll-snap-align: center center;\n}\n\n.swiper-virtual.swiper-css-mode .swiper-wrapper::after {\n content: \"\";\n position: absolute;\n left: 0;\n top: 0;\n pointer-events: none;\n}\n\n.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {\n height: 1px;\n width: var(--swiper-virtual-size);\n}\n\n.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {\n width: 1px;\n height: var(--swiper-virtual-size);\n}\n\n:root {\n --swiper-navigation-size: 44px;\n /*\n --swiper-navigation-color: var(--swiper-theme-color);\n */\n}\n\n.swiper-button-prev,\n.swiper-button-next {\n position: absolute;\n top: 51%;\n width: calc(var(--swiper-navigation-size) / 13 * 27);\n height: var(--swiper-navigation-size);\n margin-top: calc(0px - var(--swiper-navigation-size) / 2);\n z-index: 10;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--swiper-navigation-color, var(--swiper-theme-color));\n}\n\n.swiper-button-prev.swiper-button-disabled,\n.swiper-button-next.swiper-button-disabled {\n opacity: 0.35;\n cursor: auto;\n pointer-events: none;\n}\n\n.swiper-button-prev:after,\n.swiper-button-next:after {\n font-family: swiper-icons;\n font-size: var(--swiper-navigation-size);\n text-transform: none !important;\n letter-spacing: 0;\n text-transform: none;\n font-variant: initial;\n line-height: 1;\n}\n\n.swiper-button-prev,\n.swiper-rtl .swiper-button-next {\n left: 10px;\n right: auto;\n}\n\n.swiper-button-prev:after,\n.swiper-rtl .swiper-button-next:after {\n content: \"prev\";\n}\n\n.swiper-button-next,\n.swiper-rtl .swiper-button-prev {\n right: 10px;\n left: auto;\n}\n\n.swiper-button-next:after,\n.swiper-rtl .swiper-button-prev:after {\n content: \"next\";\n}\n\n.swiper-button-lock {\n display: none;\n}\n\n/*\n --swiper-pagination-color: var(--swiper-theme-color);\n --swiper-pagination-bullet-size: 8px;\n --swiper-pagination-bullet-width: 8px;\n --swiper-pagination-bullet-height: 8px;\n --swiper-pagination-bullet-inactive-color: #000;\n --swiper-pagination-bullet-inactive-opacity: 0.2;\n --swiper-pagination-bullet-opacity: 1;\n --swiper-pagination-bullet-horizontal-gap: 4px;\n --swiper-pagination-bullet-vertical-gap: 6px;\n */\n.swiper-pagination {\n position: absolute;\n text-align: center;\n transition: 300ms opacity;\n transform: translate3d(0, 0, 0);\n z-index: 10;\n}\n\n.swiper-pagination.swiper-pagination-hidden {\n opacity: 0;\n}\n\n/* Common Styles */\n.swiper-pagination-fraction,\n.swiper-pagination-custom,\n.swiper-horizontal > .swiper-pagination-bullets,\n.swiper-pagination-bullets.swiper-pagination-horizontal {\n bottom: 10px;\n left: 0;\n width: 100%;\n}\n\n/* Bullets */\n.swiper-pagination-bullets-dynamic {\n overflow: hidden;\n font-size: 0;\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n transform: scale(0.33);\n position: relative;\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {\n transform: scale(1);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {\n transform: scale(1);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {\n transform: scale(0.66);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {\n transform: scale(0.33);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {\n transform: scale(0.66);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {\n transform: scale(0.33);\n}\n\n.swiper-pagination-bullet {\n width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));\n height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));\n display: inline-block;\n border-radius: 50%;\n background: var(--swiper-pagination-bullet-inactive-color, #000);\n opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);\n}\n\nbutton.swiper-pagination-bullet {\n border: none;\n margin: 0;\n padding: 0;\n box-shadow: none;\n -webkit-appearance: none;\n appearance: none;\n}\n\n.swiper-pagination-clickable .swiper-pagination-bullet {\n cursor: pointer;\n}\n\n.swiper-pagination-bullet:only-child {\n display: none !important;\n}\n\n.swiper-pagination-bullet-active {\n opacity: var(--swiper-pagination-bullet-opacity, 1);\n background: var(--swiper-pagination-color, var(--swiper-theme-color));\n}\n\n.swiper-vertical > .swiper-pagination-bullets,\n.swiper-pagination-vertical.swiper-pagination-bullets {\n right: 10px;\n top: 50%;\n transform: translate3d(0px, -50%, 0);\n}\n\n.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,\n.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {\n margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;\n display: block;\n}\n\n.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,\n.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {\n top: 50%;\n transform: translateY(-50%);\n width: 8px;\n}\n\n.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,\n.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n display: inline-block;\n transition: 200ms transform, 200ms top;\n}\n\n.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,\n.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {\n margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);\n}\n\n.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,\n.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {\n left: 50%;\n transform: translateX(-50%);\n white-space: nowrap;\n}\n\n.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,\n.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n transition: 200ms transform, 200ms left;\n}\n\n.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n transition: 200ms transform, 200ms right;\n}\n\n/* Progress */\n.swiper-pagination-progressbar {\n background: rgba(0, 0, 0, 0.25);\n position: absolute;\n}\n\n.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {\n background: var(--swiper-pagination-color, var(--swiper-theme-color));\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n transform: scale(0);\n transform-origin: left top;\n}\n\n.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {\n transform-origin: right top;\n}\n\n.swiper-horizontal > .swiper-pagination-progressbar,\n.swiper-pagination-progressbar.swiper-pagination-horizontal,\n.swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,\n.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {\n width: 100%;\n height: 4px;\n left: 0;\n top: 0;\n}\n\n.swiper-vertical > .swiper-pagination-progressbar,\n.swiper-pagination-progressbar.swiper-pagination-vertical,\n.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,\n.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {\n width: 4px;\n height: 100%;\n left: 0;\n top: 0;\n}\n\n.swiper-pagination-lock {\n display: none;\n}\n\n/* Scrollbar */\n.swiper-scrollbar {\n border-radius: 10px;\n position: relative;\n background: rgba(0, 0, 0, 0.1);\n}\n\n.swiper-horizontal > .swiper-scrollbar {\n position: absolute;\n left: 1%;\n bottom: 3px;\n z-index: 50;\n height: 5px;\n width: 98%;\n}\n\n.swiper-vertical > .swiper-scrollbar {\n position: absolute;\n right: 3px;\n top: 1%;\n z-index: 50;\n width: 5px;\n height: 98%;\n}\n\n.swiper-scrollbar-drag {\n height: 100%;\n width: 100%;\n position: relative;\n background: rgba(0, 0, 0, 0.5);\n border-radius: 10px;\n left: 0;\n top: 0;\n}\n\n.swiper-scrollbar-cursor-drag {\n cursor: move;\n}\n\n.swiper-scrollbar-lock {\n display: none;\n}\n\n.swiper-zoom-container {\n width: 100%;\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n text-align: center;\n}\n\n.swiper-zoom-container > img,\n.swiper-zoom-container > svg,\n.swiper-zoom-container > canvas {\n max-width: 100%;\n max-height: 100%;\n object-fit: contain;\n}\n\n.swiper-slide-zoomed {\n cursor: move;\n}\n\n/* Preloader */\n/*\n --swiper-preloader-color: var(--swiper-theme-color);\n */\n.swiper-lazy-preloader {\n width: 42px;\n height: 42px;\n position: absolute;\n left: 50%;\n top: 50%;\n margin-left: -21px;\n margin-top: -21px;\n z-index: 10;\n transform-origin: 50%;\n animation: swiper-preloader-spin 1s infinite linear;\n box-sizing: border-box;\n border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));\n border-radius: 50%;\n border-top-color: transparent;\n}\n\n.swiper-lazy-preloader-white {\n --swiper-preloader-color: #fff;\n}\n\n.swiper-lazy-preloader-black {\n --swiper-preloader-color: #000;\n}\n\n@keyframes swiper-preloader-spin {\n 100% {\n transform: rotate(360deg);\n }\n}\n/* a11y */\n.swiper .swiper-notification {\n position: absolute;\n left: 0;\n top: 0;\n pointer-events: none;\n opacity: 0;\n z-index: -1000;\n}\n\n.swiper-free-mode > .swiper-wrapper {\n transition-timing-function: ease-out;\n margin: 0 auto;\n}\n\n.swiper-grid > .swiper-wrapper {\n flex-wrap: wrap;\n}\n\n.swiper-grid-column > .swiper-wrapper {\n flex-wrap: wrap;\n flex-direction: column;\n}\n\n.swiper-fade.swiper-free-mode .swiper-slide {\n transition-timing-function: ease-out;\n}\n\n.swiper-fade .swiper-slide {\n pointer-events: none;\n transition-property: opacity;\n}\n\n.swiper-fade .swiper-slide .swiper-slide {\n pointer-events: none;\n}\n\n.swiper-fade .swiper-slide-active,\n.swiper-fade .swiper-slide-active .swiper-slide-active {\n pointer-events: auto;\n}\n\n.swiper-cube {\n overflow: visible;\n}\n\n.swiper-cube .swiper-slide {\n pointer-events: none;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n z-index: 1;\n visibility: hidden;\n transform-origin: 0 0;\n width: 100%;\n height: 100%;\n}\n\n.swiper-cube .swiper-slide .swiper-slide {\n pointer-events: none;\n}\n\n.swiper-cube.swiper-rtl .swiper-slide {\n transform-origin: 100% 0;\n}\n\n.swiper-cube .swiper-slide-active,\n.swiper-cube .swiper-slide-active .swiper-slide-active {\n pointer-events: auto;\n}\n\n.swiper-cube .swiper-slide-active,\n.swiper-cube .swiper-slide-next,\n.swiper-cube .swiper-slide-prev,\n.swiper-cube .swiper-slide-next + .swiper-slide {\n pointer-events: auto;\n visibility: visible;\n}\n\n.swiper-cube .swiper-slide-shadow-top,\n.swiper-cube .swiper-slide-shadow-bottom,\n.swiper-cube .swiper-slide-shadow-left,\n.swiper-cube .swiper-slide-shadow-right {\n z-index: 0;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n}\n\n.swiper-cube .swiper-cube-shadow {\n position: absolute;\n left: 0;\n bottom: 0px;\n width: 100%;\n height: 100%;\n opacity: 0.6;\n z-index: 0;\n}\n\n.swiper-cube .swiper-cube-shadow:before {\n content: \"\";\n background: #000;\n position: absolute;\n left: 0;\n top: 0;\n bottom: 0;\n right: 0;\n filter: blur(50px);\n}\n\n.swiper-flip {\n overflow: visible;\n}\n\n.swiper-flip .swiper-slide {\n pointer-events: none;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n z-index: 1;\n}\n\n.swiper-flip .swiper-slide .swiper-slide {\n pointer-events: none;\n}\n\n.swiper-flip .swiper-slide-active,\n.swiper-flip .swiper-slide-active .swiper-slide-active {\n pointer-events: auto;\n}\n\n.swiper-flip .swiper-slide-shadow-top,\n.swiper-flip .swiper-slide-shadow-bottom,\n.swiper-flip .swiper-slide-shadow-left,\n.swiper-flip .swiper-slide-shadow-right {\n z-index: 0;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n}\n\n.swiper-creative .swiper-slide {\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n overflow: hidden;\n transition-property: transform, opacity, height;\n}\n\n.swiper-cards {\n overflow: visible;\n}\n\n.swiper-cards .swiper-slide {\n transform-origin: center bottom;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n overflow: hidden;\n}\n\n.swiper-slide__title {\n position: absolute;\n left: 50%;\n margin-left: -22%;\n bottom: 23px;\n color: #ffffff;\n letter-spacing: -0.4px;\n z-index: 5;\n}\n\n.swiper-slide__description {\n display: flex;\n flex-direction: column;\n align-items: center;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(16, 38, 84, 0.89);\n opacity: 0;\n transition: opacity 0.4s linear;\n}\n.swiper-slide__description:hover {\n opacity: 1;\n}\n\n.swiper-slide__subtitle {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 15px;\n font-weight: 400;\n line-height: 1.5;\n color: #b6bdcc;\n padding-top: 76px;\n padding-bottom: 34px;\n}\n\n.swiper-slide__list {\n margin: 0;\n padding: 0;\n padding-left: 24px;\n}\n\n.swiper-slide__item {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 14px;\n font-weight: 400;\n line-height: 1.5;\n color: #ffffff;\n letter-spacing: -0.8px;\n padding-bottom: 13px;\n}\n\n@font-face {\n font-style: normal;\n font-weight: 400;\n font-family: \"Roboto Condensed\";\n font-display: swap;\n src: url(\"../fonts/RobotoCondensed.woff2\") format(\"woff2\");\n}\n@font-face {\n font-style: normal;\n font-weight: 300;\n font-family: \"Roboto Condensed\";\n font-display: swap;\n src: url(\"../fonts/RobotoCondensed-Light.woff2\") format(\"woff2\");\n}\n@font-face {\n font-style: normal;\n font-weight: 600;\n font-family: \"Roboto Condensed\";\n font-display: swap;\n src: url(\"../fonts/RobotoCondensed-Bold.woff2\") format(\"woff2\");\n}\n@font-face {\n font-style: normal;\n font-weight: 600;\n font-family: \"Alumni Sans\";\n font-display: swap;\n src: url(\"../fonts/AlumniSans-SemiBold.woff2\") format(\"woff2\");\n}\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\nhtml,\nbody {\n margin: 0;\n padding: 0;\n min-height: 100vh;\n}\n\nhtml {\n font-style: normal;\n font-weight: 300;\n font-size: 16px;\n line-height: 24px;\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n color: #102654;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n text-rendering: optimizeLegibility;\n}\n\nbody {\n width: 100%;\n height: 100%;\n background-color: #ffffff;\n}\n\na {\n color: #000000;\n text-decoration: none;\n}\n\nimg,\nvideo {\n display: block;\n max-width: 100%;\n height: auto;\n}\n\ntextarea {\n resize: none;\n}\n\ninput:-webkit-autofill {\n box-shadow: inset 0 0 0 1000px #ffffff;\n -webkit-text-fill-color: #000000;\n}\n\ninput,\ntextarea {\n border-radius: 0;\n}\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1;\n}\ninput:invalid,\ntextarea:invalid {\n box-shadow: none;\n}\n\nselect {\n border-radius: 0;\n}\n\ninput::-ms-clear, input::-ms-reveal {\n display: none;\n}\n\ninput[type=search]::-webkit-search-decoration,\ninput[type=search]::-webkit-search-cancel-button,\ninput[type=search]::-webkit-search-results-button,\ninput[type=search]::-webkit-search-results-decoration {\n appearance: none;\n}\n\ninput::-webkit-outer-spin-button,\ninput::-webkit-inner-spin-button {\n margin: 0;\n appearance: none;\n}\n\ninput[type=number] {\n appearance: textfield;\n}\n\nselect,\ntextarea,\ninput:matches([type=email],\n[type=number],\n[type=password],\n[type=search],\n[type=tel],\n[type=text],\n[type=url]) {\n appearance: none;\n}\n\nbutton,\n[type=button],\n[type=reset],\n[type=submit] {\n appearance: none;\n}\n\nh1, h2, h3, h4 {\n margin: 0;\n padding: 0;\n}\n\np {\n margin: 0;\n padding: 0;\n}\n\n.wrapper {\n position: relative;\n display: flex;\n flex-direction: column;\n /* stylelint-disable-next-line */\n}\n.wrapper .header,\n.wrapper .footer {\n flex-shrink: 0;\n}\n.wrapper main {\n flex-grow: 1;\n}\n\n.visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n white-space: nowrap;\n border: 0;\n clip: rect(0 0 0 0);\n clip-path: inset(100%);\n}\n\n.container {\n width: 100%;\n max-width: 1366px;\n margin: 0 auto;\n}\n.btn {\n display: inline-flex;\n padding: 10px 20px;\n color: #ffffff;\n background-color: #2c39f2;\n border: none;\n cursor: pointer;\n transition: opacity 0.3s ease;\n}\n.btn--red {\n background-color: #ff1553;\n}\n.btn:disabled {\n opacity: 0.5;\n pointer-events: none;\n}\n@media (hover: hover) {\n .btn:hover:not(.focus-visible) {\n opacity: 0.8;\n }\n}\n.btn.focus-visible:focus {\n opacity: 0.8;\n}\n\n.modal {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1000;\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n background-color: rgba(0, 0, 0, 0.8);\n transform: scale(1.2);\n visibility: hidden;\n opacity: 0;\n transition: opacity 0.6s cubic-bezier(0.55, 0, 0.1, 1), transform 0.6s cubic-bezier(0.55, 0, 0.1, 1), visibility 0.6s cubic-bezier(0.55, 0, 0.1, 1);\n pointer-events: none;\n -ms-overflow-style: none;\n scrollbar-width: none;\n}\n.modal::-webkit-scrollbar {\n display: none;\n}\n.modal__wrapper {\n position: relative;\n display: flex;\n flex-shrink: 0;\n justify-content: center;\n align-items: center;\n width: 100%;\n min-height: 100%;\n padding: 60px 40px;\n}\n@media (max-width: 767px) {\n .modal__wrapper {\n padding: 60px 16px;\n }\n}\n.modal__overlay {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n cursor: pointer;\n}\n.modal__content {\n position: relative;\n width: 600px;\n padding: 40px;\n background-color: #ffffff;\n}\n@media (max-width: 767px) {\n .modal__content {\n width: 100%;\n padding: 20px;\n }\n}\n.modal__close-btn {\n position: absolute;\n top: 22px;\n right: 22px;\n z-index: 1;\n width: 40px;\n height: 40px;\n padding: 0;\n background: rgba(255, 255, 255, 0);\n border: none;\n cursor: pointer;\n}\n.modal--responsive .modal__content {\n width: 100%;\n}\n.modal--fit-content .modal__content {\n width: auto;\n}\n@media (max-width: 767px) {\n .modal--fit-content .modal__content {\n width: 100%;\n }\n}\n.modal--no-scale {\n transform: none;\n}\n.modal--preload {\n transition: none;\n}\n.modal.is-active {\n transform: scale(1);\n visibility: visible;\n opacity: 1;\n pointer-events: auto;\n}\n\n.custom-input,\n.custom-textarea {\n position: relative;\n display: flex;\n width: 530px;\n padding: 14px 0 28px;\n}\n@media screen and (max-width: 767px) {\n .custom-input,\n.custom-textarea {\n padding: 4px 0 48px;\n width: 100%;\n }\n}\n.custom-input label,\n.custom-textarea label {\n display: flex;\n align-items: center;\n width: 100%;\n}\n@media screen and (max-width: 767px) {\n .custom-input label,\n.custom-textarea label {\n align-items: flex-start;\n flex-direction: column;\n }\n}\n.custom-input label input,\n.custom-input label textarea,\n.custom-textarea label input,\n.custom-textarea label textarea {\n flex-grow: 1;\n max-width: 300px;\n min-height: 48px;\n margin-left: auto;\n padding: 10px;\n border: 2px solid rgba(0, 0, 0, 0.2);\n border-radius: 5px;\n outline: none;\n transition: border 0.3s ease;\n}\n@media screen and (max-width: 767px) {\n .custom-input label input,\n.custom-input label textarea,\n.custom-textarea label input,\n.custom-textarea label textarea {\n max-width: unset;\n width: 100%;\n }\n}\n.custom-input label input:hover,\n.custom-input label textarea:hover,\n.custom-textarea label input:hover,\n.custom-textarea label textarea:hover {\n border: 2px solid rgba(0, 0, 0, 0.5);\n}\n.custom-input label input:focus,\n.custom-input label textarea:focus,\n.custom-textarea label input:focus,\n.custom-textarea label textarea:focus {\n border: 2px solid rgba(0, 0, 0, 0.8);\n}\n@media screen and (max-width: 767px) {\n .custom-input__label,\n.custom-textarea__label {\n margin: 0 0 18px 0;\n }\n}\n.custom-input__error,\n.custom-textarea__error {\n position: absolute;\n right: 0;\n bottom: 35px;\n color: #ff1553;\n opacity: 0;\n transition: opacity 0.3s ease;\n}\n@media screen and (max-width: 767px) {\n .custom-input__error,\n.custom-textarea__error {\n bottom: 20px;\n }\n}\n.custom-input.is-invalid input,\n.custom-input.is-invalid textarea,\n.custom-textarea.is-invalid input,\n.custom-textarea.is-invalid textarea {\n border: 2px solid #ff1553;\n}\n.custom-input.is-invalid input:focus, .custom-input.is-invalid input:hover,\n.custom-input.is-invalid textarea:focus,\n.custom-input.is-invalid textarea:hover,\n.custom-textarea.is-invalid input:focus,\n.custom-textarea.is-invalid input:hover,\n.custom-textarea.is-invalid textarea:focus,\n.custom-textarea.is-invalid textarea:hover {\n border: 2px solid rgba(255, 21, 83, 0.5);\n}\n.custom-input.is-valid input,\n.custom-textarea.is-valid input {\n border: 2px solid #22b259;\n}\n.custom-input.is-valid input:focus, .custom-input.is-valid input:hover,\n.custom-textarea.is-valid input:focus,\n.custom-textarea.is-valid input:hover {\n border: 2px solid rgba(34, 178, 89, 0.5);\n}\n.custom-input .input-message,\n.custom-textarea .input-message {\n position: absolute;\n right: 0;\n bottom: -5px;\n}\n.custom-input .input-message.is-invalid,\n.custom-textarea .input-message.is-invalid {\n color: #ff0000;\n}\n.custom-input .input-message.is-valid,\n.custom-textarea .input-message.is-valid {\n color: #15ab07;\n}\n\n.custom-toggle {\n position: relative;\n font-size: 18px;\n line-height: 27px;\n font-weight: 300;\n display: flex;\n width: 500px;\n padding: 14px 0 10px 36px;\n}\n@media screen and (max-width: 767px) {\n .custom-toggle {\n padding: 14px 0 10px 0;\n width: 100%;\n }\n}\n.custom-toggle:last-of-type {\n padding: 14px 0 58px 36px;\n}\n@media screen and (max-width: 767px) {\n .custom-toggle:last-of-type {\n padding: 14px 0 58px 0;\n }\n}\n.custom-toggle input {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n clip: rect(0 0 0 0);\n}\n.custom-toggle label {\n position: relative;\n padding-left: 52px;\n cursor: pointer;\n}\n.custom-toggle label span {\n margin-bottom: 0;\n margin-left: 0;\n}\n.custom-toggle--checkbox .custom-toggle__icon {\n position: absolute;\n top: 0;\n left: 0;\n width: 28px;\n height: 28px;\n border: 1.5px solid #2c39f2;\n transition: border 0.3s ease;\n}\n.custom-toggle--checkbox .custom-toggle__icon::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n width: 20px;\n height: 20px;\n background-color: rgba(44, 57, 242, 0);\n transform: translate(-50%, -50%);\n transition: background-color 0.3s ease;\n}\n.custom-toggle--radio .custom-toggle__icon {\n position: absolute;\n top: 0;\n left: 0;\n width: 28px;\n height: 28px;\n border: 1px solid #2c39f2;\n border-radius: 50%;\n transition: border 0.3s ease;\n}\n.custom-toggle--radio .custom-toggle__icon::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n width: 20px;\n height: 20px;\n color: rgba(255, 255, 255, 0);\n border-radius: 50%;\n transform: translate(-50%, -50%);\n transition: color 0.3s ease;\n}\n.custom-toggle input:checked + .custom-toggle__icon {\n border: 1.5px solid #2c39f2;\n}\n.custom-toggle input:checked + .custom-toggle__icon::before {\n background-color: #2c39f2;\n}\n.custom-toggle.is-invalid label span {\n color: #ff1553;\n}\n.custom-toggle .input-message {\n position: absolute;\n right: 0;\n bottom: -5px;\n}\n.custom-toggle .input-message.is-invalid {\n color: #ff0000;\n}\n.custom-toggle .input-message.is-valid {\n color: #15ab07;\n}\n\n.custom-select {\n position: relative;\n width: 300px;\n padding: 14px 0 28px;\n margin: 0 0 44px 0;\n /* &.is-valid {\n .custom-select__button {\n border: 2px solid $color-eucalyptus;\n\n &:focus,\n &:hover {\n border: 2px solid rgba($color-eucalyptus, 0.5);\n }\n }\n } */\n}\n@media screen and (max-width: 767px) {\n .custom-select {\n padding: 4px 0 14px;\n width: 100%;\n }\n}\n.custom-select__label {\n position: absolute;\n top: 50%;\n left: 10px;\n transform: translateY(-50%);\n transition: transform 0.3s ease, opacity 0.3s ease;\n pointer-events: none;\n}\n@media screen and (max-width: 767px) {\n .custom-select__label {\n transform: translateY(calc(-50% - 5px));\n }\n}\n.custom-select__placeholder {\n position: absolute;\n top: 50%;\n left: 10px;\n transform: translateY(-50%);\n transition: transform 0.3s ease, opacity 0.3s ease;\n pointer-events: none;\n}\n@media screen and (max-width: 767px) {\n .custom-select__placeholder {\n transform: translateY(calc(-50% - 5px));\n }\n}\n.custom-select select {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n white-space: nowrap;\n border: 0;\n clip: rect(0 0 0 0);\n clip-path: inset(100%);\n}\n.custom-select__button {\n display: flex;\n align-items: center;\n width: 100%;\n height: 48px;\n padding: 5px 10px;\n background-color: rgba(255, 255, 255, 0);\n border: 2px solid rgba(0, 0, 0, 0.2);\n border-radius: 5px;\n outline: none;\n cursor: pointer;\n transition: border 0.3s ease;\n}\n.custom-select__button:hover {\n border: 2px solid rgba(0, 0, 0, 0.5);\n}\n.custom-select__button:focus {\n border: 2px solid rgba(0, 0, 0, 0.8);\n}\n.custom-select__button:disabled {\n pointer-events: none;\n opacity: 0.3;\n}\n.custom-select__list {\n position: absolute;\n bottom: 10px;\n z-index: 1;\n width: 100%;\n max-height: 100px;\n margin: 0;\n padding: 0;\n overflow-y: auto;\n list-style: none;\n background-color: #ffffff;\n border: 2px solid #000000;\n transform: translateY(100%);\n visibility: hidden;\n opacity: 0;\n transition: visibility 0.3s ease, opacity 0.3s ease;\n}\n.custom-select__item {\n padding: 5px;\n outline: none;\n cursor: pointer;\n transition: background-color 0.3s ease;\n}\n.custom-select__item[aria-selected=true] {\n background-color: rgba(0, 0, 0, 0.2);\n}\n@media (hover: hover) {\n .custom-select__item[aria-selected=true]:hover:not(.focus-visible) {\n background-color: rgba(0, 0, 0, 0.2);\n }\n}\n.custom-select__item[aria-selected=true].focus-visible:focus {\n background-color: rgba(0, 0, 0, 0.2);\n}\n@media (hover: hover) {\n .custom-select__item:hover:not(.focus-visible) {\n background-color: rgba(0, 0, 0, 0.4);\n }\n}\n.custom-select__item.focus-visible:focus {\n background-color: rgba(0, 0, 0, 0.4);\n}\n.custom-select__error {\n position: absolute;\n bottom: -15px;\n left: 0;\n color: #ff1553;\n opacity: 0;\n transition: opacity 0.1s ease;\n}\n.custom-select__text {\n font-size: 20px;\n line-height: 24px;\n flex-shrink: 0;\n width: 80%;\n overflow: hidden;\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n opacity: 0;\n transition: opacity 0.3s ease 0.1s;\n}\n.custom-select__text br {\n display: none;\n}\n.custom-select__icon {\n flex-shrink: 0;\n width: 20px;\n height: 10px;\n margin-left: auto;\n background-color: #000000;\n transition: transform 0.3s ease;\n clip-path: polygon(100% 0, 100% 20%, 50% 100%, 0 20%, 0 0, 50% 80%);\n}\n.custom-select.is-disabled {\n pointer-events: none;\n}\n.custom-select.is-disabled .custom-select__list {\n display: none;\n}\n.custom-select.open-up .custom-select__list {\n bottom: auto;\n top: 0;\n transform: translateY(calc(-100% + 10px));\n}\n.custom-select.is-open .custom-select__list {\n visibility: visible;\n opacity: 1;\n}\n.custom-select.is-open .custom-select__icon {\n transform: rotate(180deg);\n}\n.custom-select.is-open .custom-select__label {\n opacity: 0;\n}\n.custom-select.not-empty .custom-select__text {\n opacity: 1;\n}\n.custom-select.not-empty .custom-select__label {\n opacity: 0;\n}\n.custom-select.not-empty .custom-select__placeholder {\n opacity: 0;\n}\n.custom-select.is-invalid .custom-select__error {\n opacity: 1;\n}\n.custom-select.is-invalid .custom-select__button {\n border: 2px solid #ff1553;\n}\n.custom-select.is-invalid .custom-select__button:focus, .custom-select.is-invalid .custom-select__button:hover {\n border: 2px solid rgba(255, 21, 83, 0.5);\n}\n.custom-select--placeholder .custom-select__label {\n transform: translateY(calc(-50% - 40px));\n opacity: 1;\n}\n.custom-select--placeholder.is-open .custom-select__label {\n opacity: 1;\n}\n.custom-select--placeholder.not-empty .custom-select__label {\n opacity: 1;\n}\n.custom-select.slide-up.not-empty .custom-select__label, .custom-select.slide-up.is-open .custom-select__label {\n transform: translateY(calc(-50% - 40px));\n opacity: 1;\n}\n.custom-select.slide-up.not-empty .custom-select__text, .custom-select.slide-up.is-open .custom-select__text {\n opacity: 1;\n}\n.custom-select .input-message {\n position: absolute;\n right: 0;\n bottom: -5px;\n}\n.custom-select .input-message.is-invalid {\n color: #ff0000;\n}\n.custom-select .input-message.is-valid {\n color: #15ab07;\n}\n\nheader {\n position: relative;\n margin: 0 auto;\n width: 1366px;\n}\nheader::before {\n position: absolute;\n background-image: conic-gradient(from 151deg at 16.03% 39.06%, #003D85 32.2363382578deg, #B80027 313.3060026169deg);\n width: 1366px;\n height: 642px;\n content: \"\";\n}\n\n.header__logo {\n position: absolute;\n order: 1;\n top: 25px;\n left: 103px;\n}\n\n.header__contact-link {\n position: absolute;\n order: 1;\n top: 16px;\n right: 103px;\n font-family: ff-Alumnisans;\n font-size: 24px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: -0.6px;\n font-style: normal;\n color: #ffffff;\n}\n\n.intro {\n margin: 0 auto;\n width: 1366px;\n padding: 35px 240px 92px 250px;\n}\n\n.intro__wrapper {\n display: flex;\n justify-content: space-between;\n padding-right: 64px;\n}\n\n.intro__text {\n display: flex;\n flex-direction: column;\n align-items: flex-end;\n text-align: right;\n}\n\n.intro__title {\n font-family: \"Alumni Sans\", \"Arial\", sans-serif;\n font-size: 50px;\n font-weight: 600;\n line-height: 114px;\n letter-spacing: 1.8px;\n color: #ffffff;\n padding-bottom: 46px;\n}\n\n.intro__subtitle {\n order: -1;\n font-family: Alumni Sans;\n font-size: 48px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.44px;\n color: #ffffff;\n text-align: right;\n padding-top: 110px;\n padding-bottom: 12px;\n padding-right: 50px;\n}\n\n.intro__description {\n position: absolute;\n top: 305px;\n left: -128px;\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 400;\n font-size: 14px;\n line-height: 1.5;\n color: #ffffff;\n letter-spacing: -0.7px;\n}\n\n.intro__link-buy {\n padding: 20px 56px;\n letter-spacing: 0.9px;\n}\n\n.button {\n box-sizing: border-box;\n display: inline-block;\n text-align: center;\n text-decoration: none;\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 600;\n font-size: 11px;\n line-height: normal;\n color: #ffffff;\n background-color: rgba(255, 255, 255, 0);\n border: 4px solid #ffffff;\n text-transform: uppercase;\n cursor: pointer;\n}\n\n.gym {\n margin: 0 auto;\n width: 1366px;\n padding: 80px 103px 166px 163px;\n}\n\n.gym__wrapper {\n display: flex;\n justify-content: space-between;\n}\n\n.gym__text {\n display: flex;\n flex-direction: column;\n padding-top: 40px;\n padding-right: 85px;\n}\n\n.gym__title {\n font-family: \"Alumni Sans\", \"Arial\", sans-serif;\n font-size: 32px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.44px;\n color: #102654;\n padding-bottom: 8px;\n}\n\n.gym__subtitle {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 14px;\n font-weight: 400;\n line-height: 1.5;\n color: #102654;\n padding-bottom: 40px;\n letter-spacing: 0.7px;\n}\n\n.gym__description {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.5;\n color: #102654;\n}\n.gym__description--supergym {\n padding-bottom: 8px;\n}\n\n.gym__video-wrapper {\n position: relative;\n}\n\n.gym__video {\n margin-left: 378px;\n margin-top: -112px;\n}\n\n.gym__video-button {\n position: absolute;\n width: 100px;\n height: 100px;\n top: 64px;\n left: 518px;\n background-color: transparent;\n border-radius: 50%;\n border: none;\n}\n\n.gym__button-image {\n transform: rotate(150deg);\n}\n\n.gym__button-border {\n position: absolute;\n top: 0;\n left: -9px;\n width: 100px;\n height: 100px;\n}\n\n[data-tabs=parent] {\n overflow: hidden;\n}\n[data-tabs=parent].no-transition > [data-tabs=control],\n[data-tabs=parent].no-transition > [data-tabs=content],\n[data-tabs=parent].no-transition > [data-tabs=element] {\n transition: none;\n}\n[data-tabs=parent].no-transition-global [data-tabs=control],\n[data-tabs=parent].no-transition-global [data-tabs=content],\n[data-tabs=parent].no-transition-global [data-tabs=element] {\n transition: none;\n}\n\n[data-tabs=parent] [data-tabs=content] {\n position: relative;\n}\n\n[data-tabs=element] {\n position: absolute;\n visibility: hidden;\n opacity: 0;\n transition: opacity 0.3s ease-in, visibility 0.3s ease-in;\n}\n\n[data-tabs=element].for-load {\n position: static;\n visibility: visible;\n opacity: 1;\n transition: none;\n}\n\n[data-tabs=element].is-active {\n z-index: 1;\n visibility: visible;\n opacity: 1;\n}\n\n.tabs {\n max-width: 100%;\n}\n\n.tabs__controls {\n position: relative;\n display: flex;\n justify-content: space-between;\n margin: 0 auto;\n padding-bottom: 12px;\n margin-bottom: 40px;\n width: 342px;\n}\n.tabs__controls::before {\n position: absolute;\n bottom: 0;\n right: 0;\n left: 0;\n height: 2px;\n background-color: rgba(120, 120, 120, 0.2);\n content: \"\";\n}\n@media screen and (max-width: 767px) {\n .tabs__controls {\n flex-wrap: wrap;\n }\n}\n\n.tabs__control {\n position: relative;\n display: flex;\n text-transform: uppercase;\n cursor: pointer;\n opacity: 0.5;\n min-width: auto;\n justify-content: center;\n padding: 0;\n}\n@media screen and (max-width: 1023px) {\n .tabs__control {\n margin: 0 10px;\n padding: 15px;\n }\n}\n@media screen and (max-width: 767px) {\n .tabs__control {\n margin: 10px 2% 0;\n padding: 10px;\n width: 45%;\n }\n}\n.tabs__control.is-active {\n opacity: 1;\n pointer-events: none;\n}\n.tabs__control.is-active::before {\n position: absolute;\n bottom: -12px;\n right: 0;\n left: 0;\n height: 2px;\n background-color: #ed0233;\n content: \"\";\n}\n\n.tabs__button {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 20px;\n font-weight: 400;\n line-height: 1.5;\n color: #102654;\n text-transform: none;\n letter-spacing: -1.1px;\n border: none;\n}\n\n.tabs__content {\n margin-bottom: 40px;\n transition: height 0.3s;\n}\n\n.tabs__element {\n width: 100%;\n}\n@media screen and (max-width: 767px) {\n .tabs__element {\n padding: 15px;\n }\n}\n.tabs__element p {\n margin: 0;\n}\n.tabs__element p:not(:last-child) {\n margin: 0 0 20px 0;\n}\n\n.tabs--unset .tabs__content {\n height: 100px;\n}\n\n.tabs--unset .tabs__element {\n height: 100%;\n overflow-y: auto;\n overflow-x: hidden;\n}\n\n.tabs__faq {\n display: grid;\n grid-template-columns: 260px 1fr;\n gap: 30px;\n}\n\n.tabs__categories {\n display: flex;\n flex-direction: column;\n}\n.tabs__categories .btn {\n background-color: rgba(255, 255, 255, 0);\n border: 1px solid rgba(16, 38, 84, 0.2);\n margin-bottom: 10px;\n}\n\n.tabs__category {\n padding-top: 18px;\n padding-bottom: 16px;\n display: flex;\n justify-content: center;\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 18px;\n font-weight: 600;\n line-height: 1;\n color: #102654;\n}\n\n.gym-membership {\n position: relative;\n margin: 0 auto;\n width: 1366px;\n padding-top: 118px;\n padding-bottom: 80px;\n background-color: #f8f9fc;\n}\n\n.gym-membership__title {\n font-family: \"Alumni Sans\", \"Arial\", sans-serif;\n font-size: 36px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: #102654;\n padding-bottom: 18px;\n text-align: center;\n}\n\n.gym-membership__image {\n position: absolute;\n right: -10px;\n bottom: -255px;\n}\n\n.cards__list {\n display: grid;\n grid-template-columns: 1fr 1fr 1fr;\n gap: 30px;\n margin: 0 auto;\n padding: 0 103px;\n list-style-type: none;\n width: 1366px;\n}\n\n.cards__item {\n box-sizing: border-box;\n border: 7px solid rgba(255, 255, 255, 0);\n display: flex;\n flex-direction: column;\n text-align: center;\n align-items: center;\n padding-top: 54px;\n padding-bottom: 60px;\n padding-right: 62px;\n padding-left: 62px;\n background-color: #ffffff;\n}\n.cards__item--current {\n border-image: linear-gradient(151deg, #ED0233 0%, #003EB7 100%);\n border-image-slice: 1;\n}\n.cards__item--current .cards__link-buy {\n border: none;\n background-image: linear-gradient(151deg, #ED0233 0%, #003EB7 100%);\n color: #ffffff;\n padding: 26px 43px;\n}\n\n.cards__title {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 700;\n font-size: 23px;\n line-height: 1.1;\n color: #102654;\n margin-bottom: 10px;\n}\n\n.cards__description {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 400;\n font-size: 16px;\n line-height: 1.5;\n color: #102654;\n margin-bottom: 12px;\n}\n\n.cards__price {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 700;\n font-size: 60px;\n line-height: 1.5;\n color: #103aae;\n margin-top: -97px;\n margin-bottom: 35px;\n}\n\n.cards__price-shadow {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 700;\n font-size: 100px;\n line-height: 1.5;\n color: #e8e8e8;\n}\n\n.cards__link-buy {\n color: #102654;\n font-size: 11px;\n font-weight: 700;\n letter-spacing: 1.3px;\n border: 2px solid #102654;\n padding: 24px 39px;\n}\n\n.super-games {\n margin: 0 auto;\n width: 1160px;\n padding-top: 118px;\n padding-bottom: 106px;\n}\n\n.super-games__wrapper {\n display: grid;\n grid-template-columns: 500px auto;\n}\n\n.super-games__images {\n background-size: cover;\n}\n\n.super-games__text {\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n padding-top: 85px;\n padding-right: 75px;\n padding-bottom: 83px;\n padding-left: 77px;\n background-color: #ed0233;\n}\n\n.super-games__intro {\n display: grid;\n grid-template-columns: 201px auto;\n gap: 50px;\n}\n\n.super-games__title {\n font-family: \"Alumni Sans\", \"Arial\", sans-serif;\n font-weight: 600;\n font-size: 56px;\n line-height: 0.96;\n color: #ffffff;\n letter-spacing: 2.46px;\n text-transform: uppercase;\n padding-bottom: 28px;\n text-align: center;\n}\n\n.super-games__description {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 400;\n font-size: 18px;\n line-height: 1.5;\n letter-spacing: -1px;\n color: #ffffff;\n padding-bottom: 43px;\n}\n\n.super-games__link-application {\n padding: 25px 0;\n font-size: 13px;\n}\n\n.super-games__date-time {\n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n\n.super-games__time-table {\n margin-top: -2px;\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 400;\n font-size: 18px;\n line-height: 1.5;\n color: #ffffff;\n letter-spacing: 0.7px;\n}\n\n.super-games__date-wrapper {\n position: relative;\n display: flex;\n align-items: center;\n gap: 7px;\n}\n.super-games__date-wrapper::before {\n position: absolute;\n top: 4px;\n right: 0;\n left: 0;\n height: 1px;\n background-color: #ffffff;\n content: \"\";\n}\n\n.super-games__date {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 700;\n font-size: 40px;\n line-height: 1.5;\n color: #ffffff;\n}\n\n.super-games__month-year {\n font-size: 14px;\n}\n\n.trainer {\n position: relative;\n margin: 0 auto;\n width: 1366px;\n padding-bottom: 105px;\n}\n\n.trainer__title {\n font-family: \"Alumni Sans\", \"Arial\", sans-serif;\n font-size: 36px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: #102654;\n padding-left: 103px;\n padding-bottom: 48px;\n}\n\n.trainer__swiper {\n width: 1160px;\n margin: 0 auto;\n}\n\n.advantages {\n margin: 0 auto;\n background-color: #f8f9fc;\n}\n\n.advantages__wrapper {\n padding-top: 108px;\n padding-right: 172px;\n padding-bottom: 129px;\n padding-left: 172px;\n}\n\n.advantages__title {\n font-family: \"Alumni Sans\", \"Arial\", sans-serif;\n font-size: 36px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: #102654;\n text-align: center;\n margin-bottom: 29px;\n}\n\n.advantages__list {\n margin: 0;\n padding: 0;\n list-style-type: none;\n display: grid;\n grid-template-columns: 1fr 240px 1fr;\n column-gap: 54px;\n row-gap: 130px;\n}\n\n.advantage {\n position: relative;\n display: flex;\n gap: 32px;\n padding-left: 6px;\n}\n.advantage:not(:nth-last-child(-n+3))::before {\n position: absolute;\n bottom: -76px;\n right: 0;\n left: 0;\n height: 2px;\n background-color: #d10a42;\n opacity: 0.2;\n content: \"\";\n}\n.advantage--center {\n grid-column: 2/3;\n grid-row: 1/3;\n margin-top: 28px;\n margin-bottom: 8px;\n flex-direction: column;\n background-color: #1c3374;\n text-align: center;\n padding-top: 42px;\n padding-left: 0;\n gap: 0;\n}\n\n.advantage__number-wrapper {\n position: relative;\n}\n\n.advantage__number {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 71px;\n font-weight: 700;\n line-height: 1.5;\n background-color: #0041ca;\n background-image: linear-gradient(129deg, #D10A42 0%, #0041CA 100%);\n background-clip: text;\n -webkit-text-fill-color: transparent;\n}\n.advantage__number--center {\n font-size: 76px;\n line-height: 1.2;\n background-image: none;\n background-color: #ffffff;\n letter-spacing: 1px;\n}\n\n.advantage__number-text {\n position: absolute;\n bottom: 2px;\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 14px;\n font-weight: 400;\n line-height: 1.5;\n letter-spacing: -1px;\n color: #2e35ac;\n}\n\n.advantage__title {\n padding-top: 20px;\n padding-bottom: 5px;\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 20px;\n font-weight: 700;\n line-height: 1.5;\n letter-spacing: -0.7px;\n color: #102654;\n}\n.advantage__title--center {\n padding: 0;\n color: #ffffff;\n font-size: 21px;\n letter-spacing: 0.7px;\n padding-bottom: 33px;\n}\n\n.advantage__description {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.4;\n color: #102654;\n}\n.advantage__description--center {\n color: #ffffff;\n}\n\n.promotions {\n margin: 0 auto;\n}\n\n.promotions__wrapper {\n padding-top: 126px;\n padding-right: 103px;\n padding-bottom: 120px;\n padding-left: 103px;\n}\n\n.promotions__title {\n font-family: \"Alumni Sans\", \"Arial\", sans-serif;\n font-size: 54px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: #102654;\n text-align: center;\n margin-bottom: 34px;\n}\n\n.promotions__list {\n margin: 0;\n padding: 0;\n list-style-type: none;\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 40px;\n}\n\n.promotion {\n padding: 18px 28px;\n box-sizing: border-box;\n border: 7px solid rgba(255, 255, 255, 0);\n border-image: linear-gradient(151deg, #ED0233 0%, #003EB7 100%);\n border-image-slice: 1;\n}\n.promotion--big {\n padding: 0;\n grid-row: 1/3;\n display: flex;\n border: none;\n}\n\n.promotion__text {\n padding: 37px 44px;\n background-color: #ed0233;\n}\n\n.promotion__title {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 22px;\n font-weight: 700;\n line-height: 1.5;\n color: #1c3374;\n padding-bottom: 5px;\n}\n.promotion__title--big {\n font-size: 23px;\n color: #ffffff;\n}\n\n.promotion__price {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 70px;\n font-weight: 700;\n line-height: 0.76;\n color: #ffffff;\n padding-bottom: 26px;\n}\n\n.promotion__description {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 16px;\n font-weight: 400;\n line-height: 1.4;\n color: #1c3374;\n letter-spacing: -0.9px;\n padding-bottom: 66px;\n}\n.promotion__description--big {\n padding-bottom: 183px;\n color: #ffffff;\n font-size: 18px;\n letter-spacing: -0.9px;\n}\n\n.promotion__link {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 12px;\n font-weight: 700;\n line-height: 1.4;\n color: #1c3374;\n letter-spacing: 0.6px;\n text-transform: uppercase;\n border-bottom: 1px solid #1c3374;\n}\n.promotion__link--big {\n font-size: 14px;\n color: #ffffff;\n border-bottom: 1px solid #ffffff;\n}\n\n[data-accordion=element].is-active > [data-accordion=content] {\n max-height: 100%;\n}\n\n[data-accordion=parent].no-transition [data-accordion=content] {\n transition: none;\n}\n\n[data-accordion=content] {\n max-height: 0;\n transition: max-height 0.3s;\n overflow: hidden;\n}\n\n.accordion {\n margin: 0 auto 50px auto;\n}\n.accordion .accordion {\n width: 90%;\n margin: 0 auto;\n}\n.accordion__element:last-child {\n margin-bottom: 0;\n}\n.accordion__element {\n position: relative;\n margin-bottom: 13px;\n padding: 10px;\n padding-right: 177px;\n border-top: 1px solid rgba(16, 38, 84, 0.2);\n}\n.accordion__element.is-active > .accordion__button {\n opacity: 0.5;\n}\n.accordion__button {\n position: absolute;\n right: 0;\n top: 25px;\n width: 42px;\n height: 42px;\n border: 1px solid #1c3374;\n border-radius: 50%;\n background-color: rgba(255, 255, 255, 0);\n cursor: pointer;\n}\n\n.accordion__title {\n padding-top: 24px;\n padding-bottom: 14px;\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 20px;\n font-weight: 500;\n line-height: 1.2;\n color: #102654;\n letter-spacing: 0.2px;\n}\n\n.accordion__discription {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 18px;\n font-weight: 300;\n line-height: 1.4;\n color: #102654;\n}\n\n.faq {\n margin: 0 auto;\n background-color: #f8f9fc;\n}\n\n.faq__wrapper {\n padding-right: 103px;\n padding-left: 103px;\n padding-top: 120px;\n padding-bottom: 120px;\n}\n\n.faq__title {\n font-family: \"Alumni Sans\", \"Arial\", sans-serif;\n font-size: 36px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: #102654;\n padding-bottom: 40px;\n}\n\n/* @mixin hover-focus {\n @media (hover: hover) {\n &:hover:not(.focus-visible) {\n @content;\n }\n }\n\n &.focus-visible:focus {\n @content;\n }\n }\n*/\n/* @include hover-focus {\n opacity: 0.8;\n }\n*/\n/*@mixin hover {\n @media (hover: hover) {\n &:hover:not(.focus-visible) {\n @content;\n }\n }\n }\n*/\n/*@mixin focus {\n &.focus-visible:focus {\n @content;\n }\n }\n*/\n/*@mixin active {\n &.focus-visible:active {\n @content;\n }\n }\n*/","*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\nhtml,\nbody {\n margin: 0;\n padding: 0;\n min-height: 100vh;\n}\n\nhtml {\n font-style: normal;\n font-weight: 300;\n font-size: $fz-default;\n line-height: 24px;\n font-family: $ff-placeholder;\n color: $color-primary;\n\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n // оптимизация выравнивания шрифта относительно центра строки\n text-rendering: optimizeLegibility;\n // если по прежнему есть проблемы с выравниванием\n // https://transfonter.org/ - включите настройку https://prnt.sc/12rnt6g и переконвертируйте шрифт\n}\n\nbody {\n width: 100%;\n height: 100%;\n\n background-color: $color-default-white;\n}\n\na {\n color: $color-default-black;\n text-decoration: none;\n}\n\nimg,\nvideo {\n display: block;\n max-width: 100%;\n height: auto;\n}\n\ntextarea {\n resize: none;\n}\n\n// chrome autofill background removal\n// если на проекте у инпутов используются разные цвета фонов\\текста -\n// удалите это из глобала и используйте локально с нужными цветами\n// rgba не подойдет, сконвертируйте цвет в hex без прозрачности\n// если в стилях уже используется box-shadow есть другое решение -\n// задать к списку транзишенов `background-color 10000000s ease-out`\ninput:-webkit-autofill {\n box-shadow: inset 0 0 0 1000px $color-default-white;\n\n -webkit-text-fill-color: $color-default-black;\n}\n\n// firefox placeholder \\ invalid fix + ios bdrs\ninput,\ntextarea {\n border-radius: 0;\n\n &::placeholder {\n opacity: 1;\n }\n\n &:invalid {\n box-shadow: none;\n }\n}\n\nselect {\n border-radius: 0;\n}\n\n// ie11 X removal\ninput {\n &::-ms-clear,\n &::-ms-reveal {\n display: none;\n }\n}\n\n// chrome search X removal\ninput[type=\"search\"]::-webkit-search-decoration,\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-results-button,\ninput[type=\"search\"]::-webkit-search-results-decoration {\n appearance: none;\n}\n\n// input[number] arrows removal\ninput::-webkit-outer-spin-button,\ninput::-webkit-inner-spin-button {\n margin: 0;\n\n appearance: none;\n}\n\ninput[type=\"number\"] {\n appearance: textfield;\n}\n\n// ios button \\ inputs reset\nselect,\ntextarea,\ninput:matches([type=\"email\"],\n [type=\"number\"],\n [type=\"password\"],\n [type=\"search\"],\n [type=\"tel\"],\n [type=\"text\"],\n [type=\"url\"]) {\n appearance: none;\n}\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n appearance: none;\n}\n\nh1, h2, h3, h4{\n margin: 0;\n padding: 0;\n}\n\np{\n margin: 0;\n padding: 0;\n}\n",".custom-select {\n position: relative;\n\n width: 300px;\n padding: 14px 0 28px;\n margin: 0 0 44px 0;\n\n @media screen and (max-width: 767px) {\n padding: 4px 0 14px;\n width: 100%;\n }\n\n &__label {\n position: absolute;\n top: 50%;\n left: 10px;\n\n transform: translateY(-50%);\n\n transition: transform 0.3s ease, opacity 0.3s ease;\n\n pointer-events: none;\n\n @media screen and (max-width: 767px) {\n transform: translateY(calc(-50% - 5px));\n }\n }\n\n &__placeholder {\n position: absolute;\n top: 50%;\n left: 10px;\n\n transform: translateY(-50%);\n\n transition: transform 0.3s ease, opacity 0.3s ease;\n\n pointer-events: none;\n\n @media screen and (max-width: 767px) {\n transform: translateY(calc(-50% - 5px));\n }\n }\n\n select {\n position: absolute;\n\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n\n white-space: nowrap;\n\n border: 0;\n\n clip: rect(0 0 0 0);\n clip-path: inset(100%);\n }\n\n &__button {\n display: flex;\n align-items: center;\n width: 100%;\n height: 48px;\n padding: 5px 10px;\n\n background-color: rgba(255, 255, 255, 0);\n border: 2px solid rgba(0, 0, 0, 0.2);\n border-radius: 5px;\n outline: none;\n cursor: pointer;\n\n transition: border 0.3s ease;\n\n &:hover {\n border: 2px solid rgba(0, 0, 0, 0.5);\n }\n\n &:focus {\n border: 2px solid rgba(0, 0, 0, 0.8);\n }\n\n &:disabled {\n pointer-events: none;\n opacity: 0.3;\n }\n }\n\n &__list {\n position: absolute;\n bottom: 10px;\n z-index: 1;\n\n width: 100%;\n max-height: 100px;\n margin: 0;\n padding: 0;\n overflow-y: auto;\n\n list-style: none;\n\n background-color: #ffffff;\n border: 2px solid #000000;\n transform: translateY(100%);\n visibility: hidden;\n opacity: 0;\n\n transition: visibility 0.3s ease, opacity 0.3s ease;\n }\n\n &__item {\n padding: 5px;\n\n outline: none;\n cursor: pointer;\n\n transition: background-color 0.3s ease;\n\n &[aria-selected=\"true\"] {\n background-color: rgba(0, 0, 0, 0.2);\n\n @media (hover: hover) {\n &:hover:not(.focus-visible) {\n background-color: rgba(0, 0, 0, 0.2);\n }\n }\n\n &.focus-visible:focus {\n background-color: rgba(0, 0, 0, 0.2);\n }\n }\n\n @media (hover: hover) {\n &:hover:not(.focus-visible) {\n background-color: rgba(0, 0, 0, 0.4);\n }\n }\n\n &.focus-visible:focus {\n background-color: rgba(0, 0, 0, 0.4);\n }\n }\n\n &__error {\n position: absolute;\n bottom: -15px;\n left: 0;\n\n color: #ff1553;\n\n opacity: 0;\n\n transition: opacity 0.1s ease;\n }\n\n &__text {\n font-size: 20px;\n line-height: 24px;\n flex-shrink: 0;\n width: 80%;\n overflow: hidden;\n\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n\n opacity: 0;\n\n transition: opacity 0.3s ease 0.1s;\n\n br {\n display: none;\n }\n }\n\n &__icon {\n flex-shrink: 0;\n width: 20px;\n height: 10px;\n margin-left: auto;\n\n background-color: #000000;\n\n transition: transform 0.3s ease;\n\n clip-path: polygon(100% 0, 100% 20%, 50% 100%, 0 20%, 0 0, 50% 80%);\n }\n\n &.is-disabled {\n pointer-events: none;\n\n .custom-select__list {\n display: none;\n }\n }\n\n &.open-up {\n .custom-select__list {\n bottom: auto;\n top: 0;\n transform: translateY(calc(-100% + 10px));\n }\n }\n\n &.is-open {\n .custom-select__list {\n visibility: visible;\n opacity: 1;\n }\n\n .custom-select__icon {\n transform: rotate(180deg);\n }\n\n .custom-select__label {\n opacity: 0;\n }\n }\n\n &.not-empty {\n .custom-select__text {\n opacity: 1;\n }\n\n .custom-select__label {\n opacity: 0;\n }\n\n .custom-select__placeholder {\n opacity: 0;\n }\n }\n\n &.is-invalid {\n .custom-select__error {\n opacity: 1;\n }\n\n .custom-select__button {\n border: 2px solid #ff1553;\n\n &:focus,\n &:hover {\n border: 2px solid rgba(#ff1553, 0.5);\n }\n }\n }\n\n /* &.is-valid {\n .custom-select__button {\n border: 2px solid $color-eucalyptus;\n\n &:focus,\n &:hover {\n border: 2px solid rgba($color-eucalyptus, 0.5);\n }\n }\n } */\n\n &--placeholder {\n .custom-select__label {\n transform: translateY(calc(-50% - 40px));\n opacity: 1;\n }\n\n &.is-open .custom-select__label {\n opacity: 1;\n }\n\n &.not-empty .custom-select__label {\n opacity: 1;\n }\n }\n\n &.slide-up.not-empty,\n &.slide-up.is-open {\n .custom-select__label {\n transform: translateY(calc(-50% - 40px));\n opacity: 1;\n }\n\n .custom-select__text {\n opacity: 1;\n }\n }\n\n .input-message {\n position: absolute;\n right: 0;\n bottom: -5px;\n\n &.is-invalid {\n color: #ff0000;\n }\n\n &.is-valid {\n color: #15ab07;\n }\n }\n}\n","@font-face {\n font-style: normal;\n font-weight: 400;\n font-family: \"Roboto Condensed\";\n\n font-display: swap;\n src: url(\"../fonts/RobotoCondensed.woff2\") format(\"woff2\");\n}\n\n@font-face {\n font-style: normal;\n font-weight: 300;\n font-family: \"Roboto Condensed\";\n\n font-display: swap;\n src: url(\"../fonts/RobotoCondensed-Light.woff2\") format(\"woff2\");\n}\n\n@font-face {\n font-style: normal;\n font-weight: 600;\n font-family: \"Roboto Condensed\";\n\n font-display: swap;\n src: url(\"../fonts/RobotoCondensed-Bold.woff2\") format(\"woff2\");\n}\n\n\n@font-face {\n font-style: normal;\n font-weight: 600;\n font-family: \"Alumni Sans\";\n\n font-display: swap;\n src: url(\"../fonts/AlumniSans-SemiBold.woff2\") format(\"woff2\");\n}\n",".wrapper {\n position: relative;\n\n display: flex;\n flex-direction: column;\n // min-height: 100vh;\n /* stylelint-disable-next-line */\n // min-height: calc(100 * var(--vh, 1vh));\n\n .header,\n .footer {\n flex-shrink: 0;\n }\n\n main {\n flex-grow: 1;\n }\n}\n\n// .rouble {\n// font-family: $ff-rouble;\n// /* stylelint-disable */\n// text-transform: lowercase !important;\n// font-weight: 400 !important;\n// /* stylelint-enable */\n// }\n\n.visually-hidden {\n position: absolute;\n\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n\n white-space: nowrap;\n\n border: 0;\n\n clip: rect(0 0 0 0);\n clip-path: inset(100%);\n}\n\n// .scroll-lock-ios {\n// position: fixed;\n\n// overflow: hidden;\n// }\n\n// .scroll-lock {\n// overflow: hidden;\n// }\n\n// .no-scrollbar {\n// -ms-overflow-style: none;\n// scrollbar-width: none;\n\n// &::-webkit-scrollbar {\n// display: none;\n// }\n// }\n\n// .no-transition {\n// /* stylelint-disable-next-line */\n// transition: none !important;\n// }\n\n// .js-focus-visible :focus:not(.focus-visible) {\n// outline: none;\n// }\n",".container {\n width: 100%;\n max-width: 1366px;\n margin: 0 auto;\n // padding: 0 103px;\n\n\n // @include vp-1439 {\n // padding: 0 32px;\n // }\n\n // @include vp-1023 {\n // padding: 0 24px;\n // }\n\n @include vp-1199 {\n // padding: 0 45px;\n }\n\n @include vp-767 {\n // padding: 0 15px;\n }\n}\n",".btn {\n display: inline-flex;\n padding: 10px 20px;\n color: $color-default-white;\n background-color: $color-neon-blue;\n border: none;\n cursor: pointer;\n\n transition: opacity $trans-default;\n\n &--red {\n background-color: $color-torch-red;\n }\n\n &:disabled {\n opacity: 0.5;\n\n pointer-events: none;\n }\n\n @include hover-focus {\n opacity: 0.8;\n }\n}\n","@mixin retina {\n @media (min-resolution: $retina-dpi), (min-resolution: $retina-dppx) {\n @content;\n }\n}\n\n@mixin hover {\n @media (hover: hover) {\n &:hover:not(.focus-visible) {\n @content;\n }\n }\n}\n\n@mixin focus {\n &.focus-visible:focus {\n @content;\n }\n}\n\n@mixin active {\n &.focus-visible:active {\n @content;\n }\n}\n\n@mixin hover-focus {\n @media (hover: hover) {\n &:hover:not(.focus-visible) {\n @content;\n }\n }\n\n &.focus-visible:focus {\n @content;\n }\n}\n\n// Desktop first\n\n// @mixin vp-1919 {\n// @media (max-width: ($vp-1920 - 1px)) {\n// @content;\n// }\n// }\n\n// @mixin vp-1439 {\n// @media (max-width: ($vp-1440 - 1px)) {\n// @content;\n// }\n// }\n\n// @mixin vp-1279 {\n// @media (max-width: ($vp-1280 - 1px)) {\n// @content;\n// }\n// }\n\n@mixin vp-1199 {\n @media (max-width: ($vp-1200 - 1px)) {\n @content;\n }\n}\n\n// @mixin vp-1023 {\n// @media (max-width: ($vp-1024 - 1px)) {\n// @content;\n// }\n// }\n\n@mixin vp-767 {\n @media (max-width: ($vp-768 - 1px)) {\n @content;\n }\n}\n\n// @mixin vp-374 {\n// @media (max-width: ($vp-375 - 1px)) {\n// @content;\n// }\n// }\n\n// Mobile first\n\n// @mixin vp-375 {\n// @media (min-width: $vp-375) {\n// @content;\n// }\n// }\n\n// @mixin vp-768 {\n// @media (min-width: $vp-768) {\n// @content;\n// }\n// }\n\n// @mixin vp-1024 {\n// @media (min-width: $vp-1024) {\n// @content;\n// }\n// }\n\n// @mixin vp-1280 {\n// @media (min-width: $vp-1280) {\n// @content;\n// }\n// }\n\n// @mixin vp-1440 {\n// @media (min-width: $vp-1440) {\n// @content;\n// }\n// }\n\n// @mixin vp-1920 {\n// @media (min-width: $vp-1920) {\n// @content;\n// }\n// }\n\n// ---------------------------------\n\n// не нужно добавлять свои миксины для ресета списков, обнуления кнопок и прочие\n// этим вы усложняете работу команды, проверку вашего кода и будущую поддержку проекта\n",".modal {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1000;\n\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n\n background-color: rgba($color-default-black, 0.8);\n transform: scale(1.2);\n visibility: hidden;\n opacity: 0;\n\n transition: opacity $trans-modal,\n transform $trans-modal,\n visibility $trans-modal;\n\n pointer-events: none;\n\n -ms-overflow-style: none;\n scrollbar-width: none;\n\n &::-webkit-scrollbar {\n display: none;\n }\n\n &__wrapper {\n position: relative;\n\n display: flex;\n flex-shrink: 0;\n justify-content: center;\n align-items: center;\n width: 100%;\n min-height: 100%;\n padding: 60px 40px;\n\n @include vp-767 {\n padding: 60px 16px;\n }\n }\n\n &__overlay {\n position: absolute;\n top: 0;\n left: 0;\n\n width: 100%;\n height: 100%;\n\n cursor: pointer;\n }\n\n &__content {\n position: relative;\n\n width: 600px;\n padding: 40px;\n\n background-color: $color-default-white;\n\n @include vp-767 {\n width: 100%;\n padding: 20px;\n }\n }\n\n &__close-btn {\n position: absolute;\n top: 22px;\n right: 22px;\n z-index: 1;\n\n width: 40px;\n height: 40px;\n padding: 0;\n\n background: $color-transparent;\n border: none;\n cursor: pointer;\n }\n\n &--responsive {\n .modal__content {\n width: 100%;\n }\n }\n\n &--fit-content {\n .modal__content {\n width: auto;\n\n @include vp-767 {\n width: 100%;\n }\n }\n }\n\n &--no-scale {\n transform: none;\n }\n\n &--preload {\n transition: none;\n }\n\n &.is-active {\n transform: scale(1);\n visibility: visible;\n opacity: 1;\n\n pointer-events: auto;\n }\n}\n",".custom-input,\n.custom-textarea {\n position: relative;\n\n display: flex;\n width: 530px;\n padding: 14px 0 28px;\n\n @media screen and (max-width: 767px) {\n padding: 4px 0 48px;\n width: 100%;\n }\n\n label {\n display: flex;\n align-items: center;\n width: 100%;\n\n @media screen and (max-width: 767px) {\n align-items: flex-start;\n flex-direction: column;\n }\n\n input,\n textarea {\n flex-grow: 1;\n max-width: 300px;\n min-height: 48px;\n margin-left: auto;\n padding: 10px;\n\n border: 2px solid rgba(#000000, 0.2);\n border-radius: 5px;\n outline: none;\n\n transition: border 0.3s ease;\n\n @media screen and (max-width: 767px) {\n max-width: unset;\n width: 100%;\n }\n\n &:hover {\n border: 2px solid rgba(#000000, 0.5);\n }\n\n &:focus {\n border: 2px solid rgba(#000000, 0.8);\n }\n }\n }\n\n &__label {\n @media screen and (max-width: 767px) {\n margin: 0 0 18px 0;\n }\n }\n\n &__error {\n position: absolute;\n right: 0;\n bottom: 35px;\n\n color: #ff1553;\n\n opacity: 0;\n\n transition: opacity 0.3s ease;\n\n @media screen and (max-width: 767px) {\n bottom: 20px;\n }\n }\n\n &.is-invalid {\n input,\n textarea {\n border: 2px solid #ff1553;\n\n &:focus,\n &:hover {\n border: 2px solid rgba(#ff1553, 0.5);\n }\n }\n }\n\n &.is-valid {\n input {\n border: 2px solid #22b259;\n\n &:focus,\n &:hover {\n border: 2px solid rgba(#22b259, 0.5);\n }\n }\n }\n\n .input-message {\n position: absolute;\n right: 0;\n bottom: -5px;\n\n &.is-invalid {\n color: #ff0000;\n }\n\n &.is-valid {\n color: #15ab07;\n }\n }\n}\n",".custom-toggle {\n position: relative;\n font-size: 18px;\n line-height: 27px;\n font-weight: 300;\n\n display: flex;\n width: 500px;\n padding: 14px 0 10px 36px;\n\n @media screen and (max-width: 767px) {\n padding: 14px 0 10px 0;\n width: 100%;\n }\n\n &:last-of-type {\n padding: 14px 0 58px 36px;\n\n @media screen and (max-width: 767px) {\n padding: 14px 0 58px 0;\n }\n }\n\n input {\n position: absolute;\n\n width: 1px;\n height: 1px;\n margin: -1px;\n\n clip: rect(0 0 0 0);\n }\n\n label {\n position: relative;\n\n padding-left: 52px;\n\n cursor: pointer;\n\n span {\n margin-bottom: 0;\n margin-left: 0;\n }\n }\n\n &--checkbox {\n .custom-toggle__icon {\n position: absolute;\n top: 0;\n left: 0;\n\n width: 28px;\n height: 28px;\n\n border: 1.5px solid #2c39f2;\n\n transition: border 0.3s ease;\n\n &::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n\n width: 20px;\n height: 20px;\n\n background-color: rgba(#2c39f2, 0);\n\n transform: translate(-50%, -50%);\n\n transition: background-color 0.3s ease;\n }\n }\n }\n\n &--radio {\n .custom-toggle__icon {\n position: absolute;\n top: 0;\n left: 0;\n\n width: 28px;\n height: 28px;\n\n border: 1px solid #2c39f2;\n border-radius: 50%;\n\n transition: border 0.3s ease;\n\n &::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n\n width: 20px;\n height: 20px;\n\n color: rgba(255, 255, 255, 0);\n\n border-radius: 50%;\n transform: translate(-50%, -50%);\n\n transition: color 0.3s ease;\n }\n }\n }\n\n input:checked + .custom-toggle__icon {\n border: 1.5px solid #2c39f2;\n\n &::before {\n background-color: #2c39f2;\n }\n }\n\n &.is-invalid {\n label span {\n color: #ff1553;\n }\n }\n\n .input-message {\n position: absolute;\n right: 0;\n bottom: -5px;\n\n &.is-invalid {\n color: #ff0000;\n }\n\n &.is-valid {\n color: #15ab07;\n }\n }\n}\n","header {\n position: relative;\n margin: 0 auto;\n width: 1366px;\n\n &::before {\n position: absolute;\n background-image: $blue-to-red;\n\n width: 1366px;\n height: 642px;\n\n content: \"\";\n }\n}\n\n.header__logo {\n position: absolute;\n order: 1;\n top: 25px;\n left: 103px;\n}\n\n.header__contact-link {\n position: absolute;\n order: 1;\n top: 16px;\n right: 103px;\n font-family: ff-Alumnisans;\n font-size: 24px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: -0.6px;\n font-style: normal;\n color: $color-default-white;\n}\n",".intro {\n margin: 0 auto;\n width: 1366px;\n padding: 35px 240px 92px 250px;\n}\n\n.intro__wrapper {\n display: flex;\n justify-content: space-between;\n padding-right: 64px;\n}\n\n.intro__text {\n display: flex;\n flex-direction: column;\n align-items: flex-end;\n text-align: right;\n\n}\n\n.intro__title {\n font-family: $ff-Alumnisans;\n font-size: 50px;\n font-weight: 600;\n line-height: 114px;\n letter-spacing: 1.8px;\n color: $color-default-white;\n padding-bottom: 46px;\n}\n\n.intro__subtitle {\n order: -1;\n font-family: Alumni Sans;\n font-size: 48px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.44px;\n color: $color-default-white;\n text-align: right;\n padding-top: 110px;\n padding-bottom: 12px;\n padding-right: 50px;\n}\n\n.intro__description{\n position: absolute;\n top: 305px;\n left: -128px;\n font-family: $ff-placeholder;\n font-weight: 400;\n font-size: 14px;\n line-height: 1.5;\n color: $color-default-white;\n letter-spacing: -0.7px;\n}\n\n.intro__link-buy{\n padding: 20px 56px;\n letter-spacing: 0.9px;\n}\n",".button {\n box-sizing: border-box;\n display: inline-block;\n text-align: center;\n text-decoration: none;\n font-family: $ff-placeholder;\n font-weight: 600;\n font-size: 11px;\n line-height: normal;\n color: $color-default-white;\n background-color: $color-transparent;\n border: 4px solid $color-default-white;\n text-transform: uppercase;\n cursor: pointer;\n}\n",".gym {\n margin: 0 auto;\n width: 1366px;\n padding: 80px 103px 166px 163px;\n}\n\n.gym__wrapper {\n display: flex;\n justify-content: space-between;\n}\n\n.gym__text {\n display: flex;\n flex-direction: column;\n padding-top: 40px;\n padding-right: 85px;\n}\n\n.gym__title {\n font-family: $ff-Alumnisans;\n font-size: 32px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.44px;\n color: $color-primary;\n padding-bottom: 8px;\n}\n\n.gym__subtitle {\n font-family: $ff-placeholder;\n font-size: 14px;\n font-weight: 400;\n line-height: 1.5;\n color: $color-primary;\n padding-bottom: 40px;\n letter-spacing: 0.7px;\n}\n\n.gym__description {\n font-family: $ff-placeholder;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.5;\n color: $color-primary;\n\n &--supergym {\n padding-bottom: 8px;\n }\n}\n\n.gym__video-wrapper {\n position: relative;\n}\n\n.gym__video {\n margin-left: 378px;\n margin-top: -112px;\n\n}\n\n.gym__video-button {\n position: absolute;\n width: 100px;\n height: 100px;\n top: 64px;\n left: 518px;\n background-color: transparent;\n border-radius: 50%;\n border: none;\n}\n\n.gym__button-image {\n transform: rotate(150deg);\n}\n\n.gym__button-border {\n position: absolute;\n top: 0;\n left: -9px;\n width: 100px;\n height: 100px;\n}\n","[data-tabs=\"parent\"] {\n overflow: hidden;\n\n &.no-transition {\n > [data-tabs=\"control\"],\n > [data-tabs=\"content\"],\n > [data-tabs=\"element\"] {\n transition: none;\n }\n }\n\n &.no-transition-global {\n [data-tabs=\"control\"],\n [data-tabs=\"content\"],\n [data-tabs=\"element\"] {\n transition: none;\n }\n }\n}\n\n[data-tabs=\"parent\"] [data-tabs=\"content\"] {\n position: relative;\n}\n\n[data-tabs=\"element\"] {\n position: absolute;\n\n visibility: hidden;\n opacity: 0;\n\n transition: opacity 0.3s ease-in, visibility 0.3s ease-in;\n}\n\n[data-tabs=\"element\"].for-load {\n position: static;\n visibility: visible;\n opacity: 1;\n\n transition: none;\n}\n\n[data-tabs=\"element\"].is-active {\n z-index: 1;\n\n visibility: visible;\n opacity: 1;\n}\n",".gym-membership{\n position: relative;\n margin: 0 auto;\n width: 1366px;\n padding-top: 118px;\n padding-bottom: 80px;\n background-color: $color-background-grey;\n}\n\n.gym-membership__title{\n font-family: $ff-Alumnisans;\n font-size: 36px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: $color-primary;\n padding-bottom: 18px;\n text-align: center;\n}\n\n.gym-membership__image{\n position: absolute;\n right: -10px;\n bottom: -255px;\n}\n",".cards__list {\n display: grid;\n grid-template-columns: 1fr 1fr 1fr;\n gap: 30px;\n margin: 0 auto;\n padding: 0 103px;\n list-style-type: none;\n width: 1366px;\n}\n\n.cards__item {\n box-sizing: border-box;\n border: 7px solid $color-transparent;\n display: flex;\n flex-direction: column;\n text-align: center;\n align-items: center;\n padding-top: 54px;\n padding-bottom: 60px;\n padding-right: 62px;\n padding-left: 62px;\n background-color: $color-default-white;\n\n &--current{\n border-image: $red-to-blue;\n border-image-slice: 1;\n\n & .cards__link-buy{\n border: none;\n background-image: $red-to-blue;\n color: $color-default-white;\n padding: 26px 43px;\n }\n }\n}\n\n.cards__title {\n font-family: $ff-placeholder;\n font-weight: 700;\n font-size: 23px;\n line-height: 1.1;\n color: $color-primary;\n margin-bottom: 10px;\n}\n\n.cards__description {\n font-family: $ff-placeholder;\n font-weight: 400;\n font-size: 16px;\n line-height: 1.5;\n color: $color-primary;\n margin-bottom: 12px;\n}\n\n.cards__price {\n font-family: $ff-placeholder;\n font-weight: 700;\n font-size: 60px;\n line-height: 1.5;\n color: $color-blue;\n margin-top: -97px;\n margin-bottom: 35px;\n}\n\n.cards__price-shadow{\n font-family: $ff-placeholder;\n font-weight: 700;\n font-size: 100px;\n line-height: 1.5;\n color: $color-light-grey;\n}\n//\n.cards__link-buy{\n color: $color-primary;\n font-size: 11px;\n font-weight: 700;\n letter-spacing: 1.3px;\n border: 2px solid $color-primary;\n padding: 24px 39px;\n}\n",".super-games{\n margin: 0 auto;\n width: 1160px;\n padding-top: 118px;\n padding-bottom: 106px;\n }\n\n.super-games__wrapper{\n display: grid;\n grid-template-columns: 500px auto;\n}\n\n.super-games__images{\n background-size: cover;\n}\n\n.super-games__text{\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n padding-top: 85px;\n padding-right: 75px;\n padding-bottom: 83px;\n padding-left: 77px;\n background-color: $color-banner-red;\n}\n\n.super-games__intro{\n display: grid;\n grid-template-columns: 201px auto;\n gap: 50px;\n}\n\n.super-games__title{\n font-family: $ff-Alumnisans;\n font-weight: 600;\n font-size: 56px;\n line-height: 0.96;\n color: $color-default-white;\n letter-spacing: 2.46px;\n text-transform: uppercase;\n padding-bottom: 28px;\n text-align: center;\n}\n\n.super-games__description{\n font-family: $ff-placeholder;\n font-weight: 400;\n font-size: 18px;\n line-height: 1.5;\n letter-spacing: -1px;\n color: $color-default-white;\n padding-bottom: 43px;\n}\n\n.super-games__link-application{\n padding: 25px 0;\n font-size: 13px;\n}\n\n.super-games__date-time{\ndisplay: flex;\nflex-direction: column;\ngap: 10px;\n}\n\n.super-games__time-table{\n margin-top: -2px;\n font-family: $ff-placeholder;\n font-weight: 400;\n font-size: 18px;\n line-height: 1.5;\n color: $color-default-white;\n letter-spacing: 0.7px;\n}\n\n.super-games__date-wrapper{\n position: relative;\n display: flex;\n align-items: center;\n gap: 7px;\n\n &::before {\n position: absolute;\n top: 4px;\n right: 0;\n left: 0;\n height: 1px;\n background-color: $color-default-white;\n content: \"\";\n }\n}\n\n.super-games__date{\n font-family: $ff-placeholder;\n font-weight: 700;\n font-size: 40px;\n line-height: 1.5;\n color: $color-default-white;\n}\n\n.super-games__month-year{\n font-size: 14px;\n}\n",".trainer{\n position: relative;\n margin: 0 auto;\n width: 1366px;\n padding-bottom: 105px;\n}\n\n.trainer__title{\n font-family: $ff-Alumnisans;\n font-size: 36px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: $color-primary;\n padding-left: 103px;\n padding-bottom: 48px;\n}\n\n.trainer__swiper{\n width: 1160px;\n margin: 0 auto;\n}\n",".advantages{\n margin: 0 auto;\n background-color: $color-background-grey;\n}\n\n.advantages__wrapper{\n padding-top: 108px;\n padding-right: 172px;\n padding-bottom: 129px;\n padding-left: 172px;\n}\n\n.advantages__title{\n font-family: $ff-Alumnisans;\n font-size: 36px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: $color-primary;\n text-align: center;\n margin-bottom: 29px;\n}\n\n.advantages__list{\n margin: 0;\n padding: 0;\n list-style-type: none;\n display: grid;\n grid-template-columns: 1fr 240px 1fr;\n column-gap: 54px;\n row-gap:130px;\n}\n",".advantage {\n position: relative;\n display: flex;\n gap: 32px;\n padding-left: 6px;\n\n &:not(:nth-last-child(-n + 3))::before {\n position: absolute;\n bottom: -76px;\n right: 0;\n left: 0;\n height: 2px;\n background-color: $color-line-red;\n opacity: 0.2;\n content: \"\";\n }\n\n &--center {\n grid-column: 2/3;\n grid-row: 1/3;\n margin-top: 28px;\n margin-bottom: 8px;\n flex-direction: column;\n background-color: $color-background-blue;\n text-align: center;\n padding-top: 42px;\n padding-left: 0;\n gap: 0;\n }\n}\n\n.advantage__number-wrapper {\n position: relative;\n}\n\n.advantage__number {\n font-family: $ff-placeholder;\n font-size: 71px;\n font-weight: 700;\n line-height: 1.5;\n background-color: $color-blue-for-text;\n background-image: $red-to-blue-for-text;\n background-clip: text;\n -webkit-text-fill-color: transparent;\n\n &--center{\n font-size: 76px;\n line-height: 1.2;\n background-image: none;\n background-color: $color-default-white;\n letter-spacing: 1px;\n }\n}\n\n.advantage__number-text {\n position: absolute;\n bottom: 2px;\n font-family: $ff-placeholder;\n font-size: 14px;\n font-weight: 400;\n line-height: 1.5;\n letter-spacing: -1px;\n color: $color-blue-secondary;\n}\n\n.advantage__title{\n padding-top: 20px;\n padding-bottom: 5px;\n font-family: $ff-placeholder;\n font-size: 20px;\n font-weight: 700;\n line-height: 1.5;\n letter-spacing: -0.7px;\n color: $color-primary;\n\n &--center{\n padding: 0;\n color: $color-default-white;\n font-size: 21px;\n letter-spacing: 0.7px;\n padding-bottom: 33px;\n }\n}\n\n.advantage__description{\n font-family: $ff-placeholder;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.4;\n color: $color-primary;\n\n &--center{\n color: $color-default-white;\n }\n}\n\n",".promotions{\n margin: 0 auto;\n}\n\n.promotions__wrapper{\n padding-top: 126px;\n padding-right: 103px;\n padding-bottom: 120px;\n padding-left: 103px;\n}\n\n.promotions__title{\n font-family: $ff-Alumnisans;\n font-size: 54px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: $color-primary;\n text-align: center;\n margin-bottom: 34px;\n}\n\n.promotions__list{\n margin: 0;\n padding: 0;\n list-style-type: none;\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 40px;\n}\n",".promotion {\n padding: 18px 28px;\n box-sizing: border-box;\n border: 7px solid $color-transparent;\n border-image: $red-to-blue;\n border-image-slice: 1;\n\n &--big {\n padding: 0;\n grid-row: 1/3;\n display: flex;\n border: none;\n }\n}\n\n.promotion__text {\n padding: 37px 44px ;\n background-color: $color-banner-red;\n}\n\n.promotion__title {\n font-family: $ff-placeholder;\n font-size: 22px;\n font-weight: 700;\n line-height: 1.5;\n color: $color-background-blue;\n padding-bottom: 5px;\n\n &--big{\n font-size: 23px;\n color: $color-default-white;\n }\n}\n\n.promotion__price{\n font-family: $ff-placeholder;\n font-size: 70px;\n font-weight: 700;\n line-height: 0.76;\n color: $color-default-white;\n padding-bottom: 26px;\n}\n\n.promotion__description{\n font-family: $ff-placeholder;\n font-size: 16px;\n font-weight: 400;\n line-height: 1.4;\n color: $color-background-blue;\n letter-spacing: -0.9px;\n padding-bottom: 66px;\n\n &--big{\n padding-bottom: 183px;\n color: $color-default-white;\n font-size: 18px;\n letter-spacing: -0.9px;\n }\n}\n\n.promotion__link{\n font-family: $ff-placeholder;\n font-size: 12px;\n font-weight: 700;\n line-height: 1.4;\n color: $color-background-blue;\n letter-spacing: 0.6px;\n text-transform: uppercase;\n border-bottom: 1px solid $color-background-blue;\n\n &--big{\n font-size: 14px;\n color: $color-default-white;\n border-bottom: 1px solid $color-default-white;\n }\n}\n","[data-accordion=\"element\"].is-active > [data-accordion=\"content\"] {\n max-height: 100%;\n}\n\n[data-accordion=\"parent\"].no-transition [data-accordion=\"content\"] {\n transition: none;\n}\n\n[data-accordion=\"content\"] {\n max-height: 0;\n transition: max-height 0.3s;\n overflow: hidden;\n}\n",".accordion {\n //max-width: 500px;\n margin: 0 auto 50px auto;\n\n & & {\n width: 90%;\n margin: 0 auto;\n }\n\n &__element:last-child {\n margin-bottom: 0;\n }\n\n &__element {\n position: relative;\n margin-bottom: 13px;\n padding: 10px;\n padding-right: 177px;\n border-top: 1px solid $color-primary-light;\n }\n\n &__element.is-active > &__button {\n opacity: 0.5;\n }\n\n &__button {\n position: absolute;\n right: 0;\n top: 25px;\n width: 42px;\n height: 42px;\n border: 1px solid $color-background-blue;\n border-radius: 50%;\n background-color: $color-transparent;\n cursor: pointer;\n }\n}\n\n.accordion__title{\n padding-top: 24px;\n padding-bottom: 14px;\n font-family: $ff-placeholder;\n font-size: 20px;\n font-weight: 500;\n line-height: 1.2;\n color: $color-primary;\n letter-spacing: 0.2px;\n}\n\n.accordion__discription{\n font-family: $ff-placeholder;\n font-size: 18px;\n font-weight: 300;\n line-height: 1.4;\n color: $color-primary;\n}\n",".faq{\n margin: 0 auto;\n background-color: $color-background-grey;\n}\n\n.faq__wrapper{\n padding-right: 103px;\n padding-left: 103px;\n padding-top: 120px;\n padding-bottom: 120px;\n}\n\n.faq__title{\n font-family: $ff-Alumnisans;\n font-size: 36px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: $color-primary;\n padding-bottom: 40px;\n}\n"]} \ No newline at end of file +{"version":3,"sources":["vendor/swiper.scss","vendor/normalize.scss","blocks/tabs.scss","style.css","global/reboot.scss","blocks/custom-select.scss","global/fonts.scss","global/utils.scss","global/container.scss","blocks/btn.scss","blocks/modal.scss","mixins.scss","blocks/custom-input.scss","blocks/custom-toggle.scss","blocks/accordion.scss","blocks/header.scss","blocks/intro.scss","blocks/button.scss","blocks/gym.scss","blocks/data-tabs.scss","blocks/gym-membership.scss","blocks/cards.scss","blocks/super-games.scss","blocks/trainer.scss","blocks/advantages.scss","blocks/advantage.scss","blocks/promotions.scss","blocks/promotion.scss","blocks/data-accordion.scss","blocks/faq.scss","blocks/reviews.scss"],"names":[],"mappings":"A;AAqjBA,yCACE,E,CACE,gC,CAAA,0B,AAFJ,iCACE,E,CACE,gC,CAAA,0BC5iBJ,I,CAGE,6B,CC0EA,gB,CD/DA,Q,CAkTF,O,CA3SA,I,CACE,a,CAQF,E,CAGE,a,CAWF,E,CACE,8B,CAAA,sB,CACA,Q,CACA,gB,CAkDF,I,CEfA,G,CF3BA,G,CE4BA,I,CF3BE,a,CACA,+B,CAUF,C,CACE,4B,CG1CA,U,CACA,oB,CHiDF,W,CAEE,wC,CAAA,gC,CAEA,kB,CAOF,C,CEdA,M,CFgBE,kB,CAmBF,K,CACE,a,CAQF,G,CEjBA,G,CFmBE,iB,CAEA,a,CACA,a,CACA,uB,CAGF,G,CACE,a,CAGF,G,CACE,S,CAUF,G,CACE,iB,CAWF,M,CEtBA,K,CACA,Q,CACA,M,CACA,Q,CFwBE,Q,CAEA,c,CACA,gB,CACA,mB,CAQF,M,CExBA,K,CF2BE,gB,CAQF,M,CEzBA,M,CF4BE,mB,CETF,+B,CACA,8B,CACA,+B,CFyBA,wB,CAIE,S,CAEA,iB,CEtBF,4B,CACA,2B,CACA,4B,CF2BA,qB,CAIE,6B,CAOF,Q,CACE,0B,CAUF,M,CACE,a,CAEA,c,CAGA,a,CACA,kB,CAOF,Q,CACE,uB,CAOF,Q,CACE,a,CG9NA,W,CHsOF,e,CElCA,Y,CFGA,M,CAiCE,6B,CAAA,qB,CACA,S,CAOF,wC,CElCA,wC,CFoCE,W,CAQF,a,CACE,mB,CAEA,4B,CAOF,wC,CACE,uB,CAQF,4B,CACE,Y,CAEA,yB,CAkBF,O,CACE,iB,CAkBF,Q,CARA,Q,CACE,Y,CDlVF,WACE,0B,CACA,4rE,CACA,e,CACA,kBAGF,K,CACE,4B,CAGF,O,CAgBA,e,CACE,iB,CAGA,S,CApBF,O,CACE,gB,CACA,iB,CAEA,e,CACA,e,CAEA,S,CAKF,gC,CACE,2B,CAAA,4B,CAAA,yB,CAAA,qB,CAGF,e,CAEE,U,CACA,W,CAEA,mB,CAAA,mB,CAAA,Y,CACA,6C,CAAA,6B,CAAA,+C,CACA,8B,CAAA,sB,CAGF,6B,CAVA,e,CAYE,oC,CAAA,4B,CAGF,sB,CACE,sB,CAAA,kB,CAGF,sC,CACE,sB,CAAA,kB,CAGF,a,CACE,mB,CAAA,a,CACA,U,CACA,W,CACA,iB,CACA,6C,CAAA,6B,CAAA,+C,CAGF,6B,CACE,iB,CAIF,kB,CG0UA,gC,CHxUE,W,CAGF,kC,CACE,uB,CAAA,oB,CAAA,sB,CACA,oD,CAAA,oC,CAAA,sD,CAIF,U,CG+UA,0C,CH7UE,0B,CAAA,kB,CGyVF,8B,CANA,wB,CACA,+B,CAIA,sC,CAHA,oC,CACA,qC,CACA,mC,CHpVA,0B,CAQE,mC,CAAA,2B,CAGF,+B,CGoVA,sC,CAHA,oC,CACA,qC,CACA,mC,CH9UE,iB,CACA,M,CACA,K,CACA,U,CACA,W,CACA,mB,CACA,U,CAGF,+B,CACE,0B,CAGF,oC,CACE,iG,CAAA,oE,CAGF,qC,CACE,iG,CAAA,qE,CAGF,mC,CACE,mG,CAAA,mE,CAGF,sC,CACE,mG,CAAA,sE,CAIF,gC,CACE,a,CACA,oB,CAEA,uB,CAIF,mD,CACE,Y,CAGF,8C,CACE,6B,CAGF,kD,CACE,gC,CAAA,4B,CAGF,gD,CACE,gC,CAAA,4B,CAGF,wC,CACE,U,CACA,mB,CAAA,a,CACA,+B,CAAA,mB,CAAA,U,CAGF,4E,CACE,yD,CAAA,wD,CAGF,0D,CACE,W,CACA,c,CACA,yC,CAGF,0E,CACE,0D,CAAA,uD,CAGF,wD,CACE,U,CACA,a,CACA,0C,CAGF,8C,CACE,+B,CAGF,sD,CACE,U,CACA,iB,CACA,M,CACA,K,CACA,mB,CAGF,wE,CACE,U,CACA,gC,CAGF,sE,CACE,S,CACA,iC,CAGF,K,CACE,6B,CGkWF,mB,CH5VA,mB,CAEE,iB,CACA,O,CACA,+C,CACA,oC,CACA,sD,CACA,U,CACA,c,CACA,mB,CAAA,mB,CAAA,Y,CACA,wB,CAAA,qB,CAAA,kB,CACA,uB,CAAA,oB,CAAA,sB,CACA,+D,CGqWF,0C,CHlWA,0C,CAEE,W,CACA,W,CACA,mB,CGqWF,yB,CHlWA,yB,CAEE,wB,CACA,uC,CACA,6B,CACA,gB,CAEA,oB,CACA,a,CAGF,mB,CGkWA,+B,CHhWE,S,CACA,U,CAGF,yB,CGkWA,qC,CHhWE,c,CAGF,mB,CGkWA,+B,CHhWE,U,CACA,S,CAGF,yB,CGkWA,qC,CHhWE,c,CAGF,mB,CACE,Y,CAgBF,kB,CACE,iB,CACA,iB,CACA,gC,CAAA,wB,CACA,oC,CAAA,4B,CACA,U,CAGF,2C,CACE,S,CGuWF,6C,CACA,uD,CAFA,yB,CHlWA,2B,CAIE,W,CACA,M,CACA,U,CAIF,kC,CACE,e,CACA,W,CAGF,4D,CACE,4B,CAAA,wB,CAAA,oB,CACA,iB,CAGF,mE,CAIA,wE,CAHE,0B,CAAA,sB,CAAA,kB,CAOF,wE,CACE,4B,CAAA,wB,CAAA,oB,CAGF,6E,CACE,4B,CAAA,wB,CAAA,oB,CAGF,wE,CACE,4B,CAAA,wB,CAAA,oB,CAGF,6E,CACE,4B,CAAA,wB,CAAA,oB,CAGF,yB,CACE,sF,CACA,wF,CACA,oB,CACA,iB,CACA,+D,CACA,6D,CAGF,+B,CACE,Q,CACA,Q,CACA,S,CACA,uB,CAAA,e,CACA,uB,CACA,oB,CAAA,e,CAGF,sD,CACE,c,CAGF,oC,CACE,sB,CAGF,gC,CACE,kD,CACA,oE,CGqXF,qD,CHlXA,2C,CAEE,U,CACA,O,CACA,uC,CAAA,+B,CGsXF,+E,CHnXA,qE,CAEE,0D,CACA,a,CGsXF,uF,CHnXA,6E,CAEE,O,CACA,kC,CAAA,8B,CAAA,0B,CACA,S,CGwXF,iH,CHrXA,uG,CAEE,oB,CACA,oD,CAAA,oC,CAAA,4D,CAGF,uE,CGwXA,iF,CHtXE,4D,CAGF,+E,CGwXA,yF,CHtXE,Q,CACA,kC,CAAA,8B,CAAA,0B,CACA,kB,CAGF,yG,CG0XA,mH,CHxXE,qD,CAAA,qC,CAAA,6D,CAGF,0F,CACE,sD,CAAA,sC,CAAA,8D,CAIF,8B,CACE,0B,CACA,iB,CAGF,kE,CACE,oE,CACA,iB,CACA,M,CACA,K,CACA,U,CACA,W,CACA,0B,CAAA,sB,CAAA,kB,CACA,iC,CAAA,6B,CAAA,yB,CAGF,8E,CACE,kC,CAAA,8B,CAAA,0B,CAGF,iD,CGsYA,2D,CAEA,gG,CADA,sF,CHnYE,U,CACA,U,CACA,M,CACA,K,CG0YF,wF,CACA,kG,CAFA,yD,CHtYA,+C,CAIE,S,CACA,W,CACA,M,CACA,K,CAGF,uB,CACE,Y,CAIF,iB,CACE,kB,CACA,iB,CAEA,yB,CAGF,oC,CACE,iB,CACA,O,CACA,U,CACA,U,CACA,U,CACA,S,CAGF,kC,CACE,iB,CACA,S,CACA,M,CACA,U,CACA,S,CACA,U,CAGF,sB,CACE,W,CACA,U,CACA,iB,CACA,yB,CACA,kB,CACA,M,CACA,K,CAGF,6B,CACE,W,CK9UE,uB,CLiVJ,sB,CACE,Y,CAGF,sB,CACE,U,CACA,W,CACA,mB,CAAA,mB,CAAA,Y,CACA,uB,CAAA,oB,CAAA,sB,CACA,wB,CAAA,qB,CAAA,kB,CACA,iB,CG+YF,6B,CH5YA,0B,CG2YA,0B,CHxYE,c,CACA,e,CACA,qB,CAAA,kB,CAGF,oB,CACE,W,CASF,sB,CACE,U,CACA,W,CACA,iB,CACA,Q,CACA,O,CACA,iB,CACA,gB,CACA,U,CACA,4B,CAAA,wB,CAAA,oB,CACA,0D,CAAA,kD,CACA,6B,CAAA,qB,CACA,yE,CACA,iB,CACA,4B,CAGF,4B,CACE,6B,CAGF,4B,CACE,6B,CAUF,4B,CACE,iB,CACA,M,CACA,K,CACA,mB,CACA,S,CACA,a,CAGF,iC,CACE,2C,CAAA,mC,CACA,a,CAGF,4B,CACE,kB,CAAA,c,CAGF,mC,CACE,kB,CAAA,c,CACA,2B,CAAA,4B,CAAA,yB,CAAA,qB,CAGF,2C,CACE,2C,CAAA,mC,CAGF,0B,CACE,mB,CACA,mC,CAAA,2B,CAGF,wC,CACE,mB,CAGF,iC,CG6ZA,sD,CH3ZE,mB,CAyGF,a,CAtGA,Y,CAkEA,Y,CAjEE,gB,CAGF,0B,CACE,mB,CACA,kC,CACA,0B,CACA,S,CACA,iB,CACA,4B,CAAA,wB,CAAA,oB,CACA,U,CACA,W,CAGF,wC,CACE,mB,CAGF,qC,CACE,+B,CAAA,2B,CAAA,uB,CGoaF,sD,CH/ZE,mB,CAGF,iC,CGiaA,+B,CAEA,6C,CADA,+B,CH9ZE,mB,CACA,kB,CGoaF,wC,CACA,sC,CACA,uC,CHnaA,qC,CAIE,S,CACA,kC,CACA,0B,CAGF,gC,CACE,iB,CACA,M,CACA,Q,CACA,U,CACA,W,CACA,U,CACA,S,CAGF,uC,CACE,U,CACA,e,CACA,iB,CACA,M,CACA,K,CACA,Q,CACA,O,CACA,yB,CAAA,iB,CAOF,0B,CACE,mB,CACA,kC,CACA,0B,CACA,S,CAGF,wC,CACE,mB,CAGF,iC,CGkaA,sD,CHhaE,mB,CGqaF,wC,CACA,sC,CACA,uC,CHpaA,qC,CAIE,S,CACA,kC,CACA,0B,CAcF,2B,CAXA,8B,CAaE,kC,CACA,0B,CACA,e,CAfF,8B,CAIE,4D,CAAA,4C,CAAA,8D,CAOF,2B,CACE,sC,CAAA,kC,CAAA,8B,CMhtBF,WACE,iB,CACA,e,CACA,8B,CAEA,iB,CACA,wD,AAGF,WACE,iB,CACA,e,CACA,8B,CAEA,iB,CACA,8D,AAGF,WACE,iB,CACA,e,CACA,8B,CAEA,iB,CACA,6D,AAIF,WACE,iB,CACA,e,CACA,yB,CAEA,iB,CACA,4DFlCF,C,CD0pCA,O,CADA,Q,CCtpCE,6B,CAAA,qB,CD6pCF,I,CC1pCA,I,CAEE,Q,CACA,S,CACA,gB,CAGF,I,CACE,iB,CACA,e,CACA,c,CACA,gB,CACA,iD,CACA,a,CAEA,kC,CACA,iC,CAEA,iC,CAKF,I,CACE,U,CACA,W,CAEA,qB,CAQF,G,CDqpCA,K,CCnpCE,a,CACA,c,CACA,W,CAaF,sB,CACE,0C,CAAA,kC,CAEA,4B,CAIF,K,CAaA,M,CDioCA,Q,CC5oCE,e,CAEA,gC,CAAA,mC,CACE,S,CADF,uB,CAAA,0B,CACE,S,CADF,2B,CAAA,8B,CACE,S,CADF,4B,CAAA,+B,CACE,S,CADF,kB,CD0pCF,qB,CCzpCI,S,CAGF,a,CD0pCF,gB,CCzpCI,uB,CAAA,e,CAUF,gB,CAAA,iB,CAEE,Y,CD2pCJ,gD,CCtpCA,6C,CDupCA,iD,CACA,qD,CCppCE,uB,CAAA,e,CD0pCF,gC,CCtpCA,gC,CAEE,Q,CAEA,uB,CAAA,e,CAGF,kB,CACE,4B,CAAA,yB,CAAA,oB,CD4pCF,cAAc,Y,CACd,a,CACA,e,CACA,a,CACA,U,CACA,W,CACA,W,CC9pCA,M,CDupCA,Q,CC9oCE,uB,CAAA,oB,CAAA,e,CD4pCF,a,CACA,Y,CACA,a,CC3pCA,M,CAIE,uB,CAAA,oB,CAAA,e,CG/HF,Q,CACE,iB,CAEA,mB,CAAA,mB,CAAA,Y,CACA,2B,CAAA,4B,CAAA,yB,CAAA,qB,CJoyCF,gB,CI/xCE,gB,CAEE,mB,CAAA,a,CAGF,a,CACE,kB,CAAA,mB,CAAA,W,CAcJ,U,CAVA,E,CAAA,E,CAAA,E,CAAA,E,CAKA,C,CAJE,Q,CACA,S,CFuBA,qB,CEFF,gB,CACE,iB,CAEA,S,CACA,U,CACA,W,CACA,S,CACA,e,CAEA,kB,CAEA,Q,CAEA,kB,CACA,6B,CAAA,qB,CCxDF,U,CACE,U,CACA,gB,CACA,a,CCHF,I,CACE,0B,CAAA,0B,CAAA,mB,CACA,iB,CACA,U,CACA,wB,CACA,Q,CACA,c,CAEA,mC,CAAA,2B,CAEA,S,CACE,wB,CAGF,a,CACE,U,CAEA,mB,CCjBJ,M,CACE,c,CACA,K,CACA,O,CACA,Q,CACA,M,CACA,Y,CAEA,mB,CAAA,mB,CAAA,Y,CACA,2B,CAAA,4B,CAAA,yB,CAAA,qB,CACA,e,CACA,gC,CAEA,+B,CACA,4B,CAAA,wB,CAAA,oB,CACA,iB,CACA,S,CAEA,8I,CAAA,8H,CAAA,6K,CAIA,mB,CAEA,uB,CACA,oB,CAEA,yB,CACE,Y,CAGF,e,CACE,iB,CAEA,mB,CAAA,mB,CAAA,Y,CACA,mB,CAAA,a,CACA,uB,CAAA,oB,CAAA,sB,CACA,wB,CAAA,qB,CAAA,kB,CACA,U,CACA,e,CACA,iB,CC+BF,yBDxCA,e,CAYI,mBAIJ,e,CACE,iB,CACA,K,CACA,M,CAEA,U,CACA,W,CAEA,c,CAGF,e,CACE,iB,CAEA,W,CACA,Y,CAEA,qB,CCOF,yBDbA,e,CASI,U,CACA,cAIJ,iB,CACE,iB,CACA,Q,CACA,U,CACA,S,CAEA,U,CACA,W,CACA,S,CAEA,c,CACA,Q,CACA,c,CAIA,kC,CACE,U,CAKF,mC,CACE,U,CCxBJ,yBDuBE,mC,CAII,YAKN,gB,CACE,sB,CAAA,kB,CAAA,c,CAGF,e,CACE,uB,CAAA,e,CAGF,gB,CACE,0B,CAAA,sB,CAAA,kB,CACA,kB,CACA,S,CAEA,mB,CEpHJ,a,CT69CA,gB,CS39CE,iB,CAEA,mB,CAAA,mB,CAAA,Y,CACA,W,CACA,mB,CAEA,oCARF,a,CTu+CA,gB,CS99CI,kB,CACA,YAGF,mB,CTg+CF,sB,CS/9CI,mB,CAAA,mB,CAAA,Y,CACA,wB,CAAA,qB,CAAA,kB,CACA,U,CAEA,oCALF,mB,CT2+CF,sB,CSr+CM,uB,CAAA,oB,CAAA,sB,CACA,2B,CAAA,4B,CAAA,yB,CAAA,uBAGF,yB,CT4+CJ,4B,CACA,4B,CACA,+B,CS5+CM,kB,CAAA,mB,CAAA,W,CACA,e,CACA,e,CACA,gB,CACA,Y,CAEA,+B,CACA,iB,CACA,S,CAEA,kC,CAAA,0B,CAEA,oCAdF,yB,CT8/CJ,4B,CACA,4B,CACA,+B,CSj/CQ,e,CACA,YAGF,+B,CTm/CN,kC,CACA,kC,CACA,qC,CSp/CQ,+B,CAGF,+B,CTq/CN,kC,CACA,kC,CACA,qC,CSt/CQ,+B,CAMJ,oCADF,oB,CTs/CF,uB,CSp/CM,iBAIJ,oB,CTq/CF,uB,CSp/CI,iB,CACA,O,CACA,W,CAEA,a,CAEA,S,CAEA,mC,CAAA,2B,CAEA,oCAXF,oB,CTggDF,uB,CSp/CM,aAKF,8B,CTo/CJ,iC,CACA,iC,CACA,oC,CSp/CM,wB,CAEA,oC,CAAA,oC,CTs/CN,uC,CACA,uC,CACA,uC,CACA,uC,CACA,0C,CACA,0C,CSz/CQ,mC,CAMJ,4B,CTu/CJ,+B,CSt/CM,wB,CAEA,kC,CAAA,kC,CTw/CN,qC,CACA,qC,CSv/CQ,mC,CAKN,4B,CTs/CF,+B,CSr/CI,iB,CACA,O,CACA,W,CAEA,uC,CTu/CJ,0C,CSt/CM,S,CAGF,qC,CTu/CJ,wC,CSt/CM,a,CC3GN,c,CACE,iB,CACA,c,CACA,gB,CACA,e,CAEA,mB,CAAA,mB,CAAA,Y,CACA,W,CACA,wB,CAEA,oCAVF,c,CAWI,mB,CACA,YAGF,2B,CACE,wB,CAEA,oCAHF,2B,CAII,qBAIJ,oB,CACE,iB,CAEA,S,CACA,U,CACA,W,CAEA,kB,CAGF,oB,CACE,iB,CAEA,iB,CAEA,c,CAEA,yB,CACE,e,CACA,a,CAKF,6C,CA+BA,0C,CA9BE,iB,CACA,K,CACA,M,CAEA,U,CACA,W,CAEA,0B,CAEA,kC,CAAA,0B,CAEA,qD,CAgCA,kD,CACE,U,CACA,iB,CACA,O,CACA,Q,CAEA,U,CACA,W,CAKA,sC,CAAA,kC,CAAA,8B,CA5CF,qD,CASE,4B,CAIA,4C,CAAA,oC,CAMJ,0C,CAQE,wB,CACA,iB,CAIA,kD,CASE,iB,CAEA,iB,CAGA,iC,CAAA,yB,CAKN,iD,CACE,0B,CAEA,yD,CACE,wB,CAKF,oC,CACE,a,CAIJ,6B,CACE,iB,CACA,O,CACA,W,CAEA,wC,CACE,S,CAGF,sC,CACE,a,CRtIN,c,CACE,iB,CAEA,W,CACA,mB,CACA,e,CAEA,oCAPF,c,CAQI,kB,CACA,YAGF,qB,CACE,iB,CACA,O,CACA,S,CAEA,kC,CAAA,8B,CAAA,0B,CAEA,8D,CAAA,8C,CAAA,yE,CAEA,mB,CAEA,oCAXF,qB,CAYI,8C,CAAA,0C,CAAA,wCAIJ,2B,CACE,iB,CACA,O,CACA,S,CAEA,kC,CAAA,8B,CAAA,0B,CAEA,8D,CAAA,8C,CAAA,yE,CAEA,mB,CAEA,oCAXF,2B,CAYI,8C,CAAA,0C,CAAA,wCAqBJ,sB,CACE,mB,CAAA,mB,CAAA,Y,CACA,wB,CAAA,qB,CAAA,kB,CACA,U,CACA,W,CACA,gB,CAEA,4B,CACA,+B,CACA,iB,CACA,S,CACA,c,CAEA,kC,CAAA,0B,CAEA,4B,CACE,+B,CAGF,4B,CACE,+B,CAGF,+B,CACE,mB,CACA,U,CAIJ,oB,CACE,iB,CACA,W,CACA,S,CAEA,U,CACA,gB,CACA,Q,CACA,S,CACA,e,CAEA,e,CAEA,qB,CACA,qB,CACA,kC,CAAA,8B,CAAA,0B,CACA,iB,CACA,S,CAEA,uD,CAAA,+C,CAGF,oB,CACE,W,CAEA,S,CACA,c,CAEA,4C,CAAA,oC,CAEA,wC,CACE,+B,CAEA,qBACE,mDAAA,e,CACE,iCAIJ,4D,CACE,+B,CAIJ,qBACE,+BAAA,e,CACE,iCAIJ,wC,CACE,+B,CAIJ,qB,CACE,iB,CACA,Y,CACA,M,CAEA,a,CAEA,S,CAEA,mC,CAAA,2B,CAGF,oB,CACE,c,CACA,gB,CACA,mB,CAAA,a,CACA,S,CACA,e,CAEA,e,CACA,kB,CACA,sB,CAEA,S,CAEA,uC,CAAA,+B,CAOF,oB,CACE,mB,CAAA,a,CACA,U,CACA,W,CACA,gB,CAEA,qB,CAEA,6C,CAAA,6B,CAAA,wD,CAEA,qE,CAAA,6D,CAGF,0B,CACE,mB,CShKF,uD,CTkKE,+C,CACE,Y,CAKF,2C,CACE,W,CACA,K,CACA,gD,CAAA,4C,CAAA,wC,CAKF,2C,CACE,kB,CACA,S,CAGF,2C,CACE,gC,CAAA,4B,CAAA,wB,CAGF,4C,CACE,S,CAKF,6C,CACE,S,CAGF,8C,CAIA,oD,CAHE,S,CASF,+C,CACE,S,CAGF,gD,CACE,wB,CAEA,sD,CAAA,sD,CAEE,mC,CAiBJ,iD,CAgBA,qD,CAAA,uD,CAfE,+C,CAAA,2C,CAAA,uC,CACA,S,CAGF,yD,CAIA,2D,CAYA,oD,CAAA,sD,CAfE,S,CAoBJ,6B,CHnRA,uB,CGoRE,iB,CACA,O,CACA,W,CAEA,wC,CACE,S,CAGF,sC,CACE,a,CU1SN,M,CACE,iB,CACA,a,CACA,Y,CAEA,c,CACE,iB,CACA,gH,CAEA,Y,CACA,Y,CAEA,U,CAWJ,qB,CAPA,a,CAQE,iB,CACA,2B,CAAA,gB,CAAA,O,CATF,a,CAGE,Q,CACA,U,CAGF,qB,CAGE,Q,CACA,W,CACA,yB,CACA,c,CACA,e,CACA,kB,CACA,oB,CACA,iB,CACA,U,CClCF,M,CACE,a,CACA,Y,CACA,6B,CASF,Y,CANA,e,CAOE,mB,CAAA,mB,CAAA,Y,CAPF,e,CAEE,wB,CAAA,qB,CAAA,6B,CACA,kB,CAGF,Y,CAEE,2B,CAAA,4B,CAAA,yB,CAAA,qB,CACA,qB,CAAA,kB,CAAA,oB,CACA,gB,CAcF,gB,CAVA,a,CACE,4C,CACA,c,CACA,e,CACA,iB,CACA,oB,CACA,U,CACA,mB,CAGF,gB,CACE,2B,CAAA,iB,CAAA,Q,CACA,uB,CACA,c,CAEA,kB,CACA,qB,CAEA,gB,CACA,iB,CACA,mB,CACA,kB,CAGF,mB,CACE,iB,CACA,S,CACA,W,CACA,iD,CACA,e,CACA,c,CACA,e,CACA,U,CACA,oB,CAGF,gB,CACE,iB,CACA,mB,CC1DF,O,CACE,6B,CAAA,qB,CACA,oB,CACA,iB,CACA,oB,CACA,iD,CACA,e,CACA,c,CACA,kB,CACA,U,CACA,4B,CACA,qB,CACA,wB,CACA,c,CCbF,I,CACE,a,CACA,Y,CACA,8B,CAQF,U,CALA,a,CAME,mB,CAAA,mB,CAAA,Y,CANF,a,CAEE,wB,CAAA,qB,CAAA,6B,CAGF,U,CAEE,2B,CAAA,4B,CAAA,yB,CAAA,qB,CACA,gB,CACA,kB,CAGF,W,CACE,4C,CACA,c,CACA,e,CACA,kB,CACA,qB,CACA,a,CACA,kB,CAaF,iB,CAVA,c,CAWE,iD,CAGA,e,CACA,a,CAfF,c,CAEE,c,CACA,e,CAGA,mB,CACA,mB,CAGF,iB,CAEE,c,CACA,e,CAIA,2B,CACE,kB,CAIJ,mB,CC9BA,sC,CD+BE,iB,CAGF,W,CACE,iB,CACA,iB,CAIF,kB,CACE,iB,CACA,W,CACA,Y,CACA,Q,CACA,U,CACA,4B,CACA,iB,CACA,Q,CAGF,kB,CACE,gC,CAAA,4B,CAAA,wB,CAGF,mB,CACE,iB,CACA,K,CACA,S,CACA,W,CACA,Y,CChFF,kB,CACE,e,CAgCF,4B,ChBmqEA,2D,CgBxrEI,2D,ChByrEJ,2D,CAPA,oD,CgB1rEI,oD,ChB2rEJ,oD,CgBxrEM,uB,CAAA,e,CAiBN,mB,CACE,iB,CAEA,iB,CACA,S,CAEA,6D,CAAA,qD,CAGF,4B,CACE,e,CACA,kB,CACA,S,CAKF,6B,CACE,S,CAEA,kB,CACA,S,CjB7CF,K,CACE,c,CAGF,e,CACE,iB,CACA,mB,CAAA,mB,CAAA,Y,CACA,wB,CAAA,qB,CAAA,6B,CAEA,mB,CACA,kB,CACA,W,CAEA,uB,CAEE,Q,CAEA,M,CACA,U,CACA,qC,CACA,U,CAGF,oCAnBF,e,CAoBI,kB,CAAA,gBAIJ,c,CACE,iB,CACA,mB,CAAA,mB,CAAA,Y,CACA,wB,CACA,c,CACA,U,CACA,c,CACA,uB,CAAA,oB,CAAA,sB,CACA,S,CAEA,qCAVF,c,CAWI,a,CACA,c,AAGF,oCAfF,c,CAgBI,gB,CACA,Y,CACA,WAGF,wB,CACE,S,CACA,mB,CAEA,gC,CACE,iB,CACA,Y,CACA,O,CACA,M,CACA,U,CACA,wB,CACA,U,CAKN,a,CACE,iD,CACA,c,CACA,e,CACA,e,CACA,a,CACA,mB,CACA,qB,CACA,Q,CAGF,c,CACE,kB,CACA,6B,CAAA,qB,CAGF,c,CACE,U,CAEA,oCAHF,c,CAII,c,AAMA,qBAAA,Y,CACE,e,CAKN,2B,CACE,Y,CAGF,2B,CACE,W,CACA,e,CACA,iB,CAGF,U,CACE,gB,CAAA,Y,CACA,0B,CAAA,+B,CACA,Q,CAGF,iB,CAWA,e,CAGE,mB,CAAA,mB,CAAA,Y,CAdF,iB,CAEE,2B,CAAA,4B,CAAA,yB,CAAA,qB,CAEA,sB,CACE,4B,CACA,kC,CACA,kB,CAIJ,e,CACE,gB,CACA,mB,CAEA,uB,CAAA,oB,CAAA,sB,CACA,iD,CACA,c,CACA,e,CACA,a,CACA,a,CAEA,yB,CACE,Q,CACA,+D,CACA,U,CAGF,qB,CAAA,qB,CAEE,oB,CAGF,uB,CACE,uB,CkBnJJ,e,CACE,iB,CACA,a,CACA,Y,CACA,iB,CACA,mB,CACA,wB,CAGF,sB,CACE,4C,CACA,c,CACA,e,CACA,kB,CACA,qB,CACA,a,CACA,mB,CACA,iB,CAGF,sB,CACE,iB,CACA,W,CACA,a,CCvBF,Y,CACE,gB,CAAA,Y,CACA,4B,CAAA,iC,CACA,Q,CACA,a,CACA,e,CACA,oB,CACA,Y,CAGF,Y,CACE,6B,CAAA,qB,CACA,4B,CACA,mB,CAAA,mB,CAAA,Y,CACA,2B,CAAA,4B,CAAA,yB,CAAA,qB,CACA,iB,CACA,wB,CAAA,qB,CAAA,kB,CAIA,sB,CACA,qB,CAEA,qB,CACE,8D,CAAA,2D,CACA,oB,CAEA,sC,CACE,Q,CACA,+D,CACA,U,CACA,iB,CAKN,a,CACE,iD,CACA,e,CACA,c,CACA,e,CACA,a,CACA,kB,CAGF,mB,CASA,a,CAUA,oB,CACE,iD,CAGA,e,CAvBF,mB,CAEE,e,CACA,c,CAEA,a,CACA,kB,CAGF,a,CAUA,oB,CAEE,e,CAZF,a,CAGE,c,CAEA,a,CACA,gB,CACA,kB,CAGF,oB,CAGE,e,CAEA,a,CAGF,gB,CACE,a,CACA,c,CACA,e,CACA,oB,CACA,wB,CACA,iB,CC9EF,Y,CACE,a,CACA,Y,CACA,iB,CACA,oB,CAGF,qB,CACE,gB,CAAA,Y,CACA,2B,CAAA,gC,CAGF,oB,CACE,qB,CAGF,kB,CACE,6B,CAAA,qB,CACA,mB,CAAA,mB,CAAA,Y,CACA,2B,CAAA,4B,CAAA,yB,CAAA,qB,CAIA,2B,CACA,wB,CAGF,mB,CACE,gB,CAAA,Y,CACA,2B,CAAA,gC,CACA,Q,CAGF,mB,CACE,4C,CACA,e,CACA,c,CACA,e,CACA,U,CACA,qB,CACA,wB,CACA,mB,CACA,iB,CAGF,yB,CACE,iD,CACA,e,CACA,c,CACA,e,CACA,mB,CACA,U,CACA,mB,CAGF,8B,CACE,c,CACA,c,CAGF,uB,CACA,mB,CAAA,mB,CAAA,Y,CACA,2B,CAAA,4B,CAAA,yB,CAAA,qB,CACA,Q,CAGA,wB,CACE,e,CACA,iD,CACA,e,CACA,c,CACA,e,CACA,U,CACA,mB,CAGF,0B,CACE,iB,CACA,mB,CAAA,mB,CAAA,Y,CACA,wB,CAAA,qB,CAAA,kB,CACA,O,CAEA,kC,CACE,iB,CACA,O,CACA,O,CACA,M,CACA,U,CACA,qB,CACA,U,CAIJ,kB,CACE,iD,CACA,e,CACA,c,CACA,e,CACA,U,CAGF,wB,CACE,c,CCtGF,Q,CACE,iB,CACA,a,CACA,Y,CACA,oB,CAGF,e,CACE,4C,CACA,c,CACA,e,CACA,kB,CACA,qB,CACA,a,CACA,kB,CACA,mB,CAGF,gB,CACE,Y,CACA,a,CAGF,4B,CACE,S,CAGF,4B,CACE,U,CpB6nFF,4B,CoB1nFA,4B,CAEE,U,CACA,W,CACA,4B,CACA,4B,CACA,iB,CpB6nFF,0C,CADA,kC,CoB1nFE,0C,CAAA,kC,CAEE,oB,CpB6nFJ,mC,CoB1nFE,mC,CACE,wB,CACA,oB,CpB8nFJ,0C,CoB5nFI,0C,CAEE,U,CpB8nFN,4C,CoB1nFE,4C,CACE,U,CpB8nFJ,mC,CoB1nFA,mC,CAEE,a,CACA,c,CAGF,2C,CACE,Y,CAGF,qB,CACE,iB,CACA,Q,CACA,gB,CACA,W,CACA,U,CACA,oB,CACA,S,CAGF,2B,CACE,mB,CAAA,mB,CAAA,Y,CACA,2B,CAAA,4B,CAAA,yB,CAAA,qB,CACA,wB,CAAA,qB,CAAA,kB,CACA,iB,CACA,K,CACA,M,CACA,O,CACA,Q,CACA,6B,CACA,S,CACA,qC,CAAA,6B,CAEA,iC,CACE,S,CAIJ,wB,CACE,iD,CACA,c,CACA,e,CACA,e,CACA,a,CACA,gB,CACA,mB,CAGF,oB,CACE,Q,CAEA,kB,CAGF,oB,CACE,iD,CACA,c,CACA,e,CACA,e,CACA,U,CACA,oB,CACA,mB,CCxHF,W,CACE,a,CACA,wB,CAGF,oB,CAIE,yB,CAGF,kB,CACE,4C,CACA,c,CACA,e,CACA,kB,CACA,qB,CACA,a,CACA,iB,CACA,kB,CAGF,iB,CACE,Q,CACA,S,CACA,oB,CACA,gB,CAAA,Y,CACA,8B,CAAA,mC,CACA,uB,CAAA,oB,CAAA,e,CACA,a,CC9BF,U,CACE,iB,CACA,mB,CAAA,mB,CAAA,Y,CACA,Q,CACA,gB,CAEA,eAAA,8B,CACE,iB,CACA,Y,CACA,O,CACA,M,CACA,U,CACA,wB,CACA,U,CACA,U,CAGF,kB,CACE,iB,CAAA,sB,CAAA,e,CACA,c,CAAA,mB,CAAA,Y,CACA,e,CACA,iB,CACA,2B,CAAA,4B,CAAA,yB,CAAA,qB,CACA,wB,CACA,iB,CACA,gB,CACA,c,CACA,K,CAIJ,0B,CACE,iB,CAGF,kB,CACE,iD,CACA,c,CACA,e,CACA,e,CACA,wB,CACA,+D,CACA,4B,CAAA,oB,CACA,mC,CAEA,0B,CACE,c,CACA,e,CACA,qB,CACA,qB,CACA,kB,CAIJ,uB,CAWA,iB,CAGE,iD,CAGA,e,CAjBF,uB,CACE,iB,CACA,U,CAEA,c,CACA,e,CAEA,mB,CACA,a,CAGF,iB,CACE,gB,CACA,kB,CAEA,c,CACA,e,CAEA,oB,CACA,a,CAEA,yB,CAEE,U,CACA,c,CACA,mB,CACA,gB,CAIJ,uB,CACE,iD,CACA,c,CACA,e,CACA,e,CACA,a,CAEA,+B,CACE,U,CC5FJ,W,CACE,a,CAGF,oB,CAIE,yB,CAGF,kB,CACE,4C,CACA,c,CACA,e,CACA,kB,CACA,qB,CACA,a,CACA,iB,CACA,kB,CAGF,iB,CACE,Q,CACA,S,CACA,oB,CACA,gB,CAAA,Y,CACA,wB,CAAA,6B,CACA,Q,CC5BF,U,CACE,iB,CACA,6B,CAAA,qB,CACA,4B,CACA,8D,CAAA,2D,CACA,oB,CAEA,e,CACE,S,CACA,c,CAAA,mB,CAAA,Y,CACA,mB,CAAA,mB,CAAA,Y,CACA,Q,CAIJ,gB,CACE,iB,CACA,wB,CAGF,iB,CACE,iD,CACA,c,CACA,e,CACA,e,CACA,a,CACA,kB,CAEA,sB,CACE,c,CACA,U,CAaJ,uB,CATA,iB,CACE,iD,CACA,c,CACA,e,CACA,e,CACA,U,CACA,mB,CAGF,uB,CAEE,c,CACA,e,CACA,e,CACA,a,CACA,oB,CACA,mB,CAEA,4B,CACE,oB,CACA,U,CACA,c,CACA,oB,CAIJ,gB,CACE,iD,CACA,c,CACA,e,CACA,e,CACA,a,CACA,mB,CACA,wB,CACA,+B,CAEA,qB,CACE,c,CACA,U,CACA,4B,CCzEJ,2D,CACE,e,CAGF,8D,CACE,uB,CAAA,e,CAGF,wB,CACE,Y,CACA,iC,CAAA,yB,CACA,e,CdXF,U,CAEE,kB,CAEA,qB,CACE,S,CACA,a,CAGF,8B,CACE,iB,CACA,e,CAEA,sC,CACE,iB,CACA,U,CACA,M,CACA,O,CACA,Y,CACA,U,CACA,kC,CAIJ,mB,CACE,iB,CACA,kB,CACA,gB,CACA,sC,CAOF,kB,CACE,U,CACA,Y,CACA,c,CACA,Q,CACA,4B,CAGF,mB,CACE,gB,CAIJ,kB,CACE,iB,CACA,O,CACA,Q,CACA,U,CACA,W,CACA,wB,CACA,iB,CAWA,yB,CATA,0B,CACE,iB,CACA,U,CACA,U,CACA,U,CACA,S,CACA,Q,CACA,wB,CAEF,yB,CAQE,+B,CAAA,2B,CAAA,uB,CAGF,wB,CAAA,wB,CAEE,wB,CAEA,+B,CAAA,gC,CAAA,+B,CAAA,gC,CAEE,qB,CAIJ,2B,CACE,U,CAcJ,uB,CAVA,iB,CAWE,iD,CAIA,a,CAfF,iB,CACE,e,CAEA,c,CACA,e,CACA,e,CAEA,mB,CAGF,uB,CAEE,c,CACA,e,CACA,e,Ce1GF,I,CACE,a,CACA,wB,CAGF,a,CAIE,wB,CAGF,W,CACE,4C,CACA,c,CACA,e,CACA,kB,CACA,qB,CACA,a,CACA,mB,CCnBF,Q,CACE,a,CACA,Y,CAGF,iB,CAIE,yB,CAIF,e,CACE,iB,CACA,4C,CACA,c,CACA,e,CACA,kB,CACA,qB,CACA,a,CACA,mB,CAGF,uB,CACE,e,CACA,a,CACA,iB,CACA,mB,CAAA,mB,CAAA,Y,CACA,Q,CACA,wB,CACA,8C,CAAA,sC,CAGF,4B,CACE,U,CAGF,4B,CACE,W,C3BmoGF,4B,C2BhoGA,4B,CAEE,U,CACA,W,CACA,4B,CACA,4B,CACA,iB,C3BmoGF,0C,CADA,kC,C2BhoGE,0C,CAAA,kC,CAEE,oB,C3BmoGJ,mC,C2BhoGE,mC,CACE,wB,CACA,oB,C3BooGJ,0C,C2BloGI,0C,CAEE,U,C3BooGN,4C,C2BhoGE,4C,CACE,U,C3BooGJ,mC,C2BhoGA,mC,CAEE,c,CACA,a,CAGF,gB,CACE,yB,CAAA,qB,CACA,e,CAYF,2B,CATA,qB,CAUE,iD,CAGA,e,CACA,U,CAdF,qB,CAEE,c,CACA,e,CAGA,mB,CAGF,2B,CAEE,c,CACA,e,CAGA,oB","file":"style.min.css","sourcesContent":["/* stylelint-disable */\n/**\n * Swiper 7.4.1\n * Most modern mobile touch slider and framework with hardware accelerated transitions\n * https://swiperjs.com\n *\n * Copyright 2014-2021 Vladimir Kharlampidi\n *\n * Released under the MIT License\n *\n * Released on: December 24, 2021\n */\n\n@font-face {\n font-family: 'swiper-icons';\n src: url('data:application/font-woff;charset=utf-8;base64, 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');\n font-weight: 400;\n font-style: normal;\n}\n\n:root {\n --swiper-theme-color: #afafaf;\n}\n\n.swiper {\n margin-left: auto;\n margin-right: auto;\n position: relative;\n overflow: hidden;\n list-style: none;\n\n padding: 0;\n /* Fix of Webkit flickering */\n z-index: 1;\n}\n\n.swiper-vertical>.swiper-wrapper {\n flex-direction: column;\n}\n\n.swiper-wrapper {\n position: relative;\n width: 100%;\n height: 100%;\n z-index: 1;\n display: flex;\n transition-property: transform;\n box-sizing: content-box;\n}\n\n.swiper-android .swiper-slide,\n.swiper-wrapper {\n transform: translate3d(0px, 0, 0);\n}\n\n.swiper-pointer-events {\n touch-action: pan-y;\n}\n\n.swiper-pointer-events.swiper-vertical {\n touch-action: pan-x;\n}\n\n.swiper-slide {\n flex-shrink: 0;\n width: 100%;\n height: 100%;\n position: relative;\n transition-property: transform;\n}\n\n.swiper-slide-invisible-blank {\n visibility: hidden;\n}\n\n/* Auto Height */\n.swiper-autoheight,\n.swiper-autoheight .swiper-slide {\n height: auto;\n}\n\n.swiper-autoheight .swiper-wrapper {\n align-items: flex-start;\n transition-property: transform, height;\n}\n\n/* 3D Effects */\n.swiper-3d,\n.swiper-3d.swiper-css-mode .swiper-wrapper {\n perspective: 1200px;\n}\n\n.swiper-3d .swiper-wrapper,\n.swiper-3d .swiper-slide,\n.swiper-3d .swiper-slide-shadow,\n.swiper-3d .swiper-slide-shadow-left,\n.swiper-3d .swiper-slide-shadow-right,\n.swiper-3d .swiper-slide-shadow-top,\n.swiper-3d .swiper-slide-shadow-bottom,\n.swiper-3d .swiper-cube-shadow {\n transform-style: preserve-3d;\n}\n\n.swiper-3d .swiper-slide-shadow,\n.swiper-3d .swiper-slide-shadow-left,\n.swiper-3d .swiper-slide-shadow-right,\n.swiper-3d .swiper-slide-shadow-top,\n.swiper-3d .swiper-slide-shadow-bottom {\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n z-index: 10;\n}\n\n.swiper-3d .swiper-slide-shadow {\n background: rgba(0, 0, 0, 0.15);\n}\n\n.swiper-3d .swiper-slide-shadow-left {\n background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n\n.swiper-3d .swiper-slide-shadow-right {\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n\n.swiper-3d .swiper-slide-shadow-top {\n background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n\n.swiper-3d .swiper-slide-shadow-bottom {\n background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n\n/* CSS Mode */\n.swiper-css-mode>.swiper-wrapper {\n overflow: auto;\n scrollbar-width: none;\n /* For Firefox */\n -ms-overflow-style: none;\n /* For Internet Explorer and Edge */\n}\n\n.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {\n display: none;\n}\n\n.swiper-css-mode>.swiper-wrapper>.swiper-slide {\n scroll-snap-align: start start;\n}\n\n.swiper-horizontal.swiper-css-mode>.swiper-wrapper {\n scroll-snap-type: x mandatory;\n}\n\n.swiper-vertical.swiper-css-mode>.swiper-wrapper {\n scroll-snap-type: y mandatory;\n}\n\n.swiper-centered>.swiper-wrapper::before {\n content: '';\n flex-shrink: 0;\n order: 9999;\n}\n\n.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {\n margin-inline-start: var(--swiper-centered-offset-before);\n}\n\n.swiper-centered.swiper-horizontal>.swiper-wrapper::before {\n height: 100%;\n min-height: 1px;\n width: var(--swiper-centered-offset-after);\n}\n\n.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {\n margin-block-start: var(--swiper-centered-offset-before);\n}\n\n.swiper-centered.swiper-vertical>.swiper-wrapper::before {\n width: 100%;\n min-width: 1px;\n height: var(--swiper-centered-offset-after);\n}\n\n.swiper-centered>.swiper-wrapper>.swiper-slide {\n scroll-snap-align: center center;\n}\n\n.swiper-virtual.swiper-css-mode .swiper-wrapper::after {\n content: '';\n position: absolute;\n left: 0;\n top: 0;\n pointer-events: none;\n}\n\n.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {\n height: 1px;\n width: var(--swiper-virtual-size);\n}\n\n.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {\n width: 1px;\n height: var(--swiper-virtual-size);\n}\n\n:root {\n --swiper-navigation-size: 44px;\n /*\n --swiper-navigation-color: var(--swiper-theme-color);\n */\n}\n\n.swiper-button-prev,\n.swiper-button-next {\n position: absolute;\n top: 50%;\n width: calc(var(--swiper-navigation-size) / 42 * 27);\n height: var(--swiper-navigation-size);\n margin-top: calc(0px - (var(--swiper-navigation-size) / 2));\n z-index: 10;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--swiper-navigation-color, var(--swiper-theme-color));\n}\n\n.swiper-button-prev.swiper-button-disabled,\n.swiper-button-next.swiper-button-disabled {\n opacity: 0.35;\n cursor: auto;\n pointer-events: none;\n}\n\n.swiper-button-prev:after,\n.swiper-button-next:after {\n font-family: swiper-icons;\n font-size: var(--swiper-navigation-size);\n text-transform: none !important;\n letter-spacing: 0;\n text-transform: none;\n font-variant: initial;\n line-height: 1;\n}\n\n.swiper-button-prev,\n.swiper-rtl .swiper-button-next {\n left: 10px;\n right: auto;\n}\n\n.swiper-button-prev:after,\n.swiper-rtl .swiper-button-next:after {\n content: 'prev';\n}\n\n.swiper-button-next,\n.swiper-rtl .swiper-button-prev {\n right: 10px;\n left: auto;\n}\n\n.swiper-button-next:after,\n.swiper-rtl .swiper-button-prev:after {\n content: 'next';\n}\n\n.swiper-button-lock {\n display: none;\n}\n\n// :root {\n/*\n --swiper-pagination-color: var(--swiper-theme-color);\n --swiper-pagination-bullet-size: 8px;\n --swiper-pagination-bullet-width: 8px;\n --swiper-pagination-bullet-height: 8px;\n --swiper-pagination-bullet-inactive-color: #000;\n --swiper-pagination-bullet-inactive-opacity: 0.2;\n --swiper-pagination-bullet-opacity: 1;\n --swiper-pagination-bullet-horizontal-gap: 4px;\n --swiper-pagination-bullet-vertical-gap: 6px;\n */\n// }\n.swiper-pagination {\n position: absolute;\n text-align: center;\n transition: 300ms opacity;\n transform: translate3d(0, 0, 0);\n z-index: 10;\n}\n\n.swiper-pagination.swiper-pagination-hidden {\n opacity: 0;\n}\n\n/* Common Styles */\n.swiper-pagination-fraction,\n.swiper-pagination-custom,\n.swiper-horizontal>.swiper-pagination-bullets,\n.swiper-pagination-bullets.swiper-pagination-horizontal {\n bottom: 10px;\n left: 0;\n width: 100%;\n}\n\n/* Bullets */\n.swiper-pagination-bullets-dynamic {\n overflow: hidden;\n font-size: 0;\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n transform: scale(0.33);\n position: relative;\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {\n transform: scale(1);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {\n transform: scale(1);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {\n transform: scale(0.66);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {\n transform: scale(0.33);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {\n transform: scale(0.66);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {\n transform: scale(0.33);\n}\n\n.swiper-pagination-bullet {\n width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));\n height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));\n display: inline-block;\n border-radius: 50%;\n background: var(--swiper-pagination-bullet-inactive-color, #000);\n opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);\n}\n\nbutton.swiper-pagination-bullet {\n border: none;\n margin: 0;\n padding: 0;\n box-shadow: none;\n -webkit-appearance: none;\n appearance: none;\n}\n\n.swiper-pagination-clickable .swiper-pagination-bullet {\n cursor: pointer;\n}\n\n.swiper-pagination-bullet:only-child {\n display: none !important;\n}\n\n.swiper-pagination-bullet-active {\n opacity: var(--swiper-pagination-bullet-opacity, 1);\n background: var(--swiper-pagination-color, var(--swiper-theme-color));\n}\n\n.swiper-vertical>.swiper-pagination-bullets,\n.swiper-pagination-vertical.swiper-pagination-bullets {\n right: 10px;\n top: 50%;\n transform: translate3d(0px, -50%, 0);\n}\n\n.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet,\n.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {\n margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;\n display: block;\n}\n\n.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,\n.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {\n top: 50%;\n transform: translateY(-50%);\n width: 8px;\n}\n\n.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,\n.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n display: inline-block;\n transition: 200ms transform, 200ms top;\n}\n\n.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,\n.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {\n margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);\n}\n\n.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,\n.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {\n left: 50%;\n transform: translateX(-50%);\n white-space: nowrap;\n}\n\n.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,\n.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n transition: 200ms transform, 200ms left;\n}\n\n.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n transition: 200ms transform, 200ms right;\n}\n\n/* Progress */\n.swiper-pagination-progressbar {\n background: rgba(0, 0, 0, 0.25);\n position: absolute;\n}\n\n.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {\n background: var(--swiper-pagination-color, var(--swiper-theme-color));\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n transform: scale(0);\n transform-origin: left top;\n}\n\n.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {\n transform-origin: right top;\n}\n\n.swiper-horizontal>.swiper-pagination-progressbar,\n.swiper-pagination-progressbar.swiper-pagination-horizontal,\n.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,\n.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {\n width: 100%;\n height: 4px;\n left: 0;\n top: 0;\n}\n\n.swiper-vertical>.swiper-pagination-progressbar,\n.swiper-pagination-progressbar.swiper-pagination-vertical,\n.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,\n.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {\n width: 4px;\n height: 100%;\n left: 0;\n top: 0;\n}\n\n.swiper-pagination-lock {\n display: none;\n}\n\n/* Scrollbar */\n.swiper-scrollbar {\n border-radius: 10px;\n position: relative;\n // -ms-touch-action: none;\n background: rgba(0, 0, 0, 0.1);\n}\n\n.swiper-horizontal>.swiper-scrollbar {\n position: absolute;\n left: 1%;\n bottom: 3px;\n z-index: 50;\n height: 5px;\n width: 98%;\n}\n\n.swiper-vertical>.swiper-scrollbar {\n position: absolute;\n right: 3px;\n top: 1%;\n z-index: 50;\n width: 5px;\n height: 98%;\n}\n\n.swiper-scrollbar-drag {\n height: 100%;\n width: 100%;\n position: relative;\n background: rgba(0, 0, 0, 0.5);\n border-radius: 10px;\n left: 0;\n top: 0;\n}\n\n.swiper-scrollbar-cursor-drag {\n cursor: move;\n}\n\n.swiper-scrollbar-lock {\n display: none;\n}\n\n.swiper-zoom-container {\n width: 100%;\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n text-align: center;\n}\n\n.swiper-zoom-container>img,\n.swiper-zoom-container>svg,\n.swiper-zoom-container>canvas {\n max-width: 100%;\n max-height: 100%;\n object-fit: contain;\n}\n\n.swiper-slide-zoomed {\n cursor: move;\n}\n\n/* Preloader */\n// :root {\n/*\n --swiper-preloader-color: var(--swiper-theme-color);\n */\n// }\n.swiper-lazy-preloader {\n width: 42px;\n height: 42px;\n position: absolute;\n left: 50%;\n top: 50%;\n margin-left: -21px;\n margin-top: -21px;\n z-index: 10;\n transform-origin: 50%;\n animation: swiper-preloader-spin 1s infinite linear;\n box-sizing: border-box;\n border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));\n border-radius: 50%;\n border-top-color: transparent;\n}\n\n.swiper-lazy-preloader-white {\n --swiper-preloader-color: #fff;\n}\n\n.swiper-lazy-preloader-black {\n --swiper-preloader-color: #000;\n}\n\n@keyframes swiper-preloader-spin {\n 100% {\n transform: rotate(360deg);\n }\n}\n\n/* a11y */\n.swiper .swiper-notification {\n position: absolute;\n left: 0;\n top: 0;\n pointer-events: none;\n opacity: 0;\n z-index: -1000;\n}\n\n.swiper-free-mode>.swiper-wrapper {\n transition-timing-function: ease-out;\n margin: 0 auto;\n}\n\n.swiper-grid>.swiper-wrapper {\n flex-wrap: wrap;\n}\n\n.swiper-grid-column>.swiper-wrapper {\n flex-wrap: wrap;\n flex-direction: column;\n}\n\n.swiper-fade.swiper-free-mode .swiper-slide {\n transition-timing-function: ease-out;\n}\n\n.swiper-fade .swiper-slide {\n pointer-events: none;\n transition-property: opacity;\n}\n\n.swiper-fade .swiper-slide .swiper-slide {\n pointer-events: none;\n}\n\n.swiper-fade .swiper-slide-active,\n.swiper-fade .swiper-slide-active .swiper-slide-active {\n pointer-events: auto;\n}\n\n.swiper-cube {\n overflow: visible;\n}\n\n.swiper-cube .swiper-slide {\n pointer-events: none;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n z-index: 1;\n visibility: hidden;\n transform-origin: 0 0;\n width: 100%;\n height: 100%;\n}\n\n.swiper-cube .swiper-slide .swiper-slide {\n pointer-events: none;\n}\n\n.swiper-cube.swiper-rtl .swiper-slide {\n transform-origin: 100% 0;\n}\n\n.swiper-cube .swiper-slide-active,\n.swiper-cube .swiper-slide-active .swiper-slide-active {\n pointer-events: auto;\n}\n\n.swiper-cube .swiper-slide-active,\n.swiper-cube .swiper-slide-next,\n.swiper-cube .swiper-slide-prev,\n.swiper-cube .swiper-slide-next+.swiper-slide {\n pointer-events: auto;\n visibility: visible;\n}\n\n.swiper-cube .swiper-slide-shadow-top,\n.swiper-cube .swiper-slide-shadow-bottom,\n.swiper-cube .swiper-slide-shadow-left,\n.swiper-cube .swiper-slide-shadow-right {\n z-index: 0;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n}\n\n.swiper-cube .swiper-cube-shadow {\n position: absolute;\n left: 0;\n bottom: 0px;\n width: 100%;\n height: 100%;\n opacity: 0.6;\n z-index: 0;\n}\n\n.swiper-cube .swiper-cube-shadow:before {\n content: '';\n background: #000;\n position: absolute;\n left: 0;\n top: 0;\n bottom: 0;\n right: 0;\n filter: blur(50px);\n}\n\n.swiper-flip {\n overflow: visible;\n}\n\n.swiper-flip .swiper-slide {\n pointer-events: none;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n z-index: 1;\n}\n\n.swiper-flip .swiper-slide .swiper-slide {\n pointer-events: none;\n}\n\n.swiper-flip .swiper-slide-active,\n.swiper-flip .swiper-slide-active .swiper-slide-active {\n pointer-events: auto;\n}\n\n.swiper-flip .swiper-slide-shadow-top,\n.swiper-flip .swiper-slide-shadow-bottom,\n.swiper-flip .swiper-slide-shadow-left,\n.swiper-flip .swiper-slide-shadow-right {\n z-index: 0;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n}\n\n.swiper-creative .swiper-slide {\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n overflow: hidden;\n transition-property: transform, opacity, height;\n}\n\n.swiper-cards {\n overflow: visible;\n}\n\n.swiper-cards .swiper-slide {\n transform-origin: center bottom;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n overflow: hidden;\n}\n","/* stylelint-disable */\n/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n* Remove the margin in all browsers.\n*/\n\nbody {\n margin: 0;\n}\n\n/**\n* Render the `main` element consistently in IE.\n*/\n\nmain {\n display: block;\n}\n\n/**\n* Correct the font size and margin on `h1` elements within `section` and\n* `article` contexts in Chrome, Firefox, and Safari.\n*/\n\nh1 {\n margin: 0.67em 0;\n\n font-size: 2em;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n* 1. Add the correct box sizing in Firefox.\n* 2. Show the overflow in Edge and IE.\n*/\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n* 1. Correct the inheritance and scaling of font size in all browsers.\n* 2. Correct the odd `em` font sizing in all browsers.\n*/\n\npre {\n font-size: 1em; /* 2 */\n font-family: monospace, monospace; /* 1 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n* Remove the gray background on active links in IE 10.\n*/\n\na {\n background-color: transparent;\n}\n\n/**\n* 1. Remove the bottom border in Chrome 57-\n* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n*/\n\nabbr[title] {\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n\n border-bottom: none; /* 1 */\n}\n\n/**\n* Add the correct font weight in Chrome, Edge, and Safari.\n*/\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n* 1. Correct the inheritance and scaling of font size in all browsers.\n* 2. Correct the odd `em` font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp {\n font-size: 1em; /* 2 */\n font-family: monospace, monospace; /* 1 */\n}\n\n/**\n* Add the correct font size in all browsers.\n*/\n\nsmall {\n font-size: 80%;\n}\n\n/**\n* Prevent `sub` and `sup` elements from affecting the line height in\n* all browsers.\n*/\n\nsub,\nsup {\n position: relative;\n\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n* Remove the border on images inside links in IE 10.\n*/\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n* 1. Change the font styles in all browsers.\n* 2. Remove the margin in Firefox and Safari.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n margin: 0; /* 2 */\n\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n font-family: inherit; /* 1 */\n}\n\n/**\n* Show the overflow in IE.\n* 1. Show the overflow in Edge.\n*/\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n* Remove the inheritance of text transform in Edge, Firefox, and IE.\n* 1. Remove the inheritance of text transform in Firefox.\n*/\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n* Correct the inability to style clickable types in iOS and Safari.\n*/\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n* Remove the inner border and padding in Firefox.\n*/\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n padding: 0;\n\n border-style: none;\n}\n\n/**\n* Restore the focus styles unset by the previous rule.\n*/\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n* Correct the padding in Firefox.\n*/\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n* 1. Correct the text wrapping in Edge and IE.\n* 2. Correct the color inheritance from `fieldset` elements in IE.\n* 3. Remove the padding so developers are not caught out when they zero out\n* `fieldset` elements in all browsers.\n*/\n\nlegend {\n display: table; /* 1 */\n box-sizing: border-box; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n\n color: inherit; /* 2 */\n white-space: normal; /* 1 */\n}\n\n/**\n* Add the correct vertical alignment in Chrome, Firefox, and Opera.\n*/\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n* Remove the default vertical scrollbar in IE 10+.\n*/\n\ntextarea {\n overflow: auto;\n}\n\n/**\n* 1. Add the correct box sizing in IE 10.\n* 2. Remove the padding in IE 10.\n*/\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n* Correct the cursor style of increment and decrement buttons in Chrome.\n*/\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n* 1. Correct the odd appearance in Chrome and Safari.\n* 2. Correct the outline style in Safari.\n*/\n\n[type=\"search\"] {\n outline-offset: -2px; /* 2 */\n\n -webkit-appearance: textfield; /* 1 */\n}\n\n/**\n* Remove the inner padding in Chrome and Safari on macOS.\n*/\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n* 1. Correct the inability to style clickable types in iOS and Safari.\n* 2. Change font properties to `inherit` in Safari.\n*/\n\n::-webkit-file-upload-button {\n font: inherit; /* 2 */\n\n -webkit-appearance: button; /* 1 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n* Add the correct display in Edge, IE 10+, and Firefox.\n*/\n\ndetails {\n display: block;\n}\n\n/*\n* Add the correct display in all browsers.\n*/\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n* Add the correct display in IE 10+.\n*/\n\ntemplate {\n display: none;\n}\n\n/**\n* Add the correct display in IE 10.\n*/\n\n[hidden] {\n display: none;\n}\n",".tabs {\n max-width: 100%;\n}\n\n.tabs__controls {\n position: relative;\n display: flex;\n justify-content: space-between;\n margin: 0 auto;\n padding-bottom: 12px;\n margin-bottom: 40px;\n width: 342px;\n\n &::before {\n position: absolute;\n bottom: 0;\n right: 0;\n left: 0;\n height: 2px;\n background-color: rgba(120, 120, 120, 0.20);\n content: \"\";\n }\n\n @media screen and (max-width: 767px) {\n flex-wrap: wrap;\n }\n}\n\n.tabs__control {\n position: relative;\n display: flex;\n text-transform: uppercase;\n cursor: pointer;\n opacity: 0.5;\n min-width: auto;\n justify-content: center;\n padding: 0;\n\n @media screen and (max-width: 1023px) {\n margin: 0 10px;\n padding: 15px;\n }\n\n @media screen and (max-width: 767px) {\n margin: 10px 2% 0;\n padding: 10px;\n width: 45%;\n }\n\n &.is-active {\n opacity: 1;\n pointer-events: none;\n\n &::before {\n position: absolute;\n bottom: -12px;\n right: 0;\n left: 0;\n height: 2px;\n background-color: $color-banner-red;\n content: \"\";\n }\n }\n}\n\n.tabs__button {\n font-family: $ff-placeholder;\n font-size: 20px;\n font-weight: 400;\n line-height: 1.5;\n color: $color-primary;\n text-transform: none;\n letter-spacing: -1.1px;\n border: none;\n}\n\n.tabs__content {\n margin-bottom: 40px;\n transition: height 0.3s;\n}\n\n.tabs__element {\n width: 100%;\n\n @media screen and (max-width: 767px) {\n padding: 15px;\n }\n\n p {\n margin: 0;\n\n &:not(:last-child) {\n margin: 0 0 20px 0;\n }\n }\n}\n\n.tabs--unset .tabs__content {\n height: 100px;\n}\n\n.tabs--unset .tabs__element {\n height: 100%;\n overflow-y: auto;\n overflow-x: hidden;\n}\n\n.tabs__faq {\n display: grid;\n grid-template-columns: 260px 1fr;\n gap: 30px;\n}\n\n.tabs__categories {\n display: flex;\n flex-direction: column;\n\n & .btn {\n background-color: $color-transparent;\n border: 1px solid $color-primary-light;\n margin-bottom: 10px;\n }\n}\n\n.tabs__category {\n padding-top: 18px;\n padding-bottom: 16px;\n display: flex;\n justify-content: center;\n font-family: $ff-placeholder;\n font-size: 18px;\n font-weight: 600;\n line-height: 1;\n color: $color-primary;\n\n &.is-active {\n border: none;\n background-image: $red-to-blue;\n color: $color-default-white;\n }\n\n &:hover,\n &:focus {\n border-color: $color-primary;\n }\n\n &:default{\n color: $color-primary-light;\n }\n}\n","/* stylelint-disable */\n/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n/* Document\n ========================================================================== */\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n/**\n* Remove the margin in all browsers.\n*/\nbody {\n margin: 0;\n}\n\n/**\n* Render the `main` element consistently in IE.\n*/\nmain {\n display: block;\n}\n\n/**\n* Correct the font size and margin on `h1` elements within `section` and\n* `article` contexts in Chrome, Firefox, and Safari.\n*/\nh1 {\n margin: 0.67em 0;\n font-size: 2em;\n}\n\n/* Grouping content\n ========================================================================== */\n/**\n* 1. Add the correct box sizing in Firefox.\n* 2. Show the overflow in Edge and IE.\n*/\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n* 1. Correct the inheritance and scaling of font size in all browsers.\n* 2. Correct the odd `em` font sizing in all browsers.\n*/\npre {\n font-size: 1em; /* 2 */\n font-family: monospace, monospace; /* 1 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n/**\n* Remove the gray background on active links in IE 10.\n*/\na {\n background-color: transparent;\n}\n\n/**\n* 1. Remove the bottom border in Chrome 57-\n* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n*/\nabbr[title] {\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n border-bottom: none; /* 1 */\n}\n\n/**\n* Add the correct font weight in Chrome, Edge, and Safari.\n*/\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n* 1. Correct the inheritance and scaling of font size in all browsers.\n* 2. Correct the odd `em` font sizing in all browsers.\n*/\ncode,\nkbd,\nsamp {\n font-size: 1em; /* 2 */\n font-family: monospace, monospace; /* 1 */\n}\n\n/**\n* Add the correct font size in all browsers.\n*/\nsmall {\n font-size: 80%;\n}\n\n/**\n* Prevent `sub` and `sup` elements from affecting the line height in\n* all browsers.\n*/\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n/**\n* Remove the border on images inside links in IE 10.\n*/\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n/**\n* 1. Change the font styles in all browsers.\n* 2. Remove the margin in Firefox and Safari.\n*/\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n margin: 0; /* 2 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n font-family: inherit; /* 1 */\n}\n\n/**\n* Show the overflow in IE.\n* 1. Show the overflow in Edge.\n*/\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n* Remove the inheritance of text transform in Edge, Firefox, and IE.\n* 1. Remove the inheritance of text transform in Firefox.\n*/\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n* Correct the inability to style clickable types in iOS and Safari.\n*/\nbutton,\n[type=button],\n[type=reset],\n[type=submit] {\n -webkit-appearance: button;\n}\n\n/**\n* Remove the inner border and padding in Firefox.\n*/\nbutton::-moz-focus-inner,\n[type=button]::-moz-focus-inner,\n[type=reset]::-moz-focus-inner,\n[type=submit]::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\n/**\n* Restore the focus styles unset by the previous rule.\n*/\nbutton:-moz-focusring,\n[type=button]:-moz-focusring,\n[type=reset]:-moz-focusring,\n[type=submit]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n* Correct the padding in Firefox.\n*/\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n* 1. Correct the text wrapping in Edge and IE.\n* 2. Correct the color inheritance from `fieldset` elements in IE.\n* 3. Remove the padding so developers are not caught out when they zero out\n* `fieldset` elements in all browsers.\n*/\nlegend {\n display: table; /* 1 */\n box-sizing: border-box; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n color: inherit; /* 2 */\n white-space: normal; /* 1 */\n}\n\n/**\n* Add the correct vertical alignment in Chrome, Firefox, and Opera.\n*/\nprogress {\n vertical-align: baseline;\n}\n\n/**\n* Remove the default vertical scrollbar in IE 10+.\n*/\ntextarea {\n overflow: auto;\n}\n\n/**\n* 1. Add the correct box sizing in IE 10.\n* 2. Remove the padding in IE 10.\n*/\n[type=checkbox],\n[type=radio] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n* Correct the cursor style of increment and decrement buttons in Chrome.\n*/\n[type=number]::-webkit-inner-spin-button,\n[type=number]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n* 1. Correct the odd appearance in Chrome and Safari.\n* 2. Correct the outline style in Safari.\n*/\n[type=search] {\n outline-offset: -2px; /* 2 */\n -webkit-appearance: textfield; /* 1 */\n}\n\n/**\n* Remove the inner padding in Chrome and Safari on macOS.\n*/\n[type=search]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n* 1. Correct the inability to style clickable types in iOS and Safari.\n* 2. Change font properties to `inherit` in Safari.\n*/\n::-webkit-file-upload-button {\n font: inherit; /* 2 */\n -webkit-appearance: button; /* 1 */\n}\n\n/* Interactive\n ========================================================================== */\n/*\n* Add the correct display in Edge, IE 10+, and Firefox.\n*/\ndetails {\n display: block;\n}\n\n/*\n* Add the correct display in all browsers.\n*/\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n/**\n* Add the correct display in IE 10+.\n*/\ntemplate {\n display: none;\n}\n\n/**\n* Add the correct display in IE 10.\n*/\n[hidden] {\n display: none;\n}\n\n/* stylelint-disable */\n/**\n * Swiper 7.4.1\n * Most modern mobile touch slider and framework with hardware accelerated transitions\n * https://swiperjs.com\n *\n * Copyright 2014-2021 Vladimir Kharlampidi\n *\n * Released under the MIT License\n *\n * Released on: December 24, 2021\n */\n@font-face {\n font-family: \"swiper-icons\";\n src: url(\"data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA\");\n font-weight: 400;\n font-style: normal;\n}\n:root {\n --swiper-theme-color: #afafaf;\n}\n\n.swiper {\n margin-left: auto;\n margin-right: auto;\n position: relative;\n overflow: hidden;\n list-style: none;\n padding: 0;\n /* Fix of Webkit flickering */\n z-index: 1;\n}\n\n.swiper-vertical > .swiper-wrapper {\n flex-direction: column;\n}\n\n.swiper-wrapper {\n position: relative;\n width: 100%;\n height: 100%;\n z-index: 1;\n display: flex;\n transition-property: transform;\n box-sizing: content-box;\n}\n\n.swiper-android .swiper-slide,\n.swiper-wrapper {\n transform: translate3d(0px, 0, 0);\n}\n\n.swiper-pointer-events {\n touch-action: pan-y;\n}\n\n.swiper-pointer-events.swiper-vertical {\n touch-action: pan-x;\n}\n\n.swiper-slide {\n flex-shrink: 0;\n width: 100%;\n height: 100%;\n position: relative;\n transition-property: transform;\n}\n\n.swiper-slide-invisible-blank {\n visibility: hidden;\n}\n\n/* Auto Height */\n.swiper-autoheight,\n.swiper-autoheight .swiper-slide {\n height: auto;\n}\n\n.swiper-autoheight .swiper-wrapper {\n align-items: flex-start;\n transition-property: transform, height;\n}\n\n/* 3D Effects */\n.swiper-3d,\n.swiper-3d.swiper-css-mode .swiper-wrapper {\n perspective: 1200px;\n}\n\n.swiper-3d .swiper-wrapper,\n.swiper-3d .swiper-slide,\n.swiper-3d .swiper-slide-shadow,\n.swiper-3d .swiper-slide-shadow-left,\n.swiper-3d .swiper-slide-shadow-right,\n.swiper-3d .swiper-slide-shadow-top,\n.swiper-3d .swiper-slide-shadow-bottom,\n.swiper-3d .swiper-cube-shadow {\n transform-style: preserve-3d;\n}\n\n.swiper-3d .swiper-slide-shadow,\n.swiper-3d .swiper-slide-shadow-left,\n.swiper-3d .swiper-slide-shadow-right,\n.swiper-3d .swiper-slide-shadow-top,\n.swiper-3d .swiper-slide-shadow-bottom {\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n z-index: 10;\n}\n\n.swiper-3d .swiper-slide-shadow {\n background: rgba(0, 0, 0, 0.15);\n}\n\n.swiper-3d .swiper-slide-shadow-left {\n background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n\n.swiper-3d .swiper-slide-shadow-right {\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n\n.swiper-3d .swiper-slide-shadow-top {\n background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n\n.swiper-3d .swiper-slide-shadow-bottom {\n background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n\n/* CSS Mode */\n.swiper-css-mode > .swiper-wrapper {\n overflow: auto;\n scrollbar-width: none;\n /* For Firefox */\n -ms-overflow-style: none;\n /* For Internet Explorer and Edge */\n}\n\n.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {\n display: none;\n}\n\n.swiper-css-mode > .swiper-wrapper > .swiper-slide {\n scroll-snap-align: start start;\n}\n\n.swiper-horizontal.swiper-css-mode > .swiper-wrapper {\n scroll-snap-type: x mandatory;\n}\n\n.swiper-vertical.swiper-css-mode > .swiper-wrapper {\n scroll-snap-type: y mandatory;\n}\n\n.swiper-centered > .swiper-wrapper::before {\n content: \"\";\n flex-shrink: 0;\n order: 9999;\n}\n\n.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {\n margin-inline-start: var(--swiper-centered-offset-before);\n}\n\n.swiper-centered.swiper-horizontal > .swiper-wrapper::before {\n height: 100%;\n min-height: 1px;\n width: var(--swiper-centered-offset-after);\n}\n\n.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {\n margin-block-start: var(--swiper-centered-offset-before);\n}\n\n.swiper-centered.swiper-vertical > .swiper-wrapper::before {\n width: 100%;\n min-width: 1px;\n height: var(--swiper-centered-offset-after);\n}\n\n.swiper-centered > .swiper-wrapper > .swiper-slide {\n scroll-snap-align: center center;\n}\n\n.swiper-virtual.swiper-css-mode .swiper-wrapper::after {\n content: \"\";\n position: absolute;\n left: 0;\n top: 0;\n pointer-events: none;\n}\n\n.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {\n height: 1px;\n width: var(--swiper-virtual-size);\n}\n\n.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {\n width: 1px;\n height: var(--swiper-virtual-size);\n}\n\n:root {\n --swiper-navigation-size: 44px;\n /*\n --swiper-navigation-color: var(--swiper-theme-color);\n */\n}\n\n.swiper-button-prev,\n.swiper-button-next {\n position: absolute;\n top: 50%;\n width: calc(var(--swiper-navigation-size) / 42 * 27);\n height: var(--swiper-navigation-size);\n margin-top: calc(0px - var(--swiper-navigation-size) / 2);\n z-index: 10;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--swiper-navigation-color, var(--swiper-theme-color));\n}\n\n.swiper-button-prev.swiper-button-disabled,\n.swiper-button-next.swiper-button-disabled {\n opacity: 0.35;\n cursor: auto;\n pointer-events: none;\n}\n\n.swiper-button-prev:after,\n.swiper-button-next:after {\n font-family: swiper-icons;\n font-size: var(--swiper-navigation-size);\n text-transform: none !important;\n letter-spacing: 0;\n text-transform: none;\n font-variant: initial;\n line-height: 1;\n}\n\n.swiper-button-prev,\n.swiper-rtl .swiper-button-next {\n left: 10px;\n right: auto;\n}\n\n.swiper-button-prev:after,\n.swiper-rtl .swiper-button-next:after {\n content: \"prev\";\n}\n\n.swiper-button-next,\n.swiper-rtl .swiper-button-prev {\n right: 10px;\n left: auto;\n}\n\n.swiper-button-next:after,\n.swiper-rtl .swiper-button-prev:after {\n content: \"next\";\n}\n\n.swiper-button-lock {\n display: none;\n}\n\n/*\n --swiper-pagination-color: var(--swiper-theme-color);\n --swiper-pagination-bullet-size: 8px;\n --swiper-pagination-bullet-width: 8px;\n --swiper-pagination-bullet-height: 8px;\n --swiper-pagination-bullet-inactive-color: #000;\n --swiper-pagination-bullet-inactive-opacity: 0.2;\n --swiper-pagination-bullet-opacity: 1;\n --swiper-pagination-bullet-horizontal-gap: 4px;\n --swiper-pagination-bullet-vertical-gap: 6px;\n */\n.swiper-pagination {\n position: absolute;\n text-align: center;\n transition: 300ms opacity;\n transform: translate3d(0, 0, 0);\n z-index: 10;\n}\n\n.swiper-pagination.swiper-pagination-hidden {\n opacity: 0;\n}\n\n/* Common Styles */\n.swiper-pagination-fraction,\n.swiper-pagination-custom,\n.swiper-horizontal > .swiper-pagination-bullets,\n.swiper-pagination-bullets.swiper-pagination-horizontal {\n bottom: 10px;\n left: 0;\n width: 100%;\n}\n\n/* Bullets */\n.swiper-pagination-bullets-dynamic {\n overflow: hidden;\n font-size: 0;\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n transform: scale(0.33);\n position: relative;\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {\n transform: scale(1);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {\n transform: scale(1);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {\n transform: scale(0.66);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {\n transform: scale(0.33);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {\n transform: scale(0.66);\n}\n\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {\n transform: scale(0.33);\n}\n\n.swiper-pagination-bullet {\n width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));\n height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));\n display: inline-block;\n border-radius: 50%;\n background: var(--swiper-pagination-bullet-inactive-color, #000);\n opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);\n}\n\nbutton.swiper-pagination-bullet {\n border: none;\n margin: 0;\n padding: 0;\n box-shadow: none;\n -webkit-appearance: none;\n appearance: none;\n}\n\n.swiper-pagination-clickable .swiper-pagination-bullet {\n cursor: pointer;\n}\n\n.swiper-pagination-bullet:only-child {\n display: none !important;\n}\n\n.swiper-pagination-bullet-active {\n opacity: var(--swiper-pagination-bullet-opacity, 1);\n background: var(--swiper-pagination-color, var(--swiper-theme-color));\n}\n\n.swiper-vertical > .swiper-pagination-bullets,\n.swiper-pagination-vertical.swiper-pagination-bullets {\n right: 10px;\n top: 50%;\n transform: translate3d(0px, -50%, 0);\n}\n\n.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,\n.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {\n margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;\n display: block;\n}\n\n.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,\n.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {\n top: 50%;\n transform: translateY(-50%);\n width: 8px;\n}\n\n.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,\n.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n display: inline-block;\n transition: 200ms transform, 200ms top;\n}\n\n.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,\n.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {\n margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);\n}\n\n.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,\n.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {\n left: 50%;\n transform: translateX(-50%);\n white-space: nowrap;\n}\n\n.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,\n.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n transition: 200ms transform, 200ms left;\n}\n\n.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n transition: 200ms transform, 200ms right;\n}\n\n/* Progress */\n.swiper-pagination-progressbar {\n background: rgba(0, 0, 0, 0.25);\n position: absolute;\n}\n\n.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {\n background: var(--swiper-pagination-color, var(--swiper-theme-color));\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n transform: scale(0);\n transform-origin: left top;\n}\n\n.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {\n transform-origin: right top;\n}\n\n.swiper-horizontal > .swiper-pagination-progressbar,\n.swiper-pagination-progressbar.swiper-pagination-horizontal,\n.swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,\n.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {\n width: 100%;\n height: 4px;\n left: 0;\n top: 0;\n}\n\n.swiper-vertical > .swiper-pagination-progressbar,\n.swiper-pagination-progressbar.swiper-pagination-vertical,\n.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,\n.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {\n width: 4px;\n height: 100%;\n left: 0;\n top: 0;\n}\n\n.swiper-pagination-lock {\n display: none;\n}\n\n/* Scrollbar */\n.swiper-scrollbar {\n border-radius: 10px;\n position: relative;\n background: rgba(0, 0, 0, 0.1);\n}\n\n.swiper-horizontal > .swiper-scrollbar {\n position: absolute;\n left: 1%;\n bottom: 3px;\n z-index: 50;\n height: 5px;\n width: 98%;\n}\n\n.swiper-vertical > .swiper-scrollbar {\n position: absolute;\n right: 3px;\n top: 1%;\n z-index: 50;\n width: 5px;\n height: 98%;\n}\n\n.swiper-scrollbar-drag {\n height: 100%;\n width: 100%;\n position: relative;\n background: rgba(0, 0, 0, 0.5);\n border-radius: 10px;\n left: 0;\n top: 0;\n}\n\n.swiper-scrollbar-cursor-drag {\n cursor: move;\n}\n\n.swiper-scrollbar-lock {\n display: none;\n}\n\n.swiper-zoom-container {\n width: 100%;\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n text-align: center;\n}\n\n.swiper-zoom-container > img,\n.swiper-zoom-container > svg,\n.swiper-zoom-container > canvas {\n max-width: 100%;\n max-height: 100%;\n object-fit: contain;\n}\n\n.swiper-slide-zoomed {\n cursor: move;\n}\n\n/* Preloader */\n/*\n --swiper-preloader-color: var(--swiper-theme-color);\n */\n.swiper-lazy-preloader {\n width: 42px;\n height: 42px;\n position: absolute;\n left: 50%;\n top: 50%;\n margin-left: -21px;\n margin-top: -21px;\n z-index: 10;\n transform-origin: 50%;\n animation: swiper-preloader-spin 1s infinite linear;\n box-sizing: border-box;\n border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));\n border-radius: 50%;\n border-top-color: transparent;\n}\n\n.swiper-lazy-preloader-white {\n --swiper-preloader-color: #fff;\n}\n\n.swiper-lazy-preloader-black {\n --swiper-preloader-color: #000;\n}\n\n@keyframes swiper-preloader-spin {\n 100% {\n transform: rotate(360deg);\n }\n}\n/* a11y */\n.swiper .swiper-notification {\n position: absolute;\n left: 0;\n top: 0;\n pointer-events: none;\n opacity: 0;\n z-index: -1000;\n}\n\n.swiper-free-mode > .swiper-wrapper {\n transition-timing-function: ease-out;\n margin: 0 auto;\n}\n\n.swiper-grid > .swiper-wrapper {\n flex-wrap: wrap;\n}\n\n.swiper-grid-column > .swiper-wrapper {\n flex-wrap: wrap;\n flex-direction: column;\n}\n\n.swiper-fade.swiper-free-mode .swiper-slide {\n transition-timing-function: ease-out;\n}\n\n.swiper-fade .swiper-slide {\n pointer-events: none;\n transition-property: opacity;\n}\n\n.swiper-fade .swiper-slide .swiper-slide {\n pointer-events: none;\n}\n\n.swiper-fade .swiper-slide-active,\n.swiper-fade .swiper-slide-active .swiper-slide-active {\n pointer-events: auto;\n}\n\n.swiper-cube {\n overflow: visible;\n}\n\n.swiper-cube .swiper-slide {\n pointer-events: none;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n z-index: 1;\n visibility: hidden;\n transform-origin: 0 0;\n width: 100%;\n height: 100%;\n}\n\n.swiper-cube .swiper-slide .swiper-slide {\n pointer-events: none;\n}\n\n.swiper-cube.swiper-rtl .swiper-slide {\n transform-origin: 100% 0;\n}\n\n.swiper-cube .swiper-slide-active,\n.swiper-cube .swiper-slide-active .swiper-slide-active {\n pointer-events: auto;\n}\n\n.swiper-cube .swiper-slide-active,\n.swiper-cube .swiper-slide-next,\n.swiper-cube .swiper-slide-prev,\n.swiper-cube .swiper-slide-next + .swiper-slide {\n pointer-events: auto;\n visibility: visible;\n}\n\n.swiper-cube .swiper-slide-shadow-top,\n.swiper-cube .swiper-slide-shadow-bottom,\n.swiper-cube .swiper-slide-shadow-left,\n.swiper-cube .swiper-slide-shadow-right {\n z-index: 0;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n}\n\n.swiper-cube .swiper-cube-shadow {\n position: absolute;\n left: 0;\n bottom: 0px;\n width: 100%;\n height: 100%;\n opacity: 0.6;\n z-index: 0;\n}\n\n.swiper-cube .swiper-cube-shadow:before {\n content: \"\";\n background: #000;\n position: absolute;\n left: 0;\n top: 0;\n bottom: 0;\n right: 0;\n filter: blur(50px);\n}\n\n.swiper-flip {\n overflow: visible;\n}\n\n.swiper-flip .swiper-slide {\n pointer-events: none;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n z-index: 1;\n}\n\n.swiper-flip .swiper-slide .swiper-slide {\n pointer-events: none;\n}\n\n.swiper-flip .swiper-slide-active,\n.swiper-flip .swiper-slide-active .swiper-slide-active {\n pointer-events: auto;\n}\n\n.swiper-flip .swiper-slide-shadow-top,\n.swiper-flip .swiper-slide-shadow-bottom,\n.swiper-flip .swiper-slide-shadow-left,\n.swiper-flip .swiper-slide-shadow-right {\n z-index: 0;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n}\n\n.swiper-creative .swiper-slide {\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n overflow: hidden;\n transition-property: transform, opacity, height;\n}\n\n.swiper-cards {\n overflow: visible;\n}\n\n.swiper-cards .swiper-slide {\n transform-origin: center bottom;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n overflow: hidden;\n}\n\n@font-face {\n font-style: normal;\n font-weight: 400;\n font-family: \"Roboto Condensed\";\n font-display: swap;\n src: url(\"../fonts/RobotoCondensed.woff2\") format(\"woff2\");\n}\n@font-face {\n font-style: normal;\n font-weight: 300;\n font-family: \"Roboto Condensed\";\n font-display: swap;\n src: url(\"../fonts/RobotoCondensed-Light.woff2\") format(\"woff2\");\n}\n@font-face {\n font-style: normal;\n font-weight: 600;\n font-family: \"Roboto Condensed\";\n font-display: swap;\n src: url(\"../fonts/RobotoCondensed-Bold.woff2\") format(\"woff2\");\n}\n@font-face {\n font-style: normal;\n font-weight: 600;\n font-family: \"Alumni Sans\";\n font-display: swap;\n src: url(\"../fonts/AlumniSans-SemiBold.woff2\") format(\"woff2\");\n}\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\nhtml,\nbody {\n margin: 0;\n padding: 0;\n min-height: 100vh;\n}\n\nhtml {\n font-style: normal;\n font-weight: 300;\n font-size: 16px;\n line-height: 24px;\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n color: #102654;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n text-rendering: optimizeLegibility;\n}\n\nbody {\n width: 100%;\n height: 100%;\n background-color: #ffffff;\n}\n\na {\n color: #000000;\n text-decoration: none;\n}\n\nimg,\nvideo {\n display: block;\n max-width: 100%;\n height: auto;\n}\n\ntextarea {\n resize: none;\n}\n\ninput:-webkit-autofill {\n box-shadow: inset 0 0 0 1000px #ffffff;\n -webkit-text-fill-color: #000000;\n}\n\ninput,\ntextarea {\n border-radius: 0;\n}\ninput::placeholder,\ntextarea::placeholder {\n opacity: 1;\n}\ninput:invalid,\ntextarea:invalid {\n box-shadow: none;\n}\n\nselect {\n border-radius: 0;\n}\n\ninput::-ms-clear, input::-ms-reveal {\n display: none;\n}\n\ninput[type=search]::-webkit-search-decoration,\ninput[type=search]::-webkit-search-cancel-button,\ninput[type=search]::-webkit-search-results-button,\ninput[type=search]::-webkit-search-results-decoration {\n appearance: none;\n}\n\ninput::-webkit-outer-spin-button,\ninput::-webkit-inner-spin-button {\n margin: 0;\n appearance: none;\n}\n\ninput[type=number] {\n appearance: textfield;\n}\n\nselect,\ntextarea,\ninput:matches([type=email],\n[type=number],\n[type=password],\n[type=search],\n[type=tel],\n[type=text],\n[type=url]) {\n appearance: none;\n}\n\nbutton,\n[type=button],\n[type=reset],\n[type=submit] {\n appearance: none;\n}\n\n.wrapper {\n position: relative;\n display: flex;\n flex-direction: column;\n /* stylelint-disable-next-line */\n}\n.wrapper .header,\n.wrapper .footer {\n flex-shrink: 0;\n}\n.wrapper main {\n flex-grow: 1;\n}\n\nh1, h2, h3, h4 {\n margin: 0;\n padding: 0;\n}\n\np {\n margin: 0;\n padding: 0;\n}\n\nblockquote {\n margin: 0;\n padding: 0;\n}\n\n.visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n white-space: nowrap;\n border: 0;\n clip: rect(0 0 0 0);\n clip-path: inset(100%);\n}\n\n.container {\n width: 100%;\n max-width: 1366px;\n margin: 0 auto;\n}\n.btn {\n display: inline-flex;\n padding: 10px 20px;\n color: #ffffff;\n background-color: #2c39f2;\n border: none;\n cursor: pointer;\n transition: opacity 0.3s ease;\n}\n.btn--red {\n background-color: #ff1553;\n}\n.btn:disabled {\n opacity: 0.5;\n pointer-events: none;\n}\n\n.modal {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1000;\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n background-color: rgba(0, 0, 0, 0.8);\n transform: scale(1.2);\n visibility: hidden;\n opacity: 0;\n transition: opacity 0.6s cubic-bezier(0.55, 0, 0.1, 1), transform 0.6s cubic-bezier(0.55, 0, 0.1, 1), visibility 0.6s cubic-bezier(0.55, 0, 0.1, 1);\n pointer-events: none;\n -ms-overflow-style: none;\n scrollbar-width: none;\n}\n.modal::-webkit-scrollbar {\n display: none;\n}\n.modal__wrapper {\n position: relative;\n display: flex;\n flex-shrink: 0;\n justify-content: center;\n align-items: center;\n width: 100%;\n min-height: 100%;\n padding: 60px 40px;\n}\n@media (max-width: 767px) {\n .modal__wrapper {\n padding: 60px 16px;\n }\n}\n.modal__overlay {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n cursor: pointer;\n}\n.modal__content {\n position: relative;\n width: 600px;\n padding: 40px;\n background-color: #ffffff;\n}\n@media (max-width: 767px) {\n .modal__content {\n width: 100%;\n padding: 20px;\n }\n}\n.modal__close-btn {\n position: absolute;\n top: 22px;\n right: 22px;\n z-index: 1;\n width: 40px;\n height: 40px;\n padding: 0;\n background: rgba(255, 255, 255, 0);\n border: none;\n cursor: pointer;\n}\n.modal--responsive .modal__content {\n width: 100%;\n}\n.modal--fit-content .modal__content {\n width: auto;\n}\n@media (max-width: 767px) {\n .modal--fit-content .modal__content {\n width: 100%;\n }\n}\n.modal--no-scale {\n transform: none;\n}\n.modal--preload {\n transition: none;\n}\n.modal.is-active {\n transform: scale(1);\n visibility: visible;\n opacity: 1;\n pointer-events: auto;\n}\n\n.custom-input,\n.custom-textarea {\n position: relative;\n display: flex;\n width: 530px;\n padding: 14px 0 28px;\n}\n@media screen and (max-width: 767px) {\n .custom-input,\n.custom-textarea {\n padding: 4px 0 48px;\n width: 100%;\n }\n}\n.custom-input label,\n.custom-textarea label {\n display: flex;\n align-items: center;\n width: 100%;\n}\n@media screen and (max-width: 767px) {\n .custom-input label,\n.custom-textarea label {\n align-items: flex-start;\n flex-direction: column;\n }\n}\n.custom-input label input,\n.custom-input label textarea,\n.custom-textarea label input,\n.custom-textarea label textarea {\n flex-grow: 1;\n max-width: 300px;\n min-height: 48px;\n margin-left: auto;\n padding: 10px;\n border: 2px solid rgba(0, 0, 0, 0.2);\n border-radius: 5px;\n outline: none;\n transition: border 0.3s ease;\n}\n@media screen and (max-width: 767px) {\n .custom-input label input,\n.custom-input label textarea,\n.custom-textarea label input,\n.custom-textarea label textarea {\n max-width: unset;\n width: 100%;\n }\n}\n.custom-input label input:hover,\n.custom-input label textarea:hover,\n.custom-textarea label input:hover,\n.custom-textarea label textarea:hover {\n border: 2px solid rgba(0, 0, 0, 0.5);\n}\n.custom-input label input:focus,\n.custom-input label textarea:focus,\n.custom-textarea label input:focus,\n.custom-textarea label textarea:focus {\n border: 2px solid rgba(0, 0, 0, 0.8);\n}\n@media screen and (max-width: 767px) {\n .custom-input__label,\n.custom-textarea__label {\n margin: 0 0 18px 0;\n }\n}\n.custom-input__error,\n.custom-textarea__error {\n position: absolute;\n right: 0;\n bottom: 35px;\n color: #ff1553;\n opacity: 0;\n transition: opacity 0.3s ease;\n}\n@media screen and (max-width: 767px) {\n .custom-input__error,\n.custom-textarea__error {\n bottom: 20px;\n }\n}\n.custom-input.is-invalid input,\n.custom-input.is-invalid textarea,\n.custom-textarea.is-invalid input,\n.custom-textarea.is-invalid textarea {\n border: 2px solid #ff1553;\n}\n.custom-input.is-invalid input:focus, .custom-input.is-invalid input:hover,\n.custom-input.is-invalid textarea:focus,\n.custom-input.is-invalid textarea:hover,\n.custom-textarea.is-invalid input:focus,\n.custom-textarea.is-invalid input:hover,\n.custom-textarea.is-invalid textarea:focus,\n.custom-textarea.is-invalid textarea:hover {\n border: 2px solid rgba(255, 21, 83, 0.5);\n}\n.custom-input.is-valid input,\n.custom-textarea.is-valid input {\n border: 2px solid #22b259;\n}\n.custom-input.is-valid input:focus, .custom-input.is-valid input:hover,\n.custom-textarea.is-valid input:focus,\n.custom-textarea.is-valid input:hover {\n border: 2px solid rgba(34, 178, 89, 0.5);\n}\n.custom-input .input-message,\n.custom-textarea .input-message {\n position: absolute;\n right: 0;\n bottom: -5px;\n}\n.custom-input .input-message.is-invalid,\n.custom-textarea .input-message.is-invalid {\n color: #ff0000;\n}\n.custom-input .input-message.is-valid,\n.custom-textarea .input-message.is-valid {\n color: #15ab07;\n}\n\n.custom-toggle {\n position: relative;\n font-size: 18px;\n line-height: 27px;\n font-weight: 300;\n display: flex;\n width: 500px;\n padding: 14px 0 10px 36px;\n}\n@media screen and (max-width: 767px) {\n .custom-toggle {\n padding: 14px 0 10px 0;\n width: 100%;\n }\n}\n.custom-toggle:last-of-type {\n padding: 14px 0 58px 36px;\n}\n@media screen and (max-width: 767px) {\n .custom-toggle:last-of-type {\n padding: 14px 0 58px 0;\n }\n}\n.custom-toggle input {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n clip: rect(0 0 0 0);\n}\n.custom-toggle label {\n position: relative;\n padding-left: 52px;\n cursor: pointer;\n}\n.custom-toggle label span {\n margin-bottom: 0;\n margin-left: 0;\n}\n.custom-toggle--checkbox .custom-toggle__icon {\n position: absolute;\n top: 0;\n left: 0;\n width: 28px;\n height: 28px;\n border: 1.5px solid #2c39f2;\n transition: border 0.3s ease;\n}\n.custom-toggle--checkbox .custom-toggle__icon::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n width: 20px;\n height: 20px;\n background-color: rgba(44, 57, 242, 0);\n transform: translate(-50%, -50%);\n transition: background-color 0.3s ease;\n}\n.custom-toggle--radio .custom-toggle__icon {\n position: absolute;\n top: 0;\n left: 0;\n width: 28px;\n height: 28px;\n border: 1px solid #2c39f2;\n border-radius: 50%;\n transition: border 0.3s ease;\n}\n.custom-toggle--radio .custom-toggle__icon::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n width: 20px;\n height: 20px;\n color: rgba(255, 255, 255, 0);\n border-radius: 50%;\n transform: translate(-50%, -50%);\n transition: color 0.3s ease;\n}\n.custom-toggle input:checked + .custom-toggle__icon {\n border: 1.5px solid #2c39f2;\n}\n.custom-toggle input:checked + .custom-toggle__icon::before {\n background-color: #2c39f2;\n}\n.custom-toggle.is-invalid label span {\n color: #ff1553;\n}\n.custom-toggle .input-message {\n position: absolute;\n right: 0;\n bottom: -5px;\n}\n.custom-toggle .input-message.is-invalid {\n color: #ff0000;\n}\n.custom-toggle .input-message.is-valid {\n color: #15ab07;\n}\n\n.custom-select {\n position: relative;\n width: 300px;\n padding: 14px 0 28px;\n margin: 0 0 44px 0;\n /* &.is-valid {\n .custom-select__button {\n border: 2px solid $color-eucalyptus;\n\n &:focus,\n &:hover {\n border: 2px solid rgba($color-eucalyptus, 0.5);\n }\n }\n } */\n}\n@media screen and (max-width: 767px) {\n .custom-select {\n padding: 4px 0 14px;\n width: 100%;\n }\n}\n.custom-select__label {\n position: absolute;\n top: 50%;\n left: 10px;\n transform: translateY(-50%);\n transition: transform 0.3s ease, opacity 0.3s ease;\n pointer-events: none;\n}\n@media screen and (max-width: 767px) {\n .custom-select__label {\n transform: translateY(calc(-50% - 5px));\n }\n}\n.custom-select__placeholder {\n position: absolute;\n top: 50%;\n left: 10px;\n transform: translateY(-50%);\n transition: transform 0.3s ease, opacity 0.3s ease;\n pointer-events: none;\n}\n@media screen and (max-width: 767px) {\n .custom-select__placeholder {\n transform: translateY(calc(-50% - 5px));\n }\n}\n.custom-select select {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n white-space: nowrap;\n border: 0;\n clip: rect(0 0 0 0);\n clip-path: inset(100%);\n}\n.custom-select__button {\n display: flex;\n align-items: center;\n width: 100%;\n height: 48px;\n padding: 5px 10px;\n background-color: rgba(255, 255, 255, 0);\n border: 2px solid rgba(0, 0, 0, 0.2);\n border-radius: 5px;\n outline: none;\n cursor: pointer;\n transition: border 0.3s ease;\n}\n.custom-select__button:hover {\n border: 2px solid rgba(0, 0, 0, 0.5);\n}\n.custom-select__button:focus {\n border: 2px solid rgba(0, 0, 0, 0.8);\n}\n.custom-select__button:disabled {\n pointer-events: none;\n opacity: 0.3;\n}\n.custom-select__list {\n position: absolute;\n bottom: 10px;\n z-index: 1;\n width: 100%;\n max-height: 100px;\n margin: 0;\n padding: 0;\n overflow-y: auto;\n list-style: none;\n background-color: #ffffff;\n border: 2px solid #000000;\n transform: translateY(100%);\n visibility: hidden;\n opacity: 0;\n transition: visibility 0.3s ease, opacity 0.3s ease;\n}\n.custom-select__item {\n padding: 5px;\n outline: none;\n cursor: pointer;\n transition: background-color 0.3s ease;\n}\n.custom-select__item[aria-selected=true] {\n background-color: rgba(0, 0, 0, 0.2);\n}\n@media (hover: hover) {\n .custom-select__item[aria-selected=true]:hover:not(.focus-visible) {\n background-color: rgba(0, 0, 0, 0.2);\n }\n}\n.custom-select__item[aria-selected=true].focus-visible:focus {\n background-color: rgba(0, 0, 0, 0.2);\n}\n@media (hover: hover) {\n .custom-select__item:hover:not(.focus-visible) {\n background-color: rgba(0, 0, 0, 0.4);\n }\n}\n.custom-select__item.focus-visible:focus {\n background-color: rgba(0, 0, 0, 0.4);\n}\n.custom-select__error {\n position: absolute;\n bottom: -15px;\n left: 0;\n color: #ff1553;\n opacity: 0;\n transition: opacity 0.1s ease;\n}\n.custom-select__text {\n font-size: 20px;\n line-height: 24px;\n flex-shrink: 0;\n width: 80%;\n overflow: hidden;\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n opacity: 0;\n transition: opacity 0.3s ease 0.1s;\n}\n.custom-select__text br {\n display: none;\n}\n.custom-select__icon {\n flex-shrink: 0;\n width: 20px;\n height: 10px;\n margin-left: auto;\n background-color: #000000;\n transition: transform 0.3s ease;\n clip-path: polygon(100% 0, 100% 20%, 50% 100%, 0 20%, 0 0, 50% 80%);\n}\n.custom-select.is-disabled {\n pointer-events: none;\n}\n.custom-select.is-disabled .custom-select__list {\n display: none;\n}\n.custom-select.open-up .custom-select__list {\n bottom: auto;\n top: 0;\n transform: translateY(calc(-100% + 10px));\n}\n.custom-select.is-open .custom-select__list {\n visibility: visible;\n opacity: 1;\n}\n.custom-select.is-open .custom-select__icon {\n transform: rotate(180deg);\n}\n.custom-select.is-open .custom-select__label {\n opacity: 0;\n}\n.custom-select.not-empty .custom-select__text {\n opacity: 1;\n}\n.custom-select.not-empty .custom-select__label {\n opacity: 0;\n}\n.custom-select.not-empty .custom-select__placeholder {\n opacity: 0;\n}\n.custom-select.is-invalid .custom-select__error {\n opacity: 1;\n}\n.custom-select.is-invalid .custom-select__button {\n border: 2px solid #ff1553;\n}\n.custom-select.is-invalid .custom-select__button:focus, .custom-select.is-invalid .custom-select__button:hover {\n border: 2px solid rgba(255, 21, 83, 0.5);\n}\n.custom-select--placeholder .custom-select__label {\n transform: translateY(calc(-50% - 40px));\n opacity: 1;\n}\n.custom-select--placeholder.is-open .custom-select__label {\n opacity: 1;\n}\n.custom-select--placeholder.not-empty .custom-select__label {\n opacity: 1;\n}\n.custom-select.slide-up.not-empty .custom-select__label, .custom-select.slide-up.is-open .custom-select__label {\n transform: translateY(calc(-50% - 40px));\n opacity: 1;\n}\n.custom-select.slide-up.not-empty .custom-select__text, .custom-select.slide-up.is-open .custom-select__text {\n opacity: 1;\n}\n.custom-select .input-message {\n position: absolute;\n right: 0;\n bottom: -5px;\n}\n.custom-select .input-message.is-invalid {\n color: #ff0000;\n}\n.custom-select .input-message.is-valid {\n color: #15ab07;\n}\n\nheader {\n position: relative;\n margin: 0 auto;\n width: 1366px;\n}\nheader::before {\n position: absolute;\n background-image: conic-gradient(from 151deg at 16.03% 39.06%, #003D85 32.2363382578deg, #B80027 313.3060026169deg);\n width: 1366px;\n height: 642px;\n content: \"\";\n}\n\n.header__logo {\n position: absolute;\n order: 1;\n top: 25px;\n left: 103px;\n}\n\n.header__contact-link {\n position: absolute;\n order: 1;\n top: 16px;\n right: 103px;\n font-family: ff-Alumnisans;\n font-size: 24px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: -0.6px;\n font-style: normal;\n color: #ffffff;\n}\n\n.intro {\n margin: 0 auto;\n width: 1366px;\n padding: 33px 240px 92px 250px;\n}\n\n.intro__wrapper {\n display: flex;\n justify-content: space-between;\n padding-right: 64px;\n}\n\n.intro__text {\n display: flex;\n flex-direction: column;\n align-items: flex-end;\n text-align: right;\n}\n\n.intro__title {\n font-family: \"Alumni Sans\", \"Arial\", sans-serif;\n font-size: 50px;\n font-weight: 600;\n line-height: 114px;\n letter-spacing: 1.8px;\n color: #ffffff;\n padding-bottom: 46px;\n}\n\n.intro__subtitle {\n order: -1;\n font-family: Alumni Sans;\n font-size: 48px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.44px;\n color: #ffffff;\n text-align: right;\n padding-top: 110px;\n padding-bottom: 12px;\n padding-right: 50px;\n}\n\n.intro__description {\n position: absolute;\n top: 305px;\n left: -128px;\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 400;\n font-size: 14px;\n line-height: 1.5;\n color: #ffffff;\n letter-spacing: -0.7px;\n}\n\n.intro__link-buy {\n padding: 20px 56px;\n letter-spacing: 0.9px;\n}\n\n.button {\n box-sizing: border-box;\n display: inline-block;\n text-align: center;\n text-decoration: none;\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 600;\n font-size: 11px;\n line-height: normal;\n color: #ffffff;\n background-color: rgba(255, 255, 255, 0);\n border: 4px solid #ffffff;\n text-transform: uppercase;\n cursor: pointer;\n}\n\n.gym {\n margin: 0 auto;\n width: 1366px;\n padding: 80px 103px 166px 163px;\n}\n\n.gym__wrapper {\n display: flex;\n justify-content: space-between;\n}\n\n.gym__text {\n display: flex;\n flex-direction: column;\n padding-top: 40px;\n padding-right: 85px;\n}\n\n.gym__title {\n font-family: \"Alumni Sans\", \"Arial\", sans-serif;\n font-size: 32px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.44px;\n color: #102654;\n padding-bottom: 8px;\n}\n\n.gym__subtitle {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 14px;\n font-weight: 400;\n line-height: 1.5;\n color: #102654;\n padding-bottom: 40px;\n letter-spacing: 0.7px;\n}\n\n.gym__description {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.5;\n color: #102654;\n}\n.gym__description--supergym {\n padding-bottom: 8px;\n}\n\n.gym__video-wrapper {\n position: relative;\n}\n\n.gym__video {\n margin-left: 378px;\n margin-top: -112px;\n}\n\n.gym__video-button {\n position: absolute;\n width: 100px;\n height: 100px;\n top: 64px;\n left: 518px;\n background-color: transparent;\n border-radius: 50%;\n border: none;\n}\n\n.gym__button-image {\n transform: rotate(150deg);\n}\n\n.gym__button-border {\n position: absolute;\n top: 0;\n left: -9px;\n width: 100px;\n height: 100px;\n}\n\n[data-tabs=parent] {\n overflow: hidden;\n}\n[data-tabs=parent].no-transition > [data-tabs=control],\n[data-tabs=parent].no-transition > [data-tabs=content],\n[data-tabs=parent].no-transition > [data-tabs=element] {\n transition: none;\n}\n[data-tabs=parent].no-transition-global [data-tabs=control],\n[data-tabs=parent].no-transition-global [data-tabs=content],\n[data-tabs=parent].no-transition-global [data-tabs=element] {\n transition: none;\n}\n\n[data-tabs=parent] [data-tabs=content] {\n position: relative;\n}\n\n[data-tabs=element] {\n position: absolute;\n visibility: hidden;\n opacity: 0;\n transition: opacity 0.3s ease-in, visibility 0.3s ease-in;\n}\n\n[data-tabs=element].for-load {\n position: static;\n visibility: visible;\n opacity: 1;\n transition: none;\n}\n\n[data-tabs=element].is-active {\n z-index: 1;\n visibility: visible;\n opacity: 1;\n}\n\n.tabs {\n max-width: 100%;\n}\n\n.tabs__controls {\n position: relative;\n display: flex;\n justify-content: space-between;\n margin: 0 auto;\n padding-bottom: 12px;\n margin-bottom: 40px;\n width: 342px;\n}\n.tabs__controls::before {\n position: absolute;\n bottom: 0;\n right: 0;\n left: 0;\n height: 2px;\n background-color: rgba(120, 120, 120, 0.2);\n content: \"\";\n}\n@media screen and (max-width: 767px) {\n .tabs__controls {\n flex-wrap: wrap;\n }\n}\n\n.tabs__control {\n position: relative;\n display: flex;\n text-transform: uppercase;\n cursor: pointer;\n opacity: 0.5;\n min-width: auto;\n justify-content: center;\n padding: 0;\n}\n@media screen and (max-width: 1023px) {\n .tabs__control {\n margin: 0 10px;\n padding: 15px;\n }\n}\n@media screen and (max-width: 767px) {\n .tabs__control {\n margin: 10px 2% 0;\n padding: 10px;\n width: 45%;\n }\n}\n.tabs__control.is-active {\n opacity: 1;\n pointer-events: none;\n}\n.tabs__control.is-active::before {\n position: absolute;\n bottom: -12px;\n right: 0;\n left: 0;\n height: 2px;\n background-color: #ed0233;\n content: \"\";\n}\n\n.tabs__button {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 20px;\n font-weight: 400;\n line-height: 1.5;\n color: #102654;\n text-transform: none;\n letter-spacing: -1.1px;\n border: none;\n}\n\n.tabs__content {\n margin-bottom: 40px;\n transition: height 0.3s;\n}\n\n.tabs__element {\n width: 100%;\n}\n@media screen and (max-width: 767px) {\n .tabs__element {\n padding: 15px;\n }\n}\n.tabs__element p {\n margin: 0;\n}\n.tabs__element p:not(:last-child) {\n margin: 0 0 20px 0;\n}\n\n.tabs--unset .tabs__content {\n height: 100px;\n}\n\n.tabs--unset .tabs__element {\n height: 100%;\n overflow-y: auto;\n overflow-x: hidden;\n}\n\n.tabs__faq {\n display: grid;\n grid-template-columns: 260px 1fr;\n gap: 30px;\n}\n\n.tabs__categories {\n display: flex;\n flex-direction: column;\n}\n.tabs__categories .btn {\n background-color: rgba(255, 255, 255, 0);\n border: 1px solid rgba(16, 38, 84, 0.2);\n margin-bottom: 10px;\n}\n\n.tabs__category {\n padding-top: 18px;\n padding-bottom: 16px;\n display: flex;\n justify-content: center;\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 18px;\n font-weight: 600;\n line-height: 1;\n color: #102654;\n}\n.tabs__category.is-active {\n border: none;\n background-image: linear-gradient(151deg, #ED0233 0%, #003EB7 100%);\n color: #ffffff;\n}\n.tabs__category:hover, .tabs__category:focus {\n border-color: #102654;\n}\n.tabs__category:default {\n color: rgba(16, 38, 84, 0.2);\n}\n\n.gym-membership {\n position: relative;\n margin: 0 auto;\n width: 1366px;\n padding-top: 118px;\n padding-bottom: 80px;\n background-color: #f8f9fc;\n}\n\n.gym-membership__title {\n font-family: \"Alumni Sans\", \"Arial\", sans-serif;\n font-size: 36px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: #102654;\n padding-bottom: 18px;\n text-align: center;\n}\n\n.gym-membership__image {\n position: absolute;\n right: -10px;\n bottom: -255px;\n}\n\n.cards__list {\n display: grid;\n grid-template-columns: 1fr 1fr 1fr;\n gap: 30px;\n margin: 0 auto;\n padding: 0 103px;\n list-style-type: none;\n width: 1366px;\n}\n\n.cards__item {\n box-sizing: border-box;\n border: 7px solid rgba(255, 255, 255, 0);\n display: flex;\n flex-direction: column;\n text-align: center;\n align-items: center;\n padding-top: 54px;\n padding-bottom: 60px;\n padding-right: 62px;\n padding-left: 62px;\n background-color: #ffffff;\n}\n.cards__item--current {\n border-image: linear-gradient(151deg, #ED0233 0%, #003EB7 100%);\n border-image-slice: 1;\n}\n.cards__item--current .cards__link-buy {\n border: none;\n background-image: linear-gradient(151deg, #ED0233 0%, #003EB7 100%);\n color: #ffffff;\n padding: 26px 43px;\n}\n\n.cards__title {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 700;\n font-size: 23px;\n line-height: 1.1;\n color: #102654;\n margin-bottom: 10px;\n}\n\n.cards__description {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 400;\n font-size: 16px;\n line-height: 1.5;\n color: #102654;\n margin-bottom: 12px;\n}\n\n.cards__price {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 700;\n font-size: 60px;\n line-height: 1.5;\n color: #103aae;\n margin-top: -97px;\n margin-bottom: 35px;\n}\n\n.cards__price-shadow {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 700;\n font-size: 100px;\n line-height: 1.5;\n color: #e8e8e8;\n}\n\n.cards__link-buy {\n color: #102654;\n font-size: 11px;\n font-weight: 700;\n letter-spacing: 1.3px;\n border: 2px solid #102654;\n padding: 24px 39px;\n}\n\n.super-games {\n margin: 0 auto;\n width: 1160px;\n padding-top: 118px;\n padding-bottom: 106px;\n}\n\n.super-games__wrapper {\n display: grid;\n grid-template-columns: 500px auto;\n}\n\n.super-games__images {\n background-size: cover;\n}\n\n.super-games__text {\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n padding-top: 85px;\n padding-right: 75px;\n padding-bottom: 83px;\n padding-left: 77px;\n background-color: #ed0233;\n}\n\n.super-games__intro {\n display: grid;\n grid-template-columns: 201px auto;\n gap: 50px;\n}\n\n.super-games__title {\n font-family: \"Alumni Sans\", \"Arial\", sans-serif;\n font-weight: 600;\n font-size: 56px;\n line-height: 0.96;\n color: #ffffff;\n letter-spacing: 2.46px;\n text-transform: uppercase;\n padding-bottom: 28px;\n text-align: center;\n}\n\n.super-games__description {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 400;\n font-size: 18px;\n line-height: 1.5;\n letter-spacing: -1px;\n color: #ffffff;\n padding-bottom: 43px;\n}\n\n.super-games__link-application {\n padding: 25px 0;\n font-size: 13px;\n}\n\n.super-games__date-time {\n display: flex;\n flex-direction: column;\n gap: 10px;\n}\n\n.super-games__time-table {\n margin-top: -2px;\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 400;\n font-size: 18px;\n line-height: 1.5;\n color: #ffffff;\n letter-spacing: 0.7px;\n}\n\n.super-games__date-wrapper {\n position: relative;\n display: flex;\n align-items: center;\n gap: 7px;\n}\n.super-games__date-wrapper::before {\n position: absolute;\n top: 4px;\n right: 0;\n left: 0;\n height: 1px;\n background-color: #ffffff;\n content: \"\";\n}\n\n.super-games__date {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-weight: 700;\n font-size: 40px;\n line-height: 1.5;\n color: #ffffff;\n}\n\n.super-games__month-year {\n font-size: 14px;\n}\n\n.trainer {\n position: relative;\n margin: 0 auto;\n width: 1366px;\n padding-bottom: 102px;\n}\n\n.trainer__title {\n font-family: \"Alumni Sans\", \"Arial\", sans-serif;\n font-size: 36px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: #102654;\n padding-left: 103px;\n padding-bottom: 48px;\n}\n\n.trainer__swiper {\n width: 1160px;\n margin: 0 auto;\n}\n\n.trainer__swiper-button-prev {\n left: 28px;\n}\n\n.trainer__swiper-button-next {\n right: 28px;\n}\n\n.trainer__swiper-button-prev,\n.trainer__swiper-button-next {\n width: 56px;\n height: 56px;\n background-color: rgba(255, 255, 255, 0);\n border: 1px solid rgba(255, 255, 255, 0);\n border-radius: 50%;\n}\n.trainer__swiper-button-prev:hover, .trainer__swiper-button-prev:focus-visible,\n.trainer__swiper-button-next:hover,\n.trainer__swiper-button-next:focus-visible {\n border-color: #102654;\n}\n.trainer__swiper-button-prev:active,\n.trainer__swiper-button-next:active {\n background-color: #102654;\n border-color: #102654;\n}\n.trainer__swiper-button-prev:active::after, .trainer__swiper-button-prev:active::after,\n.trainer__swiper-button-next:active::after,\n.trainer__swiper-button-next:active::after {\n color: #ffffff;\n}\n.trainer__swiper-button-prev:disabled::after,\n.trainer__swiper-button-next:disabled::after {\n opacity: 0.3;\n}\n\n.trainer__swiper-button-prev::after,\n.trainer__swiper-button-next::after {\n color: #102654;\n font-size: 32px;\n}\n\n.trainer__slide:hover .trainer__slide-title {\n bottom: 216px;\n}\n\n.trainer__slide-title {\n position: absolute;\n left: 50%;\n margin-left: -22%;\n bottom: 23px;\n color: #ffffff;\n letter-spacing: -0.4px;\n z-index: 5;\n}\n\n.trainer__slide-description {\n display: flex;\n flex-direction: column;\n align-items: center;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(16, 38, 84, 0.89);\n opacity: 0;\n transition: opacity 0.4s linear;\n}\n.trainer__slide-description:hover {\n opacity: 1;\n}\n\n.trainer__slide-subtitle {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 15px;\n font-weight: 400;\n line-height: 1.5;\n color: #b6bdcc;\n padding-top: 76px;\n padding-bottom: 34px;\n}\n\n.trainer__slide-list {\n margin: 0;\n padding: 0;\n padding-left: 24px;\n}\n\n.trainer__slide-item {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 14px;\n font-weight: 400;\n line-height: 1.5;\n color: #ffffff;\n letter-spacing: -0.8px;\n padding-bottom: 13px;\n}\n\n.advantages {\n margin: 0 auto;\n background-color: #f8f9fc;\n}\n\n.advantages__wrapper {\n padding-top: 110px;\n padding-right: 172px;\n padding-bottom: 129px;\n padding-left: 172px;\n}\n\n.advantages__title {\n font-family: \"Alumni Sans\", \"Arial\", sans-serif;\n font-size: 36px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: #102654;\n text-align: center;\n margin-bottom: 29px;\n}\n\n.advantages__list {\n margin: 0;\n padding: 0;\n list-style-type: none;\n display: grid;\n grid-template-columns: 1fr 240px 1fr;\n column-gap: 54px;\n row-gap: 130px;\n}\n\n.advantage {\n position: relative;\n display: flex;\n gap: 32px;\n padding-left: 6px;\n}\n.advantage:not(:nth-last-child(-n+3))::before {\n position: absolute;\n bottom: -76px;\n right: 0;\n left: 0;\n height: 2px;\n background-color: #d10a42;\n opacity: 0.2;\n content: \"\";\n}\n.advantage--center {\n grid-column: 2/3;\n grid-row: 1/3;\n margin-top: 28px;\n margin-bottom: 8px;\n flex-direction: column;\n background-color: #1c3374;\n text-align: center;\n padding-top: 42px;\n padding-left: 0;\n gap: 0;\n}\n\n.advantage__number-wrapper {\n position: relative;\n}\n\n.advantage__number {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 71px;\n font-weight: 700;\n line-height: 1.5;\n background-color: #0041ca;\n background-image: linear-gradient(129deg, #D10A42 0%, #0041CA 100%);\n background-clip: text;\n -webkit-text-fill-color: transparent;\n}\n.advantage__number--center {\n font-size: 76px;\n line-height: 1.2;\n background-image: none;\n background-color: #ffffff;\n letter-spacing: 1px;\n}\n\n.advantage__number-text {\n position: absolute;\n bottom: 2px;\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 14px;\n font-weight: 400;\n line-height: 1.5;\n letter-spacing: -1px;\n color: #2e35ac;\n}\n\n.advantage__title {\n padding-top: 20px;\n padding-bottom: 5px;\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 20px;\n font-weight: 700;\n line-height: 1.5;\n letter-spacing: -0.7px;\n color: #102654;\n}\n.advantage__title--center {\n padding: 0;\n color: #ffffff;\n font-size: 21px;\n letter-spacing: 0.7px;\n padding-bottom: 33px;\n}\n\n.advantage__description {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.4;\n color: #102654;\n}\n.advantage__description--center {\n color: #ffffff;\n}\n\n.promotions {\n margin: 0 auto;\n}\n\n.promotions__wrapper {\n padding-top: 126px;\n padding-right: 103px;\n padding-bottom: 120px;\n padding-left: 103px;\n}\n\n.promotions__title {\n font-family: \"Alumni Sans\", \"Arial\", sans-serif;\n font-size: 54px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: #102654;\n text-align: center;\n margin-bottom: 34px;\n}\n\n.promotions__list {\n margin: 0;\n padding: 0;\n list-style-type: none;\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 40px;\n}\n\n.promotion {\n padding: 18px 28px;\n box-sizing: border-box;\n border: 7px solid rgba(255, 255, 255, 0);\n border-image: linear-gradient(151deg, #ED0233 0%, #003EB7 100%);\n border-image-slice: 1;\n}\n.promotion--big {\n padding: 0;\n grid-row: 1/3;\n display: flex;\n border: none;\n}\n\n.promotion__text {\n padding: 37px 44px;\n background-color: #ed0233;\n}\n\n.promotion__title {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 22px;\n font-weight: 700;\n line-height: 1.5;\n color: #1c3374;\n padding-bottom: 5px;\n}\n.promotion__title--big {\n font-size: 23px;\n color: #ffffff;\n}\n\n.promotion__price {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 70px;\n font-weight: 700;\n line-height: 0.76;\n color: #ffffff;\n padding-bottom: 26px;\n}\n\n.promotion__description {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 16px;\n font-weight: 400;\n line-height: 1.4;\n color: #1c3374;\n letter-spacing: -0.9px;\n padding-bottom: 66px;\n}\n.promotion__description--big {\n padding-bottom: 183px;\n color: #ffffff;\n font-size: 18px;\n letter-spacing: -0.9px;\n}\n\n.promotion__link {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 12px;\n font-weight: 700;\n line-height: 1.4;\n color: #1c3374;\n letter-spacing: 0.6px;\n text-transform: uppercase;\n border-bottom: 1px solid #1c3374;\n}\n.promotion__link--big {\n font-size: 14px;\n color: #ffffff;\n border-bottom: 1px solid #ffffff;\n}\n\n[data-accordion=element].is-active > [data-accordion=content] {\n max-height: 100%;\n}\n\n[data-accordion=parent].no-transition [data-accordion=content] {\n transition: none;\n}\n\n[data-accordion=content] {\n max-height: 0;\n transition: max-height 0.3s;\n overflow: hidden;\n}\n\n.accordion {\n margin: 0 auto 50px auto;\n}\n.accordion .accordion {\n width: 90%;\n margin: 0 auto;\n}\n.accordion__element:last-child {\n position: relative;\n margin-bottom: 0;\n}\n.accordion__element:last-child::before {\n position: absolute;\n content: \"\";\n left: 0;\n right: 0;\n bottom: -21px;\n height: 1px;\n background-color: rgba(16, 38, 84, 0.2);\n}\n.accordion__element {\n position: relative;\n margin-bottom: 18px;\n padding-top: 24px;\n border-top: 1px solid rgba(16, 38, 84, 0.2);\n}\n.accordion__element.is-active .accordion__toggle::after {\n display: none;\n}\n.accordion__button {\n width: 100%;\n padding: 10px;\n cursor: pointer;\n border: none;\n background-color: rgba(255, 255, 255, 0);\n}\n.accordion__wrapper {\n padding: 5px 10px;\n}\n\n.accordion__toggle {\n position: absolute;\n right: 0;\n top: 25px;\n width: 42px;\n height: 42px;\n border: 1px solid #102654;\n border-radius: 50%;\n}\n.accordion__toggle::before {\n position: absolute;\n content: \"\";\n width: 18px;\n height: 1px;\n left: 11px;\n top: 21px;\n background-color: #102654;\n}\n.accordion__toggle::after {\n position: absolute;\n content: \"\";\n width: 18px;\n height: 1px;\n left: 11px;\n top: 21px;\n background-color: #102654;\n transform: rotate(90deg);\n}\n.accordion__toggle:hover, .accordion__toggle:focus {\n background-color: #102654;\n}\n.accordion__toggle:hover::before, .accordion__toggle:hover::after, .accordion__toggle:focus::before, .accordion__toggle:focus::after {\n background-color: #ffffff;\n}\n.accordion__toggle:disabled {\n opacity: 0.3;\n}\n\n.accordion__title {\n text-align: left;\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 20px;\n font-weight: 500;\n line-height: 1.2;\n color: #102654;\n letter-spacing: 0.2px;\n}\n\n.accordion__discription {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 18px;\n font-weight: 300;\n line-height: 1.4;\n color: #102654;\n}\n\n.faq {\n margin: 0 auto;\n background-color: #f8f9fc;\n}\n\n.faq__wrapper {\n padding-right: 103px;\n padding-left: 103px;\n padding-top: 120px;\n padding-bottom: 54px;\n}\n\n.faq__title {\n font-family: \"Alumni Sans\", \"Arial\", sans-serif;\n font-size: 36px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: #102654;\n padding-bottom: 40px;\n}\n\n.reviews {\n margin: 0 auto;\n width: 1366px;\n}\n\n.reviews__wrapper {\n padding-top: 116px;\n padding-left: 103px;\n padding-bottom: 120px;\n padding-right: 103px;\n}\n\n.reviews__title {\n text-align: center;\n font-family: \"Alumni Sans\", \"Arial\", sans-serif;\n font-size: 36px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: #102654;\n padding-bottom: 40px;\n}\n\n.reviews__slide-wrapper {\n max-width: 560px;\n margin: 0 auto;\n padding: 54px 62px;\n display: flex;\n gap: 27px;\n background-color: #1c3374;\n filter: drop-shadow(rgba(28, 51, 116, 0.2));\n}\n\n.reviews__swiper-button-prev {\n left: 224px;\n}\n\n.reviews__swiper-button-next {\n right: 224px;\n}\n\n.reviews__swiper-button-prev,\n.reviews__swiper-button-next {\n width: 56px;\n height: 56px;\n background-color: rgba(255, 255, 255, 0);\n border: 1px solid rgba(255, 255, 255, 0);\n border-radius: 50%;\n}\n.reviews__swiper-button-prev:hover, .reviews__swiper-button-prev:focus-visible,\n.reviews__swiper-button-next:hover,\n.reviews__swiper-button-next:focus-visible {\n border-color: #102654;\n}\n.reviews__swiper-button-prev:active,\n.reviews__swiper-button-next:active {\n background-color: #102654;\n border-color: #102654;\n}\n.reviews__swiper-button-prev:active::after, .reviews__swiper-button-prev:active::after,\n.reviews__swiper-button-next:active::after,\n.reviews__swiper-button-next:active::after {\n color: #ffffff;\n}\n.reviews__swiper-button-prev:disabled::after,\n.reviews__swiper-button-next:disabled::after {\n opacity: 0.3;\n}\n\n.reviews__swiper-button-prev::after,\n.reviews__swiper-button-next::after {\n font-size: 32px;\n color: #102654;\n}\n\n.reviews__images {\n align-self: flex-start;\n padding-top: 6px;\n}\n\n.reviews__slide-title {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 17px;\n font-weight: 700;\n line-height: 1.5;\n color: #ffffff;\n padding-bottom: 10px;\n}\n\n.reviews__slide-description {\n font-family: \"Roboto Condensed\", \"Arial\", sans-serif;\n font-size: 15px;\n font-weight: 400;\n line-height: 1.5;\n color: #ffffff;\n letter-spacing: -0.5px;\n}\n\n/* @mixin hover-focus {\n @media (hover: hover) {\n &:hover:not(.focus-visible) {\n @content;\n }\n }\n\n &.focus-visible:focus {\n @content;\n }\n }\n*/\n/* @include hover-focus {\n opacity: 0.8;\n }\n*/\n/*@mixin hover {\n @media (hover: hover) {\n &:hover:not(.focus-visible) {\n @content;\n }\n }\n }\n*/\n/*@mixin focus {\n &.focus-visible:focus {\n @content;\n }\n }\n*/\n/*@mixin active {\n &.focus-visible:active {\n @content;\n }\n }\n*/","*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\nhtml,\nbody {\n margin: 0;\n padding: 0;\n min-height: 100vh;\n}\n\nhtml {\n font-style: normal;\n font-weight: 300;\n font-size: $fz-default;\n line-height: 24px;\n font-family: $ff-placeholder;\n color: $color-primary;\n\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n // оптимизация выравнивания шрифта относительно центра строки\n text-rendering: optimizeLegibility;\n // если по прежнему есть проблемы с выравниванием\n // https://transfonter.org/ - включите настройку https://prnt.sc/12rnt6g и переконвертируйте шрифт\n}\n\nbody {\n width: 100%;\n height: 100%;\n\n background-color: $color-default-white;\n}\n\na {\n color: $color-default-black;\n text-decoration: none;\n}\n\nimg,\nvideo {\n display: block;\n max-width: 100%;\n height: auto;\n}\n\ntextarea {\n resize: none;\n}\n\n// chrome autofill background removal\n// если на проекте у инпутов используются разные цвета фонов\\текста -\n// удалите это из глобала и используйте локально с нужными цветами\n// rgba не подойдет, сконвертируйте цвет в hex без прозрачности\n// если в стилях уже используется box-shadow есть другое решение -\n// задать к списку транзишенов `background-color 10000000s ease-out`\ninput:-webkit-autofill {\n box-shadow: inset 0 0 0 1000px $color-default-white;\n\n -webkit-text-fill-color: $color-default-black;\n}\n\n// firefox placeholder \\ invalid fix + ios bdrs\ninput,\ntextarea {\n border-radius: 0;\n\n &::placeholder {\n opacity: 1;\n }\n\n &:invalid {\n box-shadow: none;\n }\n}\n\nselect {\n border-radius: 0;\n}\n\n// ie11 X removal\ninput {\n &::-ms-clear,\n &::-ms-reveal {\n display: none;\n }\n}\n\n// chrome search X removal\ninput[type=\"search\"]::-webkit-search-decoration,\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-results-button,\ninput[type=\"search\"]::-webkit-search-results-decoration {\n appearance: none;\n}\n\n// input[number] arrows removal\ninput::-webkit-outer-spin-button,\ninput::-webkit-inner-spin-button {\n margin: 0;\n\n appearance: none;\n}\n\ninput[type=\"number\"] {\n appearance: textfield;\n}\n\n// ios button \\ inputs reset\nselect,\ntextarea,\ninput:matches([type=\"email\"],\n [type=\"number\"],\n [type=\"password\"],\n [type=\"search\"],\n [type=\"tel\"],\n [type=\"text\"],\n [type=\"url\"]) {\n appearance: none;\n}\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n appearance: none;\n}\n",".custom-select {\n position: relative;\n\n width: 300px;\n padding: 14px 0 28px;\n margin: 0 0 44px 0;\n\n @media screen and (max-width: 767px) {\n padding: 4px 0 14px;\n width: 100%;\n }\n\n &__label {\n position: absolute;\n top: 50%;\n left: 10px;\n\n transform: translateY(-50%);\n\n transition: transform 0.3s ease, opacity 0.3s ease;\n\n pointer-events: none;\n\n @media screen and (max-width: 767px) {\n transform: translateY(calc(-50% - 5px));\n }\n }\n\n &__placeholder {\n position: absolute;\n top: 50%;\n left: 10px;\n\n transform: translateY(-50%);\n\n transition: transform 0.3s ease, opacity 0.3s ease;\n\n pointer-events: none;\n\n @media screen and (max-width: 767px) {\n transform: translateY(calc(-50% - 5px));\n }\n }\n\n select {\n position: absolute;\n\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n\n white-space: nowrap;\n\n border: 0;\n\n clip: rect(0 0 0 0);\n clip-path: inset(100%);\n }\n\n &__button {\n display: flex;\n align-items: center;\n width: 100%;\n height: 48px;\n padding: 5px 10px;\n\n background-color: rgba(255, 255, 255, 0);\n border: 2px solid rgba(0, 0, 0, 0.2);\n border-radius: 5px;\n outline: none;\n cursor: pointer;\n\n transition: border 0.3s ease;\n\n &:hover {\n border: 2px solid rgba(0, 0, 0, 0.5);\n }\n\n &:focus {\n border: 2px solid rgba(0, 0, 0, 0.8);\n }\n\n &:disabled {\n pointer-events: none;\n opacity: 0.3;\n }\n }\n\n &__list {\n position: absolute;\n bottom: 10px;\n z-index: 1;\n\n width: 100%;\n max-height: 100px;\n margin: 0;\n padding: 0;\n overflow-y: auto;\n\n list-style: none;\n\n background-color: #ffffff;\n border: 2px solid #000000;\n transform: translateY(100%);\n visibility: hidden;\n opacity: 0;\n\n transition: visibility 0.3s ease, opacity 0.3s ease;\n }\n\n &__item {\n padding: 5px;\n\n outline: none;\n cursor: pointer;\n\n transition: background-color 0.3s ease;\n\n &[aria-selected=\"true\"] {\n background-color: rgba(0, 0, 0, 0.2);\n\n @media (hover: hover) {\n &:hover:not(.focus-visible) {\n background-color: rgba(0, 0, 0, 0.2);\n }\n }\n\n &.focus-visible:focus {\n background-color: rgba(0, 0, 0, 0.2);\n }\n }\n\n @media (hover: hover) {\n &:hover:not(.focus-visible) {\n background-color: rgba(0, 0, 0, 0.4);\n }\n }\n\n &.focus-visible:focus {\n background-color: rgba(0, 0, 0, 0.4);\n }\n }\n\n &__error {\n position: absolute;\n bottom: -15px;\n left: 0;\n\n color: #ff1553;\n\n opacity: 0;\n\n transition: opacity 0.1s ease;\n }\n\n &__text {\n font-size: 20px;\n line-height: 24px;\n flex-shrink: 0;\n width: 80%;\n overflow: hidden;\n\n text-align: left;\n white-space: nowrap;\n text-overflow: ellipsis;\n\n opacity: 0;\n\n transition: opacity 0.3s ease 0.1s;\n\n br {\n display: none;\n }\n }\n\n &__icon {\n flex-shrink: 0;\n width: 20px;\n height: 10px;\n margin-left: auto;\n\n background-color: #000000;\n\n transition: transform 0.3s ease;\n\n clip-path: polygon(100% 0, 100% 20%, 50% 100%, 0 20%, 0 0, 50% 80%);\n }\n\n &.is-disabled {\n pointer-events: none;\n\n .custom-select__list {\n display: none;\n }\n }\n\n &.open-up {\n .custom-select__list {\n bottom: auto;\n top: 0;\n transform: translateY(calc(-100% + 10px));\n }\n }\n\n &.is-open {\n .custom-select__list {\n visibility: visible;\n opacity: 1;\n }\n\n .custom-select__icon {\n transform: rotate(180deg);\n }\n\n .custom-select__label {\n opacity: 0;\n }\n }\n\n &.not-empty {\n .custom-select__text {\n opacity: 1;\n }\n\n .custom-select__label {\n opacity: 0;\n }\n\n .custom-select__placeholder {\n opacity: 0;\n }\n }\n\n &.is-invalid {\n .custom-select__error {\n opacity: 1;\n }\n\n .custom-select__button {\n border: 2px solid #ff1553;\n\n &:focus,\n &:hover {\n border: 2px solid rgba(#ff1553, 0.5);\n }\n }\n }\n\n /* &.is-valid {\n .custom-select__button {\n border: 2px solid $color-eucalyptus;\n\n &:focus,\n &:hover {\n border: 2px solid rgba($color-eucalyptus, 0.5);\n }\n }\n } */\n\n &--placeholder {\n .custom-select__label {\n transform: translateY(calc(-50% - 40px));\n opacity: 1;\n }\n\n &.is-open .custom-select__label {\n opacity: 1;\n }\n\n &.not-empty .custom-select__label {\n opacity: 1;\n }\n }\n\n &.slide-up.not-empty,\n &.slide-up.is-open {\n .custom-select__label {\n transform: translateY(calc(-50% - 40px));\n opacity: 1;\n }\n\n .custom-select__text {\n opacity: 1;\n }\n }\n\n .input-message {\n position: absolute;\n right: 0;\n bottom: -5px;\n\n &.is-invalid {\n color: #ff0000;\n }\n\n &.is-valid {\n color: #15ab07;\n }\n }\n}\n","@font-face {\n font-style: normal;\n font-weight: 400;\n font-family: \"Roboto Condensed\";\n\n font-display: swap;\n src: url(\"../fonts/RobotoCondensed.woff2\") format(\"woff2\");\n}\n\n@font-face {\n font-style: normal;\n font-weight: 300;\n font-family: \"Roboto Condensed\";\n\n font-display: swap;\n src: url(\"../fonts/RobotoCondensed-Light.woff2\") format(\"woff2\");\n}\n\n@font-face {\n font-style: normal;\n font-weight: 600;\n font-family: \"Roboto Condensed\";\n\n font-display: swap;\n src: url(\"../fonts/RobotoCondensed-Bold.woff2\") format(\"woff2\");\n}\n\n\n@font-face {\n font-style: normal;\n font-weight: 600;\n font-family: \"Alumni Sans\";\n\n font-display: swap;\n src: url(\"../fonts/AlumniSans-SemiBold.woff2\") format(\"woff2\");\n}\n",".wrapper {\n position: relative;\n\n display: flex;\n flex-direction: column;\n // min-height: 100vh;\n /* stylelint-disable-next-line */\n // min-height: calc(100 * var(--vh, 1vh));\n\n .header,\n .footer {\n flex-shrink: 0;\n }\n\n main {\n flex-grow: 1;\n }\n}\n\nh1, h2, h3, h4{\n margin: 0;\n padding: 0;\n}\n\np{\n margin: 0;\n padding: 0;\n}\n\nblockquote{\n margin: 0;\n padding: 0;\n}\n\n// .rouble {\n// font-family: $ff-rouble;\n// /* stylelint-disable */\n// text-transform: lowercase !important;\n// font-weight: 400 !important;\n// /* stylelint-enable */\n// }\n\n.visually-hidden {\n position: absolute;\n\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n\n white-space: nowrap;\n\n border: 0;\n\n clip: rect(0 0 0 0);\n clip-path: inset(100%);\n}\n\n// .scroll-lock-ios {\n// position: fixed;\n\n// overflow: hidden;\n// }\n\n// .scroll-lock {\n// overflow: hidden;\n// }\n\n// .no-scrollbar {\n// -ms-overflow-style: none;\n// scrollbar-width: none;\n\n// &::-webkit-scrollbar {\n// display: none;\n// }\n// }\n\n// .no-transition {\n// /* stylelint-disable-next-line */\n// transition: none !important;\n// }\n\n// .js-focus-visible :focus:not(.focus-visible) {\n// outline: none;\n// }\n",".container {\n width: 100%;\n max-width: 1366px;\n margin: 0 auto;\n // padding: 0 103px;\n\n\n // @include vp-1439 {\n // padding: 0 32px;\n // }\n\n // @include vp-1023 {\n // padding: 0 24px;\n // }\n\n @include vp-1199 {\n // padding: 0 45px;\n }\n\n @include vp-767 {\n // padding: 0 15px;\n }\n}\n",".btn {\n display: inline-flex;\n padding: 10px 20px;\n color: $color-default-white;\n background-color: $color-neon-blue;\n border: none;\n cursor: pointer;\n\n transition: opacity $trans-default;\n\n &--red {\n background-color: $color-torch-red;\n }\n\n &:disabled {\n opacity: 0.5;\n\n pointer-events: none;\n }\n\n // @include hover-focus {\n // opacity: 0.8;\n // }\n}\n",".modal {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1000;\n\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n -webkit-overflow-scrolling: touch;\n\n background-color: rgba($color-default-black, 0.8);\n transform: scale(1.2);\n visibility: hidden;\n opacity: 0;\n\n transition: opacity $trans-modal,\n transform $trans-modal,\n visibility $trans-modal;\n\n pointer-events: none;\n\n -ms-overflow-style: none;\n scrollbar-width: none;\n\n &::-webkit-scrollbar {\n display: none;\n }\n\n &__wrapper {\n position: relative;\n\n display: flex;\n flex-shrink: 0;\n justify-content: center;\n align-items: center;\n width: 100%;\n min-height: 100%;\n padding: 60px 40px;\n\n @include vp-767 {\n padding: 60px 16px;\n }\n }\n\n &__overlay {\n position: absolute;\n top: 0;\n left: 0;\n\n width: 100%;\n height: 100%;\n\n cursor: pointer;\n }\n\n &__content {\n position: relative;\n\n width: 600px;\n padding: 40px;\n\n background-color: $color-default-white;\n\n @include vp-767 {\n width: 100%;\n padding: 20px;\n }\n }\n\n &__close-btn {\n position: absolute;\n top: 22px;\n right: 22px;\n z-index: 1;\n\n width: 40px;\n height: 40px;\n padding: 0;\n\n background: $color-transparent;\n border: none;\n cursor: pointer;\n }\n\n &--responsive {\n .modal__content {\n width: 100%;\n }\n }\n\n &--fit-content {\n .modal__content {\n width: auto;\n\n @include vp-767 {\n width: 100%;\n }\n }\n }\n\n &--no-scale {\n transform: none;\n }\n\n &--preload {\n transition: none;\n }\n\n &.is-active {\n transform: scale(1);\n visibility: visible;\n opacity: 1;\n\n pointer-events: auto;\n }\n}\n","@mixin retina {\n @media (min-resolution: $retina-dpi), (min-resolution: $retina-dppx) {\n @content;\n }\n}\n\n@mixin hover {\n @media (hover: hover) {\n &:hover:not(.focus-visible) {\n @content;\n }\n }\n}\n\n@mixin focus {\n &.focus-visible:focus {\n @content;\n }\n}\n\n@mixin active {\n &.focus-visible:active {\n @content;\n }\n}\n\n@mixin hover-focus {\n @media (hover: hover) {\n &:hover:not(.focus-visible) {\n @content;\n }\n }\n\n &.focus-visible:focus {\n @content;\n }\n}\n\n// Desktop first\n\n// @mixin vp-1919 {\n// @media (max-width: ($vp-1920 - 1px)) {\n// @content;\n// }\n// }\n\n// @mixin vp-1439 {\n// @media (max-width: ($vp-1440 - 1px)) {\n// @content;\n// }\n// }\n\n// @mixin vp-1279 {\n// @media (max-width: ($vp-1280 - 1px)) {\n// @content;\n// }\n// }\n\n@mixin vp-1199 {\n @media (max-width: ($vp-1200 - 1px)) {\n @content;\n }\n}\n\n// @mixin vp-1023 {\n// @media (max-width: ($vp-1024 - 1px)) {\n// @content;\n// }\n// }\n\n@mixin vp-767 {\n @media (max-width: ($vp-768 - 1px)) {\n @content;\n }\n}\n\n// @mixin vp-374 {\n// @media (max-width: ($vp-375 - 1px)) {\n// @content;\n// }\n// }\n\n// Mobile first\n\n// @mixin vp-375 {\n// @media (min-width: $vp-375) {\n// @content;\n// }\n// }\n\n// @mixin vp-768 {\n// @media (min-width: $vp-768) {\n// @content;\n// }\n// }\n\n// @mixin vp-1024 {\n// @media (min-width: $vp-1024) {\n// @content;\n// }\n// }\n\n// @mixin vp-1280 {\n// @media (min-width: $vp-1280) {\n// @content;\n// }\n// }\n\n// @mixin vp-1440 {\n// @media (min-width: $vp-1440) {\n// @content;\n// }\n// }\n\n// @mixin vp-1920 {\n// @media (min-width: $vp-1920) {\n// @content;\n// }\n// }\n\n// ---------------------------------\n\n// не нужно добавлять свои миксины для ресета списков, обнуления кнопок и прочие\n// этим вы усложняете работу команды, проверку вашего кода и будущую поддержку проекта\n",".custom-input,\n.custom-textarea {\n position: relative;\n\n display: flex;\n width: 530px;\n padding: 14px 0 28px;\n\n @media screen and (max-width: 767px) {\n padding: 4px 0 48px;\n width: 100%;\n }\n\n label {\n display: flex;\n align-items: center;\n width: 100%;\n\n @media screen and (max-width: 767px) {\n align-items: flex-start;\n flex-direction: column;\n }\n\n input,\n textarea {\n flex-grow: 1;\n max-width: 300px;\n min-height: 48px;\n margin-left: auto;\n padding: 10px;\n\n border: 2px solid rgba(#000000, 0.2);\n border-radius: 5px;\n outline: none;\n\n transition: border 0.3s ease;\n\n @media screen and (max-width: 767px) {\n max-width: unset;\n width: 100%;\n }\n\n &:hover {\n border: 2px solid rgba(#000000, 0.5);\n }\n\n &:focus {\n border: 2px solid rgba(#000000, 0.8);\n }\n }\n }\n\n &__label {\n @media screen and (max-width: 767px) {\n margin: 0 0 18px 0;\n }\n }\n\n &__error {\n position: absolute;\n right: 0;\n bottom: 35px;\n\n color: #ff1553;\n\n opacity: 0;\n\n transition: opacity 0.3s ease;\n\n @media screen and (max-width: 767px) {\n bottom: 20px;\n }\n }\n\n &.is-invalid {\n input,\n textarea {\n border: 2px solid #ff1553;\n\n &:focus,\n &:hover {\n border: 2px solid rgba(#ff1553, 0.5);\n }\n }\n }\n\n &.is-valid {\n input {\n border: 2px solid #22b259;\n\n &:focus,\n &:hover {\n border: 2px solid rgba(#22b259, 0.5);\n }\n }\n }\n\n .input-message {\n position: absolute;\n right: 0;\n bottom: -5px;\n\n &.is-invalid {\n color: #ff0000;\n }\n\n &.is-valid {\n color: #15ab07;\n }\n }\n}\n",".custom-toggle {\n position: relative;\n font-size: 18px;\n line-height: 27px;\n font-weight: 300;\n\n display: flex;\n width: 500px;\n padding: 14px 0 10px 36px;\n\n @media screen and (max-width: 767px) {\n padding: 14px 0 10px 0;\n width: 100%;\n }\n\n &:last-of-type {\n padding: 14px 0 58px 36px;\n\n @media screen and (max-width: 767px) {\n padding: 14px 0 58px 0;\n }\n }\n\n input {\n position: absolute;\n\n width: 1px;\n height: 1px;\n margin: -1px;\n\n clip: rect(0 0 0 0);\n }\n\n label {\n position: relative;\n\n padding-left: 52px;\n\n cursor: pointer;\n\n span {\n margin-bottom: 0;\n margin-left: 0;\n }\n }\n\n &--checkbox {\n .custom-toggle__icon {\n position: absolute;\n top: 0;\n left: 0;\n\n width: 28px;\n height: 28px;\n\n border: 1.5px solid #2c39f2;\n\n transition: border 0.3s ease;\n\n &::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n\n width: 20px;\n height: 20px;\n\n background-color: rgba(#2c39f2, 0);\n\n transform: translate(-50%, -50%);\n\n transition: background-color 0.3s ease;\n }\n }\n }\n\n &--radio {\n .custom-toggle__icon {\n position: absolute;\n top: 0;\n left: 0;\n\n width: 28px;\n height: 28px;\n\n border: 1px solid #2c39f2;\n border-radius: 50%;\n\n transition: border 0.3s ease;\n\n &::before {\n content: \"\";\n position: absolute;\n top: 50%;\n left: 50%;\n\n width: 20px;\n height: 20px;\n\n color: rgba(255, 255, 255, 0);\n\n border-radius: 50%;\n transform: translate(-50%, -50%);\n\n transition: color 0.3s ease;\n }\n }\n }\n\n input:checked + .custom-toggle__icon {\n border: 1.5px solid #2c39f2;\n\n &::before {\n background-color: #2c39f2;\n }\n }\n\n &.is-invalid {\n label span {\n color: #ff1553;\n }\n }\n\n .input-message {\n position: absolute;\n right: 0;\n bottom: -5px;\n\n &.is-invalid {\n color: #ff0000;\n }\n\n &.is-valid {\n color: #15ab07;\n }\n }\n}\n",".accordion {\n //max-width: 500px;\n margin: 0 auto 50px auto;\n\n & & {\n width: 90%;\n margin: 0 auto;\n }\n\n &__element:last-child {\n position: relative;\n margin-bottom: 0;\n\n &::before{\n position: absolute;\n content: \"\";\n left: 0;\n right: 0;\n bottom: -21px;\n height: 1px;\n background-color: $color-primary-light;\n }\n }\n\n &__element {\n position: relative;\n margin-bottom: 18px;\n padding-top: 24px;\n border-top: 1px solid $color-primary-light;\n }\n\n &__element.is-active .accordion__toggle::after {\n display: none;\n }\n\n &__button {\n width: 100%;\n padding: 10px;\n cursor: pointer;\n border: none;\n background-color: $color-transparent;\n }\n\n &__wrapper {\n padding: 5px 10px;\n }\n}\n\n.accordion__toggle{\n position: absolute;\n right: 0;\n top: 25px;\n width: 42px;\n height: 42px;\n border: 1px solid $color-primary;\n border-radius: 50%;\n\n &::before{\n position: absolute;\n content: \"\";\n width: 18px;\n height: 1px;\n left: 11px;\n top: 21px;\n background-color: $color-primary;\n }\n &::after{\n position: absolute;\n content: \"\";\n width: 18px;\n height: 1px;\n left: 11px;\n top: 21px;\n background-color: $color-primary;\n transform: rotate(90deg);\n }\n\n &:hover,\n &:focus{\n background-color: $color-primary;\n\n &::before,\n &::after{\n background-color: $color-default-white;\n }\n }\n\n &:disabled{\n opacity: 0.3;\n }\n}\n\n.accordion__title{\n text-align: left;\n font-family: $ff-placeholder;\n font-size: 20px;\n font-weight: 500;\n line-height: 1.2;\n color: $color-primary;\n letter-spacing: 0.2px;\n}\n\n.accordion__discription{\n font-family: $ff-placeholder;\n font-size: 18px;\n font-weight: 300;\n line-height: 1.4;\n color: $color-primary;\n}\n","header {\n position: relative;\n margin: 0 auto;\n width: 1366px;\n\n &::before {\n position: absolute;\n background-image: $blue-to-red;\n\n width: 1366px;\n height: 642px;\n\n content: \"\";\n }\n}\n\n.header__logo {\n position: absolute;\n order: 1;\n top: 25px;\n left: 103px;\n}\n\n.header__contact-link {\n position: absolute;\n order: 1;\n top: 16px;\n right: 103px;\n font-family: ff-Alumnisans;\n font-size: 24px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: -0.6px;\n font-style: normal;\n color: $color-default-white;\n}\n",".intro {\n margin: 0 auto;\n width: 1366px;\n padding: 33px 240px 92px 250px;\n}\n\n.intro__wrapper {\n display: flex;\n justify-content: space-between;\n padding-right: 64px;\n}\n\n.intro__text {\n display: flex;\n flex-direction: column;\n align-items: flex-end;\n text-align: right;\n\n}\n\n.intro__title {\n font-family: $ff-Alumnisans;\n font-size: 50px;\n font-weight: 600;\n line-height: 114px;\n letter-spacing: 1.8px;\n color: $color-default-white;\n padding-bottom: 46px;\n}\n\n.intro__subtitle {\n order: -1;\n font-family: Alumni Sans;\n font-size: 48px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.44px;\n color: $color-default-white;\n text-align: right;\n padding-top: 110px;\n padding-bottom: 12px;\n padding-right: 50px;\n}\n\n.intro__description{\n position: absolute;\n top: 305px;\n left: -128px;\n font-family: $ff-placeholder;\n font-weight: 400;\n font-size: 14px;\n line-height: 1.5;\n color: $color-default-white;\n letter-spacing: -0.7px;\n}\n\n.intro__link-buy{\n padding: 20px 56px;\n letter-spacing: 0.9px;\n}\n",".button {\n box-sizing: border-box;\n display: inline-block;\n text-align: center;\n text-decoration: none;\n font-family: $ff-placeholder;\n font-weight: 600;\n font-size: 11px;\n line-height: normal;\n color: $color-default-white;\n background-color: $color-transparent;\n border: 4px solid $color-default-white;\n text-transform: uppercase;\n cursor: pointer;\n}\n",".gym {\n margin: 0 auto;\n width: 1366px;\n padding: 80px 103px 166px 163px;\n}\n\n.gym__wrapper {\n display: flex;\n justify-content: space-between;\n}\n\n.gym__text {\n display: flex;\n flex-direction: column;\n padding-top: 40px;\n padding-right: 85px;\n}\n\n.gym__title {\n font-family: $ff-Alumnisans;\n font-size: 32px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.44px;\n color: $color-primary;\n padding-bottom: 8px;\n}\n\n.gym__subtitle {\n font-family: $ff-placeholder;\n font-size: 14px;\n font-weight: 400;\n line-height: 1.5;\n color: $color-primary;\n padding-bottom: 40px;\n letter-spacing: 0.7px;\n}\n\n.gym__description {\n font-family: $ff-placeholder;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.5;\n color: $color-primary;\n\n &--supergym {\n padding-bottom: 8px;\n }\n}\n\n.gym__video-wrapper {\n position: relative;\n}\n\n.gym__video {\n margin-left: 378px;\n margin-top: -112px;\n\n}\n\n.gym__video-button {\n position: absolute;\n width: 100px;\n height: 100px;\n top: 64px;\n left: 518px;\n background-color: transparent;\n border-radius: 50%;\n border: none;\n}\n\n.gym__button-image {\n transform: rotate(150deg);\n}\n\n.gym__button-border {\n position: absolute;\n top: 0;\n left: -9px;\n width: 100px;\n height: 100px;\n}\n","[data-tabs=\"parent\"] {\n overflow: hidden;\n\n &.no-transition {\n > [data-tabs=\"control\"],\n > [data-tabs=\"content\"],\n > [data-tabs=\"element\"] {\n transition: none;\n }\n }\n\n &.no-transition-global {\n [data-tabs=\"control\"],\n [data-tabs=\"content\"],\n [data-tabs=\"element\"] {\n transition: none;\n }\n }\n}\n\n[data-tabs=\"parent\"] [data-tabs=\"content\"] {\n position: relative;\n}\n\n[data-tabs=\"element\"] {\n position: absolute;\n\n visibility: hidden;\n opacity: 0;\n\n transition: opacity 0.3s ease-in, visibility 0.3s ease-in;\n}\n\n[data-tabs=\"element\"].for-load {\n position: static;\n visibility: visible;\n opacity: 1;\n\n transition: none;\n}\n\n[data-tabs=\"element\"].is-active {\n z-index: 1;\n\n visibility: visible;\n opacity: 1;\n}\n",".gym-membership{\n position: relative;\n margin: 0 auto;\n width: 1366px;\n padding-top: 118px;\n padding-bottom: 80px;\n background-color: $color-background-grey;\n}\n\n.gym-membership__title{\n font-family: $ff-Alumnisans;\n font-size: 36px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: $color-primary;\n padding-bottom: 18px;\n text-align: center;\n}\n\n.gym-membership__image{\n position: absolute;\n right: -10px;\n bottom: -255px;\n}\n",".cards__list {\n display: grid;\n grid-template-columns: 1fr 1fr 1fr;\n gap: 30px;\n margin: 0 auto;\n padding: 0 103px;\n list-style-type: none;\n width: 1366px;\n}\n\n.cards__item {\n box-sizing: border-box;\n border: 7px solid $color-transparent;\n display: flex;\n flex-direction: column;\n text-align: center;\n align-items: center;\n padding-top: 54px;\n padding-bottom: 60px;\n padding-right: 62px;\n padding-left: 62px;\n background-color: $color-default-white;\n\n &--current{\n border-image: $red-to-blue;\n border-image-slice: 1;\n\n & .cards__link-buy{\n border: none;\n background-image: $red-to-blue;\n color: $color-default-white;\n padding: 26px 43px;\n }\n }\n}\n\n.cards__title {\n font-family: $ff-placeholder;\n font-weight: 700;\n font-size: 23px;\n line-height: 1.1;\n color: $color-primary;\n margin-bottom: 10px;\n}\n\n.cards__description {\n font-family: $ff-placeholder;\n font-weight: 400;\n font-size: 16px;\n line-height: 1.5;\n color: $color-primary;\n margin-bottom: 12px;\n}\n\n.cards__price {\n font-family: $ff-placeholder;\n font-weight: 700;\n font-size: 60px;\n line-height: 1.5;\n color: $color-blue;\n margin-top: -97px;\n margin-bottom: 35px;\n}\n\n.cards__price-shadow{\n font-family: $ff-placeholder;\n font-weight: 700;\n font-size: 100px;\n line-height: 1.5;\n color: $color-light-grey;\n}\n//\n.cards__link-buy{\n color: $color-primary;\n font-size: 11px;\n font-weight: 700;\n letter-spacing: 1.3px;\n border: 2px solid $color-primary;\n padding: 24px 39px;\n}\n",".super-games{\n margin: 0 auto;\n width: 1160px;\n padding-top: 118px;\n padding-bottom: 106px;\n }\n\n.super-games__wrapper{\n display: grid;\n grid-template-columns: 500px auto;\n}\n\n.super-games__images{\n background-size: cover;\n}\n\n.super-games__text{\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n padding-top: 85px;\n padding-right: 75px;\n padding-bottom: 83px;\n padding-left: 77px;\n background-color: $color-banner-red;\n}\n\n.super-games__intro{\n display: grid;\n grid-template-columns: 201px auto;\n gap: 50px;\n}\n\n.super-games__title{\n font-family: $ff-Alumnisans;\n font-weight: 600;\n font-size: 56px;\n line-height: 0.96;\n color: $color-default-white;\n letter-spacing: 2.46px;\n text-transform: uppercase;\n padding-bottom: 28px;\n text-align: center;\n}\n\n.super-games__description{\n font-family: $ff-placeholder;\n font-weight: 400;\n font-size: 18px;\n line-height: 1.5;\n letter-spacing: -1px;\n color: $color-default-white;\n padding-bottom: 43px;\n}\n\n.super-games__link-application{\n padding: 25px 0;\n font-size: 13px;\n}\n\n.super-games__date-time{\ndisplay: flex;\nflex-direction: column;\ngap: 10px;\n}\n\n.super-games__time-table{\n margin-top: -2px;\n font-family: $ff-placeholder;\n font-weight: 400;\n font-size: 18px;\n line-height: 1.5;\n color: $color-default-white;\n letter-spacing: 0.7px;\n}\n\n.super-games__date-wrapper{\n position: relative;\n display: flex;\n align-items: center;\n gap: 7px;\n\n &::before {\n position: absolute;\n top: 4px;\n right: 0;\n left: 0;\n height: 1px;\n background-color: $color-default-white;\n content: \"\";\n }\n}\n\n.super-games__date{\n font-family: $ff-placeholder;\n font-weight: 700;\n font-size: 40px;\n line-height: 1.5;\n color: $color-default-white;\n}\n\n.super-games__month-year{\n font-size: 14px;\n}\n",".trainer {\n position: relative;\n margin: 0 auto;\n width: 1366px;\n padding-bottom: 102px;\n}\n\n.trainer__title {\n font-family: $ff-Alumnisans;\n font-size: 36px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: $color-primary;\n padding-left: 103px;\n padding-bottom: 48px;\n}\n\n.trainer__swiper {\n width: 1160px;\n margin: 0 auto;\n}\n\n.trainer__swiper-button-prev{\n left: 28px;\n}\n\n.trainer__swiper-button-next {\n right: 28px;\n}\n\n.trainer__swiper-button-prev,\n.trainer__swiper-button-next {\n width: 56px;\n height: 56px;\n background-color: $color-transparent;\n border: 1px solid $color-transparent;\n border-radius: 50%;\n\n &:hover,\n &:focus-visible{\n border-color: $color-primary;\n }\n\n &:active{\n background-color: $color-primary;\n border-color: $color-primary;\n\n &::after,\n &::after{\n color: $color-default-white;\n }\n }\n\n &:disabled::after{\n opacity: 0.3;\n }\n}\n\n.trainer__swiper-button-prev::after,\n.trainer__swiper-button-next::after {\n color: $color-primary;\n font-size: 32px;\n}\n\n.trainer__slide:hover .trainer__slide-title{\n bottom: 216px;\n}\n\n.trainer__slide-title{\n position: absolute;\n left: 50%;\n margin-left: -22%;\n bottom: 23px;\n color: $color-default-white;\n letter-spacing: -0.4px;\n z-index: 5;\n}\n\n.trainer__slide-description{\n display: flex;\n flex-direction: column;\n align-items: center;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: $color-primary-dark;\n opacity: 0;\n transition: opacity .4s linear;\n\n &:hover {\n opacity: 1;\n }\n}\n\n.trainer__slide-subtitle{\n font-family: $ff-placeholder;\n font-size: 15px;\n font-weight: 400;\n line-height: 1.5;\n color: $color-dark-white;\n padding-top: 76px;\n padding-bottom: 34px;\n}\n\n.trainer__slide-list{\n margin: 0;\n padding: 0;\n padding-left: 24px;\n}\n\n.trainer__slide-item{\n font-family: $ff-placeholder;\n font-size: 14px;\n font-weight: 400;\n line-height: 1.5;\n color: $color-default-white;\n letter-spacing: -0.8px;\n padding-bottom: 13px;\n}\n",".advantages{\n margin: 0 auto;\n background-color: $color-background-grey;\n}\n\n.advantages__wrapper{\n padding-top: 110px;\n padding-right: 172px;\n padding-bottom: 129px;\n padding-left: 172px;\n}\n\n.advantages__title{\n font-family: $ff-Alumnisans;\n font-size: 36px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: $color-primary;\n text-align: center;\n margin-bottom: 29px;\n}\n\n.advantages__list{\n margin: 0;\n padding: 0;\n list-style-type: none;\n display: grid;\n grid-template-columns: 1fr 240px 1fr;\n column-gap: 54px;\n row-gap:130px;\n}\n",".advantage {\n position: relative;\n display: flex;\n gap: 32px;\n padding-left: 6px;\n\n &:not(:nth-last-child(-n + 3))::before {\n position: absolute;\n bottom: -76px;\n right: 0;\n left: 0;\n height: 2px;\n background-color: $color-line-red;\n opacity: 0.2;\n content: \"\";\n }\n\n &--center {\n grid-column: 2/3;\n grid-row: 1/3;\n margin-top: 28px;\n margin-bottom: 8px;\n flex-direction: column;\n background-color: $color-background-blue;\n text-align: center;\n padding-top: 42px;\n padding-left: 0;\n gap: 0;\n }\n}\n\n.advantage__number-wrapper {\n position: relative;\n}\n\n.advantage__number {\n font-family: $ff-placeholder;\n font-size: 71px;\n font-weight: 700;\n line-height: 1.5;\n background-color: $color-blue-for-text;\n background-image: $red-to-blue-for-text;\n background-clip: text;\n -webkit-text-fill-color: transparent;\n\n &--center{\n font-size: 76px;\n line-height: 1.2;\n background-image: none;\n background-color: $color-default-white;\n letter-spacing: 1px;\n }\n}\n\n.advantage__number-text {\n position: absolute;\n bottom: 2px;\n font-family: $ff-placeholder;\n font-size: 14px;\n font-weight: 400;\n line-height: 1.5;\n letter-spacing: -1px;\n color: $color-blue-secondary;\n}\n\n.advantage__title{\n padding-top: 20px;\n padding-bottom: 5px;\n font-family: $ff-placeholder;\n font-size: 20px;\n font-weight: 700;\n line-height: 1.5;\n letter-spacing: -0.7px;\n color: $color-primary;\n\n &--center{\n padding: 0;\n color: $color-default-white;\n font-size: 21px;\n letter-spacing: 0.7px;\n padding-bottom: 33px;\n }\n}\n\n.advantage__description{\n font-family: $ff-placeholder;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.4;\n color: $color-primary;\n\n &--center{\n color: $color-default-white;\n }\n}\n\n",".promotions{\n margin: 0 auto;\n}\n\n.promotions__wrapper{\n padding-top: 126px;\n padding-right: 103px;\n padding-bottom: 120px;\n padding-left: 103px;\n}\n\n.promotions__title{\n font-family: $ff-Alumnisans;\n font-size: 54px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: $color-primary;\n text-align: center;\n margin-bottom: 34px;\n}\n\n.promotions__list{\n margin: 0;\n padding: 0;\n list-style-type: none;\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: 40px;\n}\n",".promotion {\n padding: 18px 28px;\n box-sizing: border-box;\n border: 7px solid $color-transparent;\n border-image: $red-to-blue;\n border-image-slice: 1;\n\n &--big {\n padding: 0;\n grid-row: 1/3;\n display: flex;\n border: none;\n }\n}\n\n.promotion__text {\n padding: 37px 44px ;\n background-color: $color-banner-red;\n}\n\n.promotion__title {\n font-family: $ff-placeholder;\n font-size: 22px;\n font-weight: 700;\n line-height: 1.5;\n color: $color-background-blue;\n padding-bottom: 5px;\n\n &--big{\n font-size: 23px;\n color: $color-default-white;\n }\n}\n\n.promotion__price{\n font-family: $ff-placeholder;\n font-size: 70px;\n font-weight: 700;\n line-height: 0.76;\n color: $color-default-white;\n padding-bottom: 26px;\n}\n\n.promotion__description{\n font-family: $ff-placeholder;\n font-size: 16px;\n font-weight: 400;\n line-height: 1.4;\n color: $color-background-blue;\n letter-spacing: -0.9px;\n padding-bottom: 66px;\n\n &--big{\n padding-bottom: 183px;\n color: $color-default-white;\n font-size: 18px;\n letter-spacing: -0.9px;\n }\n}\n\n.promotion__link{\n font-family: $ff-placeholder;\n font-size: 12px;\n font-weight: 700;\n line-height: 1.4;\n color: $color-background-blue;\n letter-spacing: 0.6px;\n text-transform: uppercase;\n border-bottom: 1px solid $color-background-blue;\n\n &--big{\n font-size: 14px;\n color: $color-default-white;\n border-bottom: 1px solid $color-default-white;\n }\n}\n","[data-accordion=\"element\"].is-active > [data-accordion=\"content\"] {\n max-height: 100%;\n}\n\n[data-accordion=\"parent\"].no-transition [data-accordion=\"content\"] {\n transition: none;\n}\n\n[data-accordion=\"content\"] {\n max-height: 0;\n transition: max-height 0.3s;\n overflow: hidden;\n}\n",".faq{\n margin: 0 auto;\n background-color: $color-background-grey;\n}\n\n.faq__wrapper{\n padding-right: 103px;\n padding-left: 103px;\n padding-top: 120px;\n padding-bottom: 54px;\n}\n\n.faq__title{\n font-family: $ff-Alumnisans;\n font-size: 36px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: $color-primary;\n padding-bottom: 40px;\n}\n",".reviews{\n margin: 0 auto;\n width: 1366px;\n}\n\n.reviews__wrapper{\n padding-top: 116px;\n padding-left: 103px;\n padding-bottom: 120px;\n padding-right: 103px;\n}\n\n\n.reviews__title{\n text-align: center;\n font-family: $ff-Alumnisans;\n font-size: 36px;\n font-weight: 600;\n line-height: normal;\n letter-spacing: 1.62px;\n color: $color-primary;\n padding-bottom: 40px;\n}\n\n.reviews__slide-wrapper{\n max-width: 560px;\n margin: 0 auto;\n padding: 54px 62px;\n display: flex;\n gap: 27px;\n background-color: $color-background-blue;\n filter: drop-shadow($color-shadow);\n}\n\n.reviews__swiper-button-prev{\n left: 224px;\n}\n\n.reviews__swiper-button-next{\n right: 224px;\n}\n\n.reviews__swiper-button-prev,\n.reviews__swiper-button-next {\n width: 56px;\n height: 56px;\n background-color: $color-transparent;\n border: 1px solid $color-transparent;\n border-radius: 50%;\n\n &:hover,\n &:focus-visible{\n border-color: $color-primary;\n }\n\n &:active{\n background-color: $color-primary;\n border-color: $color-primary;\n\n &::after,\n &::after{\n color: $color-default-white;\n }\n }\n\n &:disabled::after{\n opacity: 0.3;\n }\n}\n\n.reviews__swiper-button-prev::after,\n.reviews__swiper-button-next::after{\n font-size: 32px;\n color: $color-primary;\n}\n\n.reviews__images{\n align-self: flex-start;\n padding-top: 6px;\n}\n\n.reviews__slide-title{\n font-family: $ff-placeholder;\n font-size: 17px;\n font-weight: 700;\n line-height: 1.5;\n color: $color-default-white;\n padding-bottom: 10px;\n}\n\n.reviews__slide-description{\n font-family: $ff-placeholder;\n font-size: 15px;\n font-weight: 400;\n line-height: 1.5;\n color: $color-default-white;\n letter-spacing: -0.5px;\n}\n"]} \ No newline at end of file diff --git a/build/img/Ellipse (1).png b/build/img/Ellipse (1).png new file mode 100644 index 0000000000000000000000000000000000000000..5c72b779b7be0856db987c3163277e5530a53b12 GIT binary patch literal 38627 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 LNkvXXu0mjf*mKO= literal 0 HcmV?d00001 diff --git a/build/img/Ellipse.png b/build/img/Ellipse.png new file mode 100644 index 0000000000000000000000000000000000000000..0e22b2148ff69e2faa281fdb0cf32185243aaa29 GIT binary patch literal 11864 zcmV-eE~n9nP)N0Fn|(kQ4!1vE{_3fU2k>rIHdTM^%(6DpIMEWB(HP zBNa1$O!`lhM2=`Bai}WWBJ9{INs$P>A(0}N6iI;~2o9e6!tTyK=G}d-zjN;Go`p=B z1PRGi?&4x+XL@?Nzdn!eeCOPuqJPBg$ioj;{EmNsw6`Txv{xBDp_DhFNfGg5GUO?b zH1^e6)$wbj$u$4~wK%~q8GU~&m%!D#T zo-u%m;Uf3L02(MgK9|Qd47x544Spr z$Q{85sBm(l#9Fn9&p?h+^Hp@z^Stjo@rB1~^h?;TIe;A3sGWXD`Q~8&QsIkJhMbEU z2O?Pzjb3vC$^l_5imfwUxTw6(M4?zJ@1q4khANxf1ei(Zru+{MJi9h?| zV~@}^-mWQtpLp_btuu0=)S~Mdsv&|N{Xc*5$A3!K zXuBo=9(nLTP6WRGk}=)^d)jVex8jQs$T*woIQq%oB+n29@(8vgAV$<%TA+o?vs9az zrCu0OK9ixGA5bBiqC&AmyKme|U%F80;#BE+I2xUlLco%rTi7ZCS1HkLdU1oYW! z;nqIA$L)7N{key5LQiV)cg5gIgp0GM>StF5)c2ILNO?j|K*`19fevZYP7h# z0`NjQ-)PfHw@1ZnhB5$Bvz7I_G&MIzVK1a~Hjl&lE^Eg(M@g)e&4EX8LXzjyE*+U8 zx7@ma`e)Cdc!A!-_O1csSa<7f_x)#_>QS6u)~EgndgRX8#V&!6U0T_s;PVA~ngRwR z(iY@yi`w(EG&?&(OU*Vd_d1kIXW`C1b&!?QsT5@b{_!c5%~Cp@qRCUIV7-b8z02)g0Vpo3{jb3x55=cO4mt}Y z^?~F6Bt6>8@$oPPJLTVj3CYtDwOUO&efkuI%~k5a+FB9Z-V3OQV+@yy6awUYCXM45 z2?UI}4=^L_dlrC?R;!f8>zdRRys_`d_^nMsmy~-_OY$*y-g4XiLpR-W-`8K7{J~Z8 z$EybLL4X%|=4pKNE_(p8#?lhlWHV;X^Y|xA3?3{GF6+Ts3|!Q-8+7*kd74{Xq_Ydl zRPT0i9|B4tNU>`da# zL07T8<1EbJrF?oCz)Tor@2<_No=X_^v2xTQ=5mZ^Muif)^67xW)kS*w)iX3zU#24B z*kB<`rE-bB{=%yOHbuVg(F&3SA4#km#|4g5$>(XQ)s_?PMp~#2Tlo0sDDBv~jXcCf z&*yyZ%Q?gsCpXdv9Vc?Pn$a>z_U3c+<#kK5RL$tl!6%>iLhYU4@{U}X-B$VPX#g@2 zCkO3HE!D4HiQ+`U;JMNx4f0h0Fe%*S<=H8E9^n1x>?OFdp-!(yvyB$*-L;)&7ME#i zr9n9WlZN|pj07ox^%*uUsw1)R=XT)s3?M@>HZnw;$HplK7uTFo(TaKOCfin zl+ak-hcBa;L9p+%sXlv=zV`gfGy}lKiaDyoP3Q5r-HWIVgZcG+H`9gLIht;EkX%Rr z31E6DSS0*cT#&(Ii{#L@5rq22>#nDPN>#Angx~>q;}VHdN&1N690>=oNgou6EO(4K zS3>xO%vW&!2X^ea^D8GOPqgX10QiZ|{N5k=Mji5!LR}?kOu0B0+n;jivFq~VQW_V{ zNuj+&KmPga^!nVQaJMpoK3ioMfVA-U43a}WouU1^cZzi^AkOu|uEfD+sKqH6NY7Or zoP~M6axO!qA}EY+v%m6vfz0<=kZ^=r_34Xpl}l`WVwL1*j!{>}GiAmQva&Bd_v5d> zYXCp->EAzsoAigaR`(H$`lLlNoijOSkj|McInD+iMIo#LCE4`sEIoVXyjV#&6G(Ds z0@yZOm^mI-8|P*()A{LHp(NYajnd}PA*vMe*q20UVTk@MX@o|#W9rbQUUQ% z;h5Uo%0}IJiK_A{WaTbpn8E= z)y67an7+h}8A&BY!^qYt-m%%uB4% z^siN(5~A(Ne%_iZgB4e>!K!8gU}&7S<^r=hA4{k{!xv8LiDAI6HXZ$H!49XMfs z4g0s`8Zj$`rPUW{YQ9bj;CayH#F8qotQ=w>A3FmuyRg0-$1lEcC@$pN`>FtFDVG!A zIE<{edr)QqB&M|d3=|49RH=vn+eV^VH?mHSVUm;@2bO+mY59Xnl1;xnR+6EOi{BJq zo85b2_r5!7FHQdV@72w3N~DqNKHo2kwCtvYdfNL!wlbrBJaKMFeKCo-Uk9M6RF=wx z43b0&**8z?21--~D7+I}8<%N5_TdB&;S;g|t&nCAeW^f7s60}>txR(4#<)Nx){Cns z|E8ws!rU|sl#3Lhc4jdmCiP_cI)Wq!SAm!$ZpZsrkBU_s8wYh_801(7@Hl$t2(-?( zv%pV$`u9GMUx$(#NG|uPeyn5uryb`P09}pCL7Vwq&Ij}AbSQ-DwE!Yp2q2?%sB76} zI{(~rr{@>0G%83wEyMRI>qaJ7`OcX19$qJ@iP{>Sg=aNGm(8Q)ejImFI3 zPQBgjAbAwzv)TZ;z{DB}B9Py{xON8wJDW;NZOnM+8d1t!VJj!YY?N=h=+ zaUzVX4|ko)I7QqAqeRiswohZchknrtuK>{V^Z~AOO`@NXOX)0jsu)W9k=mA0ajalo zDr6Rahp>tO79rwjvq9%C&(j<#iN$tEQ|&IH>P75J%So}@g6&WRdLLhO0k4$-Ob0x0 zvDKjzo@4Q$hd9{|t-JMHAEnvp39$Ub)ykRa8M<@I>T3-XkJFD7;WO_mae2JeE2N^G{*mYWD-&$2Z#hqMWM2CsT`WY6HDvM_0AA2 z)ru^jz2*wd&dtyQz~d+y>YnVI0VphE6=AXp@r+G^0Y_SqEu?AoI~`5~!% ztN`KLI$3N;+c>G!Lu)ZhV&L!o`#(5@qd#cxh;fon98D;x(_$9DNHKX8t`tWT2Y!TL z&W~D)uskRy4bT*cYd8TW*eoJ2k1J(zqBJv~EkJD^87NA^h~S1P?)kc=5mzjlr7gH_ z9mmSB0^_?Irfsn2gv9Ki4Xf<-+BAsl%!$WR5gR+%JyasGY3f(P_8BKz%JoPxQfnGk zG3rWZZ`^mscV3zNNsa$Zcp&c3A##1zxCLqY(LoLtb1LPchq#DvE^WPpcZTcniG^_8 zCVm#%EgD7gC?Hmi4T7r;S7{Rz6r&^g9BDprvz&p0mArQ599>#i02gdi16J3Dg|=X2 z9P>0xs*DWH*2}eQ+P7W-l}k8h3s##+dDKFfxD3nRIKC0tJ+OM9hzQEsj55?$XI!^X z+0v9Ndo9Yg^?bD^TH0hIxq+?lcx+3y71_-!#=QjNTu~{@>5OYN+Ph);>?$ddv}8n| zMN(Wu#D7EMo1VLjDk4w!?cIe0fFuBkegGhPu7RszsezvsT4G>QZJ=`L+yy#w?h>86 zFiWeQF8U!IA>2!-URIE~;jkjcvI}ch%d)KB<#>v7<3z+03&m2NZrQPmQus^~isTH) z^Ad~W%kkDyGI2gfW2_<~AdBnkxMme_>Rm6``qUGT)vX1F=>ti6aMtI!)ElRBt@|Hl z;t1@Fl21vR-NyDkLc~6nmTum}ecAHa%3|sgpR?AUqiQ-4M2v~4bj%5@Dul=2@b0Mc_ zNH0SYh@pN4^IQ$9B=%@7fnXV7mop<0f*;X8yY~*UycB-Yxq?J=rXk!Y;yO1AqMSnP zO933|&h{;>wAguXs>rr-fsc)?laEb`kPfHJeN4QPPHFk zUBFTVzI(P-Mu>u1Vq;kfv1zDOpz*PFa?(M*2(2z9S&~oG2M8V~0$7LTW?GaKjVv8N zKTIJz7g77>Q&6x)*6N8G<9W{cxQfAhLP%X*gn>4@Z)B|0<%l!aB=zMbfQa@el8TAq zhO50&Wui6L%GVtw;Y%ev&{%G5T=Az&lB*RDNAVGlJbaXgeJ0e}RAaeH662&iOA2#m zo$+oiCRz@vrCSDhgeEp`qyT)5dlq6a;gK!>1j%X*A z=jet>hMumZbR@(nZk6f@Ce@(+t-V)(M{#UZ$-$(VZDRKB!hp-n+QhNaNL|Z!vxhi0 z3b|bZHe8mi&qKZIv8x7FmSPSW;-aEZ3z!T(E6V(O23A-aDA0PiaR6&%ah3UA$UIO$ zw3cG~Fs^q(RvGsZOH+0PLG(ig)<@aLrC-M-B%QdVcGy6M4p! zt@=J@vM(b!mT3z#(m1fOqcw&G^036nUMa&gd; zC}N@WBvHii!NeaFH@Kw2h-ej>pGfaQeIg;qa)NAua3Pfn#M+E=IW5)^F=CX-4_Gka z&b>}c+`a(r$Zk8aZU_yhRfq~bP?}I;YKPsClLG$b49w@y#ksJE%iTJb$9jl)Os7Hz zyc8Ci6A8`^p@Y4_Gd5w!b*eS=%+_{mMo^r3!$5O4(#ikI(|gdrFgM ztm(!SM#nL%U)lvc{6i&LMRT0pZMc}0@e97w5xXhe$cx~L&89roaB=2vY#m4epf)|> zh{b^lv6j;6)saX7X{xUutV)2@(>zDjb)nHvJOCM>Z~kNb779ss6sd%t}e`rV89j1+1VvX_lqd? zR)tU(AueoOH%wc%jM4apaeHHMu>-{dO1uK?n;4_uyrMIUD`>tWBxn$GFO<$5$Grk# z-9)AFp$U2m8eD}L> z#d>{(e)QZ+l1aH?KC!M!qeE4R#9WEY&CJr~jpK0R0_6%h#M3gQE6X9<;YF$~MIhI< z?U@af)W!!kkJ9ZMM(E|)Mf%Fi=j1hxl|Ikw1Wbn_3mVtts-GLQaW$K}7UkKhLo3_V z7bldo?docWfh)ks-}}CM{?J%$o)VU0jI%*!c_xmHiC)n!hvb*J0?;yb=zTYAqYA=W zfeAJ&tOBt!oiE4OkeQc8T6NVTDb|eM7RuyAl{td1C-wnw5IfHIrOST)SCyH)hyzGGX-EsY9 zstgZP5mr{H4hp!OR(_>yWUv50+@hwoNqolb7jzW7uc5 zjy6JC&Z`F=$aw^!aJ71YVw6r0Fwr^p`(9MVmHlrqwiFxNw;^--1K|S1v;I$JZxQtc z2;U`FndA0cptOw@rJ}wDmMF3P1W(ExD2mP4j_pRqOWZ&n zTmXOY@Yp!*^PvaAa<(olqv?cZ(~u9)M(Dnqw@?+ILqp+wU1 z$S58CwcBX=;zepKH)x=`4gx|>UMryAF%JI68sQu|YXK-rv0O&d$WsZHna$?q1bGrd zi`o(;QI{uG%cxX_5c8N9@_oSC`09f8B{1(bqTwN`yeoc>CM^z}e%n{DIfbCM2REo_|fk#I`YCzw*-D&LV&CaGaE=u-t4 z)sYd)yTIcr!y}eZGYF^%{2+r28c?-bmd}*2UA8!`5_pIx;Fy{gfq@lj5ft!z51cWF z#IXSt$}AGa>zC$WnHsH9^ocjEgXLxD8EA?5LQ%>-ChMNhRu$SM5^i~gTq&239KJj^ zpzeqbx#W^06^hj#3v5hv5Kn8|J*;8Ri6l8#Xs#IBptwRYjzc9b?f1(&r^+a8RgDrX zAd@Xnsf_1JTBwA`NB~1~wZSKgyO)9`aut$d;Q_Dl>v9$$?7(Bd+7v=h3?WZNTqZ(f zViafR_nO9mL#nFz#vFCh;|s+WeDtI0E^p`JV?ZqO^-zY?kD4U7G#;y zaAM&Zn>qkyrHbXMODk>qo7yamZrB1HGK~bnqat>c*iJjx;dagkGP0t)gsR13G{)%y zHulA_((Y$sg-ToQh*Gc?K*60v@cejEM%(o3K48trS5h9S#7b4-*RG%7S>~@`84JjS z&UsFl!VBh9jMVEz+i!v z`6GAtIGH?mZipW$(j zlq8K;F3ivpEHw-Fo|>7WjkyWLP@Y}@|MOVdvNzAD_!?Z9cSSQj=EANbGm#Bh%1;Uj z8zUof^!RuXM0C98tA3oLwIy2LBJH8|n!l+}K;zfs5y!=l=9U^Vzf#nY))(h!X_aDI@r>f{ix7{$$XPAcqTB1hRw$nM-k5?O9? zatNuMPg4Oz`rN{*$XBdCGtc8?58M+jS1Q8&B*sOqr-Pfv?%f}QB4<1<-wLR9wTp4n ztjb+ytRaZ0ApSk|zrOgWTdSat#azksM|0dkOu~hn%1Uv2&yws|Aa(sa3DD>AXYM(*nAB+6?$ z)nNJ_=R{EsUB~$;X=~ydk0WS4#BWwkZBEu(D4h^Yd&fLi@40=vIDOgYjpu?gex03} zhsA_4h8r%Sxl>=I%kztnv!L(c;!|+jSX>w==4mvSwFyUCWhjDd#TLp5B=))hZBTae zY}O7IFOe z7X!6$UHi240&Z^M)u$2wISzI_Rp;Ru<+<{PEN_ZaxFwD%NgTEW(voOw%h26ze3C<_3GMn@CCnDa5k;iV2S zh3R(fTucSP<)GSd_pVaRi5la<%JP9HjVGp2VY`X zMsacpOeOimwFR^zIoK_1cfLbwf&l%iPyC0k0_{UFMYc-|NC2_^A0}~8#Zyl)Z&$`q z0IPHesLtcBAFI;6>+`rk^o5%}Ng&MexE-lcZ3K|C6cPg$`%B2y%8b=)U*?E?9J2G2O9TO#Qb$DaIe4mk#5$F% z^>GP0qPSya%Q>?q;M=i~8U)U}uN$N6V1+Kf{wgic&5H~lA&?hP_ZBHj0jz)+N+zjy*4zIkYXmO4G~!bmKYd&{8l#8lAN z{dOc9f+UF~Dd7D9$1hH3>C>tmKcqWCm3uGJNYh#HMIuO#~yfS5$~$F>cvho zxg`a*d+*9M=dR+aap~wxUE+mt#Xt9n@%r}R0v+1Fn;LUdG+jFRAzCXBU=fq0y$Zh_yu| ztP%u_nfV#ozjX{c;;?|(0P*gLJ4!(!txq0(UU($bcFSae`*PfM+A*#b*lZS+9$ z0Iv#hfhS=R-Dq8Lh+aeQWO!^ZRmRuT|NPot(MNCHN%!Bi8zG`BYmGzPoWKpbGnzbN zqClaVh_!qpPR^~+Dad5Y9UDfHDn+TIYcacGMtaBIyCx9{9>k7W>ygHOfU&iQ6<+(s zYuhMmpNUP8T-_YHxje)sJidARgl$F|D=Tq*s-v!e&$BG6OG~r}<@(~xWx5F0Uszrh zg}aJ&KpvVQTR01)8B{ZTL2SwM&=ZFT%alVB;g;rTrAQl+3b@X5V`WtlP&YN+}Rr=n`Kc}14kI*;-+YI8b z5714WXxKNk=$SlC)I+>^KxmV1y zFri3YmhTM$pwZDG8W82ZRq7%07JkA69JgDa9-8 zAO73#eD8&~1(3H_CZCzSY47_F;Ne8FnkQ*2#};Sro_1A744UPJNg8(&g(vBM6=ZpS zwMT#b!b!Sme2_MR0JCcj4OOTGVA~9iECuuIswPPPxqL>5uLA91(ksK7#;P?vT(p#R z(j-Ds5Q~MdiWtfBh}=BloA?*s{w~1G;`kBG%uWkn@4J3$a{k7Jnwa-_Eb{tps*L+7 zCVJ}r&wTC=-VCcZU8y9Ya^9hb>*quRPPFSdT+)suAm zg-Lqm)G5if$6q^(i%O&UzKD$5l&sk1kzRnzf&kMD*8Y5DCHDpZo}A8M(o8=5(;69cXH87#^ahzxy=ZvFCPxo26%8KaV7JSr!3F9EC6&c3Jgq ziDDD6bjE}7eC!il?yRwx2uQM6tF08aLUMb6-Q* zv`6=B8=*T!b2NGSb*jOgSS;XKn)8$YL6Gxc(!U`3dCUXJR+BVJYVPuEx~7jDqXlVO+PvL8hv2@2M|w(>BW;j zlfn1vH;p-t=fqqtA$8>VtXmRm)PuY4|LAwF8bID&dGVPOH}Ac@3fS(n7^!4-%OuVC zIL_H+Td~Cs+j2$WarwrADqOJxtNr$~FCZM0>F&Gk zqGu<6D)Tw_?%8SS6jw(0Easy;xfRL?9E%I)@!j`-z zpKm`iNo^c!@6CJYl~;a-3T2M=U%yQfmk@b`gbseUQ3Y{Tguf^6`S_;}za2i_+wH)k z{D?z`VOh1lYHN}yc8YtPq-F8Tt(z+J&v%Vb5yZKRioy;!A~B#Le)raOvb?o}ShI=~ zO=pYrBlI&kkt{5?XbJ$Y;zIb4Okr5~US*9gz z4{OPGHIpZGb#+_N@{JB`2{Mt-U)6*Q;tFCHgwGpC zE3~v+hl&D)rZPgW%`a1zSFxicn@1yR3RI`jweozLhcj`8veY$aN901h)@*=`Lz(FS z#1O766R<=wOv#oglmFafW-DY6kyY>6b0gL9xpn?VIJf_aldszeEFLiNIyE0Gy?Ho?0Lm>wIuUp3HBw zdy*v!{DovG-+oPs{P<#VsdPp_c2exL)wUz=Z5v0Wx(^y*&6-!{(T}u z$oJ4FRYUAO_{snDc*5eJmB|L%B>)xnaW~-L`F+Wb z=AVIOWlCk+%+~#qk1d5aUL*H9=*TM_UEZsj&tAq@$=M$%iMqe zhw1w5+vr>0KTbQx$7t8KP3$S~uHM0qeD0CjRX}p}-<@^xr4#kv{?M--JMtTM9k_MZ z*0GH!u{g$LQHWW;|SJVD#6tUid2?37>EYRH>T6+Nn4YL*?C=xfd!^{;Ub3({sttd(ENEY zNy)101wVW39KG=R8M^nbd+3H8*U>kQAE!1-$`9_pZ8DWrzjg56ex^oOxxJ$p_>0@4 zk3L#^|L^?EeW^_Gajr9c(1TQ-RgGcF@uUGysREn;;ADANs92;N4^z6Otk;hZ!|go8 zuoc>|^CnaiIr`>{rznTYV>4dcv3VWs*|ABMD=dI$bA`aeLIWlKj)Wpr@>#J?9zy3H z3|A@aw&`?6j^+8bHkK6vl4v4X4Yluv>tNX}A^NQUZQi(h?_Tz(XG38qQjP@E|LbXCoaGWt8n`b8^>UI75T0#-L(r3 zO9%yd2m~1^<8qQ%gcQ5@%L#4o&h7F|n5W-3%`Bk)nNNP|v&&~*dHC=HpMBR~oBW;t z6cG2_{sc1SJ^=F+2YV*T#>GBaWW%8G_Zt9629$x|&f4BB>rsxikwm6wY{N!kF8No_ zpQJ@(Vpfhhh7OGm({<1gdBit@aFBr&70~M)8XpIU>!}2R6$g>>jMZrdkEJMXD6#wU zk_lc7MQ)spWvopjRr=d+e&hJLiyTR<@+pz&;mlj@bHjWGLO5-mqc){mw6{w5^cPf39-!8a77VH5<)_%?c2HiNbSTo z4<7y0;Tm0o?V11>Z`a@c{wH?6|IV#p*m*>^o3)7fRv1}pWP%F|$-ruOrRLW4qcjek zkL%B_<7Iro--XDqguceo$||kYm#7JqniBxKV3$P)fW(911t`?j!K!3k?x8eSmZ*iF z4oWn3`AEkjY@)E#L37Gj7f@qUW3tMz zF_kaKw0;>Gdn+>d)=gXJ$iMz~u*?C`-%icU(G)6;Zcoz+=t_MV8X~|H6$TwTUaX@T zL>#kRM&{?KSGHz-{FKTSP?Y9me-FNu#HUEnEfPP8aU57tb z!>=d!=ZAmx#X|`AhY+4VuANH<5Ct}%6?yvg8K}~i01$#c_#3C#K6bz{n!J?>6g4I`W0@^f9Xq=6~B7` zR(S}WxBI^K!{;Xc`0GCq>svpvo@UVYY&TbBy5PV3o8O_~azVOmqVt8)laPvoN8z|c zWbuH(gO*s+z3wrS3XV5(t>cFuIQmcPe@5_D+o1!8D*x~F$-Se)qX*_1%UcSbKLOfN zSzcP0ICRIYl_MX#6Pj&Ltc#~XIp9F5sww{8Vi-Lcq_SuIV*2>O_drA5>-KlN0Fn|(kQ4!1vE{_3fU2k>rIHdTM^%(6DpIMEWB(HP zBNa1$O!`lhM2=`Bai}WWBJ9{INs$P>A(0}N6iI;~2o9e6!tTyK=G}d-zjN;Go`p=B z1PRGi?&4x+XL@?Nzdn!eeCOPuqJPBg$ioj;{EmNsw6`Txv{xBDp_DhFNfGg5GUO?b zH1^e6)$wbj$u$4~wK%~q8GU~&m%!D#T zo-u%m;Uf3L02(MgK9|Qd47x544Spr z$Q{85sBm(l#9Fn9&p?h+^Hp@z^Stjo@rB1~^h?;TIe;A3sGWXD`Q~8&QsIkJhMbEU z2O?Pzjb3vC$^l_5imfwUxTw6(M4?zJ@1q4khANxf1ei(Zru+{MJi9h?| zV~@}^-mWQtpLp_btuu0=)S~Mdsv&|N{Xc*5$A3!K zXuBo=9(nLTP6WRGk}=)^d)jVex8jQs$T*woIQq%oB+n29@(8vgAV$<%TA+o?vs9az zrCu0OK9ixGA5bBiqC&AmyKme|U%F80;#BE+I2xUlLco%rTi7ZCS1HkLdU1oYW! z;nqIA$L)7N{key5LQiV)cg5gIgp0GM>StF5)c2ILNO?j|K*`19fevZYP7h# z0`NjQ-)PfHw@1ZnhB5$Bvz7I_G&MIzVK1a~Hjl&lE^Eg(M@g)e&4EX8LXzjyE*+U8 zx7@ma`e)Cdc!A!-_O1csSa<7f_x)#_>QS6u)~EgndgRX8#V&!6U0T_s;PVA~ngRwR z(iY@yi`w(EG&?&(OU*Vd_d1kIXW`C1b&!?QsT5@b{_!c5%~Cp@qRCUIV7-b8z02)g0Vpo3{jb3x55=cO4mt}Y z^?~F6Bt6>8@$oPPJLTVj3CYtDwOUO&efkuI%~k5a+FB9Z-V3OQV+@yy6awUYCXM45 z2?UI}4=^L_dlrC?R;!f8>zdRRys_`d_^nMsmy~-_OY$*y-g4XiLpR-W-`8K7{J~Z8 z$EybLL4X%|=4pKNE_(p8#?lhlWHV;X^Y|xA3?3{GF6+Ts3|!Q-8+7*kd74{Xq_Ydl zRPT0i9|B4tNU>`da# zL07T8<1EbJrF?oCz)Tor@2<_No=X_^v2xTQ=5mZ^Muif)^67xW)kS*w)iX3zU#24B z*kB<`rE-bB{=%yOHbuVg(F&3SA4#km#|4g5$>(XQ)s_?PMp~#2Tlo0sDDBv~jXcCf z&*yyZ%Q?gsCpXdv9Vc?Pn$a>z_U3c+<#kK5RL$tl!6%>iLhYU4@{U}X-B$VPX#g@2 zCkO3HE!D4HiQ+`U;JMNx4f0h0Fe%*S<=H8E9^n1x>?OFdp-!(yvyB$*-L;)&7ME#i zr9n9WlZN|pj07ox^%*uUsw1)R=XT)s3?M@>HZnw;$HplK7uTFo(TaKOCfin zl+ak-hcBa;L9p+%sXlv=zV`gfGy}lKiaDyoP3Q5r-HWIVgZcG+H`9gLIht;EkX%Rr z31E6DSS0*cT#&(Ii{#L@5rq22>#nDPN>#Angx~>q;}VHdN&1N690>=oNgou6EO(4K zS3>xO%vW&!2X^ea^D8GOPqgX10QiZ|{N5k=Mji5!LR}?kOu0B0+n;jivFq~VQW_V{ zNuj+&KmPga^!nVQaJMpoK3ioMfVA-U43a}WouU1^cZzi^AkOu|uEfD+sKqH6NY7Or zoP~M6axO!qA}EY+v%m6vfz0<=kZ^=r_34Xpl}l`WVwL1*j!{>}GiAmQva&Bd_v5d> zYXCp->EAzsoAigaR`(H$`lLlNoijOSkj|McInD+iMIo#LCE4`sEIoVXyjV#&6G(Ds z0@yZOm^mI-8|P*()A{LHp(NYajnd}PA*vMe*q20UVTk@MX@o|#W9rbQUUQ% z;h5Uo%0}IJiK_A{WaTbpn8E= z)y67an7+h}8A&BY!^qYt-m%%uB4% z^siN(5~A(Ne%_iZgB4e>!K!8gU}&7S<^r=hA4{k{!xv8LiDAI6HXZ$H!49XMfs z4g0s`8Zj$`rPUW{YQ9bj;CayH#F8qotQ=w>A3FmuyRg0-$1lEcC@$pN`>FtFDVG!A zIE<{edr)QqB&M|d3=|49RH=vn+eV^VH?mHSVUm;@2bO+mY59Xnl1;xnR+6EOi{BJq zo85b2_r5!7FHQdV@72w3N~DqNKHo2kwCtvYdfNL!wlbrBJaKMFeKCo-Uk9M6RF=wx z43b0&**8z?21--~D7+I}8<%N5_TdB&;S;g|t&nCAeW^f7s60}>txR(4#<)Nx){Cns z|E8ws!rU|sl#3Lhc4jdmCiP_cI)Wq!SAm!$ZpZsrkBU_s8wYh_801(7@Hl$t2(-?( zv%pV$`u9GMUx$(#NG|uPeyn5uryb`P09}pCL7Vwq&Ij}AbSQ-DwE!Yp2q2?%sB76} zI{(~rr{@>0G%83wEyMRI>qaJ7`OcX19$qJ@iP{>Sg=aNGm(8Q)ejImFI3 zPQBgjAbAwzv)TZ;z{DB}B9Py{xON8wJDW;NZOnM+8d1t!VJj!YY?N=h=+ zaUzVX4|ko)I7QqAqeRiswohZchknrtuK>{V^Z~AOO`@NXOX)0jsu)W9k=mA0ajalo zDr6Rahp>tO79rwjvq9%C&(j<#iN$tEQ|&IH>P75J%So}@g6&WRdLLhO0k4$-Ob0x0 zvDKjzo@4Q$hd9{|t-JMHAEnvp39$Ub)ykRa8M<@I>T3-XkJFD7;WO_mae2JeE2N^G{*mYWD-&$2Z#hqMWM2CsT`WY6HDvM_0AA2 z)ru^jz2*wd&dtyQz~d+y>YnVI0VphE6=AXp@r+G^0Y_SqEu?AoI~`5~!% ztN`KLI$3N;+c>G!Lu)ZhV&L!o`#(5@qd#cxh;fon98D;x(_$9DNHKX8t`tWT2Y!TL z&W~D)uskRy4bT*cYd8TW*eoJ2k1J(zqBJv~EkJD^87NA^h~S1P?)kc=5mzjlr7gH_ z9mmSB0^_?Irfsn2gv9Ki4Xf<-+BAsl%!$WR5gR+%JyasGY3f(P_8BKz%JoPxQfnGk zG3rWZZ`^mscV3zNNsa$Zcp&c3A##1zxCLqY(LoLtb1LPchq#DvE^WPpcZTcniG^_8 zCVm#%EgD7gC?Hmi4T7r;S7{Rz6r&^g9BDprvz&p0mArQ599>#i02gdi16J3Dg|=X2 z9P>0xs*DWH*2}eQ+P7W-l}k8h3s##+dDKFfxD3nRIKC0tJ+OM9hzQEsj55?$XI!^X z+0v9Ndo9Yg^?bD^TH0hIxq+?lcx+3y71_-!#=QjNTu~{@>5OYN+Ph);>?$ddv}8n| zMN(Wu#D7EMo1VLjDk4w!?cIe0fFuBkegGhPu7RszsezvsT4G>QZJ=`L+yy#w?h>86 zFiWeQF8U!IA>2!-URIE~;jkjcvI}ch%d)KB<#>v7<3z+03&m2NZrQPmQus^~isTH) z^Ad~W%kkDyGI2gfW2_<~AdBnkxMme_>Rm6``qUGT)vX1F=>ti6aMtI!)ElRBt@|Hl z;t1@Fl21vR-NyDkLc~6nmTum}ecAHa%3|sgpR?AUqiQ-4M2v~4bj%5@Dul=2@b0Mc_ zNH0SYh@pN4^IQ$9B=%@7fnXV7mop<0f*;X8yY~*UycB-Yxq?J=rXk!Y;yO1AqMSnP zO933|&h{;>wAguXs>rr-fsc)?laEb`kPfHJeN4QPPHFk zUBFTVzI(P-Mu>u1Vq;kfv1zDOpz*PFa?(M*2(2z9S&~oG2M8V~0$7LTW?GaKjVv8N zKTIJz7g77>Q&6x)*6N8G<9W{cxQfAhLP%X*gn>4@Z)B|0<%l!aB=zMbfQa@el8TAq zhO50&Wui6L%GVtw;Y%ev&{%G5T=Az&lB*RDNAVGlJbaXgeJ0e}RAaeH662&iOA2#m zo$+oiCRz@vrCSDhgeEp`qyT)5dlq6a;gK!>1j%X*A z=jet>hMumZbR@(nZk6f@Ce@(+t-V)(M{#UZ$-$(VZDRKB!hp-n+QhNaNL|Z!vxhi0 z3b|bZHe8mi&qKZIv8x7FmSPSW;-aEZ3z!T(E6V(O23A-aDA0PiaR6&%ah3UA$UIO$ zw3cG~Fs^q(RvGsZOH+0PLG(ig)<@aLrC-M-B%QdVcGy6M4p! zt@=J@vM(b!mT3z#(m1fOqcw&G^036nUMa&gd; zC}N@WBvHii!NeaFH@Kw2h-ej>pGfaQeIg;qa)NAua3Pfn#M+E=IW5)^F=CX-4_Gka z&b>}c+`a(r$Zk8aZU_yhRfq~bP?}I;YKPsClLG$b49w@y#ksJE%iTJb$9jl)Os7Hz zyc8Ci6A8`^p@Y4_Gd5w!b*eS=%+_{mMo^r3!$5O4(#ikI(|gdrFgM ztm(!SM#nL%U)lvc{6i&LMRT0pZMc}0@e97w5xXhe$cx~L&89roaB=2vY#m4epf)|> zh{b^lv6j;6)saX7X{xUutV)2@(>zDjb)nHvJOCM>Z~kNb779ss6sd%t}e`rV89j1+1VvX_lqd? zR)tU(AueoOH%wc%jM4apaeHHMu>-{dO1uK?n;4_uyrMIUD`>tWBxn$GFO<$5$Grk# z-9)AFp$U2m8eD}L> z#d>{(e)QZ+l1aH?KC!M!qeE4R#9WEY&CJr~jpK0R0_6%h#M3gQE6X9<;YF$~MIhI< z?U@af)W!!kkJ9ZMM(E|)Mf%Fi=j1hxl|Ikw1Wbn_3mVtts-GLQaW$K}7UkKhLo3_V z7bldo?docWfh)ks-}}CM{?J%$o)VU0jI%*!c_xmHiC)n!hvb*J0?;yb=zTYAqYA=W zfeAJ&tOBt!oiE4OkeQc8T6NVTDb|eM7RuyAl{td1C-wnw5IfHIrOST)SCyH)hyzGGX-EsY9 zstgZP5mr{H4hp!OR(_>yWUv50+@hwoNqolb7jzW7uc5 zjy6JC&Z`F=$aw^!aJ71YVw6r0Fwr^p`(9MVmHlrqwiFxNw;^--1K|S1v;I$JZxQtc z2;U`FndA0cptOw@rJ}wDmMF3P1W(ExD2mP4j_pRqOWZ&n zTmXOY@Yp!*^PvaAa<(olqv?cZ(~u9)M(Dnqw@?+ILqp+wU1 z$S58CwcBX=;zepKH)x=`4gx|>UMryAF%JI68sQu|YXK-rv0O&d$WsZHna$?q1bGrd zi`o(;QI{uG%cxX_5c8N9@_oSC`09f8B{1(bqTwN`yeoc>CM^z}e%n{DIfbCM2REo_|fk#I`YCzw*-D&LV&CaGaE=u-t4 z)sYd)yTIcr!y}eZGYF^%{2+r28c?-bmd}*2UA8!`5_pIx;Fy{gfq@lj5ft!z51cWF z#IXSt$}AGa>zC$WnHsH9^ocjEgXLxD8EA?5LQ%>-ChMNhRu$SM5^i~gTq&239KJj^ zpzeqbx#W^06^hj#3v5hv5Kn8|J*;8Ri6l8#Xs#IBptwRYjzc9b?f1(&r^+a8RgDrX zAd@Xnsf_1JTBwA`NB~1~wZSKgyO)9`aut$d;Q_Dl>v9$$?7(Bd+7v=h3?WZNTqZ(f zViafR_nO9mL#nFz#vFCh;|s+WeDtI0E^p`JV?ZqO^-zY?kD4U7G#;y zaAM&Zn>qkyrHbXMODk>qo7yamZrB1HGK~bnqat>c*iJjx;dagkGP0t)gsR13G{)%y zHulA_((Y$sg-ToQh*Gc?K*60v@cejEM%(o3K48trS5h9S#7b4-*RG%7S>~@`84JjS z&UsFl!VBh9jMVEz+i!v z`6GAtIGH?mZipW$(j zlq8K;F3ivpEHw-Fo|>7WjkyWLP@Y}@|MOVdvNzAD_!?Z9cSSQj=EANbGm#Bh%1;Uj z8zUof^!RuXM0C98tA3oLwIy2LBJH8|n!l+}K;zfs5y!=l=9U^Vzf#nY))(h!X_aDI@r>f{ix7{$$XPAcqTB1hRw$nM-k5?O9? zatNuMPg4Oz`rN{*$XBdCGtc8?58M+jS1Q8&B*sOqr-Pfv?%f}QB4<1<-wLR9wTp4n ztjb+ytRaZ0ApSk|zrOgWTdSat#azksM|0dkOu~hn%1Uv2&yws|Aa(sa3DD>AXYM(*nAB+6?$ z)nNJ_=R{EsUB~$;X=~ydk0WS4#BWwkZBEu(D4h^Yd&fLi@40=vIDOgYjpu?gex03} zhsA_4h8r%Sxl>=I%kztnv!L(c;!|+jSX>w==4mvSwFyUCWhjDd#TLp5B=))hZBTae zY}O7IFOe z7X!6$UHi240&Z^M)u$2wISzI_Rp;Ru<+<{PEN_ZaxFwD%NgTEW(voOw%h26ze3C<_3GMn@CCnDa5k;iV2S zh3R(fTucSP<)GSd_pVaRi5la<%JP9HjVGp2VY`X zMsacpOeOimwFR^zIoK_1cfLbwf&l%iPyC0k0_{UFMYc-|NC2_^A0}~8#Zyl)Z&$`q z0IPHesLtcBAFI;6>+`rk^o5%}Ng&MexE-lcZ3K|C6cPg$`%B2y%8b=)U*?E?9J2G2O9TO#Qb$DaIe4mk#5$F% z^>GP0qPSya%Q>?q;M=i~8U)U}uN$N6V1+Kf{wgic&5H~lA&?hP_ZBHj0jz)+N+zjy*4zIkYXmO4G~!bmKYd&{8l#8lAN z{dOc9f+UF~Dd7D9$1hH3>C>tmKcqWCm3uGJNYh#HMIuO#~yfS5$~$F>cvho zxg`a*d+*9M=dR+aap~wxUE+mt#Xt9n@%r}R0v+1Fn;LUdG+jFRAzCXBU=fq0y$Zh_yu| ztP%u_nfV#ozjX{c;;?|(0P*gLJ4!(!txq0(UU($bcFSae`*PfM+A*#b*lZS+9$ z0Iv#hfhS=R-Dq8Lh+aeQWO!^ZRmRuT|NPot(MNCHN%!Bi8zG`BYmGzPoWKpbGnzbN zqClaVh_!qpPR^~+Dad5Y9UDfHDn+TIYcacGMtaBIyCx9{9>k7W>ygHOfU&iQ6<+(s zYuhMmpNUP8T-_YHxje)sJidARgl$F|D=Tq*s-v!e&$BG6OG~r}<@(~xWx5F0Uszrh zg}aJ&KpvVQTR01)8B{ZTL2SwM&=ZFT%alVB;g;rTrAQl+3b@X5V`WtlP&YN+}Rr=n`Kc}14kI*;-+YI8b z5714WXxKNk=$SlC)I+>^KxmV1y zFri3YmhTM$pwZDG8W82ZRq7%07JkA69JgDa9-8 zAO73#eD8&~1(3H_CZCzSY47_F;Ne8FnkQ*2#};Sro_1A744UPJNg8(&g(vBM6=ZpS zwMT#b!b!Sme2_MR0JCcj4OOTGVA~9iECuuIswPPPxqL>5uLA91(ksK7#;P?vT(p#R z(j-Ds5Q~MdiWtfBh}=BloA?*s{w~1G;`kBG%uWkn@4J3$a{k7Jnwa-_Eb{tps*L+7 zCVJ}r&wTC=-VCcZU8y9Ya^9hb>*quRPPFSdT+)suAm zg-Lqm)G5if$6q^(i%O&UzKD$5l&sk1kzRnzf&kMD*8Y5DCHDpZo}A8M(o8=5(;69cXH87#^ahzxy=ZvFCPxo26%8KaV7JSr!3F9EC6&c3Jgq ziDDD6bjE}7eC!il?yRwx2uQM6tF08aLUMb6-Q* zv`6=B8=*T!b2NGSb*jOgSS;XKn)8$YL6Gxc(!U`3dCUXJR+BVJYVPuEx~7jDqXlVO+PvL8hv2@2M|w(>BW;j zlfn1vH;p-t=fqqtA$8>VtXmRm)PuY4|LAwF8bID&dGVPOH}Ac@3fS(n7^!4-%OuVC zIL_H+Td~Cs+j2$WarwrADqOJxtNr$~FCZM0>F&Gk zqGu<6D)Tw_?%8SS6jw(0Easy;xfRL?9E%I)@!j`-z zpKm`iNo^c!@6CJYl~;a-3T2M=U%yQfmk@b`gbseUQ3Y{Tguf^6`S_;}za2i_+wH)k z{D?z`VOh1lYHN}yc8YtPq-F8Tt(z+J&v%Vb5yZKRioy;!A~B#Le)raOvb?o}ShI=~ zO=pYrBlI&kkt{5?XbJ$Y;zIb4Okr5~US*9gz z4{OPGHIpZGb#+_N@{JB`2{Mt-U)6*Q;tFCHgwGpC zE3~v+hl&D)rZPgW%`a1zSFxicn@1yR3RI`jweozLhcj`8veY$aN901h)@*=`Lz(FS z#1O766R<=wOv#oglmFafW-DY6kyY>6b0gL9xpn?VIJf_aldszeEFLiNIyE0Gy?Ho?0Lm>wIuUp3HBw zdy*v!{DovG-+oPs{P<#VsdPp_c2exL)wUz=Z5v0Wx(^y*&6-!{(T}u z$oJ4FRYUAO_{snDc*5eJmB|L%B>)xnaW~-L`F+Wb z=AVIOWlCk+%+~#qk1d5aUL*H9=*TM_UEZsj&tAq@$=M$%iMqe zhw1w5+vr>0KTbQx$7t8KP3$S~uHM0qeD0CjRX}p}-<@^xr4#kv{?M--JMtTM9k_MZ z*0GH!u{g$LQHWW;|SJVD#6tUid2?37>EYRH>T6+Nn4YL*?C=xfd!^{;Ub3({sttd(ENEY zNy)101wVW39KG=R8M^nbd+3H8*U>kQAE!1-$`9_pZ8DWrzjg56ex^oOxxJ$p_>0@4 zk3L#^|L^?EeW^_Gajr9c(1TQ-RgGcF@uUGysREn;;ADANs92;N4^z6Otk;hZ!|go8 zuoc>|^CnaiIr`>{rznTYV>4dcv3VWs*|ABMD=dI$bA`aeLIWlKj)Wpr@>#J?9zy3H z3|A@aw&`?6j^+8bHkK6vl4v4X4Yluv>tNX}A^NQUZQi(h?_Tz(XG38qQjP@E|LbXCoaGWt8n`b8^>UI75T0#-L(r3 zO9%yd2m~1^<8qQ%gcQ5@%L#4o&h7F|n5W-3%`Bk)nNNP|v&&~*dHC=HpMBR~oBW;t z6cG2_{sc1SJ^=F+2YV*T#>GBaWW%8G_Zt9629$x|&f4BB>rsxikwm6wY{N!kF8No_ zpQJ@(Vpfhhh7OGm({<1gdBit@aFBr&70~M)8XpIU>!}2R6$g>>jMZrdkEJMXD6#wU zk_lc7MQ)spWvopjRr=d+e&hJLiyTR<@+pz&;mlj@bHjWGLO5-mqc){mw6{w5^cPf39-!8a77VH5<)_%?c2HiNbSTo z4<7y0;Tm0o?V11>Z`a@c{wH?6|IV#p*m*>^o3)7fRv1}pWP%F|$-ruOrRLW4qcjek zkL%B_<7Iro--XDqguceo$||kYm#7JqniBxKV3$P)fW(911t`?j!K!3k?x8eSmZ*iF z4oWn3`AEkjY@)E#L37Gj7f@qUW3tMz zF_kaKw0;>Gdn+>d)=gXJ$iMz~u*?C`-%icU(G)6;Zcoz+=t_MV8X~|H6$TwTUaX@T zL>#kRM&{?KSGHz-{FKTSP?Y9me-FNu#HUEnEfPP8aU57tb z!>=d!=ZAmx#X|`AhY+4VuANH<5Ct}%6?yvg8K}~i01$#c_#3C#K6bz{n!J?>6g4I`W0@^f9Xq=6~B7` zR(S}WxBI^K!{;Xc`0GCq>svpvo@UVYY&TbBy5PV3o8O_~azVOmqVt8)laPvoN8z|c zWbuH(gO*s+z3wrS3XV5(t>cFuIQmcPe@5_D+o1!8D*x~F$-Se)qX*_1%UcSbKLOfN zSzcP0ICRIYl_MX#6Pj&Ltc#~XIp9F5sww{8Vi-Lcq_SuIV*2>O_drA5>-KlN0Fn|(kQ4!1vE{_3fU2k>rIHdTM^%(6DpIMEWB(HP zBNa1$O!`lhM2=`Bai}WWBJ9{INs$P>A(0}N6iI;~2o9e6!tTyK=G}d-zjN;Go`p=B z1PRGi?&4x+XL@?Nzdn!eeCOPuqJPBg$ioj;{EmNsw6`Txv{xBDp_DhFNfGg5GUO?b zH1^e6)$wbj$u$4~wK%~q8GU~&m%!D#T zo-u%m;Uf3L02(MgK9|Qd47x544Spr z$Q{85sBm(l#9Fn9&p?h+^Hp@z^Stjo@rB1~^h?;TIe;A3sGWXD`Q~8&QsIkJhMbEU z2O?Pzjb3vC$^l_5imfwUxTw6(M4?zJ@1q4khANxf1ei(Zru+{MJi9h?| zV~@}^-mWQtpLp_btuu0=)S~Mdsv&|N{Xc*5$A3!K zXuBo=9(nLTP6WRGk}=)^d)jVex8jQs$T*woIQq%oB+n29@(8vgAV$<%TA+o?vs9az zrCu0OK9ixGA5bBiqC&AmyKme|U%F80;#BE+I2xUlLco%rTi7ZCS1HkLdU1oYW! z;nqIA$L)7N{key5LQiV)cg5gIgp0GM>StF5)c2ILNO?j|K*`19fevZYP7h# z0`NjQ-)PfHw@1ZnhB5$Bvz7I_G&MIzVK1a~Hjl&lE^Eg(M@g)e&4EX8LXzjyE*+U8 zx7@ma`e)Cdc!A!-_O1csSa<7f_x)#_>QS6u)~EgndgRX8#V&!6U0T_s;PVA~ngRwR z(iY@yi`w(EG&?&(OU*Vd_d1kIXW`C1b&!?QsT5@b{_!c5%~Cp@qRCUIV7-b8z02)g0Vpo3{jb3x55=cO4mt}Y z^?~F6Bt6>8@$oPPJLTVj3CYtDwOUO&efkuI%~k5a+FB9Z-V3OQV+@yy6awUYCXM45 z2?UI}4=^L_dlrC?R;!f8>zdRRys_`d_^nMsmy~-_OY$*y-g4XiLpR-W-`8K7{J~Z8 z$EybLL4X%|=4pKNE_(p8#?lhlWHV;X^Y|xA3?3{GF6+Ts3|!Q-8+7*kd74{Xq_Ydl zRPT0i9|B4tNU>`da# zL07T8<1EbJrF?oCz)Tor@2<_No=X_^v2xTQ=5mZ^Muif)^67xW)kS*w)iX3zU#24B z*kB<`rE-bB{=%yOHbuVg(F&3SA4#km#|4g5$>(XQ)s_?PMp~#2Tlo0sDDBv~jXcCf z&*yyZ%Q?gsCpXdv9Vc?Pn$a>z_U3c+<#kK5RL$tl!6%>iLhYU4@{U}X-B$VPX#g@2 zCkO3HE!D4HiQ+`U;JMNx4f0h0Fe%*S<=H8E9^n1x>?OFdp-!(yvyB$*-L;)&7ME#i zr9n9WlZN|pj07ox^%*uUsw1)R=XT)s3?M@>HZnw;$HplK7uTFo(TaKOCfin zl+ak-hcBa;L9p+%sXlv=zV`gfGy}lKiaDyoP3Q5r-HWIVgZcG+H`9gLIht;EkX%Rr z31E6DSS0*cT#&(Ii{#L@5rq22>#nDPN>#Angx~>q;}VHdN&1N690>=oNgou6EO(4K zS3>xO%vW&!2X^ea^D8GOPqgX10QiZ|{N5k=Mji5!LR}?kOu0B0+n;jivFq~VQW_V{ zNuj+&KmPga^!nVQaJMpoK3ioMfVA-U43a}WouU1^cZzi^AkOu|uEfD+sKqH6NY7Or zoP~M6axO!qA}EY+v%m6vfz0<=kZ^=r_34Xpl}l`WVwL1*j!{>}GiAmQva&Bd_v5d> zYXCp->EAzsoAigaR`(H$`lLlNoijOSkj|McInD+iMIo#LCE4`sEIoVXyjV#&6G(Ds z0@yZOm^mI-8|P*()A{LHp(NYajnd}PA*vMe*q20UVTk@MX@o|#W9rbQUUQ% z;h5Uo%0}IJiK_A{WaTbpn8E= z)y67an7+h}8A&BY!^qYt-m%%uB4% z^siN(5~A(Ne%_iZgB4e>!K!8gU}&7S<^r=hA4{k{!xv8LiDAI6HXZ$H!49XMfs z4g0s`8Zj$`rPUW{YQ9bj;CayH#F8qotQ=w>A3FmuyRg0-$1lEcC@$pN`>FtFDVG!A zIE<{edr)QqB&M|d3=|49RH=vn+eV^VH?mHSVUm;@2bO+mY59Xnl1;xnR+6EOi{BJq zo85b2_r5!7FHQdV@72w3N~DqNKHo2kwCtvYdfNL!wlbrBJaKMFeKCo-Uk9M6RF=wx z43b0&**8z?21--~D7+I}8<%N5_TdB&;S;g|t&nCAeW^f7s60}>txR(4#<)Nx){Cns z|E8ws!rU|sl#3Lhc4jdmCiP_cI)Wq!SAm!$ZpZsrkBU_s8wYh_801(7@Hl$t2(-?( zv%pV$`u9GMUx$(#NG|uPeyn5uryb`P09}pCL7Vwq&Ij}AbSQ-DwE!Yp2q2?%sB76} zI{(~rr{@>0G%83wEyMRI>qaJ7`OcX19$qJ@iP{>Sg=aNGm(8Q)ejImFI3 zPQBgjAbAwzv)TZ;z{DB}B9Py{xON8wJDW;NZOnM+8d1t!VJj!YY?N=h=+ zaUzVX4|ko)I7QqAqeRiswohZchknrtuK>{V^Z~AOO`@NXOX)0jsu)W9k=mA0ajalo zDr6Rahp>tO79rwjvq9%C&(j<#iN$tEQ|&IH>P75J%So}@g6&WRdLLhO0k4$-Ob0x0 zvDKjzo@4Q$hd9{|t-JMHAEnvp39$Ub)ykRa8M<@I>T3-XkJFD7;WO_mae2JeE2N^G{*mYWD-&$2Z#hqMWM2CsT`WY6HDvM_0AA2 z)ru^jz2*wd&dtyQz~d+y>YnVI0VphE6=AXp@r+G^0Y_SqEu?AoI~`5~!% ztN`KLI$3N;+c>G!Lu)ZhV&L!o`#(5@qd#cxh;fon98D;x(_$9DNHKX8t`tWT2Y!TL z&W~D)uskRy4bT*cYd8TW*eoJ2k1J(zqBJv~EkJD^87NA^h~S1P?)kc=5mzjlr7gH_ z9mmSB0^_?Irfsn2gv9Ki4Xf<-+BAsl%!$WR5gR+%JyasGY3f(P_8BKz%JoPxQfnGk zG3rWZZ`^mscV3zNNsa$Zcp&c3A##1zxCLqY(LoLtb1LPchq#DvE^WPpcZTcniG^_8 zCVm#%EgD7gC?Hmi4T7r;S7{Rz6r&^g9BDprvz&p0mArQ599>#i02gdi16J3Dg|=X2 z9P>0xs*DWH*2}eQ+P7W-l}k8h3s##+dDKFfxD3nRIKC0tJ+OM9hzQEsj55?$XI!^X z+0v9Ndo9Yg^?bD^TH0hIxq+?lcx+3y71_-!#=QjNTu~{@>5OYN+Ph);>?$ddv}8n| zMN(Wu#D7EMo1VLjDk4w!?cIe0fFuBkegGhPu7RszsezvsT4G>QZJ=`L+yy#w?h>86 zFiWeQF8U!IA>2!-URIE~;jkjcvI}ch%d)KB<#>v7<3z+03&m2NZrQPmQus^~isTH) z^Ad~W%kkDyGI2gfW2_<~AdBnkxMme_>Rm6``qUGT)vX1F=>ti6aMtI!)ElRBt@|Hl z;t1@Fl21vR-NyDkLc~6nmTum}ecAHa%3|sgpR?AUqiQ-4M2v~4bj%5@Dul=2@b0Mc_ zNH0SYh@pN4^IQ$9B=%@7fnXV7mop<0f*;X8yY~*UycB-Yxq?J=rXk!Y;yO1AqMSnP zO933|&h{;>wAguXs>rr-fsc)?laEb`kPfHJeN4QPPHFk zUBFTVzI(P-Mu>u1Vq;kfv1zDOpz*PFa?(M*2(2z9S&~oG2M8V~0$7LTW?GaKjVv8N zKTIJz7g77>Q&6x)*6N8G<9W{cxQfAhLP%X*gn>4@Z)B|0<%l!aB=zMbfQa@el8TAq zhO50&Wui6L%GVtw;Y%ev&{%G5T=Az&lB*RDNAVGlJbaXgeJ0e}RAaeH662&iOA2#m zo$+oiCRz@vrCSDhgeEp`qyT)5dlq6a;gK!>1j%X*A z=jet>hMumZbR@(nZk6f@Ce@(+t-V)(M{#UZ$-$(VZDRKB!hp-n+QhNaNL|Z!vxhi0 z3b|bZHe8mi&qKZIv8x7FmSPSW;-aEZ3z!T(E6V(O23A-aDA0PiaR6&%ah3UA$UIO$ zw3cG~Fs^q(RvGsZOH+0PLG(ig)<@aLrC-M-B%QdVcGy6M4p! zt@=J@vM(b!mT3z#(m1fOqcw&G^036nUMa&gd; zC}N@WBvHii!NeaFH@Kw2h-ej>pGfaQeIg;qa)NAua3Pfn#M+E=IW5)^F=CX-4_Gka z&b>}c+`a(r$Zk8aZU_yhRfq~bP?}I;YKPsClLG$b49w@y#ksJE%iTJb$9jl)Os7Hz zyc8Ci6A8`^p@Y4_Gd5w!b*eS=%+_{mMo^r3!$5O4(#ikI(|gdrFgM ztm(!SM#nL%U)lvc{6i&LMRT0pZMc}0@e97w5xXhe$cx~L&89roaB=2vY#m4epf)|> zh{b^lv6j;6)saX7X{xUutV)2@(>zDjb)nHvJOCM>Z~kNb779ss6sd%t}e`rV89j1+1VvX_lqd? zR)tU(AueoOH%wc%jM4apaeHHMu>-{dO1uK?n;4_uyrMIUD`>tWBxn$GFO<$5$Grk# z-9)AFp$U2m8eD}L> z#d>{(e)QZ+l1aH?KC!M!qeE4R#9WEY&CJr~jpK0R0_6%h#M3gQE6X9<;YF$~MIhI< z?U@af)W!!kkJ9ZMM(E|)Mf%Fi=j1hxl|Ikw1Wbn_3mVtts-GLQaW$K}7UkKhLo3_V z7bldo?docWfh)ks-}}CM{?J%$o)VU0jI%*!c_xmHiC)n!hvb*J0?;yb=zTYAqYA=W zfeAJ&tOBt!oiE4OkeQc8T6NVTDb|eM7RuyAl{td1C-wnw5IfHIrOST)SCyH)hyzGGX-EsY9 zstgZP5mr{H4hp!OR(_>yWUv50+@hwoNqolb7jzW7uc5 zjy6JC&Z`F=$aw^!aJ71YVw6r0Fwr^p`(9MVmHlrqwiFxNw;^--1K|S1v;I$JZxQtc z2;U`FndA0cptOw@rJ}wDmMF3P1W(ExD2mP4j_pRqOWZ&n zTmXOY@Yp!*^PvaAa<(olqv?cZ(~u9)M(Dnqw@?+ILqp+wU1 z$S58CwcBX=;zepKH)x=`4gx|>UMryAF%JI68sQu|YXK-rv0O&d$WsZHna$?q1bGrd zi`o(;QI{uG%cxX_5c8N9@_oSC`09f8B{1(bqTwN`yeoc>CM^z}e%n{DIfbCM2REo_|fk#I`YCzw*-D&LV&CaGaE=u-t4 z)sYd)yTIcr!y}eZGYF^%{2+r28c?-bmd}*2UA8!`5_pIx;Fy{gfq@lj5ft!z51cWF z#IXSt$}AGa>zC$WnHsH9^ocjEgXLxD8EA?5LQ%>-ChMNhRu$SM5^i~gTq&239KJj^ zpzeqbx#W^06^hj#3v5hv5Kn8|J*;8Ri6l8#Xs#IBptwRYjzc9b?f1(&r^+a8RgDrX zAd@Xnsf_1JTBwA`NB~1~wZSKgyO)9`aut$d;Q_Dl>v9$$?7(Bd+7v=h3?WZNTqZ(f zViafR_nO9mL#nFz#vFCh;|s+WeDtI0E^p`JV?ZqO^-zY?kD4U7G#;y zaAM&Zn>qkyrHbXMODk>qo7yamZrB1HGK~bnqat>c*iJjx;dagkGP0t)gsR13G{)%y zHulA_((Y$sg-ToQh*Gc?K*60v@cejEM%(o3K48trS5h9S#7b4-*RG%7S>~@`84JjS z&UsFl!VBh9jMVEz+i!v z`6GAtIGH?mZipW$(j zlq8K;F3ivpEHw-Fo|>7WjkyWLP@Y}@|MOVdvNzAD_!?Z9cSSQj=EANbGm#Bh%1;Uj z8zUof^!RuXM0C98tA3oLwIy2LBJH8|n!l+}K;zfs5y!=l=9U^Vzf#nY))(h!X_aDI@r>f{ix7{$$XPAcqTB1hRw$nM-k5?O9? zatNuMPg4Oz`rN{*$XBdCGtc8?58M+jS1Q8&B*sOqr-Pfv?%f}QB4<1<-wLR9wTp4n ztjb+ytRaZ0ApSk|zrOgWTdSat#azksM|0dkOu~hn%1Uv2&yws|Aa(sa3DD>AXYM(*nAB+6?$ z)nNJ_=R{EsUB~$;X=~ydk0WS4#BWwkZBEu(D4h^Yd&fLi@40=vIDOgYjpu?gex03} zhsA_4h8r%Sxl>=I%kztnv!L(c;!|+jSX>w==4mvSwFyUCWhjDd#TLp5B=))hZBTae zY}O7IFOe z7X!6$UHi240&Z^M)u$2wISzI_Rp;Ru<+<{PEN_ZaxFwD%NgTEW(voOw%h26ze3C<_3GMn@CCnDa5k;iV2S zh3R(fTucSP<)GSd_pVaRi5la<%JP9HjVGp2VY`X zMsacpOeOimwFR^zIoK_1cfLbwf&l%iPyC0k0_{UFMYc-|NC2_^A0}~8#Zyl)Z&$`q z0IPHesLtcBAFI;6>+`rk^o5%}Ng&MexE-lcZ3K|C6cPg$`%B2y%8b=)U*?E?9J2G2O9TO#Qb$DaIe4mk#5$F% z^>GP0qPSya%Q>?q;M=i~8U)U}uN$N6V1+Kf{wgic&5H~lA&?hP_ZBHj0jz)+N+zjy*4zIkYXmO4G~!bmKYd&{8l#8lAN z{dOc9f+UF~Dd7D9$1hH3>C>tmKcqWCm3uGJNYh#HMIuO#~yfS5$~$F>cvho zxg`a*d+*9M=dR+aap~wxUE+mt#Xt9n@%r}R0v+1Fn;LUdG+jFRAzCXBU=fq0y$Zh_yu| ztP%u_nfV#ozjX{c;;?|(0P*gLJ4!(!txq0(UU($bcFSae`*PfM+A*#b*lZS+9$ z0Iv#hfhS=R-Dq8Lh+aeQWO!^ZRmRuT|NPot(MNCHN%!Bi8zG`BYmGzPoWKpbGnzbN zqClaVh_!qpPR^~+Dad5Y9UDfHDn+TIYcacGMtaBIyCx9{9>k7W>ygHOfU&iQ6<+(s zYuhMmpNUP8T-_YHxje)sJidARgl$F|D=Tq*s-v!e&$BG6OG~r}<@(~xWx5F0Uszrh zg}aJ&KpvVQTR01)8B{ZTL2SwM&=ZFT%alVB;g;rTrAQl+3b@X5V`WtlP&YN+}Rr=n`Kc}14kI*;-+YI8b z5714WXxKNk=$SlC)I+>^KxmV1y zFri3YmhTM$pwZDG8W82ZRq7%07JkA69JgDa9-8 zAO73#eD8&~1(3H_CZCzSY47_F;Ne8FnkQ*2#};Sro_1A744UPJNg8(&g(vBM6=ZpS zwMT#b!b!Sme2_MR0JCcj4OOTGVA~9iECuuIswPPPxqL>5uLA91(ksK7#;P?vT(p#R z(j-Ds5Q~MdiWtfBh}=BloA?*s{w~1G;`kBG%uWkn@4J3$a{k7Jnwa-_Eb{tps*L+7 zCVJ}r&wTC=-VCcZU8y9Ya^9hb>*quRPPFSdT+)suAm zg-Lqm)G5if$6q^(i%O&UzKD$5l&sk1kzRnzf&kMD*8Y5DCHDpZo}A8M(o8=5(;69cXH87#^ahzxy=ZvFCPxo26%8KaV7JSr!3F9EC6&c3Jgq ziDDD6bjE}7eC!il?yRwx2uQM6tF08aLUMb6-Q* zv`6=B8=*T!b2NGSb*jOgSS;XKn)8$YL6Gxc(!U`3dCUXJR+BVJYVPuEx~7jDqXlVO+PvL8hv2@2M|w(>BW;j zlfn1vH;p-t=fqqtA$8>VtXmRm)PuY4|LAwF8bID&dGVPOH}Ac@3fS(n7^!4-%OuVC zIL_H+Td~Cs+j2$WarwrADqOJxtNr$~FCZM0>F&Gk zqGu<6D)Tw_?%8SS6jw(0Easy;xfRL?9E%I)@!j`-z zpKm`iNo^c!@6CJYl~;a-3T2M=U%yQfmk@b`gbseUQ3Y{Tguf^6`S_;}za2i_+wH)k z{D?z`VOh1lYHN}yc8YtPq-F8Tt(z+J&v%Vb5yZKRioy;!A~B#Le)raOvb?o}ShI=~ zO=pYrBlI&kkt{5?XbJ$Y;zIb4Okr5~US*9gz z4{OPGHIpZGb#+_N@{JB`2{Mt-U)6*Q;tFCHgwGpC zE3~v+hl&D)rZPgW%`a1zSFxicn@1yR3RI`jweozLhcj`8veY$aN901h)@*=`Lz(FS z#1O766R<=wOv#oglmFafW-DY6kyY>6b0gL9xpn?VIJf_aldszeEFLiNIyE0Gy?Ho?0Lm>wIuUp3HBw zdy*v!{DovG-+oPs{P<#VsdPp_c2exL)wUz=Z5v0Wx(^y*&6-!{(T}u z$oJ4FRYUAO_{snDc*5eJmB|L%B>)xnaW~-L`F+Wb z=AVIOWlCk+%+~#qk1d5aUL*H9=*TM_UEZsj&tAq@$=M$%iMqe zhw1w5+vr>0KTbQx$7t8KP3$S~uHM0qeD0CjRX}p}-<@^xr4#kv{?M--JMtTM9k_MZ z*0GH!u{g$LQHWW;|SJVD#6tUid2?37>EYRH>T6+Nn4YL*?C=xfd!^{;Ub3({sttd(ENEY zNy)101wVW39KG=R8M^nbd+3H8*U>kQAE!1-$`9_pZ8DWrzjg56ex^oOxxJ$p_>0@4 zk3L#^|L^?EeW^_Gajr9c(1TQ-RgGcF@uUGysREn;;ADANs92;N4^z6Otk;hZ!|go8 zuoc>|^CnaiIr`>{rznTYV>4dcv3VWs*|ABMD=dI$bA`aeLIWlKj)Wpr@>#J?9zy3H z3|A@aw&`?6j^+8bHkK6vl4v4X4Yluv>tNX}A^NQUZQi(h?_Tz(XG38qQjP@E|LbXCoaGWt8n`b8^>UI75T0#-L(r3 zO9%yd2m~1^<8qQ%gcQ5@%L#4o&h7F|n5W-3%`Bk)nNNP|v&&~*dHC=HpMBR~oBW;t z6cG2_{sc1SJ^=F+2YV*T#>GBaWW%8G_Zt9629$x|&f4BB>rsxikwm6wY{N!kF8No_ zpQJ@(Vpfhhh7OGm({<1gdBit@aFBr&70~M)8XpIU>!}2R6$g>>jMZrdkEJMXD6#wU zk_lc7MQ)spWvopjRr=d+e&hJLiyTR<@+pz&;mlj@bHjWGLO5-mqc){mw6{w5^cPf39-!8a77VH5<)_%?c2HiNbSTo z4<7y0;Tm0o?V11>Z`a@c{wH?6|IV#p*m*>^o3)7fRv1}pWP%F|$-ruOrRLW4qcjek zkL%B_<7Iro--XDqguceo$||kYm#7JqniBxKV3$P)fW(911t`?j!K!3k?x8eSmZ*iF z4oWn3`AEkjY@)E#L37Gj7f@qUW3tMz zF_kaKw0;>Gdn+>d)=gXJ$iMz~u*?C`-%icU(G)6;Zcoz+=t_MV8X~|H6$TwTUaX@T zL>#kRM&{?KSGHz-{FKTSP?Y9me-FNu#HUEnEfPP8aU57tb z!>=d!=ZAmx#X|`AhY+4VuANH<5Ct}%6?yvg8K}~i01$#c_#3C#K6bz{n!J?>6g4I`W0@^f9Xq=6~B7` zR(S}WxBI^K!{;Xc`0GCq>svpvo@UVYY&TbBy5PV3o8O_~azVOmqVt8)laPvoN8z|c zWbuH(gO*s+z3wrS3XV5(t>cFuIQmcPe@5_D+o1!8D*x~F$-Se)qX*_1%UcSbKLOfN zSzcP0ICRIYl_MX#6Pj&Ltc#~XIp9F5sww{8Vi-Lcq_SuIV*2>O_drA5>-Kl005u}1^@s6i_d2*00009a7bBm000&x z000&x0ZCFM@Bjb+0drDELIAGL9O(c600d`2O+f$vv5yPwB%-x+W-HB^vIHpqo;pR8mFo zM`9;GVlt^z94QXLB#x=1QYKxM*sh90z?MZ&q{u^Jp7+54&ba4!4c%Yf=N-Q8eMpJ` z34$P%CJ*-7YxnBa-QUyi@Vrx?|7%Oz!;d^NOHpf& z7U(bO2C(J*)|n8CQ=>?CQ^-zb3@m{cBS`KHe)4}Z23r~Ra||pByhF+F;r)!?FZg{1 z8)H)bDxcHc`Dl^<1-;ENM*sS={N6%?!nYb3JwDzk&VJ@IpIN29gxg;l0E%?mZ9c>= zPw`cMjL~o+6F5ZyOJ@5;drx1Jq7lFXz*y$V&j6SLfFuAMD(oo13t}-u`7D2eVW_vc zFaYAW5Lhk}{?6~q@dJahJR4&85@p5N$NuhT7U(a*_EQbOhkxVWJwsXk5h}|wyy9o{ z-AWn-hYSNiK*8?;P$PZ~V3ffCsu<*-Spp#MDFBpX;eRD0U8ce=#tOU+U{bM)&jaik z?^}in_yt6)A5Ve$IRE=1f725`&1(Cn4uB8;#v><)8lT8wc$nAtMB#ssHB}&lpkR}W zSH!5~GjJ3JI90VOsqnutilj1okEK@@6l4A!q53WXcdP)eYFRBvyx$0!?1FZ?0;~PUTg~w4pJb`{6A3`rb|ExA#S5X*E~=UD9<0MB27MJ0$ZUZV zyeesym8Kp|HO8oRo_@YGThOIekiRRY*)@syZg4S~*n$ofc^-l~8lY^Fx10rXdr;J{ zoQ66!`q@mJmm=Aps`{}{2$g0RbJMk9L~O|MVCB?%!RY_xSdn1|Xb^Y}jH|OOK?5ji#jdZp-2mnQ_l*F4(e|o&s3PP`BD@ z3+v*;9FDa3HBY20)%nPh8du2(?>A@3TMYX&>JKO~fSQcrR^Fg?Gf=D5qO94b$iJ@- zBK3!boZnE?Z3U<%DIJ4Lg8ixv3d28^wKFx_)vi;|qqN^kyB0e)yMFh$bC!sCtIrbg zy$i(mEC7G)w|@V3SYkZNH+5RDq6U>Y4Ve=sNl{hguM^0nfYj-==${IrhsDFpl4%&z zGP_)HFE*HD4M8E=;XMZZZQ5A6O1nF|w7a`Qn>#~lC{&Op5JC2BOP;&#mZakX|L4)a|M%XT zUh{hnfWQ9hzjrFO=+x9B5K?KZ^v!0#0#Tc+FDjwmYPkF0RqWU_?%X7e$%Cl7&z$2;YE_flZ<%*DMu|4UkuqQLKsjm>e%$ zi$-9=LaXdQ_}F9bEoqq3duaRr{MNtsDPDyy@clXgszSX|15UcBmIOc==ECNxGdHKe z^eU;Wq{?W_Lb3oeG1@DYjXm5`#UDx|UgYzmZQ5E{q{SDbdR=0QQ%Eks=+1jS% z?E!5JM*>86t<6S5J_(3T^?I~ZjHpqL=*=rjtgibs*=y58uOr|sjP_B>6yKYZ6XNo| zdD$^!wYwCnpV2SPui5?-TyY!Sqt`SYv&JLud;bIU)Hj}dg5D$BdqM(=laa@N$e!UT zgIkS&4U}SGM2Tbb-|OZ&8K5%zB@5Mi)uQIczm*#G5E7Up6XF4@v=GNc=n~#zcayGM zzDSEJOSH8+puiFfQH;$&p8>c-8zV@(oB%th;3HF0G|s9Qi$60p&XRJI<|ZZtWQX_7 z&@&5{Xy1W-bok%_S{($DYz3)#p#KdNl8t8pJTV*eJUx;UsdBLPNWr>eLe)cCw|)7N znL`W@e&Ibp+x*xi;NSeWfB$!~Jbr;+p3rADR01n%x|6?=M|VN9Js|YWX$neyZYFkM zUW>(sw5STyhKJfh=6lFZkx#Ibv3U6^y>R|@>a()}mAA=K41UCPr^Dba- z_&ap{WT(sDnbDBdcAF*Q4ok?fPK(CJ$NBe+zWMS3UA($TQ~a4`yHn#Iv6Tj_c#TI~ zr3>eg4cuw?m*Mp@v%xrC`Q7 zZBh3bJmhYd=4Pg8b#0w4EHBg2+8T}VaXPH3LzX9LrRD%7J2hD9SJ>mx6RD<9hm73( zu$!ir6KXV+-P;h%JP93s{n5Kl-#`8SyC3-K*|SgX(vM;Lu>kNlSmo}P`9J2hdMGm> zc-Sd3W4xk7YMV}4 zyS_rSwMrM4Rv3JnG{e$sok4~y8F3$Y-)*+xI_)m)9~)!Oc0_|w$rMb3rdTre*@2j3 zu=QE;fhy^>o1*X`joZC38Vv`u&i3Oa2I4k*(U6i|0ke7LK_e^C?AhR9yWrMh+!Ngq z(%fvpDyAKhQ1v*rm=s3Ygy>FNyuZxoZ@mA$2flRn>rcMxIf?H&02zE|Mxp$25yA;K zmG@Yp*M!Y7s(^&miD|cxcF!qPG2NQP#J+h@wTnNu2=*J^Ey0oTYm!LCfK_cQl!rU_ z#v3%)SfO#gGm}g-Z!^`hw$m3|5u9QJk}A){mfU54bs3yf-5xD%?of{bI0HbkwCpsS z4AKEXB(_=lsq`g@U^EzTaX9494{2?Cn}%#pPL7QWpq0zcsN(+oCsk5A?6G|J+`r^U zC!5(qd|5~zDQjf8?K{m>=0msM{lF8?o_+EXy^Gts3cz3c?SJnRMW8P-SUUJUd2r6N z)o-NVKvOuSeIV3AZtfks2~X8Q(@Rh_03Ar*1|l4I=1V2AGX_UXRCEwPY_ezj#>F>j zd3}Q}t#8vJtKOUex6OacS$ga;#ZvI^eRe#?dtJ8q^qiq)+swUe@_rKx#)2i{h*z}5 zAVo-}#~=kggEJrUcdczRAIR@dvy@z6fRBnHpI@Na=^2s4wAb3(dv8LOrj;IGXJ7&) zb?moRC0;F~hbXD-J#HM^g}m2q+n|2u#ODk(E zjdp08)$JzRd3}~-mzi?eD%7{0=(cHRFcOLel68#flpO}$A-3x>22RP}+ibO2^7UE8 z?uac2$j>lX2W&fbn=Jr6xK#<^`M#yGE9H!v6&ILLCzS!IIo?c;Z-H-ym!yG*GJ<^AC< z^Lke=)0@okZSU-e+S+6rZ%_inYJY(|Ze$HQFgY$%%?^VTYuRb!;z1vpotD4vuuYfo z=ht`HW-JCY97USv&wx7w-ExJc>vn&a##mhs_-`9K+ZyU)0MD@mY_l46&tIt{RmUpF zYMyY+lC)QiT<*c9CH0uo;czz9Zh3|=P;z`?a$e-cnLAJ4_pX5OM-ISW{q5iXJA6rh zkZidGEWHV3s5~{Q8QbDcU#M4CbA581KUWq?LjyB+5GK*2zg9bjH>qSc@+ z`+Yb;W6`jrBt|>2zC#YJkLyMc?yL;e6`0rIW4iK(X-^F1hbOGFQID~2>tK70>U3D z0Dtwje*bg)<2UfypR_WuTebM6J@E>vy*HxH3)Zzq+o*z zE%=QU22o_NO|b0;6}ZcwUFFbRC)WkvVNmx6rJQfU(sq(n_XY!UgF|sp({rr4`AZpq zJ1iwRzT9rn@xzDZXNNgNceWa#vhA`^3NKpL91yX7L*3vbO5Ba3wFXN6q{6qXfwNNa zmO<&?!63Z%#8cn=voFz)X#0@?@L^WFtXdzb=k->%PG7}XyIFfAT6I&A44PBj`_-SZ zW(VPBwg5`RYom(64o4&ArY2cPjA*#IMwc&Mpx58HM6bMlkuI^_b#;Ady}Pm z;5Vc)SNxuv>p`guAHMW7I>%1N3fpLU>q}9iO^bjWJ#>K8X-Vf9oGx`imuxZ6#yDaz#-Qu7oi)JPNU?`x zB8!9^FreTW@9;lRFm2ZFIjdx-Ryh`{aDWb;uh_aK8FN1F-1IaZ**8x;<_FttNZ3Lg z5proH9&lyvxee!ki~gEi8DtfM;6l-Dy@XfiQT^}687662+TRl$bpMY^9lzrM1o-%Z z9t{+#>=XN&(U}S1_Sxd17jVbJ+@eNUS%F`iEX)?PadTM^Rsl}$`Y+IHL@bo zETXK3>ar};_&&?KnJnK*8HN;>Q zdNW<^i3d5`UOm`j{2p@jKsfJiEYrD*S6HHL(D}7ZT4tbu7=|OWxiesZ4QO?DN2Ju6 zf$h#)ZeZJRi#^t%OTKIf)~x|nbmoR&-Kv!9POK#;bXU0@-?Xe+b?M0JF>c)d2XJ5R(ZlH9H**OTqVoq ziiruxzeC#jR>8AwZ+qv5K&ekIcJ2a$u3#H37YPNs4iSwZa_vf0nfN^3gLJ&<_)(!#wm7P>%aROP${PbsLQtwm zW5F=rn+#Zx&+wRoW{}EpMl1yduna&%I&gy}F_w?Teu+d)jvYKmH^A!WUjKjDM?s)nZ;{XR&7cV zoO-N>-goMQPdt70&lcz%*xnHUBDOmU;UDwM>AIqD)!XogE~`I{p>i}x?^V-m#u)Y} z8%o7GwfC_AP`lIPO#H$bV4yUZciUZCp*JpFp|6~~NGlx4*kCD#^r$1#<6_6(EgbzT4YWT_8g)nJ4NAclSn(L(6UtNgZEl2`C#`o8ksC$ ze`G4!?ghBQF8>|2B(@2T7k3$mIg{3{Hk$*@rbZ{^do(3X)G@^*m86XafJ~kwTl$Tl zJ!G={D4pb^+DE?cWv> zj~F_<$C;ZLgwOwwSu{U10PlJKNB$O{(MKg4nPRH$a-C4OASw;v^}2qPn26I*16>V* z0&2X>jHVgyG+FI}+F+Sb?uzu=U~cc(^Oxw-+J-nOrPc1Xc!9C_AdDw@!8^RT1OD4c zoQ09>gZ&|SHr6-kwKuQObqDv;?KhlYl{_U-DkYLKVrQZhfON!DC9(B3hYD1vU959q zbsyqe@pl(S_24_27P1qm*=}kEwQ?k)BAW;sf&!9zkkOtrHG7bwW%h)+jS{QyU1c-c z{iaIGsv1}DWwj_vW$Ky6Dedmp9{!YPDBn>YY&JsY>2G}XhoWbGC;*~xh|lIxKX)w_ z)RZF64XsBtf`L>Pl&<9mS$a~H4;*PPaFYb(|8!Y;;5baZesOMDr74 zG}Gd=Ja~3KF8X*ly-Xh6zstPgB1==zp!XU2m&gA7t#(7L?8DO-@#A=QF>vXv2<)8Q>6;_5VE~m+rBHY4awor<^yQ8t4byVE6Si`X;K@s1BT{Pl#s~kEkZ%@zX+Ur5W{m?w9?{ z#15+4CYB8y&EsWNy1T2f)iD;0yG$Naf0MrQ)bsT0<*Pzp3`bh94!aLza+keIytBa` zFT7!uQl*tkQgtF0Hl2Y9tmwGFeo0JPb$F`8mP=j?V1Vh>rIZ? zo?lv`7CQ|S-ElfNKP`^R{L~EH%HX`EzbiE)OT6D3mzO2oYL(v;esdHg+$KpYLff$S zEb04fKCtxOTI-uLqmr#VG0pqs-lpceY?VFdj#*HEZ4F=~LgAcFq zS*Y+<-juZYjDJcF9{vduuySh9t1VTk{fF=wgKCvy$!~CE<)sT3=(+P3=y_K87gjfD zk=1p^pPPeJ_e)L?Zi{R43Y znRa84g)&by?m=fv2^lU4U6`lD4igS4?JNx;5~V^di=KD}O~w2;fJ^&~+kkX3bzmfLp=w7rpM}df@u#d zzAS7|<$`mMQeafsKddk5yNdvAwE@axH0VoV`ugT3E%A4sX9osJ2}@hMQUeS-6dpHX z%0t+N$in91j(0mW#l$lt>VO>>TphBjk;KqpwGVC(B({Jn=>7A`zCC*38tp1nPV`4R ztIVEI)eonf!a#dT|FpN;d3p@0*?o1+k@l>XxQ=ITJN3Yq-fl+q+g8DYKwoz6C|cWr zg6f%jqIE272t;bs-YA)6En7@i(%YjYh1x}E%(qNH$W2WaK?RgX9kjL~gL*BZWHK)= zF3RmdtQDXJ&jnTN4IkmLVnK)2$VfUDMC+Qs@Ade2TZKO1phe)UAn`!<3x$9!-S4uf zZibN1>MRUk7V!6885Y7jf^LC_3klmQhvsQ(f~nYoZ1+vG{Ws0h^2*veE%85qah+q= z6O)tt*%=BVC8Jz_@CPG#271rPz0#;|pin{4yLFMQQLODJJVnebfxe zJWujo)f6ag7UUNrIJo(XdXAtSq0%Ct;Jcv3rA3KmY_a`?G4y*>>V*+xEQC4k7H*@!l9sPEBh(SKZJAzS3>8 zJt|l|UA@JTVoh>+oINCoW_Ds066oajnzWDB)+Bu|8AwBxBxtm*6jer|oal)=@40X7 z?UZ`HWdNdhoUie7{Bk;l9nE9hn=a*wSpSzr+Ed%x2vx&K^#T0p(#36%*%+i!(x1MD z?GIiJS<20_PdiBH93uOq$*OOIF0O8h+6@8(R&~vWP%t>wB&)r#R)Z!P000UcgYj-t z!eELo+RI?*@Yiz7XLo_-nOY!n&XQm}B%O7%W>*fNmhQQS9s4f{* zOUSFJ`zJvVy{O%qXNKy5s{Ap}!>sxfRvl(-t&-v7Qq=z&?!WQW1ON3~C8*!J3J%4i zd<#yfI9CM1D}_QT(y5qijNbiS)p4wOn?+IuWDZ75H!s*{Qig8IC(@fQTp<>X)#5Hk zDWGOSl|UW0vnEY20I=XVB0$mL-zOOi<80KAG0=ucR=~f}fU#82+71!~3JGxq1{v%$ zL~`2v`Lfm0T3|>voFz-a0fM=?^$=ufFvXxooSAi{oEua>GO%HC;Gt;oxs}WZVqdgi z+bo8%sH3<|8)1iS#SIS2Z8FC=A;3F0KSys~zD%2JN8;KVjketD(!AEfoeA6_Z}jRl z9(#y|kQ@{HjVh0~3VrHBpH=JT@+g)SNHcX@yjPBU%_Y_2(FRKe=rl6|pWh zrFf|LDoC(hqlj{QmV)I9LQNw1poMM+tR~^GjI$H5Z(>{|=?B+@B*W})lXlVe^BB9+XTjIeKwfoMpgrqOp%NTveu@_w%elq-Z#s3)=bu0O_3s-i zeoGQ?m!+Rjj&ZLE>YYrA>atYj+WU#8N>qzJt#azBqs%r8awFB-lgcb>Ppb||!_;^? zm-22_Ref0a!vB>!Br(}BrY~m4$0ghbJL>?ew2l5y5)DAfz!_@uv6fl7Y_g9G`wp2c z4I_LJg@L`;w_+nth=5JlLA?i`(+JXFo5N@v0YO^*=Ju{FGJE3uxpAm!OF}JUm3%rf zAmBmhn5sq?5sNkiN62S6TwfKn51X+8`?lEOD9Ko=d3KeqxKfbFeK!G?cum7!bby&^ z(aWjK9@QviY8M>jUh9q4+pdmEW~uusSfX~+v4=oKkae7($}_+l-O%_Py#x?UfGExbmc3of8XRq0oGB=n15&#vCp#~P$Wbr#3l0?(E zPTS*fhGZY6cy+871B4UrJN3X5PoI5qf&PLmqwllvQ~Ic%RGM93fRPA?H+M9fLQX2y zGBt>dO3=1yYPRTK>sd0+S|KG%C=7Uy(pX53Ep{0AG&Bdw&5_|xH5iCU1l`=(qz+Ux zFYYdT!XE!e!*YV;C=dq zmV>VB3?v&Tn0F0{jRz7oZ_WUR=Z=$$^}u-y-=U>k{YIM_rV>z-X?^)ql*C1)s8gkk z9BxVC$$RPnXRfNL0<1m&rF9uAK1JVW`wJzYNjyHT4zNq4>s;5(h zKGiO^vTM{s3)+u4_#IQRnwwfiAD1E9acF;AI@MrV$_<3fwsz?J#-`M9T-@B2MFRv;NZf>MCz2b<_+Rt?1~Ci;&}@Bd;A$~s~g1j+p*lg ziFV7bN;9W3B`!7dg~0+xX=D$Vl#lXv!n4QwcmM|0bX=rxP+*Nj;%1atXd=_b(h90r z-RC3|s51X5S1;C-m#>A{m1b+Z$E<6c)sCiHq=W$S$dnnCl{uAcL=z1v5Kr88`rap= z{R@&;|3V3<(l1bDJLoG36j1aBB~dEk{l+xhz|PSGe$D;2bGPgFSY$~aMvA5;019z3 zgEoIG3a!8O4nFWOkp;c8vC5&a6WI!Wx1;^NBX9VUzpQY^tOC_Ml7s-dwfFjyO z^CPJjDTKssh%r$}(kdPlA*Ch6m$_`$l(YOd^Jurbbnh#%!NbL7uBe z{5`ktDFGqb&?8VB^(X<=zaN+-)AN`|rb<=c!g&G6{t`aUFMlW!(6 zsloBVR+PvM;>4hJGEIxed3MZJlsYwWT$sjT;376WjM{Z!f^$%HM@AQXqJoK;`>ve?;FG$t-p17=gpIH^1 zO6*|ROE{DFK@4?U&sBHb_EU{i8XMpmtBRUr6qC(I$%c>7moalE^u$f4zqd#HJtbhs zi$_N>__IcJkz5*3Vpg*rg6>zCaf%xW?=|x?lATnNCDFe}Y3M=J2~lYZ&QG%DAytc^ zobD*9e2uJ%ci3|*c%c{9*VH+Y{>+($<=FYaCm``ap}@{!DJRhl1`ljAfDx}z=>{&a zkn=7jN+A>xc)eW1VU!X}N8*g^Nb@1~_Od+9`w)rDD+ZO1>t_d@0gfzeO-Mj5KvBDy zl}_^SJA5pSEvwo_Bn0*oNb_x&75tD~^8v0(4W`L)XIVfr51_g29% z|47}UsBd}w_volM(Q6lttq8I9>FNZN-4ZHTdpHRPD2(7vC12w04g~~3aG@>LGLErs zY;LOLgCl`Hd%SR^CkwEo@&-taQtcA7(;zEgpJY!HjzcNktXLf)KTuYWJ?@qk9f6;0 zH`^lV@HbDZA43g@@nKLmX#at~Av+q87&r;tEC~3vP^u}OtVyb1>1(9q^_C^jf_#En zUD@6ix(5FsX?GZSE33=2&BV2P!;(B<$CCF-Z`iKjF-SU8YO7Et$B~i@*56Yn+1eVa zs;z875A}I>e%E?chyGe#fGj6$-0(XOJ^aWty;T7ID#v``MpHV;O8Ut&m+UupBr1qj z9jxqjn6u(`f`HHL1NBi9WZtN45D^MQmBr?pauX1?-b>c?1j!U`P&jToEaU0l=z(XPfpM@li8p{W+un2 zryhsz_;2_}79{|XcbEzS$u0H1QIk(+*;MH8(N>ru+97XxUWzl7hg$Rjw&Do%irP&$ z|AK)GTXwReBOhQ&tTWMmW$6l)EETgt?Z3=;#xm9ll%jXr57(?}O&CNU51~>mdSfH9 z2*2eDx_#~vuHLna40w1Y<#$e&uD?MCOBUMe61gddbDppIg2OBW_N%=KM!T`gbIllor0*E?D zWm}j_cfg-*9P^TgLwj?sKwZrOk z)MxOr?Z^Z-yy`xrsCdol+2R`WOv7U>1~nuj9th+h29xX!Nsd(p0i2|yMxix_c%ho6 zFKWG^l1S{+tjpJsOX)$`%0$|ut?%?qPWWGFRBbz?Up3_kgdPF0WvG!6DnV1qeWaR< ziAnN#PGD(kM`_JsO~@!#O$M`c!~l*{@LUwebnDkD+X~`yZ=tTRn@q>ZnjTqJvPJ{NgpK``;-6 zGkSz-r|Z~o@ClTHeYe>(F+D=AT0)9l%l@$fSO!VqOnpX`gTg-%YaIo>XmK^b!NKt7 zMQ?K8UuLR7&6R4a4OoJq?ib0NN2jLf*uFUx)GU@}rY9tAev-j8#p-l||G}n$3db>! z%+Qi<3d+6ZNaF&)(L4yw%Ge~maqe|S7pqo&0MOcPyFX%eSP1vH-rp6+0bc4TwAfDT z%ca0R#W)9?NVlP3ydA4Ah9`^-4T>7Jh)~-tex&7|;?aa>Z&Pdh|;R?`^! zFwR_OtJRf+N^u$xgEoV@WXc7J6%v&&kW_hnS+e1R5bn0XvF-^Q_@Y~rzQ$xs2#!&Z z$N3ZJT({TX)5j~(QjIb^Ox7pzdjc?ss7zm%TcSrb2)EdQP)D|@xI7(k5*g}BvZ*1>E#+#L0fp?9A)ot9dzu>P*StGRQys*8o6_-giTSwY zwH`0L4r50CdPaO@w0q6kX)YLSa3LPLt@)o($zFaNNzX~ zz}|byaeC(%QEWxv|C(7D!xhf$dgD$}&;>1ZSbu(4>V(c-mWeW*InokIR~d(MCp^zK?s+F!h%Cf=gOgDfaB-__#b+Fe}i;Lt45ablI?a z#8_1K-(ta)rn2lq$gqqX zjzuluDY6F$hXD%?;`YRWdHUGTe@GT%z!D6{f@h1x>rTyT6&_0~Sq$`zj!GcGdu*{( ziXe-F9t#p9N>Tw)2gwGRIt=T~!A*>hi7Jc?q=S!$)Ne`#)!SkxRq1x}!$nU@)Kng)@#>Xw6zj%o6&XpuqiQBd z5w!ZNv@xuBvnkdzFIJzW#$ZQ?Uqlsf0%#ciuRVA_&F$aMr1VhK8PsZy%oZs+$}M3w zDw&+=0%r_R)bvU{2itF$Xo)_3a9#>tR5%EbCiuJ-GBqWerrYh(!F{umEUKMOwQqDG zNvv2L$)#psx2QW(sTa)12N?HQBmf!zWoS~~=?vD=l1K}H%I6J;L-Rx%r7k}_|1I{2 zaZclnF&*_4w8K?qK*@4z_d%4tShb5Ky(On1BW?8?k`U34xDYC94k9H1Bu-=uwN@W7 zNzRIh4r$J^Pna)5_K`Z~5>W&1mk)kM4iziW?fGBTd&Y0O4QKC0b5dlUE>YFnj_Rtm z3ZiR8T4uZ-RrVxNih@Wl0secR9SuYvf@Fn|sO9UA?5E==j%#cy2W!3F$o2X-6fbMy}FN?i-v9EE0gr zD!0v`E3AzN?4||-P#%O4nw9UWA^OZ1&pSuqdp9Mj*IUO zG=d`MK$YjIjzDHavqLSKHyxABsUsjPY7*+6NKE#lCy%JPXtrV+6Pw%dtGbkWd|C0K zQl4TZh?+(5(02kbhKHohL&A%R*0?v@!uHh@sYF{kkYBTBhWoH*s$GCSplWD{6X4#O z@&+mm3b$d{GiLCR1o1ISYoJcX;e)y$P`juuV|CPKDn_Iq7O^bS4Uo(ls3dVf^jH~k z>W~$aE9j)%E)of3Wi*})wJuHt5&`&v;I!b_<17K&76k#VgW3@|L|W^tS%vVrbIVLo zNvcT*B>8})sL@igaE7#Lgf!?Hf8hGD)?w8a7uS=U2MsW9@Zu+hI&D%pLWcx{a7| zD_0;1L5-HWZINtE>(nqD4MaUkHcY8Qtc70;dTv6G;P`NW>^`{d2OAnK&9|d>7t?NF zNWU0KihM=%j!M-U2-l$$74hLs{?|vH2_A%zrO=DlpQYuXq@}(yOc!d)wg)XWiKena zA7}U8-M-VmhnfYcz<1}P8Z(i|>5owzfavkZe?8?6HeGWfRiN1=nGcJ$dU^0xQKd-k z3m?^%^DOG*x|;){MLK#^S0lOE31r5(O38-KXT#GCB9{+*{q-lbI30wmB?&+c%L1_k zDew<-Iv{006!*1u1N$psTR_B8A&WK;x@CyI(l~$N1zW7Lb>=T@Mtz<#24aWW?EGj? zXjI+dCkd#vdul0UbAch%L1VgN??tU!0k}s-8W*NzkWnq%B)@^^$OtJ}Hn$E=iukXg zas{`%*r^CMZ=@wN=8(OEP7NrU!UzaNn{spXMAIh^NGo~DSOL-#!(7k^U}BNHSe0s} zMp$HrO5!;tGHZ#JYJx4U>NoDTPdUI8=+zTa4^~jkrqElfQVwdX z@a!P>DX`9&wE;`Vt8&OHHD3X{DgBqV9WIg)hQi@A^kFbttHUbv@PYlcx>xhsVJnS_ zq&_m_=)ulo&@?%0RaNwr7EKum5XF9MXr}^%`EYX!j(i{t*W%C~!fH+F>=9W_|_T=l&RNP+W z(r61iJ6dp0*uhbnR4>R?FWGUmz=;yz@v0rlk0bzcWZ{e(rXhK%CO#>ZUFivBcG8}C zTUN1RRj0KK=yWlbLKKZvH-lM|hq829LrY6XVd9{y@sPNYtlrSwYG!&|)SucTnSzV$ zIFvBLsmOT|^6nUA?H)A{FSQ;kLaU(eqoK7KQjjz%s4@shQm!D``zUxvs7<^~^E8Uh2n7xpn*Dumeq+#BT>OS((`X5b{aCL9sJFp8P;B)Bwjg%WH0%{gu5X9 zWQe3r1Y5(rXxx*+q$n(K2SE!OX z9))rfLBUj-7Te>i*r&Z{X>S>4O&a+FklvE=3hAb0JYcvx9nZmG;?lo{7!N|ue#IrIRG-zUL%VzpQeeIi`*5*WcQ>7xS zPA&dc)t*=>*m`K8OKJ{4;uXW_7b3+?h?zpIL$X07=SnHO0D0j~q$?#NZ7QXfn#Dr_{U)=X_#FWW%H9P$P`R)_>`AYnZ8n_B| zSj?P>(s)1N;7nq|$q|WYElF^nP;UaSe~KNo4TLYnacU$4g#;9{x9xYoUy|A%Ev{^~ zq4WdHLeg}>*D=<@a{drn-LhjUfjF6r^8VckfGk~3Me}GHkSalqR(Bp0$}zd-!4XeY zfl)n2%uhm}EU^TLs0!~@PhdzFBBh&12nb_(lTDq-1Xj{?rILXsykD-pTSiecVDem(L1U@u@RFxj?2xDQpa%?S9vmN? z7|?78_W@+~k@+dQy0$4D3^pv;002VPOct~rWLWwv4h5C;tLE<+%hf)P;)IMunkrW} z++(wPkvLk;<)#ixckskq(Q#(dMZ(o_R3Xu3vjjwb3#JJQ?2QW)#hGZaN|-o*SGNNx znOr9Cf=4z?+qg$x#x&qYq+S`Rp7T(FPrgDNkp>bF5;Wn-Wu9(r2eFH(kZ$0yIHC8g z^V3T{kO|IIOH9>M5Xn!{j%~lghFV{`!aUo!%wv8AdZhj0C$YwiH@{;R$*~$k@9?;Cfkev8XOYTnIOtgI&EW_#{frzfju#m z)6T|*Ox#2+;dr}A`zLy|v$Td#lS)$5XJk6ZWE9mt^dwNkqQ`_t%alW;m;j|sH0^c? zi5_&;9BPSij|_Y|ZlO@gOlk%N*EqO77?F^CUgjw!4ftDD+3BQoP0Cg$^R{Inv$WQ3 z_~}x)xsWAw>ZU`MxmeI+;9=ARVY+71V>Sm{Cs;_7CsK$kI0fQ(bY7=Qno(Op*{Z_G zrHy%BBnLK*DR#>!P%GrI`|u)TM0(r^z2=$ZD~vv64_JFu;4^Vcum`+>im@~vl%I&X0VKNjqX%<+ zPa#&Gaizm6HR0f+y%I3&LBC5$1E@PZZmiUrU5TBL)lHLu(>&_hT(z{!j>5fz2Ta6mkpIJZuy*bm@nw9#A=;XGEm$aF#E zL^!!^@hoBB!(nN*n=)P%xq-(H%(Jc4r=$C(>D=XIk*@1Omtbi03c_~Vg$~z|kr1Uu z2!^FPSlYgW#C}8l3J7HYXH>kjd~1#o$U=?+-;G5NH{<&c4lHs zGFM>BkqkL1#dgw^qdc8Ui2|YRO)0sQ=U7TH2XY;fZ6keTIR4A(e$Z#js=?&4%|T0uPszK^9Bq!YMHWTnha_9TTKsahG^gt#J{(bh;4Op%NL zl?_J<>NB$#FC3M=@P0vZ78`8;<&u`KhW}9Z$u+Pam9&y^4vALL#D+p!DF|^M%~K5) zIRY@7)^1M6L>Rs1z^TC^t$nQQLdB=Tzc70?)Z|D-R2z2~v=o3sNZM4KPJ8Hr9glxK z0UGMKOQ={A?R&(mWurl*g<6uLXFsSXtJ$%kq}0nVQeF9{fL(fe(vxT2N;Ihp0(pF5 znmM-~FZecXZLIN4F6r>01I+WW4Y<2&5|V+23FO1R^mswj7*SJb)waAWhX<`P*d5Ae z#O{Mf%%Q#Yjdg;1vbM5L7gyGV)P>qa)(ko)Af^BKb%$x+fqg7>doVae$~G*mKT4Zm z4apVka2#S<=EBkn-EsUN4PU(=1@9|ce4c|$V!R^@@wE}UL+5^p|Kgrzl4PM?XCaa@ zH!n1bC#{Z3E+fE<*v-^_l&Mc;X?C8fPw8nWHnF}hN3qw?6jdixv$!NWk!xc+xaD{x0#F@LHp*1QoT7#leijt-|4042>EjS!+Ztu`K#)X+t zA99sep5&VgC#q6SCwVF0sxAp?4Qe5o=V9gsGHaqzcLohSiWOJ&Lf+bUR_0eFNSrar zEI?e#G4$;B(w&q*K7^Y$NWd_yG=^g$`hWeb-ZQ?@ndKX@xA*LG&(pK7y(!gc(j3yNX@;d6_G>YSCK)`_OejwC%dHZAJa?KnmCO z{$$qMMsgYX?w9Jo1`Z8*A2W=29@I zdJZ+6*8 z21|RFY#@9mY&E1?wX}a=kB>iK)w{+3mi)#nNURvPCZyG%Pz}@L&rP#9JUr2nX6oyk zJ5=)dyz=HEy>$L6eelFV+GL4;ZevHucZ#OAIpl_!Ba_o2mE~S}8AGAApx3sfCISuZ zXYEd#p|D1k#N=QkJeYm2AP>oYHyxR@S{buyf2zzhqP@qe*r^&R}P$dz6IpNKFQirMjV2+4_(O19n5*5d$6+;gn@ zR~b;TufwcSE!RTPIS6n*-zj#F@0g#IJCpIX%tJ~~O^K9#fo;h*FD}#1GYFr&xFSvm zIxDn-CMZa|I6j9SIMCdLMGlU(sS^ayw@|{KL$yg^e+8nd#G(cV3KWyN+#9Q}$C2YT zq1RHA`jeKguXYkPQ9WbLj!F(Mh-g!KqFU8LP7F&HD-jwTJkFfQiUXpWw-hQBT%EMF zlicGS2S0G4V_XV*1O{(3#3>0f+&Sw_$_?LU@GV}tOpD8FvY3!~<2{u?adS&DmwOYl zVstlp=<~Ni+w2+Rv#T4sGASL>@P&(u^vo3o2eM+&ObA^RkbEjCaZ!dG-nNgW?bMjo z95WzWrIO%HOuOXo?DWQ@wnWqmJYxWaK@Q1O@Xa1$wLUf0qsuEBa_y3sKqyWRLQo?v zj86V&s?^`s&IkwidycUUxyaWDCfPG_b^=LE8N@Sb$yUfCxyaUZPn&8==-muDZsolDO$J>f8v#%^)8J zdmBG>~`*ilH=jf?(7wN+Kjx`}i@pzkVJ3L267%)47H|Tu_k1_=_t~L;Q z1+oJZS!J!krepgtvPyenZBtU7G6vAeBS*z+UR+tGeY3N4{>mk~u((36vh(q?M-K{k zC*kQbu+W}Ex)Jb0(VLpqLL>C3L4;(t&p>5R;vuzrGB<(H;tDE>bO;Xv1WhfwZ1W*$ z^w@M)LU=RNV|0+6oXN=vnw*$mN`@mVOB-~a9~2z-0IT$uS2sk$p}7)L!p7KkMFPe) z^OI=*<{)rd1))bRh{`4YEPt;V_QKs~!JLb0*Ke;0rXPzn>nc#aSk0q4A?!Io<)9MD zIn>p0qx9pMx(hXXOy{mqkTiX>t9-M5`Iveo&=Z>f+ zhbT%{YkRwGG#naA`Q|JGWwpOXHy%A9Nu&7Alh+-iU;O!x(DKzq`qtNmFGJ<+R=iM|E~qpWt%ZzY$%N$2WsF#1-CfbW{{%l232TU0V0e!j-^KJMnF~zSU-UDL!d!d7wt2LrNj4R$ zl&rRj!%-m7o+l*K&A;?TiNuc83Hgi)X*FwLCA$!8qhy2F?XY{%;irCKW1DX0=tTFG zH|0sc^Ol?Fsh3|9ZtMD6Z>3kBd74%AMY@O7(}X$?nj-W|pa)u4EjeOxdY(PsS$2fhR=Tvs zYWMn+NBH5GryL0sF_Q=j>PFDU7oPY8{}WBs&|-HfN%ea#*)Tzz6r6Wu`gm;C)+5`S zu@XYuBMB824RvK51b6~h95^n_xWlGjb1Dx`7&NuQsBEbd*P^>4nNc5=9PMhE-^5s!jJ@e}q;y z`}FOvJ}EKO1KkDXZx(XZxl0SLzWD4d)kk79(D7M*IIkJCFdIV-H zfx75uaAck-mvJe>Y)Ic`C38EN@5|1F3>ED5H1uUAf~1Av9)+&NVn?Has9kxmb8UQt zkqn(?CSf&ry?_E@>S%C2Jvl3l%rCEO(b1U++G586gSRj6gVtf`Iy<{fhgk~t!kF|A zln4q2a`SoMXJ*+lS)mgFI?ax7qwYL3(GL-wyL8-RT9eB5t0G@XKGhx1NK}iFkQNMN zX`Q0Rz`m!ENJa+wio^qC67tftA1Im z85GW-+nVV~mVO++TKx{98e1N{fljnmAiyUtD1+qx^~=8~9ji80mS~MtS8fGRm^68a z$>J7xIvI}uAhopbUmHyw`5^FUp~9DzXl0RO#?%%Yuq!IHrFIsd2eMr{lT#7~Y@_ll z*WP<%wyG|q0g*^388QF6@p{HGi zGsdYHN_Cd8%2F@MZAJ%N1+=mzMS}??bwaLH=Sk_>>&!g`;Q?3c?HcN$vO2+7 z9VW(_^wamXD@uL8a?j^{_uRc&Dif`f=2Ao-lot~iotQ3bnYB>b(=6Tg9Xn2wOsxzL z9b|R2LObj0Ox|+bm+6QD`{r3Pw5;%GB;Br17lB4V!V$)f42_;-?{t24jzx+ASE4>DCOfwWP}}$#}7NgLI-p9*Zn9-FPEp6gd2;Hw#^&N2D@ z2(|7@X5gkL*`Cg5$(qPOK?d_^cSmBpU1Y1E3awqx-1K!c$p92u#2z#8$W1~5%t-kf z4YV!<(~Kskr({?(q$T3WZL#qU=26bc0JbAy6!2wHt$74AvRR z%q$@v5tr@0Mmii+}P<`bBlj<|wNifYXYDLRtu3|5&km7Le1#bDGZ0%FNs3?&gT1*w`F7&}0=FqP@xRE)OADCBoZ zvqysKNIQ1PI+kkpf^eQ-aLut}vb5b7wfY8w3sM&VI(lGEJk}e#`y`}?o`-!lHJ*6s zJewC?I=ugY6yxs*u|ATrPb98Nl^`&v#$946)SAhpNWU3dwAX=5RvV@HAr$wRRKAp1 zD67@+-~sIgUu8o^dvK{{PKBi9D<8F3L;d%vS_maMe9H8N?u=-9%^rg_3%0MHkmdWO z8jl+Ibmgc_4sVdl4pxMnj$4zK0(ShZG|ni~xg$u;>ah)!vt8HeW-{+>mo|l-$k00w z>XI_;rho?ud4o`6>}Zf@QR8|5J_1jNtmD2FVId*4BjA_w67c9b$SeU3Q54~LY zSP>l-1aL!Jcy+9_C9pPkm#Ll7Eg-OjYe`ZCTD)ChviUGSRM+9bVw>=~{j(g(+oeU! z2f1{GHu>H@v$#e#oH!|!c?~Na*xcM?=Zd2sLruGvK8h(3*oA_sU=Z$-OzH*w30(Sc zS54zx?HMW2gYl2Xf32T7v>Tr25X@`bt83M116DOQkZzG(xZXdUTEk{uvf zqzGLk-cU&rUQ0`oxOY+AsZc59V5x}Zx<^|D z8|*VR@cPW*`Uh0C2g8dyFd;o4{1FCVWEv(=@)Y(sM{>YGd;E)JkJ;Jb;H786hGcyD zC?~4f3;KBJ@k+BBGn0n2N2$9awuLuvx!omuTGA!LY*K(8j8XvjP|tzBfFNi4+Y~`V zNUK~OBrSQ2XuZ+y$v&cT?OP?nQ)u#RkiIb5L3POXCXO)@TT#{3$jSjww1l%A$-o?y ze5mOFFbnCZuh)WUo>`Ws=z;WwVAZ(-`XwkOUbvnPfO|$d+ z#V*x8GWq~?*^!d2uCOgR5|Z1vSu#61QZ*{QD=PWoOszB76V6kATjC$!uf}SeUUzdypW9Oy(}tJfe)oF1x4O;NSc9Ljc%za z`yzDv1F4`x@e|sK$i7jhdg3&ZhgdSGx(vRh%^k@TeEHHc-F#qLY|ecgZF%M561~D6 z@}Hc)%6#QP8e>{XNN+rdW&#QIEVnb4&Rpm(1HQ8!aY!Hw!5Y4sSrolxZ&_PpS53Bng^a36w{=mo$_4P8q$J;%{eR=#|ac=1<=Ivm3t+Y zp%DM=^=fmb_oc|afKjEKGtu*>V9QiX_H`e!O~-;rQ=cs2<*K| zyAHM&QL5Rn=z#S4>yAkV%P#Y4OK)7DjjNZn>=J4fHwpE;UM`8=D(JF>_8;id%AgX7 zI_ygtm~?D_Ss;!|VJ3pkjKet%*ul`cV!bk`U_>%+K)M*xiJL-CS@DnXTuYJMyV3%k)1z_Zq#hylxD^NZMp)iV|c!z5j*+Ak}DCY`8=_^k56>}I$iJNCbrx;|1)qYTa2~W!1MUl3*M$Tu4t$V3+8KLVROwP3CrN za_FnOvM8apHiz6q8ekBjsM?_}lbq;KQ{hW(x8(g(aK5l1rO#HW5(2kM2;p4qB8mI5 zItO1mvLS=g*pjbpOfp&2`5Ex>FKrEInWgiNHCDoXM2*by>WcKK8JG6Jx!9;O#0Mot zpk??W80Wul^UoZEt|jw1b6H1p4YRw~w{^letJ#A!d)_|jk}XBO$jdNY^SMdp+#*RK zlG0+8uWZ}71VCQmZ}Hv_1yi32;vzk8sZ&x}^OC8u35}lAi}a^}TtWu&yoRGgD`aj*JNL#16_-H_3&c~je9z{A~TDYnInG-PUGa|1QSY=>dw{e=rM zfM#lHlE$VrtcHCz7{nOwFh1TDhhcYPO|DfWEgTAX%~qusE%i*MZ;CZx*K3}+XfLR2 zfD6E*QWHRa($(5% z?6v3j(k6u`CL0#2P6?F`3%*K@ZWEUdX79k25*$jM6(Rs^6!iEYucT85RH;=vuV@sC z8=BsIM7}uG@K>u5j+M!x7v=EVBmJZ4<5)Y8dsL;_lAfce=Y++$aAlDJc-#On5-+*S zlA*<6F5Im34he_WA6RI+ETKtAy;ZqqnAFK=+hm6ZEk@*a#3=Q|2)Ds@ zIxx|d#Df)n0FddNg^^B{=W83ubj~47FyOX#HraXNeRkN%Vn<3G5v1Q+?-*&)#K+c2 zpaV@uGs!IZJ6?P)x7gIB{~BsMVC@f?CzwX-#Ba&P382v>tD8&uejaLxt2J&nS!=r; zk$`eX&z^m9_kH(#=wW_2tv9Z$*#a(}?Kv?7g#;-FUWyV|sSK6t;{uwf_A1yDk)$m} zsv04=C+!bZNXD!<6}+f-oV-qM4D3Hhj_&xB#Bs-`rz9k|v9!eR^=M{(h9)O_9ATKJ zn{GHx^T&=*dty>EnPF40M3EN1((JKJT|}jpB{Od?MC(P^^ox>n%d)(tk}Q=ssAD8u z@G%Tq>O>H+uqm1Xl1wIH;(nuD#?n@wR#>8T^US)#W@(`TDoA0pZ-Yeav8~rbdYGkR zrAjkzw268X6h_(nV(pEnnLN&yR)WSuWDXKro0{~9$<8D4qNTbtb&xp_ooWeY&iS%e z)?|71i~sX~`C0syCM7YY@g+XP-y!D!ljzg@ue3$g{CTJVK`G2)b_2yk$B@0&b1G{V z9#NH56D&+;j*cCL6721GwYCu#m)VJ6zOCI*JF(rHl%CF#49W}GW+^#7J4=)Ea}*^` zs%)@L<937Ti!X4Tz6{&@q5C$M7sqfj_flb7PMy| zA;naDu6~S_fx5|9uedZ}#GpUxa7xJHFFfl{n;WP;W;M99(nn*D%@9K6IYm2hcRbY2 zsIn8{yIrOjw^hTt(nic0qXK6Wj2tFows9a zr+2FL6DI#eLVgn6_SY2opsJfy+G^&XMndeDScM0JH%E**9_#7X-lXGmW6Hq|3wv@k zI|g+i-H9pcj4}6z)GYvu!Pjif@Ou+#!vQ>&!BX0JBSRXaT1$&K=rJuNEL1UYwE+vs zra@O%1*L*CD^;9`)<#}ov!Jb}dZ@vgRyM5pIm!%>@{fY_3AQDdSPi$N`vE^6y|&bX z%(A(F{(oqW3FiagmPZj%&5V5+b!#10gLOeg26oocX-*)=(b+3BkrUaL^h;k~_j2PN zC(z02tfFJ&rx!D+Md+OpLV}~)kopc>iz0Q-BEd>tf_2d?p#XN^UH9B~hVR-5|Go-3 zdhl9`0j0b>s&z!F*@4x6)UK#kSm~e4mXOzFGT`gq8TP2^%7#?$yJVw$K<_(oP&hRS z)xk*sL2T(z=o~Ou-=wA2&(r4BMcQJUaF;#FA*=38nl%OiW}nsD4tvpv_j+^&G1^R~ zC`FMh!3xgx6m(*foFihZ7=)Oa`pvX66?i}$&!w|N2CQ1QcC_s;Y(EsZW0o8SYNN~( zBUsNbuF)z3P#U5$aAE5KL`cJe6QVOqf}A^~C#0~5ic;IAiIM>ckW`c=j88HX9$C>HKo5(sPVpL63N?Ht3l+;b;9D z_Dsv<9iQNQg&CCX~0DE_R1QAa7as6)^$=jp8!Ujj-nFd66fu*MC_m! z;3REqY)ab2BLEB?6yRKdltyjuFla>^yyvzI*THudYSSUY!rzTrkD_699sJprwQQ5M z1Ib-zu`E1t6edY*-0fK;Kk!4yFC=|UbW+T$y01(&p?b7x--)$X)@ikR{5MN2hQ%>+ z?N+Nzkt=`$24ADL?EzrM+)NSTr-CQLnyum*woI;!0U@}X5R-I@m0^%h#|04$}1GI2}54h$cBIf|_0sw3vL3t^$&{FgYe6t<}Y= zw9O$s#Eqq@4fP~)1JbA|$}zq{W)v5;W-?q>dd!ThSO`u68ef)$QXx>iKCTr2%k5uN zN-}q3*fmsTTU0yJ!5Dy~<)4TN=TSSdN`oUwuNqo5bI|0Cj1payW!}rNBnq{*yixy2 z-XM}#ha&-^NM?XJXu?C8?66oZhAeL>j+6N|)mGDd^=z5w(Igc_3rIkq?*%|?tg}DQ zC;F*Sv&DQ0dMYNbj0CFFB;+DIrhE$u#-U}&fQ^-t5k2^0V2qWD^{c8|g!X(!TJI|DbjNMo3n-q22avSdT$~ z4Iu3_g8&Ot-}@L57Esa|)Q$qO(P5#b4>#x)48Cc!b;PTy6}juC;zgxO)m)w|xhnaC z#8ZxZyj;v?me9Db48pP=Aqmw=>!{Z(nNKwsRQ9wRaKowT+pHx znI2_UFZt8GpS`$5hi^L~owFvV=2Y5nRK!aMk)1M>(NzpQ{@(!eLBtD1lk&Dm7wGE< zUXeY{41M)tDRsC51|a_V@Ir8mphTjjf|XHw@!?c(y~9Ft4xyqkLs;)Y)ZWZCQbH!U zN0ovAb0!`2htl>9b|55TqtK)WnJHK3_laW@RGmWl0>H_WEtI+%RZp*uc6I)v?ozm$8Gd;p>Gg08)`Jn6&g&&P<)cFN%rv8huBk)NMLUeTdP^^{hr3Q2%U4*Uah!N}lQsq%l4I2cpdf2nD&T@n z62e)IWXfh=5?JBXVCbJzb`>_r22KFKUrM@_&K()Zz9Y$y9tiM87Wo)iZx|gv)`Aoa z)l3d_bd_Rz{%v_>m8Du_FL+ltL!oi(z70oOOru#arTml;Unr;o?@8K4Ol-xFC9NW3 zT>*3}q}NDD&2CR-nY|N8I&Fz#=+0$rbsYvCe27#zjH#B`)-Tl7-2BtWzf|*neftgx zh>g|Lm-rB80)^-quU8@YXQ8en+4!e9PW}@-uBe@QYU1>u@Re(fr2a@OidCS3!W}|3o^wL+fBJz6p2R$ zDe8N3lZF`ofaiIgf6g*3gQi399Z)MWWUYeKvf)tMZZz8sQGWmx)VBD&G7KkHegB-q zM{5oV392?Rb(HRH;je8ya~+{B@8y}ra|M_d%P^xa#=7yRAoQU$UP4>Mn7Sb7vX_s2 zH>`bE01haBjGwDdv8^@jI1V*Kw6gmw-0ooy)DT~<#l)j|)?Snz?19W(5Rp5I zy53oIJI(CB)ZT>_zVwB^_xZOBz%M@bnbp7X@W1m}wFN!EYyhwrWUvgDx;5sJUhTx5 z8P6AMV%R}d&#EAzP`MZ(Qq8*Xt;Vza(;YNxT5L_e*;{;r|Br9IMEhpOX?$`*5)IJ0 z4bzt*QtL;h7{YCikThAv^=9TYKo5cz*N1*C;<2LPrP-^n=i-huB^m&DgMksuIu1d- zV6_1y(ZD1Nq(={JeA{hP-# z$@UqRo<*-oD?3A4XTI{(?RU|QH{U@ooLiuO_UB)vm(LgUz_CO0vo{^3V}~YmFd<^o ze4jQqw}b^?dQBZ7()wz7;K4ac`(lzr_-&-M#VF}(JLplvieP=fAci?n7^zH}=8AhC zD-V)t#014!qkB>;JWk(ZYtZ-H;Ea@?l2%_eiUnkAF5|HD8$<9D@Fvzym1yR#cRMKD zL5Zf8>6&>IH4nI=WGYK9NzL?Tu*paW!mF!terb&!|N1lZubsJ%+GA5R+vEts%zlwr zGB-H0G4_yr=ORQK@mk`g*)VRlf$Pd&e;*F~InMe$EI9tf=L)Z>n8`SR53h%+~ zjgR-l>je;Gtg76qOuO7;KakofjD~FH0j)8(W+%sF0#j={$e0Ms6j{QU2?pVOuS3VC z#%W<~hrapTGqlUs_OZYEuhY%9-%fw`fA~Co;hWFVpPze^{_m%6p?hyT$r^xFKO{ce znUWDMvq&^kTNn+?8}uQNez&#qPPJOe+#@KeO|%f%9?;U}fG%$BN>3Yfrj4}_tWs22 z^*hD7(D?NCLRtR3{s3p>j=Mi_hCh5Fh0Le|NcAN(5R%?dofS@dC>zgwPG==gijk*Y z3Sj%xW6Q42qe)*a_cXw2j=w%G*qd+Wn^&&V19#mj>Gzq<%56xGmzHF-$OLxKGHChR z&|-GY9?rcZj~q8MVs?m<&N7PAf{+;`100TRwhN&$VSf&+p*hMVC)oa!CP(m4V@$)P z6MtzBVZ$?5_`Rjob(Vlz(iH*CDy5AFx*fo|K;LSP3C}Y)q55t)I76FkL;jO*JuR8f zzx3eGa};NbF0U-n>&q+j%{LcmcYBv^IyfucTr+vzT9ObU1x+@E2{thJP1vHSq(h}1 zvc)0oQM84L0lo1Fi44s!@DEIM==e;JuHQFFN2a>6hMT)Xk(Ta|Bziir9I|SU{i8qr z!_U8M0AjoI^v|5*gFT#jzm>6Ox79itP}QW`lNU5&HY9+#GokJ=CBjtRO~O3Yi@dqbDv(v$D!*Re-cj&j%oZ=)h1MA&O}Qg7+%QJTy7q{QaDI_e z5k0E&7S}fAv-2}k42+h9(cB?G^kiZTe;XI6vyW}W58ie?ox8e9|NNxPM@Y_)s0?2Rk|(BFI$y`(%JEi4SGPEtGOUj!C#uJkndp#+vx$n5IVz1=;mb*T2GNM1FUTK(Duc(IRvJTaRteUl@Ui~^M| zCW!;9)A^|hy5YJ*Qn`k<8AI@Y{k}Y(#n4)3h&eIRVTU8_?*fMcabqMV>};&l&K8I7 z);H+t@+vK^tn=co(aPF}*lPnT-9!&RjhN)Z73R5CyNScX-vLPsX(Dl0qb4-PpCl7! zeSM3z87xOw`eEjr)W68MtxP=hvGEQ~j`t)R24f}AJMhHG6LfOl6g~dTt1S7J>97B_ zUuOPtjGdAF^yklfOQ@q)mey&8rQOK`GXkV`XH4!|-t0&eM@j}7>V%<4Ut-=thc-5( z^F-5q32ku)&s@f#DIo?YZl)b%fY4=D&zO&#)+Qt^`503#pZ|+6_7?&W+wG_CJ;z4+ z!+zu{)y4oLBsA4HB1%q0-BVJqs^m<7qKdFdj)r;6$-jz~^b3{6=y;`2GY7CC#|7O; zZ@=ld&?G}t$Dtq{owQh@q0V<_b4{d-BfXg$QgZ>-<#~=Vcs^v5u?a+lAy$I=qf8i4nS=U<{Li_6ki5Gr+fd6}*(T@i4< z&hhU%56;Pq6Oq8+95KkdJEn6~GIPSjK5i)Qxw+0xnzjdyg%v3QbPb)xE;Z1FwVh+> zKY@%M{&!)cFLCv{J;`wY3#H#%0^qY}|7_tlmV$g=PtYEy=$DkPDr*#rBn^0=&B3&|1jk7db8sT1MuY^C45{+R4xAWhA>>-a&+h69O83|OLVZ*EE&7UG_m z;UR4^_%*-=0PgZ5wx=Bmy&|G542M~e?2I<>H_6!QkbB`XV8}7}5N|}0@ zG3dG?wR)_UTOFOksb)eZDPkau0gyG8sF0>}v(qx2DXW<)==$2iNZ4*$Y`O0Eq{gK| zLZjStVnQ5~$DezZo_*zIHUXyS_|fAuJ2gvBzw&~F5Vwa)hTnbsu+A|7^(3kM+C3q7 zzrdi`&Hx#DX_JkKwth+n_H*4JcWU75$e_=P|E{P)Ax z_XQxfn@`{KL>9A03^7W%#F%U|v(D1~?v%JF7F)ojq^adl`42`|#+pZ+rQ?W=m{s;4 zUGoUwMcwzpGdp0zc#`dt`N_7l;MiJQXQ1thLotw$Twl5tpvBn^tG{(j*WB1(iesBr zme=U=)g{fQ8Cm~qb9_K%Yu$)`m&`C0GC33AO)-f)H8sZ4Y@EgzAnN$&)FiP|N-bq5 zEmH>dA^6-3+kTn#Zt)>4&0J>)qY)Eqv^KK28AO=miP&z=;GE#d&kN@+&}(e-L63ao zXFe=8-J2IL(p8p%xLubvx9Ju>pZSTN_O^y|mRopA1nngvr0%a9fGwM zNojhP{S6>bcAB)s_x19|t_2hdmVRefzaO^V5&)k+`*nE4GklKsSCG<^SD;k-S6{oM zQj?gW)}51Rj}(->Lj9NyIG;@$lRc7bPjb?m(!R+X<9l<3Rp-GmHlT+C1=r@L^iW22 zN}oXo4|Zd7ht^Qy$#&ifI_L8Z>~P$6ijDsL45ULd6C9h(#co8to^(7IX?zzO)DRL! zI}C;?USO!v9)=y-@ES-gq(w>ZK+F*~sUtlF`50@==>e?ZDb%XWz15qLR&pz=8}#H$ukv+l&}X`_do( zx8GO#VS7se#CG%PpLvqM7>m-QOYXyiZelA5h>@osTy?ITgZbO=7CcF7Qb}$Q2 z7{JmO*c(){1BvQnHlAWc(_UX(l^7`vcbQ9LiHD8@tnxOPS3_&uD^RyvJM3k4>FA+Z zI>C;>L`OqsXs3ou>v0K?x@WO!M+*;a z{icbk2=~GHn4O!}{rrMT4Q)1LHgO{jUd$P6LLEWfTSH2@UmVx|Kfe8f%n4cH2km3O z^h*q_2K^}$)M!tF`?AIl8zu`JKDb{K7=khyg^Y?V$qT;9qU!i+&9E(^5yeJ?dwNJhk=|^t|fX|$YAqlEkc=?w4}~x;jFv%5VEIbKVjDs1DQRHNU=t?Huup{2-t^Xb(1G7E-r+vC9DLpxM)iV>e}tL?by8qC&0V5)vKG zzW5qbFe|jo9`TJQZlv39xtYH5=U=B)rlfF_WsC#s#Z%WGm8!am^w-?JG#5BfNE%@IBxJ;dNsqSZ*~c zP2=apd4og45^`~AmA=Mm7>?f?SFX^%^5KurE9c&z*Is{3@)fZyvDClo$bOnV=) zx87J29Nz23xrx$3uU5ti(BT{;mCT-eX_q3Up@k-95G{P@lmEX@(%aZFdYfA);_qtd zq%L?hE!}NC_j>K{X2Yo{w?Y;7rf9Fc3yHoVayw7qWmy?U1g1jl8uu8j8B!_zT1K?V zcHQFQ60I@GdueHjjpVKz<>f0YEPaMT9-}XFpQ9REypPy02+cRHY^Q8L*!TTk*18DO9zHe`gv3T>@#O1u|dX<=Z%`HhB!c2Pj6&ZJs&t%7KX zblZWInuq*w@&CiW*UEXXJa zJY2X&&`R3HOGAoCC&T#^R=+KEEki9a(6zRZtOmCw(jz88vm;%}8d-dh-sbkUBp|kD zpZeOR_no?rF%Zt^JGG1!NkGVwH+yZ@tjf)ZwYaX?iB91p;8mrNsb8`D$J4+(v*V86RB}Z>|>46)MYeRJYMkG>*gXEIW)A*&sg0?UYmcm6bq*`sskxwkO zY9_vKpFZ{f__Z(6+uYtZ0I@yutv`GG_EYyh#20_iC7r8Yr&{W2RNtyRU6+#8Ykiee zsd>^V9WvC?!K%Yl1~Ygw42b4c`}*@Q(3^`_MVf65bjS-lU=6P8la7O&K6X&@_*R+c z!@wJaxJsKeE=i|IFpyRnB$+NEi=@eTkhCi#Zi-Y#T0A6C)<_vTkgA1bEGtnByAYYp z4NE@V6}zyc4m&vFSV&&tK>JZ!QNDW6nU-J5G0grmFE-R7L@1Cyf8ioMvv6L#whac| z&%FOWxqlb0UX{oQl0!gzpV+sLjvbs=>1El@rO_^$cBKv3sn7~PSyoH55W6$@66wCy zBy{0@ANw00rypSZfdGh&xxs(R9_GXRd~{R|*P0d8_VbfUdNNo%@`7Xh<@ zkyHS0dH?i;erMDgj((w(ivSVoIGT~+&T90oQ&Hl%kZ4F{8d;iEOWJ6(Bo6ECK*Vtd zK+(?`(=|JtO6nAv-X(O54ZqHUcI1Ms*KiLwZzQSYQ6!0Qu$uqpPdzUtfRMqBF8%BO z>PPw7yY%Lji|lc4i7IWOKRxL3qXd@}pjSo-h{N3|&hh&mDCR8Hsi=o%fGw>SSVC~6{&N9hG~B;``(OL( z|Ac(9KDM96iTs_*wRT)vnIzrV}^NO*fnn)%(ng z&q+eYE}!4^eBH+m%u7{Z#s8a-5TK1DDWNn~TuNcRCT@rYZ{{DX=Fi^wSO1Mi>4(^U zC;(zpg1TgGFdW41-ksh7v?n1ZZ7#*?QI(MXtCG?ZCdmM3Dv%>=bmRUhI&;&0=I}7) zen-M>2(=;Z3xaoo7xn2&?193j0ujqL(e^+air;whMycgpT3u$Fu|daXCxmKQ;=n#8 zn?r>O#SwCg^(t8|*&`BC%dDw)DUp@kq5gCUCKQgfW-DBZAamOK35puabUtsZm0R&n zG)_)eHW$vXl~iOZ36*4mR^ngD+J&g9Zpef6#J8W9l2aV(=;7mZ`)#*~NB;Wx^BiWp z3WPCb)SwUEbX=Vuvn9p9wdn%r;!v8lCa+CHt6x z4X#jP#3qF#(Lu6Rs{BZOut`QqP|CTC@}OwmUPJoJ{OQ@}Xoa0FeCGNSH_?sPpQKGT z50i{$d~+1&JLoahS^a73FAwFZaO* zKKbjH=!e{XXaHh+n(e{cPv84h#>B(!0c#AmmTZ*>zL4U!UIAxr2|16bTc9exEYN}R z7X9qWIR;Em#$t^i@z8Y?lZdeRBUOjdZf27|`!o~JeXDTGIihg)t#`9z>B!8DH!i&{ z1EG=jbp5^=CWbAunMm4nh$^gIhmR)1DS7oCLT*suLPlH54Y#SRiwvxxCCA$g( z8mg{S5~4FntF^<86gSoy;!;#&E{(^HACSK{(H0f>~ma{dB6f9{+d@5q58v~T}m z>GE*ym6z%KEA{cW?|C z`(Ieuqz*eG{gHaO8l5mN-9RS=AuSVaf77~q9F|_G$--AbL*gxt}to> zgE*CvRuyH$f`Hw;Qjcm%$)+7cEIoX$G%VKyQP4Me%I7m`1|Ip^Dt-B>7X+}AQ&V)$ z>Gz8oeetspiHV!+D%w{kO^MgZ(UwZoZTj?6BK?=Pt4HO)kWIcSQBXguI{FN z({$nLs$@5#Nu-!Wkche2fu39utIQm2v}HC?8O`o1v?D^PJr)b=#wA)I({t43MC#ah zU9WP1YO{*17j*oBq;mndppvX%5`fukcI2ia!#T74;V^{$7Jd2bvyvKxGy7LR^7C}z z@>P2A`DfTU+pzBcB)01VH=m%%v0jzOnQ2qZp$uOvBnsrC%|@z%Km9A8{!jlly@T63 z3P5bnej6n9eORe8rf{h;pj^dfHJ2lN7v7MKNjA`b?uLEzzJn7|7XdIJrkX^AwLz02 zYElj>^))to2~}mQ90PSJh*<7zCvKL=#n#TIv^d-0D9Ji|u(uuBClYsYV~b|HU8Zpc za?a9{CDVk=+&Qx>R3MB>HR&kYkhr>N=7svIp}G(DyL2(gwDW0h$)4Vs)gut1f*acX zN@|JQZS{_Gt^Y-TKr*@}c$koX|K^LY(D|#2;!xdp>I0%uAOGqeGO~yY_Mc?w z_6#~`4OI#rIdoKdDIb{KClzQ{7B7jNIL^`qs`$;74XNqHXJuH-NF9t|pvxs1fhld) z0>c2Q-2~LpKpGbSrUbN+>QSYo7s5-%3(~xD>-B75E&aQa*D5tNdV*pnNs4e<#=LSe z(5IPP{FzIau4-}u|9)`)ex_n>p(mdF7ZSA)dk%&5rS_(I;EtQMOBb0#nEH5=rD{n% z@u&Z-|Matu(vM*KkpK|ebKm~6e{%a>_nzeQKSi~$QB|6#`w1jX72}4_F!+A{CN_}g z#-#jln7UKt=J9Fkj9?3w`Xu8RR+Av#p(dP+LRf`Iyu2X`gqCf0+;A(MU%bL9xu2t|Me-SgkDtITeg4<})_?X0{fM?7 z833`dP54E%3FDchjGbw&z4kPOnXwlAB1^s_(>)sPDzU8gO|Etk)DYsUP(^7(0m*Q| z%>3xWtTHK@F;aJq7y6qQ7iBaTY_!Ad9kx3?n%j3kX0UCnuSg%3qf_H_%i(#ZRrq_O zO5(vt+uuq!uGI1Y;oTa!Wi2;Ek||g;-Yb!iEGI7=mDqBjMeU%8B-ILaxTq}&`Wejs zg|e0YDh>e481iI=%%os2DJm)Q&JiNBMj{s@(Hj5k8&63E9r_)f`OweN`tE>!@gon? z{{08(spp@TdYD~4pSzA7p`%9*Y62}(eJIj3^7h$(^FRELeuI95+m950*u*Bh>w~bP z&$u^f{H~~~Nmh3=98xk}f(-7m1GBz8q?ec0#iP5-fWrX5xw(0|{_u75{Hrf&Juu&ndv820Y53sE zpoV)4E+iKqHY{^D3KiWLG=qtkup=SGyhusPBr{2>Gq@hX&Tl4R%d_~xv0`d!E~E>yHnd9lgO}%I98uUQ+h^!$`k$`Znrv6i5;$BBM8a0+FiPbqXgrfmQ<$YHl4By zn~Z{}WY}473)@UEVcS6N)fya}=`hg9U479ScPG5WRRk@}u4#nMe>m4*X zIVlD3omPjQe(pJ1Ub-a1em-#hF*$~*A(yFLLaDvw#JISEw(li_4uU~jwfU&{Rk^4?wN3$~%42)a=3JHf! zSLpZB%A$nZBvosqO&>c9X4DJ=cmO4Sm!hJEnhFTwM@y3$l?t@B6*Emt^t2C5&=fBj z&`sL^ubEP?6pVNPv!>oJNG};DYwdTX#YiL@H5SB#c=Fj7*`6Ip_RXm~?xvF`PSEW1 zgj~zN{PSgF z%y^p)%}mm<1I(Rq=x)5z6uWK{ePY%&sE^UGmNo?y56}X2K5F zeY3RN*NDb=Pg`|h|F6FI`q@_(&YgbX0RF5bpT?!?ZLmY&>Fp*?1&Ch3kNN65Q!y>b3^0XQh3Z@+quP98l* zCvUtJ5Bz5r-n{zYC;$CN7wE^Z{a65q?c{?GuHJb6&pyK9;CI>1TNP#>u}-mp8Va^d z`7TKi74j8osFP?2X|HCUphyiA;aFf^JUQ5fGEIoYA(vK8hg92%NzxK$Ofz9v;vpgg+c#?R zM6@aFn%I!rboegaaQujX9`C>Q`hrAq@cE6cE&A|%53K&?-~6|KmoC2Y2(2#sK-tXi z#P+V*fZuKVFaGGidGa@Z^EdyPCDlW$hNd+Wm~^&n$c+DMP}OitbLUE9?3KMQ%p=dZn?o+{tN)sse1{G<$@*5NYU zi3#dp$RZq*P=(n5zS2r1#kGZ}T#I4Gl>ZhjcQKbrystj}0*y_@-)kg*KM17S7M!JdzSk!Xwo#Ive=Wal}EA!1g{$=i}-10)D)%2byhGId6w<5BkWAb#x~gE(q)lS z=Pq94!2B^$_1I9F`7akPa2T&oTj1|3geYAOq|Gi%L*BPHHBB?~9O7bU1zez{EHSlF zO3U9|W*9?#N|#dfrky@ z!KK8k2Ubk(w%l}pl`acCJMuU=iDmoF~UB)W@24Yx}vUZSA}^r32VX~)LEfww6UoL!m3 zG=ygk@WF<&_;dy-)$B(XdTdhxTz5d*1w&=aL{n%~5@3s9GfA~jdf9p4Y^-CQ3nqlE^ zO0r%e7E8lTB+{Ui*r$TAOj#zPmP#uzbSK4zNQ+eE_y6Rj*Hb|@q{@(^2(NN@s*tw2 zy11}22W+d|d~i;sTeMUqi^O0HW|w6?N>w^s6*4hW#xS6!7X{_0ZX?TTfz%UzZX^j5 zou(GJtF712;-9iQ2T74aEiwNqhdK%j2ZM_Cj2KPd$}KG`r51gbqaYvu@Bh31=5czD zZtpn>Sl@0t{lEhMc=)-meC1IF)1$0vKEX&a=c3S&q-9x4X4QT(Xuv3S9g)4p21aHM zH2F)^Yoy~G4VYtknl0 zppk4+@Q^YatsIFXM7!E43(gcG6`+TZSlS&Qqb>&2^i_(%c5F0vEZRdd>0CN*2W0`I zwTE^4*B(20I!DbUYN)NO&5s@ryYZ9ve*EJL^d8^d(*X4Cwg(i5-~94Few2xT$5t0#I zu|}*S2gosOYu`TrcwiI@vVlZ$V$_33e@hn4qo`QVnDHt^Y++PB&JW0^Kls=F`s4Hy zvi(E=(6`e}VDpcMzw!_N!J`bUM|o8~;Tg%Pz9ciF-2mBWv@~aw)PaC;j`?tRU3ZB7 z#fuAa+z0RfIVNRqrl((dh0cECNm{&m!Bn71mshSX($&pvb{u9TBPK7jA{V`5nry?N zpj|VUt$^G-a&M+2C5{XzOzuQ4JxO2yje{XNNW-@ZI0den6zl~_w}af`!f=ixx)a?8 zGZRBw!9C8ufBK$Z{>cHJZ$D80^zDI<|H=XZi2vZfdX!D=M_KxOL^}C53JM zg9KTQj2R@(HikNUrj49B$=p_+u8$dX4QmE8>}xFBQl5~IT7WMMp~_K{(XT4ip>AQ@ zW{qg}q<5~Drb4SM7eAYo^wnf2dk?cM^$8YD zXEZh4Do5Zn2OkUJMMXL7V_t5I7k`x{+TzNRL@i!=^?6#~STQNe`(}knLJnVDxJ)0u z?Ii7+>`_Zj%f zXkEv^Yf8d_cb1^X`Lkc_4H}<6{mD=M*diG3)E4NcZ2QVT_}qyY;v*~~KE{UK3CRwz z7%GMkM#*Fu()#i${lVY=-{{rFWe$_g(gXK@g#Pqve?sf)tK_YMWjZ9XOf19s-@N}6 z{VVs}#(s^>L5_u`*pt|5BP(Rmv8iGaihb9Vsq30{Chz82!&?nI)T%k8c?sP_7S*+| zA|Gsl-}`){Gyd3vpOlC0r)K-917Lmolh6I(DRvG&!q9t&DU>rJ4M*CWZ)<&>{?`BW zPuan^sQe%rJTekyXXfbG{6YHG%g@pj^LQI5)*fj0iR%v@px^uD2W50tCT-L-6GaM; zkkKro3kr$EG>kw-l0ieVTr@>1b7!Tg?KiaI%qDM2|CPQZU+|8P^LahN7=HX0fAjYq zr=Qa8Ct3x6zwKu~`EQ-&ANcp#FMsa8I>87#Rg|NL7$kQyCQeCf3TzCf36564R+HHp zrG~WzNN#N*POJbtx41;loO_dg_Kusy@nCCBi^g-UO-2fpbVor=|y?cCY^2El@<|#;|=N4X)F<%(HRmKl#Z&>(-}@q zX54SIspe8gj5fMj6B4YuLYZsJ3ns4@va&eKK>Su5#j`Zpc>EWB_b&(FuHAmBRqzkA zow)rJ2WU^Q6Mg);1J|8gTwgi9zPdEcQWNtOrrDmG{_T&Rnf|%EZkGPgqn#})5shep zu>ipFKC8^rt+ISuU{J2H-}@R1z;m(876#kHg^xe_mlJH?ZTmj~srPBnd!xkl00000 LNkvXXu0mjf*mKO= literal 0 HcmV?d00001 diff --git a/build/img/rewie.png b/build/img/rewie.png new file mode 100644 index 0000000000000000000000000000000000000000..5c72b779b7be0856db987c3163277e5530a53b12 GIT binary patch literal 38627 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 LNkvXXu0mjf*mKO= literal 0 HcmV?d00001 diff --git a/build/index.html b/build/index.html index 43f54cbfa..e2700c5c2 100644 --- a/build/index.html +++ b/build/index.html @@ -7,7 +7,6 @@ SUPERGYM - @@ -315,7 +314,7 @@

    Тренеры

    -
    +
    [data-select].is-open ✅\n\n// выносим все в дата атрибуты\n// url до иконок пинов карты, настройки автопрокрутки слайдера, url к json и т.д.\n\n// для адаптивного JS используется matchMedia и addListener\n// const breakpoint = window.matchMedia(`(min-width:1024px)`);\n// const breakpointChecker = () => {\n// if (breakpoint.matches) {\n// } else {\n// }\n// };\n// breakpoint.addListener(breakpointChecker);\n// breakpointChecker();\n\n// используйте .closest(el)\n","export class Accordions {\n constructor() {\n this._openHeight = 0;\n this._windowWidth = window.innerWidth;\n this._documentClickHandler = this._documentClickHandler.bind(this);\n this._windowResizeHandler = this._windowResizeHandler.bind(this);\n this._init();\n }\n\n _init() {\n this.fullUpdate();\n document.addEventListener('click', this._documentClickHandler);\n window.addEventListener('resize', this._windowResizeHandler);\n }\n\n _documentClickHandler(evt) {\n const target = evt.target;\n if (!target.closest('[data-accordion=\"button\"]')) {\n return;\n }\n\n evt.preventDefault();\n const parent = target.closest('[data-accordion=\"parent\"]');\n\n if (parent.dataset.destroy && !window.matchMedia(parent.dataset.destroy).matches) {\n return;\n }\n\n const element = target.closest('[data-accordion=\"element\"]');\n if (element.classList.contains('is-active')) {\n this.closeAccordion(element);\n return;\n }\n this.openAccordion(element);\n }\n\n _windowResizeHandler() {\n if (this._windowWidth === window.innerWidth) {\n return;\n }\n this._windowWidth = window.innerWidth;\n this.updateAccordionsHeight();\n }\n\n closeAllAccordion(parent) {\n const elements = parent.querySelectorAll('[data-accordion=\"element\"]');\n elements.forEach((element) => {\n const currentParent = element.closest('[data-accordion=\"parent\"]');\n if (currentParent === parent) {\n this.closeAccordion(element);\n }\n });\n }\n\n updateAccordionsHeight(element = null) {\n if (element) {\n const content = element.querySelector('[data-accordion=\"content\"]');\n content.style.transition = 'none';\n content.style.maxHeight = `${content.scrollHeight}px`;\n setTimeout(() => {\n content.style.transition = null;\n });\n return;\n }\n\n const closeElements = document.querySelectorAll('[data-accordion=\"element\"]:not(.is-active)');\n\n closeElements.forEach((closeElement) => {\n const parent = closeElement.closest('[data-accordion=\"parent\"]');\n const content = closeElement.querySelector('[data-accordion=\"content\"]');\n if (parent.dataset.destroy && !window.matchMedia(parent.dataset.destroy).matches) {\n content.style.maxHeight = '100%';\n return;\n }\n content.style.maxHeight = null;\n });\n\n const openElements = document.querySelectorAll('[data-accordion=\"element\"].is-active');\n openElements.forEach((openElement) => {\n const content = openElement.querySelector('[data-accordion=\"content\"]');\n const parent = openElement.closest('[data-accordion=\"parent\"]');\n if (parent.dataset.destroy && !window.matchMedia(parent.dataset.destroy).matches) {\n content.style.maxHeight = '100%';\n return;\n }\n content.style.transition = 'none';\n content.style.maxHeight = `${content.scrollHeight}px`;\n setTimeout(() => {\n content.style.transition = null;\n });\n });\n }\n\n fullUpdate(parent = null, transition = false) {\n let openElements;\n if (parent) {\n openElements = parent.querySelectorAll('[data-accordion=\"element\"].is-active');\n } else {\n openElements = document.querySelectorAll('[data-accordion=\"element\"].is-active');\n }\n openElements.forEach((openElement) => {\n const innerParent = openElement.querySelector('[data-accordion=\"parent\"]');\n if (innerParent) {\n return;\n }\n this.openAccordion(openElement, transition);\n });\n this.updateAccordionsHeight();\n }\n\n openAccordion(element, transition = true) {\n const parentElement = element.closest('[data-accordion=\"parent\"]');\n const contentElement = element.querySelector('[data-accordion=\"content\"]');\n this._openHeight += contentElement.scrollHeight;\n\n if (parentElement.hasAttribute('data-single')) {\n this.closeAllAccordion(parentElement);\n }\n\n element.classList.add('is-active');\n if (transition) {\n contentElement.style.maxHeight = `${this._openHeight}px`;\n } else {\n contentElement.style.transition = 'none';\n contentElement.style.maxHeight = `${this._openHeight}px`;\n setTimeout(() => {\n contentElement.style.transition = null;\n });\n }\n\n if (parentElement.closest('[data-accordion=\"element\"]')) {\n this.openAccordion(parentElement.closest('[data-accordion=\"element\"]'), transition);\n return;\n }\n\n this._openHeight = 0;\n }\n\n closeAccordion(element, transition = true) {\n const contentElement = element.querySelector('[data-accordion=\"content\"]');\n if (!contentElement) {\n return;\n }\n element.classList.remove('is-active');\n if (transition) {\n contentElement.style.maxHeight = '0';\n } else {\n contentElement.style.transition = 'none';\n contentElement.style.maxHeight = '0';\n setTimeout(() => {\n contentElement.style.transition = null;\n });\n }\n }\n}\n","import {Accordions} from './accordions';\nlet accordions;\n\nconst initAccordions = () => {\n accordions = new Accordions();\n // Используйте в разработке экспортируемую переменную accordions, window сделан для бэкэнда\n window.accordions = accordions;\n};\n\nexport {initAccordions, accordions};\n","\nconst baseSuccessCallback = (event) => {\n event.preventDefault();\n // В данном колбеке бэкендер, либо разработчик при необходимости будет писать запрос на отправку формы на сервер и обрабатывать возможные ошибки или успешную отправку формы на сервер\n};\n\nconst baseErrorCallback = (event) => {\n event.preventDefault();\n // Данный коллбек используется при необходимости выполнить какое-либо действие помимо показа ошибок при попытке отправить неккорректные данные, он не связан с запросами на сервер\n};\n\nexport const callbacks = {\n base: {\n // Сбросс формы\n reset: true,\n // Таймаут сброса формы\n resetTimeout: 500,\n successCallback: baseSuccessCallback,\n errorCallback: baseErrorCallback,\n },\n};\n","import {Validator} from './validator';\nimport {callbacks} from './callback';\nimport {initPhoneInput} from './init-phone-input';\n\nexport class Form {\n constructor() {\n this._validator = new Validator();\n this._initPhoneInput = initPhoneInput;\n this._callbacks = callbacks;\n }\n\n _resetSelect(select) {\n const nativeSelect = select.querySelector('select');\n const activeIndex = nativeSelect.options.selectedIndex;\n const selectedOption = nativeSelect.options[activeIndex];\n const buttonText = select.querySelector('.custom-select__text');\n const selectItems = select.querySelectorAll('.custom-select__item');\n buttonText.textContent = selectedOption.textContent;\n selectItems.forEach((item, index) => {\n if (index === activeIndex - 1) {\n item.setAttribute('aria-selected', 'true');\n return;\n }\n item.setAttribute('aria-selected', 'false');\n });\n if (!nativeSelect.value) {\n select.classList.remove('not-empty');\n select.classList.remove('is-valid');\n }\n }\n\n _resetSelects(form) {\n const selects = form.querySelectorAll('[data-select]');\n selects.forEach((select) => {\n this._resetSelect(select);\n });\n }\n\n reset(form) {\n form.reset();\n form.querySelectorAll('.is-invalid').forEach((item) => item.classList.remove('is-invalid'));\n form.querySelectorAll('.is-valid').forEach((item) => item.classList.remove('is-valid'));\n form.querySelectorAll('.input-message').forEach((item) => item.remove());\n setTimeout(() => {\n this._resetSelects(form);\n });\n }\n\n initPhoneInput(parent) {\n this._initPhoneInput(parent);\n }\n\n validateForm(form) {\n return this._validator.validateForm(form);\n }\n\n validateFormElement(item) {\n return this._validator.validateFormElement(item);\n }\n\n _onFormSubmit(event, callback = null) {\n if (this.validateForm(event.target) && callback) {\n this._callbacks[callback].successCallback(event);\n if (this._callbacks[callback].reset) {\n setTimeout(() => {\n this.reset(event.target);\n }, this._callbacks[callback].resetTimeout ? this._callbacks[callback].resetTimeout : 500);\n }\n return;\n }\n if (!this.validateForm(event.target) && callback) {\n this._callbacks[callback].errorCallback(event);\n return;\n }\n }\n\n _onFormInput(item) {\n this.validateFormElement(item);\n }\n\n _initValidate(parent) {\n const form = parent.querySelector('form');\n if (!form) {\n return;\n }\n\n const phoneParents = form.querySelectorAll('[data-validate-type=\"phone\"]');\n phoneParents.forEach((item) => this._initPhoneInput(item));\n\n const callback = parent.dataset.callback;\n form.noValidate = true;\n\n form.addEventListener('submit', (event) => {\n event.preventDefault();\n this._onFormSubmit(event, callback);\n });\n\n form.addEventListener('input', (event) => {\n this._onFormInput(event.target);\n });\n\n form.addEventListener('reset', (event) => {\n this.reset(event.target);\n });\n }\n\n init() {\n this._validateParent = document.querySelectorAll('[data-form-validate]');\n if (!this._validateParent.length) {\n return;\n }\n this._validateParent.forEach((parent) => this._initValidate(parent));\n }\n}\n","const baseCountryCode = '+7';\nconst baseMatrix = ' (___) ___ __ __';\nconst phoneLength = baseCountryCode.length + baseMatrix.length;\n\nconst onPhoneInputInput = (e) => {\n const matrix = `${baseCountryCode}${baseMatrix}`;\n const def = matrix.replace(/\\D/g, '');\n let i = 0;\n let val = e.target.value.replace(/\\D/g, '');\n if (def.length >= val.length) {\n val = def;\n }\n e.target.value = matrix.replace(/./g, (a) => {\n if (/[_\\d]/.test(a) && i < val.length) {\n return val.charAt(i++);\n } else if (i >= val.length) {\n return '';\n } else {\n return a;\n }\n });\n};\n\nconst onPhoneInputFocus = ({target}) => {\n if (!target.value) {\n target.value = baseCountryCode;\n }\n target.addEventListener('input', onPhoneInputInput);\n target.addEventListener('blur', onPhoneInputBlur);\n target.addEventListener('keydown', onPhoneInputKeydown);\n target.addEventListener('paste', onPhoneInputPaste);\n target.addEventListener('click', onPhoneInputClick);\n};\n\nconst onPhoneInputClick = (e) => {\n if (e.target.selectionStart < 4) {\n e.preventDefault();\n e.target.setSelectionRange(3, 3);\n }\n};\n\nconst onPhoneInputPaste = (e) => {\n e.target.setSelectionRange(0, 0);\n if (!e.target.selectionStart) {\n setTimeout(() => {\n if (e.target.value.startsWith('+7')) {\n return;\n }\n if (e.target.value.startsWith('+8')) {\n e.target.value = `+7 ${e.target.value.slice(3)}`;\n return;\n }\n e.target.value = '';\n });\n }\n};\n\nconst onPhoneInputKeydown = (e) => {\n if (e.target.selectionStart < 4 && (e.keyCode === 37 || e.keyCode === 13)) {\n e.preventDefault();\n e.target.setSelectionRange(3, 3);\n }\n};\n\nconst onPhoneInputBlur = ({target}) => {\n if (target.value === baseCountryCode) {\n const parent = target.closest('[data-validate-type=\"phone\"]');\n target.value = '';\n if (!parent.hasAttribute('data-required')) {\n parent.classList.remove('is-valid');\n parent.classList.remove('is-invalid');\n const parentMessage = parent.querySelector('.input-message');\n if (parentMessage) {\n parentMessage.remove();\n }\n }\n parent.classList.remove('not-empty');\n target.removeEventListener('input', onPhoneInputInput);\n target.removeEventListener('blur', onPhoneInputBlur);\n target.removeEventListener('keydown', onPhoneInputKeydown);\n target.removeEventListener('paste', onPhoneInputPaste);\n target.removeEventListener('click', onPhoneInputClick);\n }\n};\n\nexport const initPhoneInput = (parent) => {\n const input = parent.querySelector('input');\n parent.dataset.phoneLength = phoneLength;\n input.addEventListener('focus', onPhoneInputFocus);\n};\n","export const matrixReplace = (item, matrix, RegEx) => {\n if (!matrix) {\n // eslint-disable-next-line no-console\n console.error('При валидации по матрице обязательно указывать формат матрицы: data-matrix=\"\"');\n item.value = '';\n return;\n }\n\n if (!RegEx) {\n // eslint-disable-next-line no-console\n console.error('При валидации по матрице обязательно указывать формат ограничений: data-matrix-limitations=\"\"');\n item.value = '';\n return;\n }\n\n const def = matrix.replace(RegEx, '');\n let val = item.value.replace(RegEx, '');\n let i = 0;\n\n if (def.length >= val.length) {\n val = def;\n }\n\n item.value = matrix.replace(/./g, (a) => {\n if (/[_\\^]/.test(a) && i < val.length) {\n return val.charAt(i++);\n } else if (i >= val.length) {\n return '';\n } else {\n return a;\n }\n });\n};\n","const setLimitationError = (limitation) => {\n // eslint-disable-next-line no-console\n console.error(`Переданный формат ограничения(data-limitation=\"${limitation}\") - не поддерживается. Проверьте корректность введённых значений.`);\n};\n\nexport const getLimitationsRegEx = (limitation) => {\n switch (limitation) {\n case 'digit':\n return /[^\\d]/g;\n case 'name':\n return /[^a-zA-Zа-яёА-ЯЁ\\-\\s]/g;\n case 'letters':\n return /[^a-zA-Zа-яёА-ЯЁ\\s]/g;\n case 'letters-and-digit':\n return /[^a-zA-Zа-яёА-ЯЁ\\s\\d]/g;\n case 'cyrillic':\n return /[^а-яёА-ЯЁ\\s]/g;\n case 'latin':\n return /[^a-zA-Z\\s]/g;\n default:\n return setLimitationError(limitation);\n }\n};\n\nexport const getMatrixLimitationsRegEx = (matrix) => {\n switch (matrix) {\n case 'digit':\n return /[^\\d]/g;\n case 'name':\n return /[^\\а-яё\\А-ЯЁ\\a-z\\A-Z\\-]]/g;\n case 'letters':\n return /[^\\а-яё\\А-ЯЁ\\a-z\\A-Z]/g;\n case 'letters-and-digit':\n return /[^\\а-яё\\А-ЯЁ\\a-z\\A-Z\\d]/g;\n case 'cyrillic':\n return /[^\\а-яё\\А-ЯЁ]/g;\n case 'latin':\n return /[^\\a-z\\A-Z]/g;\n default:\n return false;\n }\n};\n\nexport const getMailRegEx = () => /[a-zA-Zа-яёА-ЯЁ0-9]{1}([a-zA-Zа-яёА-ЯЁ0-9\\-_\\.]{1,})?@[a-zA-Zа-яёА-ЯЁ0-9\\-]{1}([a-zA-Zа-яёА-ЯЁ0-9.\\-]{1,})?[a-zA-Zа-яёА-ЯЁ0-9\\-]{1}\\.[a-zA-Zа-яёА-ЯЁ]{2,6}/;\n","export class Message {\n constructor() {\n this._baseErrorText = 'Это поле является обязательным';\n }\n\n _messageTemplate(message, state) {\n const cssClass = state === 'valid' ? 'is-valid' : 'is-invalid';\n return `${message}`;\n }\n\n removeMessage(parent) {\n const parentMessage = parent.querySelector('.input-message');\n if (parentMessage) {\n parentMessage.remove();\n }\n }\n\n renderMessage(parent, message, state) {\n this.removeMessage(parent);\n parent.insertAdjacentHTML('beforeend', this._messageTemplate(message, state));\n }\n}\n","import {getLimitationsRegEx, getMatrixLimitationsRegEx, getMailRegEx} from './regular-expression';\nimport {matrixReplace} from './matrix';\nimport {Message} from './render-message';\n\nexport class Validator {\n constructor() {\n this._getLimitationsRegEx = getLimitationsRegEx;\n this._getMatrixLimitationsRegEx = getMatrixLimitationsRegEx;\n this._getMailRegEx = getMailRegEx;\n this._matrixReplace = matrixReplace;\n this._message = new Message();\n }\n\n _renderMessage(trigger, parent, input) {\n if (!parent.hasAttribute('data-required') && !input.value) {\n return;\n }\n if (!trigger) {\n parent.classList.add('is-invalid');\n if (parent.hasAttribute('data-message-base') && !input.value) {\n this._message.renderMessage(parent, parent.dataset.messageBase, 'invalid');\n } else if (parent.hasAttribute('data-message-extra') && input.value) {\n this._message.renderMessage(parent, parent.dataset.messageExtra, 'invalid');\n } else if (!parent.hasAttribute('data-message-extra') && parent.hasAttribute('data-message-base') && input.value) {\n this._message.renderMessage(parent, parent.dataset.messageBase, 'invalid');\n } else {\n this._message.removeMessage(parent);\n }\n } else {\n if (parent.hasAttribute('data-message-success')) {\n this._message.renderMessage(parent, parent.dataset.messageSuccess, 'valid');\n } else {\n this._message.removeMessage(parent);\n }\n }\n }\n\n _setItemValidState(parent, input) {\n if (!parent.hasAttribute('data-required') && !input.value) {\n return;\n }\n parent.classList.add('is-valid');\n parent.classList.remove('is-invalid');\n input.setAttribute('aria-invalid', 'false');\n this._message.removeMessage(parent);\n }\n\n _setItemInvalidState(parent, input) {\n if (!parent.hasAttribute('data-required') && !input.value) {\n return;\n }\n parent.classList.remove('is-valid');\n input.setAttribute('aria-invalid', 'true');\n }\n\n _simpleLimitation(item, limitation) {\n item.value = item.value.replace(this._getLimitationsRegEx(limitation), '');\n }\n\n _matrixLimitation(item, matrix, limitation) {\n this._matrixReplace(item, matrix, limitation);\n }\n\n _validateTextInput(parent, input) {\n let flag = true;\n if (input.value.length >= (+input.getAttribute('minlength') || 1)) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validateMatrixInput(parent, input) {\n let flag = true;\n if (input.value.length === input.closest('[data-matrix]').dataset.matrix.length) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validateEmailInput(parent, input) {\n let flag = true;\n if (new RegExp(this._getMailRegEx(), '').test(input.value)) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validatePhoneInput(parent, input) {\n let flag = true;\n if (input.value.length >= +parent.dataset.phoneLength) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validateCheckbox(parent, input) {\n let flag = true;\n if (input.checked) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _findSelectedOption(options) {\n let flag = false;\n options.forEach((option) => {\n if (option.value && option.selected) {\n flag = true;\n }\n });\n return flag;\n }\n\n _validateSelect(parent, input) {\n const options = input.querySelectorAll('option');\n const customSelectText = parent.querySelector('.custom-select__text');\n input.setAttribute('aria-invalid', 'false');\n let flag = true;\n if (this._findSelectedOption(options)) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n parent.classList.remove('not-empty');\n customSelectText.innerHTML = '';\n flag = false;\n }\n return flag;\n }\n\n _returnCheckedElements(inputs) {\n let flag = false;\n inputs.forEach((input) => {\n if (input.checked) {\n flag = true;\n }\n });\n return flag;\n }\n\n _removeGroupAria(inputs) {\n inputs.forEach((input) => {\n if (!input.checked) {\n input.removeAttribute('aria-required');\n input.removeAttribute('aria-invalid');\n } else {\n input.setAttribute('aria-required', true);\n input.setAttribute('aria-invalid', false);\n }\n });\n }\n\n _setGroupAria(inputs) {\n inputs.forEach((input) => {\n input.setAttribute('aria-required', true);\n input.setAttribute('aria-invalid', true);\n });\n }\n\n _validateToggleGroup(parent) {\n const formElements = parent.querySelectorAll('input');\n let flag = true;\n if (this._returnCheckedElements(formElements)) {\n this._removeGroupAria(formElements);\n parent.classList.remove('is-invalid');\n parent.classList.add('is-valid');\n this._message.removeMessage(parent);\n } else {\n this._setGroupAria(formElements);\n parent.classList.remove('is-valid');\n flag = false;\n }\n return flag;\n }\n\n _customExample(parent, input) {\n let flag = true;\n if (!input.value.length) {\n parent.dataset.messageBase = 'Поле обязательно к заполнению';\n this._setItemInvalidState(parent, input);\n flag = false;\n } else if (input.value.length < input.minLength) {\n parent.dataset.messageBase = `Осталось ввести ещё ${input.minLength - input.value.length} символов`;\n this._setItemInvalidState(parent, input);\n flag = false;\n } else if (input.value.length > input.minLength) {\n parent.dataset.messageBase = `Вы ввели ${input.value.length - input.minLength} лишних символов`;\n this._setItemInvalidState(parent, input);\n flag = false;\n } else {\n parent.dataset.messageSuccess = 'Поле заполнено корректно';\n this._setItemValidState(parent, input);\n flag = true;\n }\n return flag;\n }\n\n _validateFile(parent, input) {\n let flag = true;\n const sizeTest = parent.dataset.maxSize && input.files[0] ? input.files[0].size < +parent.dataset.maxSize : true;\n if (input.value && sizeTest) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validateInput(type, parent, input) {\n switch (type) {\n case 'text':\n return this._validateTextInput(parent, input);\n case 'matrix':\n return this._validateMatrixInput(parent, input);\n case 'email':\n return this._validateEmailInput(parent, input);\n case 'phone':\n return this._validatePhoneInput(parent, input);\n case 'checkbox':\n return this._validateCheckbox(parent, input);\n case 'select':\n return this._validateSelect(parent, input);\n case 'toggle-group':\n return this._validateToggleGroup(parent, input);\n case 'file':\n return this._validateFile(parent, input);\n case 'custom-example':\n return this._customExample(parent, input);\n default:\n return false;\n }\n }\n\n validateFormElement(formElement, fullValidate = false) {\n const parent = formElement.closest('[data-validate-type]');\n if (!parent) {\n return;\n }\n\n if (!parent.hasAttribute('data-required')) {\n const removeElement = parent.querySelector('input') || parent.querySelector('select') || parent.querySelector('textarea');\n\n if (!removeElement.value) {\n parent.classList.remove('is-valid');\n parent.classList.remove('is-invalid');\n }\n }\n\n const onInputValidate = parent.hasAttribute('data-on-input-validate');\n\n if (parent.hasAttribute('data-limitation')) {\n this._simpleLimitation(formElement, parent.dataset.limitation);\n }\n\n if (parent.dataset.validateType === 'matrix') {\n this._matrixLimitation(formElement, parent.dataset.matrix, this._getMatrixLimitationsRegEx(parent.dataset.matrixLimitation));\n }\n\n const isValid = this._validateInput(parent.dataset.validateType, parent, formElement);\n\n if (onInputValidate || fullValidate) {\n this._renderMessage(isValid, parent, formElement);\n }\n }\n\n _fullValidate(items) {\n let result = true;\n items.forEach((item) => {\n const formElement = item.querySelector('input') || item.querySelector('select') || item.querySelector('textarea');\n this.validateFormElement(formElement, true);\n if (item.classList.contains('is-invalid')) {\n result = false;\n }\n });\n return result;\n }\n\n validateForm(form) {\n const validateItems = form.querySelectorAll('[data-validate-type]');\n const result = this._fullValidate(validateItems);\n return result;\n }\n}\n","import {Modals} from './modals';\n\nlet modals;\n\n// Здесь реализован пример открытия модалки через колбэк закрытия\n// const openModalInCloseCallback = (name, context = this) => {\n// context._enableScrolling = false;\n// context._setSettings('default');\n// modals.open(name);\n// };\n\n// closeCallback() {\n// openModalInCloseCallback('modal-5');\n// },\n\nconst settings = {\n 'default': {\n preventDefault: true,\n stopPlay: true,\n lockFocus: true,\n startFocus: true,\n focusBack: true,\n eventTimeout: 400,\n openCallback: false,\n closeCallback: false,\n },\n};\n\nconst initModals = () => {\n const modalElements = document.querySelectorAll('.modal');\n modalElements.forEach((el) => {\n setTimeout(() => {\n el.classList.remove('modal--preload');\n }, 100);\n });\n modals = new Modals(settings);\n // Используйте в разработке экспортируемую переменную modals, window сделан для бэкэнда\n window.modals = modals;\n};\n\nexport {modals, initModals};\n","import {ScrollLock} from '../../utils/scroll-lock';\nimport {FocusLock} from '../../utils/focus-lock';\n\nexport class Modals {\n constructor(settings = {}) {\n this._scrollLock = new ScrollLock();\n this._focusLock = new FocusLock();\n\n this._modalOpenElements = document.querySelectorAll('[data-open-modal]');\n this._openedModalElement = null;\n this._modalName = null;\n this._enableScrolling = true;\n this._settingKey = 'default';\n\n this._settings = settings;\n this._preventDefault = this._settings[this._settingKey].preventDefault;\n this._stopPlay = this._settings[this._settingKey].stopPlay;\n this._lockFocus = this._settings[this._settingKey].lockFocus;\n this._startFocus = this._settings[this._settingKey].startFocus;\n this._focusBack = this._settings[this._settingKey].focusBack;\n this._eventTimeout = this._settings[this._settingKey].eventTimeout;\n this._openCallback = this._settings[this._settingKey].openCallback;\n this._closeCallback = this._settings[this._settingKey].closeCallback;\n\n this._documentKeydownHandler = this._documentKeydownHandler.bind(this);\n this._documentClickHandler = this._documentClickHandler.bind(this);\n this._modalClickHandler = this._modalClickHandler.bind(this);\n\n this._init();\n }\n\n _init() {\n if (this._modalOpenElements.length) {\n document.addEventListener('click', this._documentClickHandler);\n }\n }\n\n _setSettings(settingKey = this._settingKey) {\n if (!this._settings[settingKey]) {\n return;\n }\n\n this._preventDefault =\n typeof this._settings[settingKey].preventDefault === 'boolean'\n ? this._settings[settingKey].preventDefault\n : this._settings[this._settingKey].preventDefault;\n this._stopPlay =\n typeof this._settings[settingKey].stopPlay === 'boolean'\n ? this._settings[settingKey].stopPlay\n : this._settings[this._settingKey].stopPlay;\n this._lockFocus =\n typeof this._settings[settingKey].lockFocus === 'boolean'\n ? this._settings[settingKey].lockFocus\n : this._settings[this._settingKey].lockFocus;\n this._startFocus =\n typeof this._settings[settingKey].startFocus === 'boolean'\n ? this._settings[settingKey].startFocus\n : this._settings[this._settingKey].startFocus;\n this._focusBack =\n typeof this._settings[settingKey].lockFocus === 'boolean'\n ? this._settings[settingKey].focusBack\n : this._settings[this._settingKey].focusBack;\n this._eventTimeout =\n typeof this._settings[settingKey].eventTimeout === 'number'\n ? this._settings[settingKey].eventTimeout\n : this._settings[this._settingKey].eventTimeout;\n this._openCallback = this._settings[settingKey].openCallback || this._settings[this._settingKey].openCallback;\n this._closeCallback = this._settings[settingKey].closeCallback || this._settings[this._settingKey].closeCallback;\n }\n\n _documentClickHandler(evt) {\n const target = evt.target;\n\n if (!target.closest('[data-open-modal]')) {\n return;\n }\n\n evt.preventDefault();\n\n this._modalName = target.closest('[data-open-modal]').dataset.openModal;\n\n if (!this._modalName) {\n return;\n }\n\n this.open();\n }\n\n _documentKeydownHandler(evt) {\n const isEscKey = evt.key === 'Escape' || evt.key === 'Esc';\n\n if (isEscKey) {\n evt.preventDefault();\n this.close(document.querySelector('.modal.is-active').dataset.modal);\n }\n }\n\n _modalClickHandler(evt) {\n const target = evt.target;\n\n if (!target.closest('[data-close-modal]')) {\n return;\n }\n\n this.close(target.closest('[data-modal]').dataset.modal);\n }\n\n _addListeners(modal) {\n modal.addEventListener('click', this._modalClickHandler);\n document.addEventListener('keydown', this._documentKeydownHandler);\n }\n\n _removeListeners(modal) {\n modal.removeEventListener('click', this._modalClickHandler);\n document.removeEventListener('keydown', this._documentKeydownHandler);\n }\n\n _stopInteractive(modal) {\n if (this._stopPlay) {\n modal.querySelectorAll('video, audio').forEach((el) => el.pause());\n modal.querySelectorAll('[data-iframe]').forEach((el) => {\n el.querySelector('iframe').contentWindow.postMessage('{\"event\": \"command\", \"func\": \"pauseVideo\", \"args\": \"\"}', '*');\n });\n }\n }\n\n _autoPlay(modal) {\n modal.querySelectorAll('[data-iframe]').forEach((el) => {\n const autoPlay = el.closest('[data-auto-play]');\n if (autoPlay) {\n el.querySelector('iframe').contentWindow.postMessage('{\"event\":\"command\",\"func\":\"playVideo\",\"args\":\"\"}', '*');\n }\n });\n }\n\n open(modalName = this._modalName) {\n const modal = document.querySelector(`[data-modal=\"${modalName}\"]`);\n\n if (!modal || modal.classList.contains('is-active')) {\n return;\n }\n\n document.removeEventListener('click', this._documentClickHandler);\n\n this._openedModalElement = document.querySelector('.modal.is-active');\n\n if (this._openedModalElement) {\n this._enableScrolling = false;\n this.close(this._openedModalElement.dataset.modal);\n }\n\n this._setSettings(modalName);\n modal.classList.add('is-active');\n\n if (!this._openedModalElement) {\n this._scrollLock.disableScrolling();\n }\n\n if (this._openCallback) {\n this._openCallback();\n }\n\n if (this._lockFocus) {\n this._focusLock.lock('.modal.is-active', this._startFocus);\n }\n\n setTimeout(() => {\n this._addListeners(modal);\n this._autoPlay(modal);\n document.addEventListener('click', this._documentClickHandler);\n }, this._eventTimeout);\n }\n\n close(modalName = this._modalName) {\n const modal = document.querySelector(`[data-modal=\"${modalName}\"]`);\n document.removeEventListener('click', this._documentClickHandler);\n\n if (!modal || !modal.classList.contains('is-active')) {\n return;\n }\n\n if (this._lockFocus) {\n this._focusLock.unlock(this._focusBack);\n }\n\n modal.classList.remove('is-active');\n this._removeListeners(modal);\n this._stopInteractive(modal);\n\n if (this._closeCallback) {\n this._closeCallback();\n }\n\n if (this._enableScrolling) {\n setTimeout(() => {\n this._scrollLock.enableScrolling();\n }, this._eventTimeout);\n }\n\n setTimeout(() => {\n document.addEventListener('click', this._documentClickHandler);\n }, this._eventTimeout);\n\n this._setSettings('default');\n this._enableScrolling = true;\n }\n}\n","import {Tabs} from './tabs';\n\nlet tabs;\n\nconst initTabs = () => {\n tabs = new Tabs();\n // Используйте в разработке экспортируемую переменную tabs, window сделан для бэкэнда\n window.tabs = tabs;\n};\n\nexport {initTabs, tabs};\n","export class Tabs {\n constructor() {\n this._windowWidth = window.innerWidth;\n this._documentClickHandler = this._documentClickHandler.bind(this);\n this._init();\n }\n\n _init() {\n this._initAllTabs();\n document.addEventListener('click', this._documentClickHandler);\n }\n\n _resizeObserver() {\n return new ResizeObserver((entries) => {\n for (let entry of entries) {\n if (entry.target.classList.contains('is-active')) {\n this._updateTabHeight();\n }\n }\n });\n }\n\n _documentClickHandler(evt) {\n const target = evt.target;\n if (!target.closest('[data-tabs=\"control\"]')) {\n return;\n }\n evt.preventDefault();\n const control = target.closest('[data-tabs=\"control\"]');\n this.openTab(control);\n }\n\n _initAllTabs() {\n const tabs = document.querySelectorAll('[data-tabs=\"parent\"]');\n const forLoadTabs = document.querySelectorAll('[data-tabs=\"element\"].for-load');\n tabs.forEach((tab) => {\n this._initTab(tab);\n });\n forLoadTabs.forEach((tab) => {\n tab.classList.remove('for-load');\n });\n }\n\n _removeAllActiveClasses(tabControlElements, tabElements) {\n tabElements.forEach((tab) => {\n tab.classList.remove('is-active');\n });\n\n tabControlElements.forEach((element, index) => {\n element.classList.remove('is-active');\n element.setAttribute('data-index', index);\n });\n }\n\n _setTabStartState(tab, dataHeight, tabElements, tabContentElement, tabControlElements, dataDelay) {\n const activeIndex = this._returnActiveIndex(tabControlElements);\n const blockHeight = dataHeight === 'max' ? this._returnMaxHeight(tabElements) : tabElements[activeIndex].offsetHeight;\n this._removeAllActiveClasses(tabControlElements, tabElements);\n tab.classList.add('no-transition');\n tabControlElements[activeIndex].classList.add('is-active');\n tabElements[activeIndex].classList.add('is-active');\n if (dataHeight !== 'unset') {\n tabContentElement.style.height = `${blockHeight}px`;\n }\n setTimeout(() => {\n if (dataDelay) {\n tab.classList.remove('no-transition');\n }\n }, dataDelay);\n }\n\n _returnActiveIndex(tabControlElements) {\n let activeIndex = 0;\n let flag = true;\n tabControlElements.forEach((control, index) => {\n if (control.classList.contains('is-active') && flag) {\n activeIndex = index;\n flag = false;\n }\n });\n return activeIndex;\n }\n\n _returnMaxHeight(tabElements) {\n let height = [];\n tabElements.forEach((element) => {\n height.push(element.offsetHeight);\n });\n height.sort((a, b) => a - b);\n return height[height.length - 1];\n }\n\n _returnScopeList(nodeList, parent) {\n const array = [];\n nodeList.forEach((element) => {\n const elementParent = element.closest('[data-tabs=\"parent\"]');\n if (elementParent === parent) {\n array.push(element);\n }\n });\n\n return array;\n }\n\n _returnScopeChild(nodeList, parent) {\n let currentChild;\n nodeList.forEach((element) => {\n const elementParent = element.closest('[data-tabs=\"parent\"]');\n if (elementParent === parent) {\n currentChild = element;\n }\n });\n\n return currentChild;\n }\n\n _updateTabHeight() {\n const activeElements = document.querySelectorAll('[data-tabs=\"element\"].is-active');\n activeElements.forEach((element) => {\n let transition = false;\n const parent = element.closest('[data-tabs=\"parent\"]');\n if (parent.closest('[data-tabs=\"element\"]')) {\n transition = true;\n }\n this._setTabElementHeight(element, transition);\n });\n }\n\n _setTabElementHeight(element, transition) {\n const parentElement = element.closest('[data-tabs=\"parent\"]');\n const dataHeight = parentElement.dataset.height;\n const contentElement = this._returnScopeChild(parentElement.querySelectorAll('[data-tabs=\"content\"]'), parentElement);\n const tabElements = this._returnScopeList(parentElement.querySelectorAll('[data-tabs=\"element\"]'), parentElement);\n\n if (!transition) {\n parentElement.classList.add('no-transition');\n }\n\n if (dataHeight === 'max') {\n contentElement.style.height = `${this._returnMaxHeight(tabElements)}px`;\n } else if (dataHeight === 'unset') {\n contentElement.style.height = null;\n } else {\n contentElement.style.height = `${this._returnScopeChild(parentElement.querySelectorAll('[data-tabs=\"element\"].is-active'), parentElement).offsetHeight}px`;\n }\n\n setTimeout(() => parentElement.classList.remove('no-transition'));\n }\n\n _initTab(tab) {\n const dataHeight = tab.dataset.height;\n const dataDelay = tab.dataset.delay ? tab.dataset.delay : 0;\n const tabContentElement = tab.querySelector('[data-tabs=\"content\"]');\n const tabControlElements = this._returnScopeList(tab.querySelectorAll('[data-tabs=\"control\"]'), tab);\n const tabElements = this._returnScopeList(tab.querySelectorAll('[data-tabs=\"element\"]'), tab);\n this._setTabStartState(tab, dataHeight, tabElements, tabContentElement, tabControlElements, dataDelay);\n if (dataHeight !== 'unset') {\n tabElements.forEach((element) => {\n this._resizeObserver().observe(element);\n });\n }\n setTimeout(() => {\n tab.classList.remove('no-transition-global');\n });\n }\n\n reInit() {\n this._initAllTabs();\n }\n\n openTab(control) {\n const currentIndex = control.dataset.index;\n const parentElement = control.closest('[data-tabs=\"parent\"]');\n\n if (control.classList.contains('is-active') || parentElement.classList.contains('no-action')) {\n return;\n }\n\n const dataDelay = parentElement.dataset.delay ? parentElement.dataset.delay : 0;\n const dataHeight = parentElement.dataset.height;\n const contentElement = parentElement.querySelector('[data-tabs=\"content\"]');\n const tabElements = this._returnScopeList(parentElement.querySelectorAll('[data-tabs=\"element\"]'), parentElement);\n\n const activeControl = this._returnScopeChild(parentElement.querySelectorAll('[data-tabs=\"control\"].is-active'), parentElement);\n const activeElement = this._returnScopeChild(parentElement.querySelectorAll('[data-tabs=\"element\"].is-active'), parentElement);\n const currentHeight = contentElement.offsetHeight;\n const newHeight = tabElements[currentIndex].offsetHeight;\n\n parentElement.classList.add('no-action');\n document.activeElement.blur();\n\n if (activeControl) {\n activeControl.classList.remove('is-active');\n }\n\n if (activeElement) {\n activeElement.classList.remove('is-active');\n }\n\n if (currentHeight > newHeight) {\n setTimeout(() => {\n if (dataHeight !== 'max' && dataHeight !== 'unset') {\n contentElement.style.height = newHeight + 'px';\n }\n control.classList.add('is-active');\n tabElements[currentIndex].classList.add('is-active');\n parentElement.classList.remove('no-action');\n }, dataDelay);\n } else {\n if (dataHeight !== 'max' && dataHeight !== 'unset') {\n contentElement.style.height = newHeight + 'px';\n }\n setTimeout(() => {\n control.classList.add('is-active');\n tabElements[currentIndex].classList.add('is-active');\n parentElement.classList.remove('no-action');\n }, dataDelay);\n }\n }\n}\n","const SELECTORS = [\n 'a[href]',\n 'area[href]',\n 'input:not([disabled]):not([type=\"hidden\"]):not([aria-hidden])',\n 'select:not([disabled]):not([aria-hidden])',\n 'textarea:not([disabled]):not([aria-hidden])',\n 'button:not([disabled]):not([aria-hidden])',\n 'iframe',\n 'object',\n 'embed',\n '[contenteditable]',\n '[tabindex]:not([tabindex^=\"-\"])'\n];\n\nexport class FocusLock {\n constructor() {\n this._lockedSelector = null;\n this._focusableElements = null;\n this._endElement = null;\n this._selectors = SELECTORS;\n\n this._documentKeydownHandler = this._documentKeydownHandler.bind(this);\n }\n\n _documentKeydownHandler(evt) {\n const activeElement = document.activeElement;\n if (evt.key === 'Tab') {\n if (!this._focusableElements.length) {\n evt.preventDefault();\n activeElement.blur();\n return;\n }\n if (this._focusableElements.length === 1) {\n evt.preventDefault();\n this._focusableElements[0].focus();\n return;\n }\n if (this._focusableElements.length > 1 && !activeElement.closest(this._lockedSelector)) {\n evt.preventDefault();\n this._focusableElements[0].focus();\n return;\n }\n }\n if (evt.key === 'Tab' && !evt.shiftKey && activeElement === this._focusableElements[this._focusableElements.length - 1]) {\n evt.preventDefault();\n this._focusableElements[0].focus();\n }\n if (evt.key === 'Tab' && evt.shiftKey && activeElement === this._focusableElements[0]) {\n evt.preventDefault();\n this._focusableElements[this._focusableElements.length - 1].focus();\n }\n }\n\n lock(lockedSelector, startFocus = true) {\n this.unlock();\n this._lockedSelector = lockedSelector;\n const lockedElement = document.querySelector(this._lockedSelector);\n if (!lockedElement) {\n return;\n }\n this._focusableElements = lockedElement.querySelectorAll(this._selectors);\n this._endElement = document.activeElement;\n const startElement = lockedElement.querySelector('[data-focus]') || this._focusableElements[0];\n if (this._endElement) {\n this._endElement.blur();\n }\n if (startElement && startFocus) {\n startElement.focus();\n }\n document.addEventListener('keydown', this._documentKeydownHandler);\n }\n\n unlock(returnFocus = true) {\n if (this._endElement && returnFocus) {\n this._endElement.focus();\n }\n this._lockedSelector = null;\n this._focusableElements = null;\n this._endElement = null;\n document.removeEventListener('keydown', this._documentKeydownHandler);\n }\n}\n\nwindow.focusLock = new FocusLock();\n","export const iosChecker = () => {\n return [\n 'iPad Simulator',\n 'iPhone Simulator',\n 'iPod Simulator',\n 'iPad',\n 'iPhone',\n 'iPod'\n ].includes(navigator.platform)\n // iPad on iOS 13 detection\n || (navigator.userAgent.includes('Mac') && 'ontouchend' in document);\n};\n","import {iosChecker} from './ios-checker';\n\nconst iosVhFix = () => {\n if (!(!!window.MSInputMethodContext && !!document.documentMode)) {\n if (iosChecker()) {\n let vh = window.innerHeight * 0.01;\n document.documentElement.style.setProperty('--vh', `${vh}px`);\n\n window.addEventListener('resize', function () {\n vh = window.innerHeight * 0.01;\n document.documentElement.style.setProperty('--vh', `${vh}px`);\n });\n }\n }\n};\n\nexport {iosVhFix};\n","import {iosChecker} from './ios-checker';\n\nexport class ScrollLock {\n constructor() {\n this._iosChecker = iosChecker;\n this._lockClass = this._iosChecker() ? 'scroll-lock-ios' : 'scroll-lock';\n this._scrollTop = null;\n this._fixedBlockElements = document.querySelectorAll('[data-fix-block]');\n }\n\n _getScrollbarWidth() {\n return window.innerWidth - document.documentElement.clientWidth;\n }\n\n _getBodyScrollTop() {\n return (\n self.pageYOffset ||\n (document.documentElement && document.documentElement.ScrollTop) ||\n (document.body && document.body.scrollTop)\n );\n }\n\n disableScrolling() {\n this._scrollTop = document.body.dataset.scroll = document.body.dataset.scroll ? document.body.dataset.scroll : this._getBodyScrollTop();\n if (this._getScrollbarWidth()) {\n document.body.style.paddingRight = `${this._getScrollbarWidth()}px`;\n this._fixedBlockElements.forEach((block) => {\n block.style.paddingRight = `${this._getScrollbarWidth()}px`;\n });\n }\n document.body.style.top = `-${this._scrollTop}px`;\n document.body.classList.add(this._lockClass);\n }\n\n enableScrolling() {\n document.body.classList.remove(this._lockClass);\n window.scrollTo(0, +document.body.dataset.scroll);\n document.body.style.paddingRight = null;\n document.body.style.top = null;\n this._fixedBlockElements.forEach((block) => {\n block.style.paddingRight = null;\n });\n document.body.removeAttribute('data-scroll');\n this._scrollTop = null;\n }\n}\n\nwindow.scrollLock = new ScrollLock();\n"," const swiper = () => {\n /**\n * Swiper 7.4.1\n * Most modern mobile touch slider and framework with hardware accelerated transitions\n * https://swiperjs.com\n *\n * Copyright 2014-2021 Vladimir Kharlampidi\n *\n * Released under the MIT License\n *\n * Released on: December 24, 2021\n */\n\n (function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n ? (module.exports = factory())\n : typeof define === 'function' && define.amd\n ? define(factory)\n : ((global = typeof globalThis !== 'undefined' ? globalThis : global || self), (global.Swiper = factory()));\n })(this, function () {\n\n 'use strict';\n\n /**\n * SSR Window 4.0.2\n * Better handling for window object in SSR environment\n * https://github.com/nolimits4web/ssr-window\n *\n * Copyright 2021, Vladimir Kharlampidi\n *\n * Licensed under MIT\n *\n * Released on: December 13, 2021\n */\n\n /* eslint-disable no-param-reassign */\n function isObject$1(obj) {\n return obj !== null && typeof obj === 'object' && 'constructor' in obj && obj.constructor === Object;\n }\n\n function extend$1(target = {}, src = {}) {\n Object.keys(src).forEach((key) => {\n if (typeof target[key] === 'undefined') target[key] = src[key];\n else if (isObject$1(src[key]) && isObject$1(target[key]) && Object.keys(src[key]).length > 0) {\n extend$1(target[key], src[key]);\n }\n });\n }\n\n const ssrDocument = {\n body: {},\n\n addEventListener() {},\n\n removeEventListener() {},\n\n activeElement: {\n blur() {},\n\n nodeName: '',\n },\n\n querySelector() {\n return null;\n },\n\n querySelectorAll() {\n return [];\n },\n\n getElementById() {\n return null;\n },\n\n createEvent() {\n return {\n initEvent() {},\n };\n },\n\n createElement() {\n return {\n children: [],\n childNodes: [],\n style: {},\n\n setAttribute() {},\n\n getElementsByTagName() {\n return [];\n },\n };\n },\n\n createElementNS() {\n return {};\n },\n\n importNode() {\n return null;\n },\n\n location: {\n hash: '',\n host: '',\n hostname: '',\n href: '',\n origin: '',\n pathname: '',\n protocol: '',\n search: '',\n },\n };\n\n function getDocument() {\n const doc = typeof document !== 'undefined' ? document : {};\n extend$1(doc, ssrDocument);\n return doc;\n }\n\n const ssrWindow = {\n document: ssrDocument,\n navigator: {\n userAgent: '',\n },\n location: {\n hash: '',\n host: '',\n hostname: '',\n href: '',\n origin: '',\n pathname: '',\n protocol: '',\n search: '',\n },\n history: {\n replaceState() {},\n\n pushState() {},\n\n go() {},\n\n back() {},\n },\n CustomEvent: function CustomEvent() {\n return this;\n },\n\n addEventListener() {},\n\n removeEventListener() {},\n\n getComputedStyle() {\n return {\n getPropertyValue() {\n return '';\n },\n };\n },\n\n Image() {},\n\n Date() {},\n\n screen: {},\n\n setTimeout() {},\n\n clearTimeout() {},\n\n matchMedia() {\n return {};\n },\n\n requestAnimationFrame(callback) {\n if (typeof setTimeout === 'undefined') {\n callback();\n return null;\n }\n\n return setTimeout(callback, 0);\n },\n\n cancelAnimationFrame(id) {\n if (typeof setTimeout === 'undefined') {\n return;\n }\n\n clearTimeout(id);\n },\n };\n\n function getWindow() {\n const win = typeof window !== 'undefined' ? window : {};\n extend$1(win, ssrWindow);\n return win;\n }\n\n /**\n * Dom7 4.0.2\n * Minimalistic JavaScript library for DOM manipulation, with a jQuery-compatible API\n * https://framework7.io/docs/dom7.html\n *\n * Copyright 2021, Vladimir Kharlampidi\n *\n * Licensed under MIT\n *\n * Released on: December 13, 2021\n */\n /* eslint-disable no-proto */\n\n function makeReactive(obj) {\n const proto = obj.__proto__;\n Object.defineProperty(obj, '__proto__', {\n get() {\n return proto;\n },\n\n set(value) {\n proto.__proto__ = value;\n },\n });\n }\n\n class Dom7 extends Array {\n constructor(items) {\n super(...(items || []));\n makeReactive(this);\n }\n }\n\n function arrayFlat(arr = []) {\n const res = [];\n arr.forEach((el) => {\n if (Array.isArray(el)) {\n res.push(...arrayFlat(el));\n } else {\n res.push(el);\n }\n });\n return res;\n }\n\n function arrayFilter(arr, callback) {\n return Array.prototype.filter.call(arr, callback);\n }\n\n function arrayUnique(arr) {\n const uniqueArray = [];\n\n for (let i = 0; i < arr.length; i += 1) {\n if (uniqueArray.indexOf(arr[i]) === -1) uniqueArray.push(arr[i]);\n }\n\n return uniqueArray;\n }\n\n function qsa(selector, context) {\n if (typeof selector !== 'string') {\n return [selector];\n }\n\n const a = [];\n const res = context.querySelectorAll(selector);\n\n for (let i = 0; i < res.length; i += 1) {\n a.push(res[i]);\n }\n\n return a;\n }\n\n function $(selector, context) {\n const window = getWindow();\n const document = getDocument();\n let arr = [];\n\n if (!context && selector instanceof Dom7) {\n return selector;\n }\n\n if (!selector) {\n return new Dom7(arr);\n }\n\n if (typeof selector === 'string') {\n const html = selector.trim();\n\n if (html.indexOf('<') >= 0 && html.indexOf('>') >= 0) {\n let toCreate = 'div';\n if (html.indexOf(' c.split(' ')));\n this.forEach((el) => {\n el.classList.add(...classNames);\n });\n return this;\n }\n\n function removeClass(...classes) {\n const classNames = arrayFlat(classes.map((c) => c.split(' ')));\n this.forEach((el) => {\n el.classList.remove(...classNames);\n });\n return this;\n }\n\n function toggleClass(...classes) {\n const classNames = arrayFlat(classes.map((c) => c.split(' ')));\n this.forEach((el) => {\n classNames.forEach((className) => {\n el.classList.toggle(className);\n });\n });\n }\n\n function hasClass(...classes) {\n const classNames = arrayFlat(classes.map((c) => c.split(' ')));\n return (\n arrayFilter(this, (el) => {\n return classNames.filter((className) => el.classList.contains(className)).length > 0;\n }).length > 0\n );\n }\n\n function attr(attrs, value) {\n if (arguments.length === 1 && typeof attrs === 'string') {\n // Get attr\n if (this[0]) return this[0].getAttribute(attrs);\n return undefined;\n } // Set attrs\n\n for (let i = 0; i < this.length; i += 1) {\n if (arguments.length === 2) {\n // String\n this[i].setAttribute(attrs, value);\n } else {\n // Object\n for (const attrName in attrs) {\n this[i][attrName] = attrs[attrName];\n this[i].setAttribute(attrName, attrs[attrName]);\n }\n }\n }\n\n return this;\n }\n\n function removeAttr(attr) {\n for (let i = 0; i < this.length; i += 1) {\n this[i].removeAttribute(attr);\n }\n\n return this;\n }\n\n function transform(transform) {\n for (let i = 0; i < this.length; i += 1) {\n this[i].style.transform = transform;\n }\n\n return this;\n }\n\n function transition$1(duration) {\n for (let i = 0; i < this.length; i += 1) {\n this[i].style.transitionDuration = typeof duration !== 'string' ? `${duration}ms` : duration;\n }\n\n return this;\n }\n\n function on(...args) {\n let [eventType, targetSelector, listener, capture] = args;\n\n if (typeof args[1] === 'function') {\n [eventType, listener, capture] = args;\n targetSelector = undefined;\n }\n\n if (!capture) capture = false;\n\n function handleLiveEvent(e) {\n const target = e.target;\n if (!target) return;\n const eventData = e.target.dom7EventData || [];\n\n if (eventData.indexOf(e) < 0) {\n eventData.unshift(e);\n }\n\n if ($(target).is(targetSelector)) listener.apply(target, eventData);\n else {\n const parents = $(target).parents(); // eslint-disable-line\n\n for (let k = 0; k < parents.length; k += 1) {\n if ($(parents[k]).is(targetSelector)) listener.apply(parents[k], eventData);\n }\n }\n }\n\n function handleEvent(e) {\n const eventData = e && e.target ? e.target.dom7EventData || [] : [];\n\n if (eventData.indexOf(e) < 0) {\n eventData.unshift(e);\n }\n\n listener.apply(this, eventData);\n }\n\n const events = eventType.split(' ');\n let j;\n\n for (let i = 0; i < this.length; i += 1) {\n const el = this[i];\n\n if (!targetSelector) {\n for (j = 0; j < events.length; j += 1) {\n const event = events[j];\n if (!el.dom7Listeners) el.dom7Listeners = {};\n if (!el.dom7Listeners[event]) el.dom7Listeners[event] = [];\n el.dom7Listeners[event].push({\n listener,\n proxyListener: handleEvent,\n });\n el.addEventListener(event, handleEvent, capture);\n }\n } else {\n // Live events\n for (j = 0; j < events.length; j += 1) {\n const event = events[j];\n if (!el.dom7LiveListeners) el.dom7LiveListeners = {};\n if (!el.dom7LiveListeners[event]) el.dom7LiveListeners[event] = [];\n el.dom7LiveListeners[event].push({\n listener,\n proxyListener: handleLiveEvent,\n });\n el.addEventListener(event, handleLiveEvent, capture);\n }\n }\n }\n\n return this;\n }\n\n function off(...args) {\n let [eventType, targetSelector, listener, capture] = args;\n\n if (typeof args[1] === 'function') {\n [eventType, listener, capture] = args;\n targetSelector = undefined;\n }\n\n if (!capture) capture = false;\n const events = eventType.split(' ');\n\n for (let i = 0; i < events.length; i += 1) {\n const event = events[i];\n\n for (let j = 0; j < this.length; j += 1) {\n const el = this[j];\n let handlers;\n\n if (!targetSelector && el.dom7Listeners) {\n handlers = el.dom7Listeners[event];\n } else if (targetSelector && el.dom7LiveListeners) {\n handlers = el.dom7LiveListeners[event];\n }\n\n if (handlers && handlers.length) {\n for (let k = handlers.length - 1; k >= 0; k -= 1) {\n const handler = handlers[k];\n\n if (listener && handler.listener === listener) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n } else if (\n listener &&\n handler.listener &&\n handler.listener.dom7proxy &&\n handler.listener.dom7proxy === listener\n ) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n } else if (!listener) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n }\n }\n }\n }\n }\n\n return this;\n }\n\n function trigger(...args) {\n const window = getWindow();\n const events = args[0].split(' ');\n const eventData = args[1];\n\n for (let i = 0; i < events.length; i += 1) {\n const event = events[i];\n\n for (let j = 0; j < this.length; j += 1) {\n const el = this[j];\n\n if (window.CustomEvent) {\n const evt = new window.CustomEvent(event, {\n detail: eventData,\n bubbles: true,\n cancelable: true,\n });\n el.dom7EventData = args.filter((data, dataIndex) => dataIndex > 0);\n el.dispatchEvent(evt);\n el.dom7EventData = [];\n delete el.dom7EventData;\n }\n }\n }\n\n return this;\n }\n\n function transitionEnd$1(callback) {\n const dom = this;\n\n function fireCallBack(e) {\n if (e.target !== this) return;\n callback.call(this, e);\n dom.off('transitionend', fireCallBack);\n }\n\n if (callback) {\n dom.on('transitionend', fireCallBack);\n }\n\n return this;\n }\n\n function outerWidth(includeMargins) {\n if (this.length > 0) {\n if (includeMargins) {\n const styles = this.styles();\n return (\n this[0].offsetWidth +\n parseFloat(styles.getPropertyValue('margin-right')) +\n parseFloat(styles.getPropertyValue('margin-left'))\n );\n }\n\n return this[0].offsetWidth;\n }\n\n return null;\n }\n\n function outerHeight(includeMargins) {\n if (this.length > 0) {\n if (includeMargins) {\n const styles = this.styles();\n return (\n this[0].offsetHeight +\n parseFloat(styles.getPropertyValue('margin-top')) +\n parseFloat(styles.getPropertyValue('margin-bottom'))\n );\n }\n\n return this[0].offsetHeight;\n }\n\n return null;\n }\n\n function offset() {\n if (this.length > 0) {\n const window = getWindow();\n const document = getDocument();\n const el = this[0];\n const box = el.getBoundingClientRect();\n const body = document.body;\n const clientTop = el.clientTop || body.clientTop || 0;\n const clientLeft = el.clientLeft || body.clientLeft || 0;\n const scrollTop = el === window ? window.scrollY : el.scrollTop;\n const scrollLeft = el === window ? window.scrollX : el.scrollLeft;\n return {\n top: box.top + scrollTop - clientTop,\n left: box.left + scrollLeft - clientLeft,\n };\n }\n\n return null;\n }\n\n function styles() {\n const window = getWindow();\n if (this[0]) return window.getComputedStyle(this[0], null);\n return {};\n }\n\n function css(props, value) {\n const window = getWindow();\n let i;\n\n if (arguments.length === 1) {\n if (typeof props === 'string') {\n // .css('width')\n if (this[0]) return window.getComputedStyle(this[0], null).getPropertyValue(props);\n } else {\n // .css({ width: '100px' })\n for (i = 0; i < this.length; i += 1) {\n for (const prop in props) {\n this[i].style[prop] = props[prop];\n }\n }\n\n return this;\n }\n }\n\n if (arguments.length === 2 && typeof props === 'string') {\n // .css('width', '100px')\n for (i = 0; i < this.length; i += 1) {\n this[i].style[props] = value;\n }\n\n return this;\n }\n\n return this;\n }\n\n function each(callback) {\n if (!callback) return this;\n this.forEach((el, index) => {\n callback.apply(el, [el, index]);\n });\n return this;\n }\n\n function filter(callback) {\n const result = arrayFilter(this, callback);\n return $(result);\n }\n\n function html(html) {\n if (typeof html === 'undefined') {\n return this[0] ? this[0].innerHTML : null;\n }\n\n for (let i = 0; i < this.length; i += 1) {\n this[i].innerHTML = html;\n }\n\n return this;\n }\n\n function text(text) {\n if (typeof text === 'undefined') {\n return this[0] ? this[0].textContent.trim() : null;\n }\n\n for (let i = 0; i < this.length; i += 1) {\n this[i].textContent = text;\n }\n\n return this;\n }\n\n function is(selector) {\n const window = getWindow();\n const document = getDocument();\n const el = this[0];\n let compareWith;\n let i;\n if (!el || typeof selector === 'undefined') return false;\n\n if (typeof selector === 'string') {\n if (el.matches) return el.matches(selector);\n if (el.webkitMatchesSelector) return el.webkitMatchesSelector(selector);\n if (el.msMatchesSelector) return el.msMatchesSelector(selector);\n compareWith = $(selector);\n\n for (i = 0; i < compareWith.length; i += 1) {\n if (compareWith[i] === el) return true;\n }\n\n return false;\n }\n\n if (selector === document) {\n return el === document;\n }\n\n if (selector === window) {\n return el === window;\n }\n\n if (selector.nodeType || selector instanceof Dom7) {\n compareWith = selector.nodeType ? [selector] : selector;\n\n for (i = 0; i < compareWith.length; i += 1) {\n if (compareWith[i] === el) return true;\n }\n\n return false;\n }\n\n return false;\n }\n\n function index() {\n let child = this[0];\n let i;\n\n if (child) {\n i = 0; // eslint-disable-next-line\n\n while ((child = child.previousSibling) !== null) {\n if (child.nodeType === 1) i += 1;\n }\n\n return i;\n }\n\n return undefined;\n }\n\n function eq(index) {\n if (typeof index === 'undefined') return this;\n const length = this.length;\n\n if (index > length - 1) {\n return $([]);\n }\n\n if (index < 0) {\n const returnIndex = length + index;\n if (returnIndex < 0) return $([]);\n return $([this[returnIndex]]);\n }\n\n return $([this[index]]);\n }\n\n function append(...els) {\n let newChild;\n const document = getDocument();\n\n for (let k = 0; k < els.length; k += 1) {\n newChild = els[k];\n\n for (let i = 0; i < this.length; i += 1) {\n if (typeof newChild === 'string') {\n const tempDiv = document.createElement('div');\n tempDiv.innerHTML = newChild;\n\n while (tempDiv.firstChild) {\n this[i].appendChild(tempDiv.firstChild);\n }\n } else if (newChild instanceof Dom7) {\n for (let j = 0; j < newChild.length; j += 1) {\n this[i].appendChild(newChild[j]);\n }\n } else {\n this[i].appendChild(newChild);\n }\n }\n }\n\n return this;\n }\n\n function prepend(newChild) {\n const document = getDocument();\n let i;\n let j;\n\n for (i = 0; i < this.length; i += 1) {\n if (typeof newChild === 'string') {\n const tempDiv = document.createElement('div');\n tempDiv.innerHTML = newChild;\n\n for (j = tempDiv.childNodes.length - 1; j >= 0; j -= 1) {\n this[i].insertBefore(tempDiv.childNodes[j], this[i].childNodes[0]);\n }\n } else if (newChild instanceof Dom7) {\n for (j = 0; j < newChild.length; j += 1) {\n this[i].insertBefore(newChild[j], this[i].childNodes[0]);\n }\n } else {\n this[i].insertBefore(newChild, this[i].childNodes[0]);\n }\n }\n\n return this;\n }\n\n function next(selector) {\n if (this.length > 0) {\n if (selector) {\n if (this[0].nextElementSibling && $(this[0].nextElementSibling).is(selector)) {\n return $([this[0].nextElementSibling]);\n }\n\n return $([]);\n }\n\n if (this[0].nextElementSibling) return $([this[0].nextElementSibling]);\n return $([]);\n }\n\n return $([]);\n }\n\n function nextAll(selector) {\n const nextEls = [];\n let el = this[0];\n if (!el) return $([]);\n\n while (el.nextElementSibling) {\n const next = el.nextElementSibling; // eslint-disable-line\n\n if (selector) {\n if ($(next).is(selector)) nextEls.push(next);\n } else nextEls.push(next);\n\n el = next;\n }\n\n return $(nextEls);\n }\n\n function prev(selector) {\n if (this.length > 0) {\n const el = this[0];\n\n if (selector) {\n if (el.previousElementSibling && $(el.previousElementSibling).is(selector)) {\n return $([el.previousElementSibling]);\n }\n\n return $([]);\n }\n\n if (el.previousElementSibling) return $([el.previousElementSibling]);\n return $([]);\n }\n\n return $([]);\n }\n\n function prevAll(selector) {\n const prevEls = [];\n let el = this[0];\n if (!el) return $([]);\n\n while (el.previousElementSibling) {\n const prev = el.previousElementSibling; // eslint-disable-line\n\n if (selector) {\n if ($(prev).is(selector)) prevEls.push(prev);\n } else prevEls.push(prev);\n\n el = prev;\n }\n\n return $(prevEls);\n }\n\n function parent(selector) {\n const parents = []; // eslint-disable-line\n\n for (let i = 0; i < this.length; i += 1) {\n if (this[i].parentNode !== null) {\n if (selector) {\n if ($(this[i].parentNode).is(selector)) parents.push(this[i].parentNode);\n } else {\n parents.push(this[i].parentNode);\n }\n }\n }\n\n return $(parents);\n }\n\n function parents(selector) {\n const parents = []; // eslint-disable-line\n\n for (let i = 0; i < this.length; i += 1) {\n let parent = this[i].parentNode; // eslint-disable-line\n\n while (parent) {\n if (selector) {\n if ($(parent).is(selector)) parents.push(parent);\n } else {\n parents.push(parent);\n }\n\n parent = parent.parentNode;\n }\n }\n\n return $(parents);\n }\n\n function closest(selector) {\n let closest = this; // eslint-disable-line\n\n if (typeof selector === 'undefined') {\n return $([]);\n }\n\n if (!closest.is(selector)) {\n closest = closest.parents(selector).eq(0);\n }\n\n return closest;\n }\n\n function find(selector) {\n const foundElements = [];\n\n for (let i = 0; i < this.length; i += 1) {\n const found = this[i].querySelectorAll(selector);\n\n for (let j = 0; j < found.length; j += 1) {\n foundElements.push(found[j]);\n }\n }\n\n return $(foundElements);\n }\n\n function children(selector) {\n const children = []; // eslint-disable-line\n\n for (let i = 0; i < this.length; i += 1) {\n const childNodes = this[i].children;\n\n for (let j = 0; j < childNodes.length; j += 1) {\n if (!selector || $(childNodes[j]).is(selector)) {\n children.push(childNodes[j]);\n }\n }\n }\n\n return $(children);\n }\n\n function remove() {\n for (let i = 0; i < this.length; i += 1) {\n if (this[i].parentNode) this[i].parentNode.removeChild(this[i]);\n }\n\n return this;\n }\n\n const Methods = {\n addClass,\n removeClass,\n hasClass,\n toggleClass,\n attr,\n removeAttr,\n transform,\n transition: transition$1,\n on,\n off,\n trigger,\n transitionEnd: transitionEnd$1,\n outerWidth,\n outerHeight,\n styles,\n offset,\n css,\n each,\n html,\n text,\n is,\n index,\n eq,\n append,\n prepend,\n next,\n nextAll,\n prev,\n prevAll,\n parent,\n parents,\n closest,\n find,\n children,\n filter,\n remove,\n };\n Object.keys(Methods).forEach((methodName) => {\n Object.defineProperty($.fn, methodName, {\n value: Methods[methodName],\n writable: true,\n });\n });\n\n function deleteProps(obj) {\n const object = obj;\n Object.keys(object).forEach((key) => {\n try {\n object[key] = null;\n } catch (e) {\n // no getter for object\n }\n\n try {\n delete object[key];\n } catch (e) {\n // something got wrong\n }\n });\n }\n\n function nextTick(callback, delay = 0) {\n return setTimeout(callback, delay);\n }\n\n function now() {\n return Date.now();\n }\n\n function getComputedStyle$1(el) {\n const window = getWindow();\n let style;\n\n if (window.getComputedStyle) {\n style = window.getComputedStyle(el, null);\n }\n\n if (!style && el.currentStyle) {\n style = el.currentStyle;\n }\n\n if (!style) {\n style = el.style;\n }\n\n return style;\n }\n\n function getTranslate(el, axis = 'x') {\n const window = getWindow();\n let matrix;\n let curTransform;\n let transformMatrix;\n const curStyle = getComputedStyle$1(el);\n\n if (window.WebKitCSSMatrix) {\n curTransform = curStyle.transform || curStyle.webkitTransform;\n\n if (curTransform.split(',').length > 6) {\n curTransform = curTransform\n .split(', ')\n .map((a) => a.replace(',', '.'))\n .join(', ');\n } // Some old versions of Webkit choke when 'none' is passed; pass\n // empty string instead in this case\n\n transformMatrix = new window.WebKitCSSMatrix(curTransform === 'none' ? '' : curTransform);\n } else {\n transformMatrix =\n curStyle.MozTransform ||\n curStyle.OTransform ||\n curStyle.MsTransform ||\n curStyle.msTransform ||\n curStyle.transform ||\n curStyle.getPropertyValue('transform').replace('translate(', 'matrix(1, 0, 0, 1,');\n matrix = transformMatrix.toString().split(',');\n }\n\n if (axis === 'x') {\n // Latest Chrome and webkits Fix\n if (window.WebKitCSSMatrix) curTransform = transformMatrix.m41; // Crazy IE10 Matrix\n else if (matrix.length === 16) curTransform = parseFloat(matrix[12]); // Normal Browsers\n else curTransform = parseFloat(matrix[4]);\n }\n\n if (axis === 'y') {\n // Latest Chrome and webkits Fix\n if (window.WebKitCSSMatrix) curTransform = transformMatrix.m42; // Crazy IE10 Matrix\n else if (matrix.length === 16) curTransform = parseFloat(matrix[13]); // Normal Browsers\n else curTransform = parseFloat(matrix[5]);\n }\n\n return curTransform || 0;\n }\n\n function isObject(o) {\n return (\n typeof o === 'object' &&\n o !== null &&\n o.constructor &&\n Object.prototype.toString.call(o).slice(8, -1) === 'Object'\n );\n }\n\n function isNode(node) {\n // eslint-disable-next-line\n if (typeof window !== 'undefined' && typeof window.HTMLElement !== 'undefined') {\n return node instanceof HTMLElement;\n }\n\n return node && (node.nodeType === 1 || node.nodeType === 11);\n }\n\n function extend(...args) {\n const to = Object(args[0]);\n const noExtend = ['__proto__', 'constructor', 'prototype'];\n\n for (let i = 1; i < args.length; i += 1) {\n const nextSource = args[i];\n\n if (nextSource !== undefined && nextSource !== null && !isNode(nextSource)) {\n const keysArray = Object.keys(Object(nextSource)).filter((key) => noExtend.indexOf(key) < 0);\n\n for (let nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex += 1) {\n const nextKey = keysArray[nextIndex];\n const desc = Object.getOwnPropertyDescriptor(nextSource, nextKey);\n\n if (desc !== undefined && desc.enumerable) {\n if (isObject(to[nextKey]) && isObject(nextSource[nextKey])) {\n if (nextSource[nextKey].__swiper__) {\n to[nextKey] = nextSource[nextKey];\n } else {\n extend(to[nextKey], nextSource[nextKey]);\n }\n } else if (!isObject(to[nextKey]) && isObject(nextSource[nextKey])) {\n to[nextKey] = {};\n\n if (nextSource[nextKey].__swiper__) {\n to[nextKey] = nextSource[nextKey];\n } else {\n extend(to[nextKey], nextSource[nextKey]);\n }\n } else {\n to[nextKey] = nextSource[nextKey];\n }\n }\n }\n }\n }\n\n return to;\n }\n\n function setCSSProperty(el, varName, varValue) {\n el.style.setProperty(varName, varValue);\n }\n\n function animateCSSModeScroll({swiper, targetPosition, side}) {\n const window = getWindow();\n const startPosition = -swiper.translate;\n let startTime = null;\n let time;\n const duration = swiper.params.speed;\n swiper.wrapperEl.style.scrollSnapType = 'none';\n window.cancelAnimationFrame(swiper.cssModeFrameID);\n const dir = targetPosition > startPosition ? 'next' : 'prev';\n\n const isOutOfBound = (current, target) => {\n return (dir === 'next' && current >= target) || (dir === 'prev' && current <= target);\n };\n\n const animate = () => {\n time = new Date().getTime();\n\n if (startTime === null) {\n startTime = time;\n }\n\n const progress = Math.max(Math.min((time - startTime) / duration, 1), 0);\n const easeProgress = 0.5 - Math.cos(progress * Math.PI) / 2;\n let currentPosition = startPosition + easeProgress * (targetPosition - startPosition);\n\n if (isOutOfBound(currentPosition, targetPosition)) {\n currentPosition = targetPosition;\n }\n\n swiper.wrapperEl.scrollTo({\n [side]: currentPosition,\n });\n\n if (isOutOfBound(currentPosition, targetPosition)) {\n swiper.wrapperEl.style.overflow = 'hidden';\n swiper.wrapperEl.style.scrollSnapType = '';\n setTimeout(() => {\n swiper.wrapperEl.style.overflow = '';\n swiper.wrapperEl.scrollTo({\n [side]: currentPosition,\n });\n });\n window.cancelAnimationFrame(swiper.cssModeFrameID);\n return;\n }\n\n swiper.cssModeFrameID = window.requestAnimationFrame(animate);\n };\n\n animate();\n }\n\n let support;\n\n function calcSupport() {\n const window = getWindow();\n const document = getDocument();\n return {\n smoothScroll: document.documentElement && 'scrollBehavior' in document.documentElement.style,\n touch: !!('ontouchstart' in window || (window.DocumentTouch && document instanceof window.DocumentTouch)),\n passiveListener: (function checkPassiveListener() {\n let supportsPassive = false;\n\n try {\n const opts = Object.defineProperty({}, 'passive', {\n // eslint-disable-next-line\n get() {\n supportsPassive = true;\n },\n });\n window.addEventListener('testPassiveListener', null, opts);\n } catch (e) {\n // No support\n }\n\n return supportsPassive;\n })(),\n gestures: (function checkGestures() {\n return 'ongesturestart' in window;\n })(),\n };\n }\n\n function getSupport() {\n if (!support) {\n support = calcSupport();\n }\n\n return support;\n }\n\n let deviceCached;\n\n function calcDevice({userAgent} = {}) {\n const support = getSupport();\n const window = getWindow();\n const platform = window.navigator.platform;\n const ua = userAgent || window.navigator.userAgent;\n const device = {\n ios: false,\n android: false,\n };\n const screenWidth = window.screen.width;\n const screenHeight = window.screen.height;\n const android = ua.match(/(Android);?[\\s\\/]+([\\d.]+)?/); // eslint-disable-line\n\n let ipad = ua.match(/(iPad).*OS\\s([\\d_]+)/);\n const ipod = ua.match(/(iPod)(.*OS\\s([\\d_]+))?/);\n const iphone = !ipad && ua.match(/(iPhone\\sOS|iOS)\\s([\\d_]+)/);\n const windows = platform === 'Win32';\n let macos = platform === 'MacIntel'; // iPadOs 13 fix\n\n const iPadScreens = [\n '1024x1366',\n '1366x1024',\n '834x1194',\n '1194x834',\n '834x1112',\n '1112x834',\n '768x1024',\n '1024x768',\n '820x1180',\n '1180x820',\n '810x1080',\n '1080x810',\n ];\n\n if (!ipad && macos && support.touch && iPadScreens.indexOf(`${screenWidth}x${screenHeight}`) >= 0) {\n ipad = ua.match(/(Version)\\/([\\d.]+)/);\n if (!ipad) ipad = [0, 1, '13_0_0'];\n macos = false;\n } // Android\n\n if (android && !windows) {\n device.os = 'android';\n device.android = true;\n }\n\n if (ipad || iphone || ipod) {\n device.os = 'ios';\n device.ios = true;\n } // Export object\n\n return device;\n }\n\n function getDevice(overrides = {}) {\n if (!deviceCached) {\n deviceCached = calcDevice(overrides);\n }\n\n return deviceCached;\n }\n\n let browser;\n\n function calcBrowser() {\n const window = getWindow();\n\n function isSafari() {\n const ua = window.navigator.userAgent.toLowerCase();\n return ua.indexOf('safari') >= 0 && ua.indexOf('chrome') < 0 && ua.indexOf('android') < 0;\n }\n\n return {\n isSafari: isSafari(),\n isWebView: /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(window.navigator.userAgent),\n };\n }\n\n function getBrowser() {\n if (!browser) {\n browser = calcBrowser();\n }\n\n return browser;\n }\n\n function Resize({swiper, on, emit}) {\n const window = getWindow();\n let observer = null;\n\n const resizeHandler = () => {\n if (!swiper || swiper.destroyed || !swiper.initialized) return;\n emit('beforeResize');\n emit('resize');\n };\n\n const createObserver = () => {\n if (!swiper || swiper.destroyed || !swiper.initialized) return;\n observer = new ResizeObserver((entries) => {\n const {width, height} = swiper;\n let newWidth = width;\n let newHeight = height;\n entries.forEach(({contentBoxSize, contentRect, target}) => {\n if (target && target !== swiper.el) return;\n newWidth = contentRect ? contentRect.width : (contentBoxSize[0] || contentBoxSize).inlineSize;\n newHeight = contentRect ? contentRect.height : (contentBoxSize[0] || contentBoxSize).blockSize;\n });\n\n if (newWidth !== width || newHeight !== height) {\n resizeHandler();\n }\n });\n observer.observe(swiper.el);\n };\n\n const removeObserver = () => {\n if (observer && observer.unobserve && swiper.el) {\n observer.unobserve(swiper.el);\n observer = null;\n }\n };\n\n const orientationChangeHandler = () => {\n if (!swiper || swiper.destroyed || !swiper.initialized) return;\n emit('orientationchange');\n };\n\n on('init', () => {\n if (swiper.params.resizeObserver && typeof window.ResizeObserver !== 'undefined') {\n createObserver();\n return;\n }\n\n window.addEventListener('resize', resizeHandler);\n window.addEventListener('orientationchange', orientationChangeHandler);\n });\n on('destroy', () => {\n removeObserver();\n window.removeEventListener('resize', resizeHandler);\n window.removeEventListener('orientationchange', orientationChangeHandler);\n });\n }\n\n function Observer({swiper, extendParams, on, emit}) {\n const observers = [];\n const window = getWindow();\n\n const attach = (target, options = {}) => {\n const ObserverFunc = window.MutationObserver || window.WebkitMutationObserver;\n const observer = new ObserverFunc((mutations) => {\n // The observerUpdate event should only be triggered\n // once despite the number of mutations. Additional\n // triggers are redundant and are very costly\n if (mutations.length === 1) {\n emit('observerUpdate', mutations[0]);\n return;\n }\n\n const observerUpdate = function observerUpdate() {\n emit('observerUpdate', mutations[0]);\n };\n\n if (window.requestAnimationFrame) {\n window.requestAnimationFrame(observerUpdate);\n } else {\n window.setTimeout(observerUpdate, 0);\n }\n });\n observer.observe(target, {\n attributes: typeof options.attributes === 'undefined' ? true : options.attributes,\n childList: typeof options.childList === 'undefined' ? true : options.childList,\n characterData: typeof options.characterData === 'undefined' ? true : options.characterData,\n });\n observers.push(observer);\n };\n\n const init = () => {\n if (!swiper.params.observer) return;\n\n if (swiper.params.observeParents) {\n const containerParents = swiper.$el.parents();\n\n for (let i = 0; i < containerParents.length; i += 1) {\n attach(containerParents[i]);\n }\n } // Observe container\n\n attach(swiper.$el[0], {\n childList: swiper.params.observeSlideChildren,\n }); // Observe wrapper\n\n attach(swiper.$wrapperEl[0], {\n attributes: false,\n });\n };\n\n const destroy = () => {\n observers.forEach((observer) => {\n observer.disconnect();\n });\n observers.splice(0, observers.length);\n };\n\n extendParams({\n observer: false,\n observeParents: false,\n observeSlideChildren: false,\n });\n on('init', init);\n on('destroy', destroy);\n }\n\n /* eslint-disable no-underscore-dangle */\n var eventsEmitter = {\n on(events, handler, priority) {\n const self = this;\n if (typeof handler !== 'function') return self;\n const method = priority ? 'unshift' : 'push';\n events.split(' ').forEach((event) => {\n if (!self.eventsListeners[event]) self.eventsListeners[event] = [];\n self.eventsListeners[event][method](handler);\n });\n return self;\n },\n\n once(events, handler, priority) {\n const self = this;\n if (typeof handler !== 'function') return self;\n\n function onceHandler(...args) {\n self.off(events, onceHandler);\n\n if (onceHandler.__emitterProxy) {\n delete onceHandler.__emitterProxy;\n }\n\n handler.apply(self, args);\n }\n\n onceHandler.__emitterProxy = handler;\n return self.on(events, onceHandler, priority);\n },\n\n onAny(handler, priority) {\n const self = this;\n if (typeof handler !== 'function') return self;\n const method = priority ? 'unshift' : 'push';\n\n if (self.eventsAnyListeners.indexOf(handler) < 0) {\n self.eventsAnyListeners[method](handler);\n }\n\n return self;\n },\n\n offAny(handler) {\n const self = this;\n if (!self.eventsAnyListeners) return self;\n const index = self.eventsAnyListeners.indexOf(handler);\n\n if (index >= 0) {\n self.eventsAnyListeners.splice(index, 1);\n }\n\n return self;\n },\n\n off(events, handler) {\n const self = this;\n if (!self.eventsListeners) return self;\n events.split(' ').forEach((event) => {\n if (typeof handler === 'undefined') {\n self.eventsListeners[event] = [];\n } else if (self.eventsListeners[event]) {\n self.eventsListeners[event].forEach((eventHandler, index) => {\n if (\n eventHandler === handler ||\n (eventHandler.__emitterProxy && eventHandler.__emitterProxy === handler)\n ) {\n self.eventsListeners[event].splice(index, 1);\n }\n });\n }\n });\n return self;\n },\n\n emit(...args) {\n const self = this;\n if (!self.eventsListeners) return self;\n let events;\n let data;\n let context;\n\n if (typeof args[0] === 'string' || Array.isArray(args[0])) {\n events = args[0];\n data = args.slice(1, args.length);\n context = self;\n } else {\n events = args[0].events;\n data = args[0].data;\n context = args[0].context || self;\n }\n\n data.unshift(context);\n const eventsArray = Array.isArray(events) ? events : events.split(' ');\n eventsArray.forEach((event) => {\n if (self.eventsAnyListeners && self.eventsAnyListeners.length) {\n self.eventsAnyListeners.forEach((eventHandler) => {\n eventHandler.apply(context, [event, ...data]);\n });\n }\n\n if (self.eventsListeners && self.eventsListeners[event]) {\n self.eventsListeners[event].forEach((eventHandler) => {\n eventHandler.apply(context, data);\n });\n }\n });\n return self;\n },\n };\n\n function updateSize() {\n const swiper = this;\n let width;\n let height;\n const $el = swiper.$el;\n\n if (typeof swiper.params.width !== 'undefined' && swiper.params.width !== null) {\n width = swiper.params.width;\n } else {\n width = $el[0].clientWidth;\n }\n\n if (typeof swiper.params.height !== 'undefined' && swiper.params.height !== null) {\n height = swiper.params.height;\n } else {\n height = $el[0].clientHeight;\n }\n\n if ((width === 0 && swiper.isHorizontal()) || (height === 0 && swiper.isVertical())) {\n return;\n } // Subtract paddings\n\n width = width - parseInt($el.css('padding-left') || 0, 10) - parseInt($el.css('padding-right') || 0, 10);\n height = height - parseInt($el.css('padding-top') || 0, 10) - parseInt($el.css('padding-bottom') || 0, 10);\n if (Number.isNaN(width)) width = 0;\n if (Number.isNaN(height)) height = 0;\n Object.assign(swiper, {\n width,\n height,\n size: swiper.isHorizontal() ? width : height,\n });\n }\n\n function updateSlides() {\n const swiper = this;\n\n function getDirectionLabel(property) {\n if (swiper.isHorizontal()) {\n return property;\n } // prettier-ignore\n\n return {\n width: 'height',\n 'margin-top': 'margin-left',\n 'margin-bottom ': 'margin-right',\n 'margin-left': 'margin-top',\n 'margin-right': 'margin-bottom',\n 'padding-left': 'padding-top',\n 'padding-right': 'padding-bottom',\n marginRight: 'marginBottom',\n }[property];\n }\n\n function getDirectionPropertyValue(node, label) {\n return parseFloat(node.getPropertyValue(getDirectionLabel(label)) || 0);\n }\n\n const params = swiper.params;\n const {$wrapperEl, size: swiperSize, rtlTranslate: rtl, wrongRTL} = swiper;\n const isVirtual = swiper.virtual && params.virtual.enabled;\n const previousSlidesLength = isVirtual ? swiper.virtual.slides.length : swiper.slides.length;\n const slides = $wrapperEl.children(`.${swiper.params.slideClass}`);\n const slidesLength = isVirtual ? swiper.virtual.slides.length : slides.length;\n let snapGrid = [];\n const slidesGrid = [];\n const slidesSizesGrid = [];\n let offsetBefore = params.slidesOffsetBefore;\n\n if (typeof offsetBefore === 'function') {\n offsetBefore = params.slidesOffsetBefore.call(swiper);\n }\n\n let offsetAfter = params.slidesOffsetAfter;\n\n if (typeof offsetAfter === 'function') {\n offsetAfter = params.slidesOffsetAfter.call(swiper);\n }\n\n const previousSnapGridLength = swiper.snapGrid.length;\n const previousSlidesGridLength = swiper.slidesGrid.length;\n let spaceBetween = params.spaceBetween;\n let slidePosition = -offsetBefore;\n let prevSlideSize = 0;\n let index = 0;\n\n if (typeof swiperSize === 'undefined') {\n return;\n }\n\n if (typeof spaceBetween === 'string' && spaceBetween.indexOf('%') >= 0) {\n spaceBetween = (parseFloat(spaceBetween.replace('%', '')) / 100) * swiperSize;\n }\n\n swiper.virtualSize = -spaceBetween; // reset margins\n\n if (rtl)\n slides.css({\n marginLeft: '',\n marginBottom: '',\n marginTop: '',\n });\n else\n slides.css({\n marginRight: '',\n marginBottom: '',\n marginTop: '',\n }); // reset cssMode offsets\n\n if (params.centeredSlides && params.cssMode) {\n setCSSProperty(swiper.wrapperEl, '--swiper-centered-offset-before', '');\n setCSSProperty(swiper.wrapperEl, '--swiper-centered-offset-after', '');\n }\n\n const gridEnabled = params.grid && params.grid.rows > 1 && swiper.grid;\n\n if (gridEnabled) {\n swiper.grid.initSlides(slidesLength);\n } // Calc slides\n\n let slideSize;\n const shouldResetSlideSize =\n params.slidesPerView === 'auto' &&\n params.breakpoints &&\n Object.keys(params.breakpoints).filter((key) => {\n return typeof params.breakpoints[key].slidesPerView !== 'undefined';\n }).length > 0;\n\n for (let i = 0; i < slidesLength; i += 1) {\n slideSize = 0;\n const slide = slides.eq(i);\n\n if (gridEnabled) {\n swiper.grid.updateSlide(i, slide, slidesLength, getDirectionLabel);\n }\n\n if (slide.css('display') === 'none') continue; // eslint-disable-line\n\n if (params.slidesPerView === 'auto') {\n if (shouldResetSlideSize) {\n slides[i].style[getDirectionLabel('width')] = ``;\n }\n\n const slideStyles = getComputedStyle(slide[0]);\n const currentTransform = slide[0].style.transform;\n const currentWebKitTransform = slide[0].style.webkitTransform;\n\n if (currentTransform) {\n slide[0].style.transform = 'none';\n }\n\n if (currentWebKitTransform) {\n slide[0].style.webkitTransform = 'none';\n }\n\n if (params.roundLengths) {\n slideSize = swiper.isHorizontal() ? slide.outerWidth(true) : slide.outerHeight(true);\n } else {\n // eslint-disable-next-line\n const width = getDirectionPropertyValue(slideStyles, 'width');\n const paddingLeft = getDirectionPropertyValue(slideStyles, 'padding-left');\n const paddingRight = getDirectionPropertyValue(slideStyles, 'padding-right');\n const marginLeft = getDirectionPropertyValue(slideStyles, 'margin-left');\n const marginRight = getDirectionPropertyValue(slideStyles, 'margin-right');\n const boxSizing = slideStyles.getPropertyValue('box-sizing');\n\n if (boxSizing && boxSizing === 'border-box') {\n slideSize = width + marginLeft + marginRight;\n } else {\n const {clientWidth, offsetWidth} = slide[0];\n slideSize = width + paddingLeft + paddingRight + marginLeft + marginRight + (offsetWidth - clientWidth);\n }\n }\n\n if (currentTransform) {\n slide[0].style.transform = currentTransform;\n }\n\n if (currentWebKitTransform) {\n slide[0].style.webkitTransform = currentWebKitTransform;\n }\n\n if (params.roundLengths) slideSize = Math.floor(slideSize);\n } else {\n slideSize = (swiperSize - (params.slidesPerView - 1) * spaceBetween) / params.slidesPerView;\n if (params.roundLengths) slideSize = Math.floor(slideSize);\n\n if (slides[i]) {\n slides[i].style[getDirectionLabel('width')] = `${slideSize}px`;\n }\n }\n\n if (slides[i]) {\n slides[i].swiperSlideSize = slideSize;\n }\n\n slidesSizesGrid.push(slideSize);\n\n if (params.centeredSlides) {\n slidePosition = slidePosition + slideSize / 2 + prevSlideSize / 2 + spaceBetween;\n if (prevSlideSize === 0 && i !== 0) slidePosition = slidePosition - swiperSize / 2 - spaceBetween;\n if (i === 0) slidePosition = slidePosition - swiperSize / 2 - spaceBetween;\n if (Math.abs(slidePosition) < 1 / 1000) slidePosition = 0;\n if (params.roundLengths) slidePosition = Math.floor(slidePosition);\n if (index % params.slidesPerGroup === 0) snapGrid.push(slidePosition);\n slidesGrid.push(slidePosition);\n } else {\n if (params.roundLengths) slidePosition = Math.floor(slidePosition);\n if ((index - Math.min(swiper.params.slidesPerGroupSkip, index)) % swiper.params.slidesPerGroup === 0)\n snapGrid.push(slidePosition);\n slidesGrid.push(slidePosition);\n slidePosition = slidePosition + slideSize + spaceBetween;\n }\n\n swiper.virtualSize += slideSize + spaceBetween;\n prevSlideSize = slideSize;\n index += 1;\n }\n\n swiper.virtualSize = Math.max(swiper.virtualSize, swiperSize) + offsetAfter;\n\n if (rtl && wrongRTL && (params.effect === 'slide' || params.effect === 'coverflow')) {\n $wrapperEl.css({\n width: `${swiper.virtualSize + params.spaceBetween}px`,\n });\n }\n\n if (params.setWrapperSize) {\n $wrapperEl.css({\n [getDirectionLabel('width')]: `${swiper.virtualSize + params.spaceBetween}px`,\n });\n }\n\n if (gridEnabled) {\n swiper.grid.updateWrapperSize(slideSize, snapGrid, getDirectionLabel);\n } // Remove last grid elements depending on width\n\n if (!params.centeredSlides) {\n const newSlidesGrid = [];\n\n for (let i = 0; i < snapGrid.length; i += 1) {\n let slidesGridItem = snapGrid[i];\n if (params.roundLengths) slidesGridItem = Math.floor(slidesGridItem);\n\n if (snapGrid[i] <= swiper.virtualSize - swiperSize) {\n newSlidesGrid.push(slidesGridItem);\n }\n }\n\n snapGrid = newSlidesGrid;\n\n if (Math.floor(swiper.virtualSize - swiperSize) - Math.floor(snapGrid[snapGrid.length - 1]) > 1) {\n snapGrid.push(swiper.virtualSize - swiperSize);\n }\n }\n\n if (snapGrid.length === 0) snapGrid = [0];\n\n if (params.spaceBetween !== 0) {\n const key = swiper.isHorizontal() && rtl ? 'marginLeft' : getDirectionLabel('marginRight');\n slides\n .filter((_, slideIndex) => {\n if (!params.cssMode) return true;\n\n if (slideIndex === slides.length - 1) {\n return false;\n }\n\n return true;\n })\n .css({\n [key]: `${spaceBetween}px`,\n });\n }\n\n if (params.centeredSlides && params.centeredSlidesBounds) {\n let allSlidesSize = 0;\n slidesSizesGrid.forEach((slideSizeValue) => {\n allSlidesSize += slideSizeValue + (params.spaceBetween ? params.spaceBetween : 0);\n });\n allSlidesSize -= params.spaceBetween;\n const maxSnap = allSlidesSize - swiperSize;\n snapGrid = snapGrid.map((snap) => {\n if (snap < 0) return -offsetBefore;\n if (snap > maxSnap) return maxSnap + offsetAfter;\n return snap;\n });\n }\n\n if (params.centerInsufficientSlides) {\n let allSlidesSize = 0;\n slidesSizesGrid.forEach((slideSizeValue) => {\n allSlidesSize += slideSizeValue + (params.spaceBetween ? params.spaceBetween : 0);\n });\n allSlidesSize -= params.spaceBetween;\n\n if (allSlidesSize < swiperSize) {\n const allSlidesOffset = (swiperSize - allSlidesSize) / 2;\n snapGrid.forEach((snap, snapIndex) => {\n snapGrid[snapIndex] = snap - allSlidesOffset;\n });\n slidesGrid.forEach((snap, snapIndex) => {\n slidesGrid[snapIndex] = snap + allSlidesOffset;\n });\n }\n }\n\n Object.assign(swiper, {\n slides,\n snapGrid,\n slidesGrid,\n slidesSizesGrid,\n });\n\n if (params.centeredSlides && params.cssMode && !params.centeredSlidesBounds) {\n setCSSProperty(swiper.wrapperEl, '--swiper-centered-offset-before', `${-snapGrid[0]}px`);\n setCSSProperty(\n swiper.wrapperEl,\n '--swiper-centered-offset-after',\n `${swiper.size / 2 - slidesSizesGrid[slidesSizesGrid.length - 1] / 2}px`,\n );\n const addToSnapGrid = -swiper.snapGrid[0];\n const addToSlidesGrid = -swiper.slidesGrid[0];\n swiper.snapGrid = swiper.snapGrid.map((v) => v + addToSnapGrid);\n swiper.slidesGrid = swiper.slidesGrid.map((v) => v + addToSlidesGrid);\n }\n\n if (slidesLength !== previousSlidesLength) {\n swiper.emit('slidesLengthChange');\n }\n\n if (snapGrid.length !== previousSnapGridLength) {\n if (swiper.params.watchOverflow) swiper.checkOverflow();\n swiper.emit('snapGridLengthChange');\n }\n\n if (slidesGrid.length !== previousSlidesGridLength) {\n swiper.emit('slidesGridLengthChange');\n }\n\n if (params.watchSlidesProgress) {\n swiper.updateSlidesOffset();\n }\n }\n\n function updateAutoHeight(speed) {\n const swiper = this;\n const activeSlides = [];\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n let newHeight = 0;\n let i;\n\n if (typeof speed === 'number') {\n swiper.setTransition(speed);\n } else if (speed === true) {\n swiper.setTransition(swiper.params.speed);\n }\n\n const getSlideByIndex = (index) => {\n if (isVirtual) {\n return swiper.slides.filter((el) => parseInt(el.getAttribute('data-swiper-slide-index'), 10) === index)[0];\n }\n\n return swiper.slides.eq(index)[0];\n }; // Find slides currently in view\n\n if (swiper.params.slidesPerView !== 'auto' && swiper.params.slidesPerView > 1) {\n if (swiper.params.centeredSlides) {\n swiper.visibleSlides.each((slide) => {\n activeSlides.push(slide);\n });\n } else {\n for (i = 0; i < Math.ceil(swiper.params.slidesPerView); i += 1) {\n const index = swiper.activeIndex + i;\n if (index > swiper.slides.length && !isVirtual) break;\n activeSlides.push(getSlideByIndex(index));\n }\n }\n } else {\n activeSlides.push(getSlideByIndex(swiper.activeIndex));\n } // Find new height from highest slide in view\n\n for (i = 0; i < activeSlides.length; i += 1) {\n if (typeof activeSlides[i] !== 'undefined') {\n const height = activeSlides[i].offsetHeight;\n newHeight = height > newHeight ? height : newHeight;\n }\n } // Update Height\n\n if (newHeight || newHeight === 0) swiper.$wrapperEl.css('height', `${newHeight}px`);\n }\n\n function updateSlidesOffset() {\n const swiper = this;\n const slides = swiper.slides;\n\n for (let i = 0; i < slides.length; i += 1) {\n slides[i].swiperSlideOffset = swiper.isHorizontal() ? slides[i].offsetLeft : slides[i].offsetTop;\n }\n }\n\n function updateSlidesProgress(translate = (this && this.translate) || 0) {\n const swiper = this;\n const params = swiper.params;\n const {slides, rtlTranslate: rtl, snapGrid} = swiper;\n if (slides.length === 0) return;\n if (typeof slides[0].swiperSlideOffset === 'undefined') swiper.updateSlidesOffset();\n let offsetCenter = -translate;\n if (rtl) offsetCenter = translate; // Visible Slides\n\n slides.removeClass(params.slideVisibleClass);\n swiper.visibleSlidesIndexes = [];\n swiper.visibleSlides = [];\n\n for (let i = 0; i < slides.length; i += 1) {\n const slide = slides[i];\n let slideOffset = slide.swiperSlideOffset;\n\n if (params.cssMode && params.centeredSlides) {\n slideOffset -= slides[0].swiperSlideOffset;\n }\n\n const slideProgress =\n (offsetCenter + (params.centeredSlides ? swiper.minTranslate() : 0) - slideOffset) /\n (slide.swiperSlideSize + params.spaceBetween);\n const originalSlideProgress =\n (offsetCenter - snapGrid[0] + (params.centeredSlides ? swiper.minTranslate() : 0) - slideOffset) /\n (slide.swiperSlideSize + params.spaceBetween);\n const slideBefore = -(offsetCenter - slideOffset);\n const slideAfter = slideBefore + swiper.slidesSizesGrid[i];\n const isVisible =\n (slideBefore >= 0 && slideBefore < swiper.size - 1) ||\n (slideAfter > 1 && slideAfter <= swiper.size) ||\n (slideBefore <= 0 && slideAfter >= swiper.size);\n\n if (isVisible) {\n swiper.visibleSlides.push(slide);\n swiper.visibleSlidesIndexes.push(i);\n slides.eq(i).addClass(params.slideVisibleClass);\n }\n\n slide.progress = rtl ? -slideProgress : slideProgress;\n slide.originalProgress = rtl ? -originalSlideProgress : originalSlideProgress;\n }\n\n swiper.visibleSlides = $(swiper.visibleSlides);\n }\n\n function updateProgress(translate) {\n const swiper = this;\n\n if (typeof translate === 'undefined') {\n const multiplier = swiper.rtlTranslate ? -1 : 1; // eslint-disable-next-line\n\n translate = (swiper && swiper.translate && swiper.translate * multiplier) || 0;\n }\n\n const params = swiper.params;\n const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n let {progress, isBeginning, isEnd} = swiper;\n const wasBeginning = isBeginning;\n const wasEnd = isEnd;\n\n if (translatesDiff === 0) {\n progress = 0;\n isBeginning = true;\n isEnd = true;\n } else {\n progress = (translate - swiper.minTranslate()) / translatesDiff;\n isBeginning = progress <= 0;\n isEnd = progress >= 1;\n }\n\n Object.assign(swiper, {\n progress,\n isBeginning,\n isEnd,\n });\n if (params.watchSlidesProgress || (params.centeredSlides && params.autoHeight))\n swiper.updateSlidesProgress(translate);\n\n if (isBeginning && !wasBeginning) {\n swiper.emit('reachBeginning toEdge');\n }\n\n if (isEnd && !wasEnd) {\n swiper.emit('reachEnd toEdge');\n }\n\n if ((wasBeginning && !isBeginning) || (wasEnd && !isEnd)) {\n swiper.emit('fromEdge');\n }\n\n swiper.emit('progress', progress);\n }\n\n function updateSlidesClasses() {\n const swiper = this;\n const {slides, params, $wrapperEl, activeIndex, realIndex} = swiper;\n const isVirtual = swiper.virtual && params.virtual.enabled;\n slides.removeClass(\n `${params.slideActiveClass} ${params.slideNextClass} ${params.slidePrevClass} ${params.slideDuplicateActiveClass} ${params.slideDuplicateNextClass} ${params.slideDuplicatePrevClass}`,\n );\n let activeSlide;\n\n if (isVirtual) {\n activeSlide = swiper.$wrapperEl.find(`.${params.slideClass}[data-swiper-slide-index=\"${activeIndex}\"]`);\n } else {\n activeSlide = slides.eq(activeIndex);\n } // Active classes\n\n activeSlide.addClass(params.slideActiveClass);\n\n if (params.loop) {\n // Duplicate to all looped slides\n if (activeSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children(\n `.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index=\"${realIndex}\"]`,\n )\n .addClass(params.slideDuplicateActiveClass);\n } else {\n $wrapperEl\n .children(`.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index=\"${realIndex}\"]`)\n .addClass(params.slideDuplicateActiveClass);\n }\n } // Next Slide\n\n let nextSlide = activeSlide.nextAll(`.${params.slideClass}`).eq(0).addClass(params.slideNextClass);\n\n if (params.loop && nextSlide.length === 0) {\n nextSlide = slides.eq(0);\n nextSlide.addClass(params.slideNextClass);\n } // Prev Slide\n\n let prevSlide = activeSlide.prevAll(`.${params.slideClass}`).eq(0).addClass(params.slidePrevClass);\n\n if (params.loop && prevSlide.length === 0) {\n prevSlide = slides.eq(-1);\n prevSlide.addClass(params.slidePrevClass);\n }\n\n if (params.loop) {\n // Duplicate to all looped slides\n if (nextSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children(\n `.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index=\"${nextSlide.attr(\n 'data-swiper-slide-index',\n )}\"]`,\n )\n .addClass(params.slideDuplicateNextClass);\n } else {\n $wrapperEl\n .children(\n `.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index=\"${nextSlide.attr(\n 'data-swiper-slide-index',\n )}\"]`,\n )\n .addClass(params.slideDuplicateNextClass);\n }\n\n if (prevSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children(\n `.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index=\"${prevSlide.attr(\n 'data-swiper-slide-index',\n )}\"]`,\n )\n .addClass(params.slideDuplicatePrevClass);\n } else {\n $wrapperEl\n .children(\n `.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index=\"${prevSlide.attr(\n 'data-swiper-slide-index',\n )}\"]`,\n )\n .addClass(params.slideDuplicatePrevClass);\n }\n }\n\n swiper.emitSlidesClasses();\n }\n\n function updateActiveIndex(newActiveIndex) {\n const swiper = this;\n const translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate;\n const {\n slidesGrid,\n snapGrid,\n params,\n activeIndex: previousIndex,\n realIndex: previousRealIndex,\n snapIndex: previousSnapIndex,\n } = swiper;\n let activeIndex = newActiveIndex;\n let snapIndex;\n\n if (typeof activeIndex === 'undefined') {\n for (let i = 0; i < slidesGrid.length; i += 1) {\n if (typeof slidesGrid[i + 1] !== 'undefined') {\n if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1] - (slidesGrid[i + 1] - slidesGrid[i]) / 2) {\n activeIndex = i;\n } else if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1]) {\n activeIndex = i + 1;\n }\n } else if (translate >= slidesGrid[i]) {\n activeIndex = i;\n }\n } // Normalize slideIndex\n\n if (params.normalizeSlideIndex) {\n if (activeIndex < 0 || typeof activeIndex === 'undefined') activeIndex = 0;\n }\n }\n\n if (snapGrid.indexOf(translate) >= 0) {\n snapIndex = snapGrid.indexOf(translate);\n } else {\n const skip = Math.min(params.slidesPerGroupSkip, activeIndex);\n snapIndex = skip + Math.floor((activeIndex - skip) / params.slidesPerGroup);\n }\n\n if (snapIndex >= snapGrid.length) snapIndex = snapGrid.length - 1;\n\n if (activeIndex === previousIndex) {\n if (snapIndex !== previousSnapIndex) {\n swiper.snapIndex = snapIndex;\n swiper.emit('snapIndexChange');\n }\n\n return;\n } // Get real index\n\n const realIndex = parseInt(swiper.slides.eq(activeIndex).attr('data-swiper-slide-index') || activeIndex, 10);\n Object.assign(swiper, {\n snapIndex,\n realIndex,\n previousIndex,\n activeIndex,\n });\n swiper.emit('activeIndexChange');\n swiper.emit('snapIndexChange');\n\n if (previousRealIndex !== realIndex) {\n swiper.emit('realIndexChange');\n }\n\n if (swiper.initialized || swiper.params.runCallbacksOnInit) {\n swiper.emit('slideChange');\n }\n }\n\n function updateClickedSlide(e) {\n const swiper = this;\n const params = swiper.params;\n const slide = $(e).closest(`.${params.slideClass}`)[0];\n let slideFound = false;\n let slideIndex;\n\n if (slide) {\n for (let i = 0; i < swiper.slides.length; i += 1) {\n if (swiper.slides[i] === slide) {\n slideFound = true;\n slideIndex = i;\n break;\n }\n }\n }\n\n if (slide && slideFound) {\n swiper.clickedSlide = slide;\n\n if (swiper.virtual && swiper.params.virtual.enabled) {\n swiper.clickedIndex = parseInt($(slide).attr('data-swiper-slide-index'), 10);\n } else {\n swiper.clickedIndex = slideIndex;\n }\n } else {\n swiper.clickedSlide = undefined;\n swiper.clickedIndex = undefined;\n return;\n }\n\n if (\n params.slideToClickedSlide &&\n swiper.clickedIndex !== undefined &&\n swiper.clickedIndex !== swiper.activeIndex\n ) {\n swiper.slideToClickedSlide();\n }\n }\n\n var update = {\n updateSize,\n updateSlides,\n updateAutoHeight,\n updateSlidesOffset,\n updateSlidesProgress,\n updateProgress,\n updateSlidesClasses,\n updateActiveIndex,\n updateClickedSlide,\n };\n\n function getSwiperTranslate(axis = this.isHorizontal() ? 'x' : 'y') {\n const swiper = this;\n const {params, rtlTranslate: rtl, translate, $wrapperEl} = swiper;\n\n if (params.virtualTranslate) {\n return rtl ? -translate : translate;\n }\n\n if (params.cssMode) {\n return translate;\n }\n\n let currentTranslate = getTranslate($wrapperEl[0], axis);\n if (rtl) currentTranslate = -currentTranslate;\n return currentTranslate || 0;\n }\n\n function setTranslate(translate, byController) {\n const swiper = this;\n const {rtlTranslate: rtl, params, $wrapperEl, wrapperEl, progress} = swiper;\n let x = 0;\n let y = 0;\n const z = 0;\n\n if (swiper.isHorizontal()) {\n x = rtl ? -translate : translate;\n } else {\n y = translate;\n }\n\n if (params.roundLengths) {\n x = Math.floor(x);\n y = Math.floor(y);\n }\n\n if (params.cssMode) {\n wrapperEl[swiper.isHorizontal() ? 'scrollLeft' : 'scrollTop'] = swiper.isHorizontal() ? -x : -y;\n } else if (!params.virtualTranslate) {\n $wrapperEl.transform(`translate3d(${x}px, ${y}px, ${z}px)`);\n }\n\n swiper.previousTranslate = swiper.translate;\n swiper.translate = swiper.isHorizontal() ? x : y; // Check if we need to update progress\n\n let newProgress;\n const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n\n if (translatesDiff === 0) {\n newProgress = 0;\n } else {\n newProgress = (translate - swiper.minTranslate()) / translatesDiff;\n }\n\n if (newProgress !== progress) {\n swiper.updateProgress(translate);\n }\n\n swiper.emit('setTranslate', swiper.translate, byController);\n }\n\n function minTranslate() {\n return -this.snapGrid[0];\n }\n\n function maxTranslate() {\n return -this.snapGrid[this.snapGrid.length - 1];\n }\n\n function translateTo(\n translate = 0,\n speed = this.params.speed,\n runCallbacks = true,\n translateBounds = true,\n internal,\n ) {\n const swiper = this;\n const {params, wrapperEl} = swiper;\n\n if (swiper.animating && params.preventInteractionOnTransition) {\n return false;\n }\n\n const minTranslate = swiper.minTranslate();\n const maxTranslate = swiper.maxTranslate();\n let newTranslate;\n if (translateBounds && translate > minTranslate) newTranslate = minTranslate;\n else if (translateBounds && translate < maxTranslate) newTranslate = maxTranslate;\n else newTranslate = translate; // Update progress\n\n swiper.updateProgress(newTranslate);\n\n if (params.cssMode) {\n const isH = swiper.isHorizontal();\n\n if (speed === 0) {\n wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = -newTranslate;\n } else {\n if (!swiper.support.smoothScroll) {\n animateCSSModeScroll({\n swiper,\n targetPosition: -newTranslate,\n side: isH ? 'left' : 'top',\n });\n return true;\n }\n\n wrapperEl.scrollTo({\n [isH ? 'left' : 'top']: -newTranslate,\n behavior: 'smooth',\n });\n }\n\n return true;\n }\n\n if (speed === 0) {\n swiper.setTransition(0);\n swiper.setTranslate(newTranslate);\n\n if (runCallbacks) {\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.emit('transitionEnd');\n }\n } else {\n swiper.setTransition(speed);\n swiper.setTranslate(newTranslate);\n\n if (runCallbacks) {\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.emit('transitionStart');\n }\n\n if (!swiper.animating) {\n swiper.animating = true;\n\n if (!swiper.onTranslateToWrapperTransitionEnd) {\n swiper.onTranslateToWrapperTransitionEnd = function transitionEnd(e) {\n if (!swiper || swiper.destroyed) return;\n if (e.target !== this) return;\n swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.onTranslateToWrapperTransitionEnd);\n swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.onTranslateToWrapperTransitionEnd);\n swiper.onTranslateToWrapperTransitionEnd = null;\n delete swiper.onTranslateToWrapperTransitionEnd;\n\n if (runCallbacks) {\n swiper.emit('transitionEnd');\n }\n };\n }\n\n swiper.$wrapperEl[0].addEventListener('transitionend', swiper.onTranslateToWrapperTransitionEnd);\n swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.onTranslateToWrapperTransitionEnd);\n }\n }\n\n return true;\n }\n\n var translate = {\n getTranslate: getSwiperTranslate,\n setTranslate,\n minTranslate,\n maxTranslate,\n translateTo,\n };\n\n function setTransition(duration, byController) {\n const swiper = this;\n\n if (!swiper.params.cssMode) {\n swiper.$wrapperEl.transition(duration);\n }\n\n swiper.emit('setTransition', duration, byController);\n }\n\n function transitionEmit({swiper, runCallbacks, direction, step}) {\n const {activeIndex, previousIndex} = swiper;\n let dir = direction;\n\n if (!dir) {\n if (activeIndex > previousIndex) dir = 'next';\n else if (activeIndex < previousIndex) dir = 'prev';\n else dir = 'reset';\n }\n\n swiper.emit(`transition${step}`);\n\n if (runCallbacks && activeIndex !== previousIndex) {\n if (dir === 'reset') {\n swiper.emit(`slideResetTransition${step}`);\n return;\n }\n\n swiper.emit(`slideChangeTransition${step}`);\n\n if (dir === 'next') {\n swiper.emit(`slideNextTransition${step}`);\n } else {\n swiper.emit(`slidePrevTransition${step}`);\n }\n }\n }\n\n function transitionStart(runCallbacks = true, direction) {\n const swiper = this;\n const {params} = swiper;\n if (params.cssMode) return;\n\n if (params.autoHeight) {\n swiper.updateAutoHeight();\n }\n\n transitionEmit({\n swiper,\n runCallbacks,\n direction,\n step: 'Start',\n });\n }\n\n function transitionEnd(runCallbacks = true, direction) {\n const swiper = this;\n const {params} = swiper;\n swiper.animating = false;\n if (params.cssMode) return;\n swiper.setTransition(0);\n transitionEmit({\n swiper,\n runCallbacks,\n direction,\n step: 'End',\n });\n }\n\n var transition = {\n setTransition,\n transitionStart,\n transitionEnd,\n };\n\n function slideTo(index = 0, speed = this.params.speed, runCallbacks = true, internal, initial) {\n if (typeof index !== 'number' && typeof index !== 'string') {\n throw new Error(\n `The 'index' argument cannot have type other than 'number' or 'string'. [${typeof index}] given.`,\n );\n }\n\n if (typeof index === 'string') {\n /**\n * The `index` argument converted from `string` to `number`.\n * @type {number}\n */\n const indexAsNumber = parseInt(index, 10);\n /**\n * Determines whether the `index` argument is a valid `number`\n * after being converted from the `string` type.\n * @type {boolean}\n */\n\n const isValidNumber = isFinite(indexAsNumber);\n\n if (!isValidNumber) {\n throw new Error(`The passed-in 'index' (string) couldn't be converted to 'number'. [${index}] given.`);\n } // Knowing that the converted `index` is a valid number,\n // we can update the original argument's value.\n\n index = indexAsNumber;\n }\n\n const swiper = this;\n let slideIndex = index;\n if (slideIndex < 0) slideIndex = 0;\n const {params, snapGrid, slidesGrid, previousIndex, activeIndex, rtlTranslate: rtl, wrapperEl, enabled} = swiper;\n\n if ((swiper.animating && params.preventInteractionOnTransition) || (!enabled && !internal && !initial)) {\n return false;\n }\n\n const skip = Math.min(swiper.params.slidesPerGroupSkip, slideIndex);\n let snapIndex = skip + Math.floor((slideIndex - skip) / swiper.params.slidesPerGroup);\n if (snapIndex >= snapGrid.length) snapIndex = snapGrid.length - 1;\n\n if ((activeIndex || params.initialSlide || 0) === (previousIndex || 0) && runCallbacks) {\n swiper.emit('beforeSlideChangeStart');\n }\n\n const translate = -snapGrid[snapIndex]; // Update progress\n\n swiper.updateProgress(translate); // Normalize slideIndex\n\n if (params.normalizeSlideIndex) {\n for (let i = 0; i < slidesGrid.length; i += 1) {\n const normalizedTranslate = -Math.floor(translate * 100);\n const normalizedGrid = Math.floor(slidesGrid[i] * 100);\n const normalizedGridNext = Math.floor(slidesGrid[i + 1] * 100);\n\n if (typeof slidesGrid[i + 1] !== 'undefined') {\n if (\n normalizedTranslate >= normalizedGrid &&\n normalizedTranslate < normalizedGridNext - (normalizedGridNext - normalizedGrid) / 2\n ) {\n slideIndex = i;\n } else if (normalizedTranslate >= normalizedGrid && normalizedTranslate < normalizedGridNext) {\n slideIndex = i + 1;\n }\n } else if (normalizedTranslate >= normalizedGrid) {\n slideIndex = i;\n }\n }\n } // Directions locks\n\n if (swiper.initialized && slideIndex !== activeIndex) {\n if (!swiper.allowSlideNext && translate < swiper.translate && translate < swiper.minTranslate()) {\n return false;\n }\n\n if (!swiper.allowSlidePrev && translate > swiper.translate && translate > swiper.maxTranslate()) {\n if ((activeIndex || 0) !== slideIndex) return false;\n }\n }\n\n let direction;\n if (slideIndex > activeIndex) direction = 'next';\n else if (slideIndex < activeIndex) direction = 'prev';\n else direction = 'reset'; // Update Index\n\n if ((rtl && -translate === swiper.translate) || (!rtl && translate === swiper.translate)) {\n swiper.updateActiveIndex(slideIndex); // Update Height\n\n if (params.autoHeight) {\n swiper.updateAutoHeight();\n }\n\n swiper.updateSlidesClasses();\n\n if (params.effect !== 'slide') {\n swiper.setTranslate(translate);\n }\n\n if (direction !== 'reset') {\n swiper.transitionStart(runCallbacks, direction);\n swiper.transitionEnd(runCallbacks, direction);\n }\n\n return false;\n }\n\n if (params.cssMode) {\n const isH = swiper.isHorizontal();\n const t = rtl ? translate : -translate;\n\n if (speed === 0) {\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n\n if (isVirtual) {\n swiper.wrapperEl.style.scrollSnapType = 'none';\n swiper._immediateVirtual = true;\n }\n\n wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = t;\n\n if (isVirtual) {\n requestAnimationFrame(() => {\n swiper.wrapperEl.style.scrollSnapType = '';\n swiper._swiperImmediateVirtual = false;\n });\n }\n } else {\n if (!swiper.support.smoothScroll) {\n animateCSSModeScroll({\n swiper,\n targetPosition: t,\n side: isH ? 'left' : 'top',\n });\n return true;\n }\n\n wrapperEl.scrollTo({\n [isH ? 'left' : 'top']: t,\n behavior: 'smooth',\n });\n }\n\n return true;\n }\n\n swiper.setTransition(speed);\n swiper.setTranslate(translate);\n swiper.updateActiveIndex(slideIndex);\n swiper.updateSlidesClasses();\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.transitionStart(runCallbacks, direction);\n\n if (speed === 0) {\n swiper.transitionEnd(runCallbacks, direction);\n } else if (!swiper.animating) {\n swiper.animating = true;\n\n if (!swiper.onSlideToWrapperTransitionEnd) {\n swiper.onSlideToWrapperTransitionEnd = function transitionEnd(e) {\n if (!swiper || swiper.destroyed) return;\n if (e.target !== this) return;\n swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd);\n swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd);\n swiper.onSlideToWrapperTransitionEnd = null;\n delete swiper.onSlideToWrapperTransitionEnd;\n swiper.transitionEnd(runCallbacks, direction);\n };\n }\n\n swiper.$wrapperEl[0].addEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd);\n swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd);\n }\n\n return true;\n }\n\n function slideToLoop(index = 0, speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n let newIndex = index;\n\n if (swiper.params.loop) {\n newIndex += swiper.loopedSlides;\n }\n\n return swiper.slideTo(newIndex, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slideNext(speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n const {animating, enabled, params} = swiper;\n if (!enabled) return swiper;\n let perGroup = params.slidesPerGroup;\n\n if (params.slidesPerView === 'auto' && params.slidesPerGroup === 1 && params.slidesPerGroupAuto) {\n perGroup = Math.max(swiper.slidesPerViewDynamic('current', true), 1);\n }\n\n const increment = swiper.activeIndex < params.slidesPerGroupSkip ? 1 : perGroup;\n\n if (params.loop) {\n if (animating && params.loopPreventsSlide) return false;\n swiper.loopFix(); // eslint-disable-next-line\n\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n }\n\n if (params.rewind && swiper.isEnd) {\n return swiper.slideTo(0, speed, runCallbacks, internal);\n }\n\n return swiper.slideTo(swiper.activeIndex + increment, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slidePrev(speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n const {params, animating, snapGrid, slidesGrid, rtlTranslate, enabled} = swiper;\n if (!enabled) return swiper;\n\n if (params.loop) {\n if (animating && params.loopPreventsSlide) return false;\n swiper.loopFix(); // eslint-disable-next-line\n\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n }\n\n const translate = rtlTranslate ? swiper.translate : -swiper.translate;\n\n function normalize(val) {\n if (val < 0) return -Math.floor(Math.abs(val));\n return Math.floor(val);\n }\n\n const normalizedTranslate = normalize(translate);\n const normalizedSnapGrid = snapGrid.map((val) => normalize(val));\n let prevSnap = snapGrid[normalizedSnapGrid.indexOf(normalizedTranslate) - 1];\n\n if (typeof prevSnap === 'undefined' && params.cssMode) {\n let prevSnapIndex;\n snapGrid.forEach((snap, snapIndex) => {\n if (normalizedTranslate >= snap) {\n // prevSnap = snap;\n prevSnapIndex = snapIndex;\n }\n });\n\n if (typeof prevSnapIndex !== 'undefined') {\n prevSnap = snapGrid[prevSnapIndex > 0 ? prevSnapIndex - 1 : prevSnapIndex];\n }\n }\n\n let prevIndex = 0;\n\n if (typeof prevSnap !== 'undefined') {\n prevIndex = slidesGrid.indexOf(prevSnap);\n if (prevIndex < 0) prevIndex = swiper.activeIndex - 1;\n\n if (params.slidesPerView === 'auto' && params.slidesPerGroup === 1 && params.slidesPerGroupAuto) {\n prevIndex = prevIndex - swiper.slidesPerViewDynamic('previous', true) + 1;\n prevIndex = Math.max(prevIndex, 0);\n }\n }\n\n if (params.rewind && swiper.isBeginning) {\n return swiper.slideTo(swiper.slides.length - 1, speed, runCallbacks, internal);\n }\n\n return swiper.slideTo(prevIndex, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slideReset(speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n return swiper.slideTo(swiper.activeIndex, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slideToClosest(speed = this.params.speed, runCallbacks = true, internal, threshold = 0.5) {\n const swiper = this;\n let index = swiper.activeIndex;\n const skip = Math.min(swiper.params.slidesPerGroupSkip, index);\n const snapIndex = skip + Math.floor((index - skip) / swiper.params.slidesPerGroup);\n const translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate;\n\n if (translate >= swiper.snapGrid[snapIndex]) {\n // The current translate is on or after the current snap index, so the choice\n // is between the current index and the one after it.\n const currentSnap = swiper.snapGrid[snapIndex];\n const nextSnap = swiper.snapGrid[snapIndex + 1];\n\n if (translate - currentSnap > (nextSnap - currentSnap) * threshold) {\n index += swiper.params.slidesPerGroup;\n }\n } else {\n // The current translate is before the current snap index, so the choice\n // is between the current index and the one before it.\n const prevSnap = swiper.snapGrid[snapIndex - 1];\n const currentSnap = swiper.snapGrid[snapIndex];\n\n if (translate - prevSnap <= (currentSnap - prevSnap) * threshold) {\n index -= swiper.params.slidesPerGroup;\n }\n }\n\n index = Math.max(index, 0);\n index = Math.min(index, swiper.slidesGrid.length - 1);\n return swiper.slideTo(index, speed, runCallbacks, internal);\n }\n\n function slideToClickedSlide() {\n const swiper = this;\n const {params, $wrapperEl} = swiper;\n const slidesPerView = params.slidesPerView === 'auto' ? swiper.slidesPerViewDynamic() : params.slidesPerView;\n let slideToIndex = swiper.clickedIndex;\n let realIndex;\n\n if (params.loop) {\n if (swiper.animating) return;\n realIndex = parseInt($(swiper.clickedSlide).attr('data-swiper-slide-index'), 10);\n\n if (params.centeredSlides) {\n if (\n slideToIndex < swiper.loopedSlides - slidesPerView / 2 ||\n slideToIndex > swiper.slides.length - swiper.loopedSlides + slidesPerView / 2\n ) {\n swiper.loopFix();\n slideToIndex = $wrapperEl\n .children(\n `.${params.slideClass}[data-swiper-slide-index=\"${realIndex}\"]:not(.${params.slideDuplicateClass})`,\n )\n .eq(0)\n .index();\n nextTick(() => {\n swiper.slideTo(slideToIndex);\n });\n } else {\n swiper.slideTo(slideToIndex);\n }\n } else if (slideToIndex > swiper.slides.length - slidesPerView) {\n swiper.loopFix();\n slideToIndex = $wrapperEl\n .children(\n `.${params.slideClass}[data-swiper-slide-index=\"${realIndex}\"]:not(.${params.slideDuplicateClass})`,\n )\n .eq(0)\n .index();\n nextTick(() => {\n swiper.slideTo(slideToIndex);\n });\n } else {\n swiper.slideTo(slideToIndex);\n }\n } else {\n swiper.slideTo(slideToIndex);\n }\n }\n\n var slide = {\n slideTo,\n slideToLoop,\n slideNext,\n slidePrev,\n slideReset,\n slideToClosest,\n slideToClickedSlide,\n };\n\n function loopCreate() {\n const swiper = this;\n const document = getDocument();\n const {params, $wrapperEl} = swiper; // Remove duplicated slides\n\n const $selector = $wrapperEl.children().length > 0 ? $($wrapperEl.children()[0].parentNode) : $wrapperEl;\n $selector.children(`.${params.slideClass}.${params.slideDuplicateClass}`).remove();\n let slides = $selector.children(`.${params.slideClass}`);\n\n if (params.loopFillGroupWithBlank) {\n const blankSlidesNum = params.slidesPerGroup - (slides.length % params.slidesPerGroup);\n\n if (blankSlidesNum !== params.slidesPerGroup) {\n for (let i = 0; i < blankSlidesNum; i += 1) {\n const blankNode = $(document.createElement('div')).addClass(\n `${params.slideClass} ${params.slideBlankClass}`,\n );\n $selector.append(blankNode);\n }\n\n slides = $selector.children(`.${params.slideClass}`);\n }\n }\n\n if (params.slidesPerView === 'auto' && !params.loopedSlides) params.loopedSlides = slides.length;\n swiper.loopedSlides = Math.ceil(parseFloat(params.loopedSlides || params.slidesPerView, 10));\n swiper.loopedSlides += params.loopAdditionalSlides;\n\n if (swiper.loopedSlides > slides.length) {\n swiper.loopedSlides = slides.length;\n }\n\n const prependSlides = [];\n const appendSlides = [];\n slides.each((el, index) => {\n const slide = $(el);\n\n if (index < swiper.loopedSlides) {\n appendSlides.push(el);\n }\n\n if (index < slides.length && index >= slides.length - swiper.loopedSlides) {\n prependSlides.push(el);\n }\n\n slide.attr('data-swiper-slide-index', index);\n });\n\n for (let i = 0; i < appendSlides.length; i += 1) {\n $selector.append($(appendSlides[i].cloneNode(true)).addClass(params.slideDuplicateClass));\n }\n\n for (let i = prependSlides.length - 1; i >= 0; i -= 1) {\n $selector.prepend($(prependSlides[i].cloneNode(true)).addClass(params.slideDuplicateClass));\n }\n }\n\n function loopFix() {\n const swiper = this;\n swiper.emit('beforeLoopFix');\n const {activeIndex, slides, loopedSlides, allowSlidePrev, allowSlideNext, snapGrid, rtlTranslate: rtl} = swiper;\n let newIndex;\n swiper.allowSlidePrev = true;\n swiper.allowSlideNext = true;\n const snapTranslate = -snapGrid[activeIndex];\n const diff = snapTranslate - swiper.getTranslate(); // Fix For Negative Oversliding\n\n if (activeIndex < loopedSlides) {\n newIndex = slides.length - loopedSlides * 3 + activeIndex;\n newIndex += loopedSlides;\n const slideChanged = swiper.slideTo(newIndex, 0, false, true);\n\n if (slideChanged && diff !== 0) {\n swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff);\n }\n } else if (activeIndex >= slides.length - loopedSlides) {\n // Fix For Positive Oversliding\n newIndex = -slides.length + activeIndex + loopedSlides;\n newIndex += loopedSlides;\n const slideChanged = swiper.slideTo(newIndex, 0, false, true);\n\n if (slideChanged && diff !== 0) {\n swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff);\n }\n }\n\n swiper.allowSlidePrev = allowSlidePrev;\n swiper.allowSlideNext = allowSlideNext;\n swiper.emit('loopFix');\n }\n\n function loopDestroy() {\n const swiper = this;\n const {$wrapperEl, params, slides} = swiper;\n $wrapperEl\n .children(`.${params.slideClass}.${params.slideDuplicateClass},.${params.slideClass}.${params.slideBlankClass}`)\n .remove();\n slides.removeAttr('data-swiper-slide-index');\n }\n\n var loop = {\n loopCreate,\n loopFix,\n loopDestroy,\n };\n\n function setGrabCursor(moving) {\n const swiper = this;\n if (\n swiper.support.touch ||\n !swiper.params.simulateTouch ||\n (swiper.params.watchOverflow && swiper.isLocked) ||\n swiper.params.cssMode\n )\n return;\n const el = swiper.params.touchEventsTarget === 'container' ? swiper.el : swiper.wrapperEl;\n el.style.cursor = 'move';\n el.style.cursor = moving ? '-webkit-grabbing' : '-webkit-grab';\n el.style.cursor = moving ? '-moz-grabbin' : '-moz-grab';\n el.style.cursor = moving ? 'grabbing' : 'grab';\n }\n\n function unsetGrabCursor() {\n const swiper = this;\n\n if (swiper.support.touch || (swiper.params.watchOverflow && swiper.isLocked) || swiper.params.cssMode) {\n return;\n }\n\n swiper[swiper.params.touchEventsTarget === 'container' ? 'el' : 'wrapperEl'].style.cursor = '';\n }\n\n var grabCursor = {\n setGrabCursor,\n unsetGrabCursor,\n };\n\n function closestElement(selector, base = this) {\n function __closestFrom(el) {\n if (!el || el === getDocument() || el === getWindow()) return null;\n if (el.assignedSlot) el = el.assignedSlot;\n const found = el.closest(selector);\n return found || __closestFrom(el.getRootNode().host);\n }\n\n return __closestFrom(base);\n }\n\n function onTouchStart(event) {\n const swiper = this;\n const document = getDocument();\n const window = getWindow();\n const data = swiper.touchEventsData;\n const {params, touches, enabled} = swiper;\n if (!enabled) return;\n\n if (swiper.animating && params.preventInteractionOnTransition) {\n return;\n }\n\n if (!swiper.animating && params.cssMode && params.loop) {\n swiper.loopFix();\n }\n\n let e = event;\n if (e.originalEvent) e = e.originalEvent;\n let $targetEl = $(e.target);\n\n if (params.touchEventsTarget === 'wrapper') {\n if (!$targetEl.closest(swiper.wrapperEl).length) return;\n }\n\n data.isTouchEvent = e.type === 'touchstart';\n if (!data.isTouchEvent && 'which' in e && e.which === 3) return;\n if (!data.isTouchEvent && 'button' in e && e.button > 0) return;\n if (data.isTouched && data.isMoved) return; // change target el for shadow root component\n\n const swipingClassHasValue = !!params.noSwipingClass && params.noSwipingClass !== '';\n\n if (swipingClassHasValue && e.target && e.target.shadowRoot && event.path && event.path[0]) {\n $targetEl = $(event.path[0]);\n }\n\n const noSwipingSelector = params.noSwipingSelector ? params.noSwipingSelector : `.${params.noSwipingClass}`;\n const isTargetShadow = !!(e.target && e.target.shadowRoot); // use closestElement for shadow root element to get the actual closest for nested shadow root element\n\n if (\n params.noSwiping &&\n (isTargetShadow ? closestElement(noSwipingSelector, e.target) : $targetEl.closest(noSwipingSelector)[0])\n ) {\n swiper.allowClick = true;\n return;\n }\n\n if (params.swipeHandler) {\n if (!$targetEl.closest(params.swipeHandler)[0]) return;\n }\n\n touches.currentX = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX;\n touches.currentY = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY;\n const startX = touches.currentX;\n const startY = touches.currentY; // Do NOT start if iOS edge swipe is detected. Otherwise iOS app cannot swipe-to-go-back anymore\n\n const edgeSwipeDetection = params.edgeSwipeDetection || params.iOSEdgeSwipeDetection;\n const edgeSwipeThreshold = params.edgeSwipeThreshold || params.iOSEdgeSwipeThreshold;\n\n if (edgeSwipeDetection && (startX <= edgeSwipeThreshold || startX >= window.innerWidth - edgeSwipeThreshold)) {\n if (edgeSwipeDetection === 'prevent') {\n event.preventDefault();\n } else {\n return;\n }\n }\n\n Object.assign(data, {\n isTouched: true,\n isMoved: false,\n allowTouchCallbacks: true,\n isScrolling: undefined,\n startMoving: undefined,\n });\n touches.startX = startX;\n touches.startY = startY;\n data.touchStartTime = now();\n swiper.allowClick = true;\n swiper.updateSize();\n swiper.swipeDirection = undefined;\n if (params.threshold > 0) data.allowThresholdMove = false;\n\n if (e.type !== 'touchstart') {\n let preventDefault = true;\n if ($targetEl.is(data.focusableElements)) preventDefault = false;\n\n if (\n document.activeElement &&\n $(document.activeElement).is(data.focusableElements) &&\n document.activeElement !== $targetEl[0]\n ) {\n document.activeElement.blur();\n }\n\n const shouldPreventDefault = preventDefault && swiper.allowTouchMove && params.touchStartPreventDefault;\n\n if ((params.touchStartForcePreventDefault || shouldPreventDefault) && !$targetEl[0].isContentEditable) {\n e.preventDefault();\n }\n }\n\n swiper.emit('touchStart', e);\n }\n\n function onTouchMove(event) {\n const document = getDocument();\n const swiper = this;\n const data = swiper.touchEventsData;\n const {params, touches, rtlTranslate: rtl, enabled} = swiper;\n if (!enabled) return;\n let e = event;\n if (e.originalEvent) e = e.originalEvent;\n\n if (!data.isTouched) {\n if (data.startMoving && data.isScrolling) {\n swiper.emit('touchMoveOpposite', e);\n }\n\n return;\n }\n\n if (data.isTouchEvent && e.type !== 'touchmove') return;\n const targetTouch = e.type === 'touchmove' && e.targetTouches && (e.targetTouches[0] || e.changedTouches[0]);\n const pageX = e.type === 'touchmove' ? targetTouch.pageX : e.pageX;\n const pageY = e.type === 'touchmove' ? targetTouch.pageY : e.pageY;\n\n if (e.preventedByNestedSwiper) {\n touches.startX = pageX;\n touches.startY = pageY;\n return;\n }\n\n if (!swiper.allowTouchMove) {\n // isMoved = true;\n swiper.allowClick = false;\n\n if (data.isTouched) {\n Object.assign(touches, {\n startX: pageX,\n startY: pageY,\n currentX: pageX,\n currentY: pageY,\n });\n data.touchStartTime = now();\n }\n\n return;\n }\n\n if (data.isTouchEvent && params.touchReleaseOnEdges && !params.loop) {\n if (swiper.isVertical()) {\n // Vertical\n if (\n (pageY < touches.startY && swiper.translate <= swiper.maxTranslate()) ||\n (pageY > touches.startY && swiper.translate >= swiper.minTranslate())\n ) {\n data.isTouched = false;\n data.isMoved = false;\n return;\n }\n } else if (\n (pageX < touches.startX && swiper.translate <= swiper.maxTranslate()) ||\n (pageX > touches.startX && swiper.translate >= swiper.minTranslate())\n ) {\n return;\n }\n }\n\n if (data.isTouchEvent && document.activeElement) {\n if (e.target === document.activeElement && $(e.target).is(data.focusableElements)) {\n data.isMoved = true;\n swiper.allowClick = false;\n return;\n }\n }\n\n if (data.allowTouchCallbacks) {\n swiper.emit('touchMove', e);\n }\n\n if (e.targetTouches && e.targetTouches.length > 1) return;\n touches.currentX = pageX;\n touches.currentY = pageY;\n const diffX = touches.currentX - touches.startX;\n const diffY = touches.currentY - touches.startY;\n if (swiper.params.threshold && Math.sqrt(diffX ** 2 + diffY ** 2) < swiper.params.threshold) return;\n\n if (typeof data.isScrolling === 'undefined') {\n let touchAngle;\n\n if (\n (swiper.isHorizontal() && touches.currentY === touches.startY) ||\n (swiper.isVertical() && touches.currentX === touches.startX)\n ) {\n data.isScrolling = false;\n } else {\n // eslint-disable-next-line\n if (diffX * diffX + diffY * diffY >= 25) {\n touchAngle = (Math.atan2(Math.abs(diffY), Math.abs(diffX)) * 180) / Math.PI;\n data.isScrolling = swiper.isHorizontal()\n ? touchAngle > params.touchAngle\n : 90 - touchAngle > params.touchAngle;\n }\n }\n }\n\n if (data.isScrolling) {\n swiper.emit('touchMoveOpposite', e);\n }\n\n if (typeof data.startMoving === 'undefined') {\n if (touches.currentX !== touches.startX || touches.currentY !== touches.startY) {\n data.startMoving = true;\n }\n }\n\n if (data.isScrolling) {\n data.isTouched = false;\n return;\n }\n\n if (!data.startMoving) {\n return;\n }\n\n swiper.allowClick = false;\n\n if (!params.cssMode && e.cancelable) {\n e.preventDefault();\n }\n\n if (params.touchMoveStopPropagation && !params.nested) {\n e.stopPropagation();\n }\n\n if (!data.isMoved) {\n if (params.loop && !params.cssMode) {\n swiper.loopFix();\n }\n\n data.startTranslate = swiper.getTranslate();\n swiper.setTransition(0);\n\n if (swiper.animating) {\n swiper.$wrapperEl.trigger('webkitTransitionEnd transitionend');\n }\n\n data.allowMomentumBounce = false; // Grab Cursor\n\n if (params.grabCursor && (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)) {\n swiper.setGrabCursor(true);\n }\n\n swiper.emit('sliderFirstMove', e);\n }\n\n swiper.emit('sliderMove', e);\n data.isMoved = true;\n let diff = swiper.isHorizontal() ? diffX : diffY;\n touches.diff = diff;\n diff *= params.touchRatio;\n if (rtl) diff = -diff;\n swiper.swipeDirection = diff > 0 ? 'prev' : 'next';\n data.currentTranslate = diff + data.startTranslate;\n let disableParentSwiper = true;\n let resistanceRatio = params.resistanceRatio;\n\n if (params.touchReleaseOnEdges) {\n resistanceRatio = 0;\n }\n\n if (diff > 0 && data.currentTranslate > swiper.minTranslate()) {\n disableParentSwiper = false;\n if (params.resistance)\n data.currentTranslate =\n swiper.minTranslate() - 1 + (-swiper.minTranslate() + data.startTranslate + diff) ** resistanceRatio;\n } else if (diff < 0 && data.currentTranslate < swiper.maxTranslate()) {\n disableParentSwiper = false;\n if (params.resistance)\n data.currentTranslate =\n swiper.maxTranslate() + 1 - (swiper.maxTranslate() - data.startTranslate - diff) ** resistanceRatio;\n }\n\n if (disableParentSwiper) {\n e.preventedByNestedSwiper = true;\n } // Directions locks\n\n if (!swiper.allowSlideNext && swiper.swipeDirection === 'next' && data.currentTranslate < data.startTranslate) {\n data.currentTranslate = data.startTranslate;\n }\n\n if (!swiper.allowSlidePrev && swiper.swipeDirection === 'prev' && data.currentTranslate > data.startTranslate) {\n data.currentTranslate = data.startTranslate;\n }\n\n if (!swiper.allowSlidePrev && !swiper.allowSlideNext) {\n data.currentTranslate = data.startTranslate;\n } // Threshold\n\n if (params.threshold > 0) {\n if (Math.abs(diff) > params.threshold || data.allowThresholdMove) {\n if (!data.allowThresholdMove) {\n data.allowThresholdMove = true;\n touches.startX = touches.currentX;\n touches.startY = touches.currentY;\n data.currentTranslate = data.startTranslate;\n touches.diff = swiper.isHorizontal()\n ? touches.currentX - touches.startX\n : touches.currentY - touches.startY;\n return;\n }\n } else {\n data.currentTranslate = data.startTranslate;\n return;\n }\n }\n\n if (!params.followFinger || params.cssMode) return; // Update active index in free mode\n\n if ((params.freeMode && params.freeMode.enabled && swiper.freeMode) || params.watchSlidesProgress) {\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n\n if (swiper.params.freeMode && params.freeMode.enabled && swiper.freeMode) {\n swiper.freeMode.onTouchMove();\n } // Update progress\n\n swiper.updateProgress(data.currentTranslate); // Update translate\n\n swiper.setTranslate(data.currentTranslate);\n }\n\n function onTouchEnd(event) {\n const swiper = this;\n const data = swiper.touchEventsData;\n const {params, touches, rtlTranslate: rtl, slidesGrid, enabled} = swiper;\n if (!enabled) return;\n let e = event;\n if (e.originalEvent) e = e.originalEvent;\n\n if (data.allowTouchCallbacks) {\n swiper.emit('touchEnd', e);\n }\n\n data.allowTouchCallbacks = false;\n\n if (!data.isTouched) {\n if (data.isMoved && params.grabCursor) {\n swiper.setGrabCursor(false);\n }\n\n data.isMoved = false;\n data.startMoving = false;\n return;\n } // Return Grab Cursor\n\n if (\n params.grabCursor &&\n data.isMoved &&\n data.isTouched &&\n (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)\n ) {\n swiper.setGrabCursor(false);\n } // Time diff\n\n const touchEndTime = now();\n const timeDiff = touchEndTime - data.touchStartTime; // Tap, doubleTap, Click\n\n if (swiper.allowClick) {\n const pathTree = e.path || (e.composedPath && e.composedPath());\n swiper.updateClickedSlide((pathTree && pathTree[0]) || e.target);\n swiper.emit('tap click', e);\n\n if (timeDiff < 300 && touchEndTime - data.lastClickTime < 300) {\n swiper.emit('doubleTap doubleClick', e);\n }\n }\n\n data.lastClickTime = now();\n nextTick(() => {\n if (!swiper.destroyed) swiper.allowClick = true;\n });\n\n if (\n !data.isTouched ||\n !data.isMoved ||\n !swiper.swipeDirection ||\n touches.diff === 0 ||\n data.currentTranslate === data.startTranslate\n ) {\n data.isTouched = false;\n data.isMoved = false;\n data.startMoving = false;\n return;\n }\n\n data.isTouched = false;\n data.isMoved = false;\n data.startMoving = false;\n let currentPos;\n\n if (params.followFinger) {\n currentPos = rtl ? swiper.translate : -swiper.translate;\n } else {\n currentPos = -data.currentTranslate;\n }\n\n if (params.cssMode) {\n return;\n }\n\n if (swiper.params.freeMode && params.freeMode.enabled) {\n swiper.freeMode.onTouchEnd({\n currentPos,\n });\n return;\n } // Find current slide\n\n let stopIndex = 0;\n let groupSize = swiper.slidesSizesGrid[0];\n\n for (let i = 0; i < slidesGrid.length; i += i < params.slidesPerGroupSkip ? 1 : params.slidesPerGroup) {\n const increment = i < params.slidesPerGroupSkip - 1 ? 1 : params.slidesPerGroup;\n\n if (typeof slidesGrid[i + increment] !== 'undefined') {\n if (currentPos >= slidesGrid[i] && currentPos < slidesGrid[i + increment]) {\n stopIndex = i;\n groupSize = slidesGrid[i + increment] - slidesGrid[i];\n }\n } else if (currentPos >= slidesGrid[i]) {\n stopIndex = i;\n groupSize = slidesGrid[slidesGrid.length - 1] - slidesGrid[slidesGrid.length - 2];\n }\n } // Find current slide size\n\n const ratio = (currentPos - slidesGrid[stopIndex]) / groupSize;\n const increment = stopIndex < params.slidesPerGroupSkip - 1 ? 1 : params.slidesPerGroup;\n\n if (timeDiff > params.longSwipesMs) {\n // Long touches\n if (!params.longSwipes) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n\n if (swiper.swipeDirection === 'next') {\n if (ratio >= params.longSwipesRatio) swiper.slideTo(stopIndex + increment);\n else swiper.slideTo(stopIndex);\n }\n\n if (swiper.swipeDirection === 'prev') {\n if (ratio > 1 - params.longSwipesRatio) swiper.slideTo(stopIndex + increment);\n else swiper.slideTo(stopIndex);\n }\n } else {\n // Short swipes\n if (!params.shortSwipes) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n\n const isNavButtonTarget =\n swiper.navigation && (e.target === swiper.navigation.nextEl || e.target === swiper.navigation.prevEl);\n\n if (!isNavButtonTarget) {\n if (swiper.swipeDirection === 'next') {\n swiper.slideTo(stopIndex + increment);\n }\n\n if (swiper.swipeDirection === 'prev') {\n swiper.slideTo(stopIndex);\n }\n } else if (e.target === swiper.navigation.nextEl) {\n swiper.slideTo(stopIndex + increment);\n } else {\n swiper.slideTo(stopIndex);\n }\n }\n }\n\n function onResize() {\n const swiper = this;\n const {params, el} = swiper;\n if (el && el.offsetWidth === 0) return; // Breakpoints\n\n if (params.breakpoints) {\n swiper.setBreakpoint();\n } // Save locks\n\n const {allowSlideNext, allowSlidePrev, snapGrid} = swiper; // Disable locks on resize\n\n swiper.allowSlideNext = true;\n swiper.allowSlidePrev = true;\n swiper.updateSize();\n swiper.updateSlides();\n swiper.updateSlidesClasses();\n\n if (\n (params.slidesPerView === 'auto' || params.slidesPerView > 1) &&\n swiper.isEnd &&\n !swiper.isBeginning &&\n !swiper.params.centeredSlides\n ) {\n swiper.slideTo(swiper.slides.length - 1, 0, false, true);\n } else {\n swiper.slideTo(swiper.activeIndex, 0, false, true);\n }\n\n if (swiper.autoplay && swiper.autoplay.running && swiper.autoplay.paused) {\n swiper.autoplay.run();\n } // Return locks after resize\n\n swiper.allowSlidePrev = allowSlidePrev;\n swiper.allowSlideNext = allowSlideNext;\n\n if (swiper.params.watchOverflow && snapGrid !== swiper.snapGrid) {\n swiper.checkOverflow();\n }\n }\n\n function onClick(e) {\n const swiper = this;\n if (!swiper.enabled) return;\n\n if (!swiper.allowClick) {\n if (swiper.params.preventClicks) e.preventDefault();\n\n if (swiper.params.preventClicksPropagation && swiper.animating) {\n e.stopPropagation();\n e.stopImmediatePropagation();\n }\n }\n }\n\n function onScroll() {\n const swiper = this;\n const {wrapperEl, rtlTranslate, enabled} = swiper;\n if (!enabled) return;\n swiper.previousTranslate = swiper.translate;\n\n if (swiper.isHorizontal()) {\n swiper.translate = -wrapperEl.scrollLeft;\n } else {\n swiper.translate = -wrapperEl.scrollTop;\n } // eslint-disable-next-line\n\n if (swiper.translate === -0) swiper.translate = 0;\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n let newProgress;\n const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n\n if (translatesDiff === 0) {\n newProgress = 0;\n } else {\n newProgress = (swiper.translate - swiper.minTranslate()) / translatesDiff;\n }\n\n if (newProgress !== swiper.progress) {\n swiper.updateProgress(rtlTranslate ? -swiper.translate : swiper.translate);\n }\n\n swiper.emit('setTranslate', swiper.translate, false);\n }\n\n let dummyEventAttached = false;\n\n function dummyEventListener() {}\n\n const events = (swiper, method) => {\n const document = getDocument();\n const {params, touchEvents, el, wrapperEl, device, support} = swiper;\n const capture = !!params.nested;\n const domMethod = method === 'on' ? 'addEventListener' : 'removeEventListener';\n const swiperMethod = method; // Touch Events\n\n if (!support.touch) {\n el[domMethod](touchEvents.start, swiper.onTouchStart, false);\n document[domMethod](touchEvents.move, swiper.onTouchMove, capture);\n document[domMethod](touchEvents.end, swiper.onTouchEnd, false);\n } else {\n const passiveListener =\n touchEvents.start === 'touchstart' && support.passiveListener && params.passiveListeners\n ? {\n passive: true,\n capture: false,\n }\n : false;\n el[domMethod](touchEvents.start, swiper.onTouchStart, passiveListener);\n el[domMethod](\n touchEvents.move,\n swiper.onTouchMove,\n support.passiveListener\n ? {\n passive: false,\n capture,\n }\n : capture,\n );\n el[domMethod](touchEvents.end, swiper.onTouchEnd, passiveListener);\n\n if (touchEvents.cancel) {\n el[domMethod](touchEvents.cancel, swiper.onTouchEnd, passiveListener);\n }\n } // Prevent Links Clicks\n\n if (params.preventClicks || params.preventClicksPropagation) {\n el[domMethod]('click', swiper.onClick, true);\n }\n\n if (params.cssMode) {\n wrapperEl[domMethod]('scroll', swiper.onScroll);\n } // Resize handler\n\n if (params.updateOnWindowResize) {\n swiper[swiperMethod](\n device.ios || device.android ? 'resize orientationchange observerUpdate' : 'resize observerUpdate',\n onResize,\n true,\n );\n } else {\n swiper[swiperMethod]('observerUpdate', onResize, true);\n }\n };\n\n function attachEvents() {\n const swiper = this;\n const document = getDocument();\n const {params, support} = swiper;\n swiper.onTouchStart = onTouchStart.bind(swiper);\n swiper.onTouchMove = onTouchMove.bind(swiper);\n swiper.onTouchEnd = onTouchEnd.bind(swiper);\n\n if (params.cssMode) {\n swiper.onScroll = onScroll.bind(swiper);\n }\n\n swiper.onClick = onClick.bind(swiper);\n\n if (support.touch && !dummyEventAttached) {\n document.addEventListener('touchstart', dummyEventListener);\n dummyEventAttached = true;\n }\n\n events(swiper, 'on');\n }\n\n function detachEvents() {\n const swiper = this;\n events(swiper, 'off');\n }\n\n var events$1 = {\n attachEvents,\n detachEvents,\n };\n\n const isGridEnabled = (swiper, params) => {\n return swiper.grid && params.grid && params.grid.rows > 1;\n };\n\n function setBreakpoint() {\n const swiper = this;\n const {activeIndex, initialized, loopedSlides = 0, params, $el} = swiper;\n const breakpoints = params.breakpoints;\n if (!breakpoints || (breakpoints && Object.keys(breakpoints).length === 0)) return; // Get breakpoint for window width and update parameters\n\n const breakpoint = swiper.getBreakpoint(breakpoints, swiper.params.breakpointsBase, swiper.el);\n if (!breakpoint || swiper.currentBreakpoint === breakpoint) return;\n const breakpointOnlyParams = breakpoint in breakpoints ? breakpoints[breakpoint] : undefined;\n const breakpointParams = breakpointOnlyParams || swiper.originalParams;\n const wasMultiRow = isGridEnabled(swiper, params);\n const isMultiRow = isGridEnabled(swiper, breakpointParams);\n const wasEnabled = params.enabled;\n\n if (wasMultiRow && !isMultiRow) {\n $el.removeClass(`${params.containerModifierClass}grid ${params.containerModifierClass}grid-column`);\n swiper.emitContainerClasses();\n } else if (!wasMultiRow && isMultiRow) {\n $el.addClass(`${params.containerModifierClass}grid`);\n\n if (\n (breakpointParams.grid.fill && breakpointParams.grid.fill === 'column') ||\n (!breakpointParams.grid.fill && params.grid.fill === 'column')\n ) {\n $el.addClass(`${params.containerModifierClass}grid-column`);\n }\n\n swiper.emitContainerClasses();\n }\n\n const directionChanged = breakpointParams.direction && breakpointParams.direction !== params.direction;\n const needsReLoop = params.loop && (breakpointParams.slidesPerView !== params.slidesPerView || directionChanged);\n\n if (directionChanged && initialized) {\n swiper.changeDirection();\n }\n\n extend(swiper.params, breakpointParams);\n const isEnabled = swiper.params.enabled;\n Object.assign(swiper, {\n allowTouchMove: swiper.params.allowTouchMove,\n allowSlideNext: swiper.params.allowSlideNext,\n allowSlidePrev: swiper.params.allowSlidePrev,\n });\n\n if (wasEnabled && !isEnabled) {\n swiper.disable();\n } else if (!wasEnabled && isEnabled) {\n swiper.enable();\n }\n\n swiper.currentBreakpoint = breakpoint;\n swiper.emit('_beforeBreakpoint', breakpointParams);\n\n if (needsReLoop && initialized) {\n swiper.loopDestroy();\n swiper.loopCreate();\n swiper.updateSlides();\n swiper.slideTo(activeIndex - loopedSlides + swiper.loopedSlides, 0, false);\n }\n\n swiper.emit('breakpoint', breakpointParams);\n }\n\n function getBreakpoint(breakpoints, base = 'window', containerEl) {\n if (!breakpoints || (base === 'container' && !containerEl)) return undefined;\n let breakpoint = false;\n const window = getWindow();\n const currentHeight = base === 'window' ? window.innerHeight : containerEl.clientHeight;\n const points = Object.keys(breakpoints).map((point) => {\n if (typeof point === 'string' && point.indexOf('@') === 0) {\n const minRatio = parseFloat(point.substr(1));\n const value = currentHeight * minRatio;\n return {\n value,\n point,\n };\n }\n\n return {\n value: point,\n point,\n };\n });\n points.sort((a, b) => parseInt(a.value, 10) - parseInt(b.value, 10));\n\n for (let i = 0; i < points.length; i += 1) {\n const {point, value} = points[i];\n\n if (base === 'window') {\n if (window.matchMedia(`(min-width: ${value}px)`).matches) {\n breakpoint = point;\n }\n } else if (value <= containerEl.clientWidth) {\n breakpoint = point;\n }\n }\n\n return breakpoint || 'max';\n }\n\n var breakpoints = {\n setBreakpoint,\n getBreakpoint,\n };\n\n function prepareClasses(entries, prefix) {\n const resultClasses = [];\n entries.forEach((item) => {\n if (typeof item === 'object') {\n Object.keys(item).forEach((classNames) => {\n if (item[classNames]) {\n resultClasses.push(prefix + classNames);\n }\n });\n } else if (typeof item === 'string') {\n resultClasses.push(prefix + item);\n }\n });\n return resultClasses;\n }\n\n function addClasses() {\n const swiper = this;\n const {\n classNames,\n params,\n rtl,\n $el,\n device,\n support\n } = swiper; // prettier-ignore\n\n const suffixes = prepareClasses(\n [\n 'initialized',\n params.direction,\n {\n 'pointer-events': !support.touch,\n },\n {\n 'free-mode': swiper.params.freeMode && params.freeMode.enabled,\n },\n {\n autoheight: params.autoHeight,\n },\n {\n rtl: rtl,\n },\n {\n grid: params.grid && params.grid.rows > 1,\n },\n {\n 'grid-column': params.grid && params.grid.rows > 1 && params.grid.fill === 'column',\n },\n {\n android: device.android,\n },\n {\n ios: device.ios,\n },\n {\n 'css-mode': params.cssMode,\n },\n {\n centered: params.cssMode && params.centeredSlides,\n },\n ],\n params.containerModifierClass,\n );\n classNames.push(...suffixes);\n $el.addClass([...classNames].join(' '));\n swiper.emitContainerClasses();\n }\n\n function removeClasses() {\n const swiper = this;\n const {$el, classNames} = swiper;\n $el.removeClass(classNames.join(' '));\n swiper.emitContainerClasses();\n }\n\n var classes = {\n addClasses,\n removeClasses,\n };\n\n function loadImage(imageEl, src, srcset, sizes, checkForComplete, callback) {\n const window = getWindow();\n let image;\n\n function onReady() {\n if (callback) callback();\n }\n\n const isPicture = $(imageEl).parent('picture')[0];\n\n if (!isPicture && (!imageEl.complete || !checkForComplete)) {\n if (src) {\n image = new window.Image();\n image.onload = onReady;\n image.onerror = onReady;\n\n if (sizes) {\n image.sizes = sizes;\n }\n\n if (srcset) {\n image.srcset = srcset;\n }\n\n if (src) {\n image.src = src;\n }\n } else {\n onReady();\n }\n } else {\n // image already loaded...\n onReady();\n }\n }\n\n function preloadImages() {\n const swiper = this;\n swiper.imagesToLoad = swiper.$el.find('img');\n\n function onReady() {\n if (typeof swiper === 'undefined' || swiper === null || !swiper || swiper.destroyed) return;\n if (swiper.imagesLoaded !== undefined) swiper.imagesLoaded += 1;\n\n if (swiper.imagesLoaded === swiper.imagesToLoad.length) {\n if (swiper.params.updateOnImagesReady) swiper.update();\n swiper.emit('imagesReady');\n }\n }\n\n for (let i = 0; i < swiper.imagesToLoad.length; i += 1) {\n const imageEl = swiper.imagesToLoad[i];\n swiper.loadImage(\n imageEl,\n imageEl.currentSrc || imageEl.getAttribute('src'),\n imageEl.srcset || imageEl.getAttribute('srcset'),\n imageEl.sizes || imageEl.getAttribute('sizes'),\n true,\n onReady,\n );\n }\n }\n\n var images = {\n loadImage,\n preloadImages,\n };\n\n function checkOverflow() {\n const swiper = this;\n const {isLocked: wasLocked, params} = swiper;\n const {slidesOffsetBefore} = params;\n\n if (slidesOffsetBefore) {\n const lastSlideIndex = swiper.slides.length - 1;\n const lastSlideRightEdge =\n swiper.slidesGrid[lastSlideIndex] + swiper.slidesSizesGrid[lastSlideIndex] + slidesOffsetBefore * 2;\n swiper.isLocked = swiper.size > lastSlideRightEdge;\n } else {\n swiper.isLocked = swiper.snapGrid.length === 1;\n }\n\n if (params.allowSlideNext === true) {\n swiper.allowSlideNext = !swiper.isLocked;\n }\n\n if (params.allowSlidePrev === true) {\n swiper.allowSlidePrev = !swiper.isLocked;\n }\n\n if (wasLocked && wasLocked !== swiper.isLocked) {\n swiper.isEnd = false;\n }\n\n if (wasLocked !== swiper.isLocked) {\n swiper.emit(swiper.isLocked ? 'lock' : 'unlock');\n }\n }\n\n var checkOverflow$1 = {\n checkOverflow,\n };\n\n var defaults = {\n init: true,\n direction: 'horizontal',\n touchEventsTarget: 'wrapper',\n initialSlide: 0,\n speed: 300,\n cssMode: false,\n updateOnWindowResize: true,\n resizeObserver: true,\n nested: false,\n createElements: false,\n enabled: true,\n focusableElements: 'input, select, option, textarea, button, video, label',\n // Overrides\n width: null,\n height: null,\n //\n preventInteractionOnTransition: false,\n // ssr\n userAgent: null,\n url: null,\n // To support iOS's swipe-to-go-back gesture (when being used in-app).\n edgeSwipeDetection: false,\n edgeSwipeThreshold: 20,\n // Autoheight\n autoHeight: false,\n // Set wrapper width\n setWrapperSize: false,\n // Virtual Translate\n virtualTranslate: false,\n // Effects\n effect: 'slide',\n // 'slide' or 'fade' or 'cube' or 'coverflow' or 'flip'\n // Breakpoints\n breakpoints: undefined,\n breakpointsBase: 'window',\n // Slides grid\n spaceBetween: 0,\n slidesPerView: 1,\n slidesPerGroup: 1,\n slidesPerGroupSkip: 0,\n slidesPerGroupAuto: false,\n centeredSlides: false,\n centeredSlidesBounds: false,\n slidesOffsetBefore: 0,\n // in px\n slidesOffsetAfter: 0,\n // in px\n normalizeSlideIndex: true,\n centerInsufficientSlides: false,\n // Disable swiper and hide navigation when container not overflow\n watchOverflow: true,\n // Round length\n roundLengths: false,\n // Touches\n touchRatio: 1,\n touchAngle: 45,\n simulateTouch: true,\n shortSwipes: true,\n longSwipes: true,\n longSwipesRatio: 0.5,\n longSwipesMs: 300,\n followFinger: true,\n allowTouchMove: true,\n threshold: 0,\n touchMoveStopPropagation: false,\n touchStartPreventDefault: true,\n touchStartForcePreventDefault: false,\n touchReleaseOnEdges: false,\n // Unique Navigation Elements\n uniqueNavElements: true,\n // Resistance\n resistance: true,\n resistanceRatio: 0.85,\n // Progress\n watchSlidesProgress: false,\n // Cursor\n grabCursor: false,\n // Clicks\n preventClicks: true,\n preventClicksPropagation: true,\n slideToClickedSlide: false,\n // Images\n preloadImages: true,\n updateOnImagesReady: true,\n // loop\n loop: false,\n loopAdditionalSlides: 0,\n loopedSlides: null,\n loopFillGroupWithBlank: false,\n loopPreventsSlide: true,\n // rewind\n rewind: false,\n // Swiping/no swiping\n allowSlidePrev: true,\n allowSlideNext: true,\n swipeHandler: null,\n // '.swipe-handler',\n noSwiping: true,\n noSwipingClass: 'swiper-no-swiping',\n noSwipingSelector: null,\n // Passive Listeners\n passiveListeners: true,\n // NS\n containerModifierClass: 'swiper-',\n // NEW\n slideClass: 'swiper-slide',\n slideBlankClass: 'swiper-slide-invisible-blank',\n slideActiveClass: 'swiper-slide-active',\n slideDuplicateActiveClass: 'swiper-slide-duplicate-active',\n slideVisibleClass: 'swiper-slide-visible',\n slideDuplicateClass: 'swiper-slide-duplicate',\n slideNextClass: 'swiper-slide-next',\n slideDuplicateNextClass: 'swiper-slide-duplicate-next',\n slidePrevClass: 'swiper-slide-prev',\n slideDuplicatePrevClass: 'swiper-slide-duplicate-prev',\n wrapperClass: 'swiper-wrapper',\n // Callbacks\n runCallbacksOnInit: true,\n // Internals\n _emitClasses: false,\n };\n\n function moduleExtendParams(params, allModulesParams) {\n return function extendParams(obj = {}) {\n const moduleParamName = Object.keys(obj)[0];\n const moduleParams = obj[moduleParamName];\n\n if (typeof moduleParams !== 'object' || moduleParams === null) {\n extend(allModulesParams, obj);\n return;\n }\n\n if (\n ['navigation', 'pagination', 'scrollbar'].indexOf(moduleParamName) >= 0 &&\n params[moduleParamName] === true\n ) {\n params[moduleParamName] = {\n auto: true,\n };\n }\n\n if (!(moduleParamName in params && 'enabled' in moduleParams)) {\n extend(allModulesParams, obj);\n return;\n }\n\n if (params[moduleParamName] === true) {\n params[moduleParamName] = {\n enabled: true,\n };\n }\n\n if (typeof params[moduleParamName] === 'object' && !('enabled' in params[moduleParamName])) {\n params[moduleParamName].enabled = true;\n }\n\n if (!params[moduleParamName])\n params[moduleParamName] = {\n enabled: false,\n };\n extend(allModulesParams, obj);\n };\n }\n\n /* eslint no-param-reassign: \"off\" */\n const prototypes = {\n eventsEmitter,\n update,\n translate,\n transition,\n slide,\n loop,\n grabCursor,\n events: events$1,\n breakpoints,\n checkOverflow: checkOverflow$1,\n classes,\n images,\n };\n const extendedDefaults = {};\n\n class Swiper {\n constructor(...args) {\n let el;\n let params;\n\n if (\n args.length === 1 &&\n args[0].constructor &&\n Object.prototype.toString.call(args[0]).slice(8, -1) === 'Object'\n ) {\n params = args[0];\n } else {\n [el, params] = args;\n }\n\n if (!params) params = {};\n params = extend({}, params);\n if (el && !params.el) params.el = el;\n\n if (params.el && $(params.el).length > 1) {\n const swipers = [];\n $(params.el).each((containerEl) => {\n const newParams = extend({}, params, {\n el: containerEl,\n });\n swipers.push(new Swiper(newParams));\n });\n return swipers;\n } // Swiper Instance\n\n const swiper = this;\n swiper.__swiper__ = true;\n swiper.support = getSupport();\n swiper.device = getDevice({\n userAgent: params.userAgent,\n });\n swiper.browser = getBrowser();\n swiper.eventsListeners = {};\n swiper.eventsAnyListeners = [];\n swiper.modules = [...swiper.__modules__];\n\n if (params.modules && Array.isArray(params.modules)) {\n swiper.modules.push(...params.modules);\n }\n\n const allModulesParams = {};\n swiper.modules.forEach((mod) => {\n mod({\n swiper,\n extendParams: moduleExtendParams(params, allModulesParams),\n on: swiper.on.bind(swiper),\n once: swiper.once.bind(swiper),\n off: swiper.off.bind(swiper),\n emit: swiper.emit.bind(swiper),\n });\n }); // Extend defaults with modules params\n\n const swiperParams = extend({}, defaults, allModulesParams); // Extend defaults with passed params\n\n swiper.params = extend({}, swiperParams, extendedDefaults, params);\n swiper.originalParams = extend({}, swiper.params);\n swiper.passedParams = extend({}, params); // add event listeners\n\n if (swiper.params && swiper.params.on) {\n Object.keys(swiper.params.on).forEach((eventName) => {\n swiper.on(eventName, swiper.params.on[eventName]);\n });\n }\n\n if (swiper.params && swiper.params.onAny) {\n swiper.onAny(swiper.params.onAny);\n } // Save Dom lib\n\n swiper.$ = $; // Extend Swiper\n\n Object.assign(swiper, {\n enabled: swiper.params.enabled,\n el,\n // Classes\n classNames: [],\n // Slides\n slides: $(),\n slidesGrid: [],\n snapGrid: [],\n slidesSizesGrid: [],\n\n // isDirection\n isHorizontal() {\n return swiper.params.direction === 'horizontal';\n },\n\n isVertical() {\n return swiper.params.direction === 'vertical';\n },\n\n // Indexes\n activeIndex: 0,\n realIndex: 0,\n //\n isBeginning: true,\n isEnd: false,\n // Props\n translate: 0,\n previousTranslate: 0,\n progress: 0,\n velocity: 0,\n animating: false,\n // Locks\n allowSlideNext: swiper.params.allowSlideNext,\n allowSlidePrev: swiper.params.allowSlidePrev,\n // Touch Events\n touchEvents: (function touchEvents() {\n const touch = ['touchstart', 'touchmove', 'touchend', 'touchcancel'];\n const desktop = ['pointerdown', 'pointermove', 'pointerup'];\n swiper.touchEventsTouch = {\n start: touch[0],\n move: touch[1],\n end: touch[2],\n cancel: touch[3],\n };\n swiper.touchEventsDesktop = {\n start: desktop[0],\n move: desktop[1],\n end: desktop[2],\n };\n return swiper.support.touch || !swiper.params.simulateTouch\n ? swiper.touchEventsTouch\n : swiper.touchEventsDesktop;\n })(),\n touchEventsData: {\n isTouched: undefined,\n isMoved: undefined,\n allowTouchCallbacks: undefined,\n touchStartTime: undefined,\n isScrolling: undefined,\n currentTranslate: undefined,\n startTranslate: undefined,\n allowThresholdMove: undefined,\n // Form elements to match\n focusableElements: swiper.params.focusableElements,\n // Last click time\n lastClickTime: now(),\n clickTimeout: undefined,\n // Velocities\n velocities: [],\n allowMomentumBounce: undefined,\n isTouchEvent: undefined,\n startMoving: undefined,\n },\n // Clicks\n allowClick: true,\n // Touches\n allowTouchMove: swiper.params.allowTouchMove,\n touches: {\n startX: 0,\n startY: 0,\n currentX: 0,\n currentY: 0,\n diff: 0,\n },\n // Images\n imagesToLoad: [],\n imagesLoaded: 0,\n });\n swiper.emit('_swiper'); // Init\n\n if (swiper.params.init) {\n swiper.init();\n } // Return app instance\n\n return swiper;\n }\n\n enable() {\n const swiper = this;\n if (swiper.enabled) return;\n swiper.enabled = true;\n\n if (swiper.params.grabCursor) {\n swiper.setGrabCursor();\n }\n\n swiper.emit('enable');\n }\n\n disable() {\n const swiper = this;\n if (!swiper.enabled) return;\n swiper.enabled = false;\n\n if (swiper.params.grabCursor) {\n swiper.unsetGrabCursor();\n }\n\n swiper.emit('disable');\n }\n\n setProgress(progress, speed) {\n const swiper = this;\n progress = Math.min(Math.max(progress, 0), 1);\n const min = swiper.minTranslate();\n const max = swiper.maxTranslate();\n const current = (max - min) * progress + min;\n swiper.translateTo(current, typeof speed === 'undefined' ? 0 : speed);\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n\n emitContainerClasses() {\n const swiper = this;\n if (!swiper.params._emitClasses || !swiper.el) return;\n const cls = swiper.el.className.split(' ').filter((className) => {\n return className.indexOf('swiper') === 0 || className.indexOf(swiper.params.containerModifierClass) === 0;\n });\n swiper.emit('_containerClasses', cls.join(' '));\n }\n\n getSlideClasses(slideEl) {\n const swiper = this;\n return slideEl.className\n .split(' ')\n .filter((className) => {\n return className.indexOf('swiper-slide') === 0 || className.indexOf(swiper.params.slideClass) === 0;\n })\n .join(' ');\n }\n\n emitSlidesClasses() {\n const swiper = this;\n if (!swiper.params._emitClasses || !swiper.el) return;\n const updates = [];\n swiper.slides.each((slideEl) => {\n const classNames = swiper.getSlideClasses(slideEl);\n updates.push({\n slideEl,\n classNames,\n });\n swiper.emit('_slideClass', slideEl, classNames);\n });\n swiper.emit('_slideClasses', updates);\n }\n\n slidesPerViewDynamic(view = 'current', exact = false) {\n const swiper = this;\n const {params, slides, slidesGrid, slidesSizesGrid, size: swiperSize, activeIndex} = swiper;\n let spv = 1;\n\n if (params.centeredSlides) {\n let slideSize = slides[activeIndex].swiperSlideSize;\n let breakLoop;\n\n for (let i = activeIndex + 1; i < slides.length; i += 1) {\n if (slides[i] && !breakLoop) {\n slideSize += slides[i].swiperSlideSize;\n spv += 1;\n if (slideSize > swiperSize) breakLoop = true;\n }\n }\n\n for (let i = activeIndex - 1; i >= 0; i -= 1) {\n if (slides[i] && !breakLoop) {\n slideSize += slides[i].swiperSlideSize;\n spv += 1;\n if (slideSize > swiperSize) breakLoop = true;\n }\n }\n } else {\n // eslint-disable-next-line\n if (view === 'current') {\n for (let i = activeIndex + 1; i < slides.length; i += 1) {\n const slideInView = exact\n ? slidesGrid[i] + slidesSizesGrid[i] - slidesGrid[activeIndex] < swiperSize\n : slidesGrid[i] - slidesGrid[activeIndex] < swiperSize;\n\n if (slideInView) {\n spv += 1;\n }\n }\n } else {\n // previous\n for (let i = activeIndex - 1; i >= 0; i -= 1) {\n const slideInView = slidesGrid[activeIndex] - slidesGrid[i] < swiperSize;\n\n if (slideInView) {\n spv += 1;\n }\n }\n }\n }\n\n return spv;\n }\n\n update() {\n const swiper = this;\n if (!swiper || swiper.destroyed) return;\n const {snapGrid, params} = swiper; // Breakpoints\n\n if (params.breakpoints) {\n swiper.setBreakpoint();\n }\n\n swiper.updateSize();\n swiper.updateSlides();\n swiper.updateProgress();\n swiper.updateSlidesClasses();\n\n function setTranslate() {\n const translateValue = swiper.rtlTranslate ? swiper.translate * -1 : swiper.translate;\n const newTranslate = Math.min(Math.max(translateValue, swiper.maxTranslate()), swiper.minTranslate());\n swiper.setTranslate(newTranslate);\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n\n let translated;\n\n if (swiper.params.freeMode && swiper.params.freeMode.enabled) {\n setTranslate();\n\n if (swiper.params.autoHeight) {\n swiper.updateAutoHeight();\n }\n } else {\n if (\n (swiper.params.slidesPerView === 'auto' || swiper.params.slidesPerView > 1) &&\n swiper.isEnd &&\n !swiper.params.centeredSlides\n ) {\n translated = swiper.slideTo(swiper.slides.length - 1, 0, false, true);\n } else {\n translated = swiper.slideTo(swiper.activeIndex, 0, false, true);\n }\n\n if (!translated) {\n setTranslate();\n }\n }\n\n if (params.watchOverflow && snapGrid !== swiper.snapGrid) {\n swiper.checkOverflow();\n }\n\n swiper.emit('update');\n }\n\n changeDirection(newDirection, needUpdate = true) {\n const swiper = this;\n const currentDirection = swiper.params.direction;\n\n if (!newDirection) {\n // eslint-disable-next-line\n newDirection = currentDirection === 'horizontal' ? 'vertical' : 'horizontal';\n }\n\n if (newDirection === currentDirection || (newDirection !== 'horizontal' && newDirection !== 'vertical')) {\n return swiper;\n }\n\n swiper.$el\n .removeClass(`${swiper.params.containerModifierClass}${currentDirection}`)\n .addClass(`${swiper.params.containerModifierClass}${newDirection}`);\n swiper.emitContainerClasses();\n swiper.params.direction = newDirection;\n swiper.slides.each((slideEl) => {\n if (newDirection === 'vertical') {\n slideEl.style.width = '';\n } else {\n slideEl.style.height = '';\n }\n });\n swiper.emit('changeDirection');\n if (needUpdate) swiper.update();\n return swiper;\n }\n\n mount(el) {\n const swiper = this;\n if (swiper.mounted) return true; // Find el\n\n const $el = $(el || swiper.params.el);\n el = $el[0];\n\n if (!el) {\n return false;\n }\n\n el.swiper = swiper;\n\n const getWrapperSelector = () => {\n return `.${(swiper.params.wrapperClass || '').trim().split(' ').join('.')}`;\n };\n\n const getWrapper = () => {\n if (el && el.shadowRoot && el.shadowRoot.querySelector) {\n const res = $(el.shadowRoot.querySelector(getWrapperSelector())); // Children needs to return slot items\n\n res.children = (options) => $el.children(options);\n\n return res;\n }\n\n return $el.children(getWrapperSelector());\n }; // Find Wrapper\n\n let $wrapperEl = getWrapper();\n\n if ($wrapperEl.length === 0 && swiper.params.createElements) {\n const document = getDocument();\n const wrapper = document.createElement('div');\n $wrapperEl = $(wrapper);\n wrapper.className = swiper.params.wrapperClass;\n $el.append(wrapper);\n $el.children(`.${swiper.params.slideClass}`).each((slideEl) => {\n $wrapperEl.append(slideEl);\n });\n }\n\n Object.assign(swiper, {\n $el,\n el,\n $wrapperEl,\n wrapperEl: $wrapperEl[0],\n mounted: true,\n // RTL\n rtl: el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl',\n rtlTranslate:\n swiper.params.direction === 'horizontal' &&\n (el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl'),\n wrongRTL: $wrapperEl.css('display') === '-webkit-box',\n });\n return true;\n }\n\n init(el) {\n const swiper = this;\n if (swiper.initialized) return swiper;\n const mounted = swiper.mount(el);\n if (mounted === false) return swiper;\n swiper.emit('beforeInit'); // Set breakpoint\n\n if (swiper.params.breakpoints) {\n swiper.setBreakpoint();\n } // Add Classes\n\n swiper.addClasses(); // Create loop\n\n if (swiper.params.loop) {\n swiper.loopCreate();\n } // Update size\n\n swiper.updateSize(); // Update slides\n\n swiper.updateSlides();\n\n if (swiper.params.watchOverflow) {\n swiper.checkOverflow();\n } // Set Grab Cursor\n\n if (swiper.params.grabCursor && swiper.enabled) {\n swiper.setGrabCursor();\n }\n\n if (swiper.params.preloadImages) {\n swiper.preloadImages();\n } // Slide To Initial Slide\n\n if (swiper.params.loop) {\n swiper.slideTo(\n swiper.params.initialSlide + swiper.loopedSlides,\n 0,\n swiper.params.runCallbacksOnInit,\n false,\n true,\n );\n } else {\n swiper.slideTo(swiper.params.initialSlide, 0, swiper.params.runCallbacksOnInit, false, true);\n } // Attach events\n\n swiper.attachEvents(); // Init Flag\n\n swiper.initialized = true; // Emit\n\n swiper.emit('init');\n swiper.emit('afterInit');\n return swiper;\n }\n\n destroy(deleteInstance = true, cleanStyles = true) {\n const swiper = this;\n const {params, $el, $wrapperEl, slides} = swiper;\n\n if (typeof swiper.params === 'undefined' || swiper.destroyed) {\n return null;\n }\n\n swiper.emit('beforeDestroy'); // Init Flag\n\n swiper.initialized = false; // Detach events\n\n swiper.detachEvents(); // Destroy loop\n\n if (params.loop) {\n swiper.loopDestroy();\n } // Cleanup styles\n\n if (cleanStyles) {\n swiper.removeClasses();\n $el.removeAttr('style');\n $wrapperEl.removeAttr('style');\n\n if (slides && slides.length) {\n slides\n .removeClass(\n [params.slideVisibleClass, params.slideActiveClass, params.slideNextClass, params.slidePrevClass].join(\n ' ',\n ),\n )\n .removeAttr('style')\n .removeAttr('data-swiper-slide-index');\n }\n }\n\n swiper.emit('destroy'); // Detach emitter events\n\n Object.keys(swiper.eventsListeners).forEach((eventName) => {\n swiper.off(eventName);\n });\n\n if (deleteInstance !== false) {\n swiper.$el[0].swiper = null;\n deleteProps(swiper);\n }\n\n swiper.destroyed = true;\n return null;\n }\n\n static extendDefaults(newDefaults) {\n extend(extendedDefaults, newDefaults);\n }\n\n static get extendedDefaults() {\n return extendedDefaults;\n }\n\n static get defaults() {\n return defaults;\n }\n\n static installModule(mod) {\n if (!Swiper.prototype.__modules__) Swiper.prototype.__modules__ = [];\n const modules = Swiper.prototype.__modules__;\n\n if (typeof mod === 'function' && modules.indexOf(mod) < 0) {\n modules.push(mod);\n }\n }\n\n static use(module) {\n if (Array.isArray(module)) {\n module.forEach((m) => Swiper.installModule(m));\n return Swiper;\n }\n\n Swiper.installModule(module);\n return Swiper;\n }\n }\n\n Object.keys(prototypes).forEach((prototypeGroup) => {\n Object.keys(prototypes[prototypeGroup]).forEach((protoMethod) => {\n Swiper.prototype[protoMethod] = prototypes[prototypeGroup][protoMethod];\n });\n });\n Swiper.use([Resize, Observer]);\n\n function Virtual({swiper, extendParams, on}) {\n extendParams({\n virtual: {\n enabled: false,\n slides: [],\n cache: true,\n renderSlide: null,\n renderExternal: null,\n renderExternalUpdate: true,\n addSlidesBefore: 0,\n addSlidesAfter: 0,\n },\n });\n let cssModeTimeout;\n swiper.virtual = {\n cache: {},\n from: undefined,\n to: undefined,\n slides: [],\n offset: 0,\n slidesGrid: [],\n };\n\n function renderSlide(slide, index) {\n const params = swiper.params.virtual;\n\n if (params.cache && swiper.virtual.cache[index]) {\n return swiper.virtual.cache[index];\n }\n\n const $slideEl = params.renderSlide\n ? $(params.renderSlide.call(swiper, slide, index))\n : $(`
    ${slide}
    `);\n if (!$slideEl.attr('data-swiper-slide-index')) $slideEl.attr('data-swiper-slide-index', index);\n if (params.cache) swiper.virtual.cache[index] = $slideEl;\n return $slideEl;\n }\n\n function update(force) {\n const {slidesPerView, slidesPerGroup, centeredSlides} = swiper.params;\n const {addSlidesBefore, addSlidesAfter} = swiper.params.virtual;\n const {\n from: previousFrom,\n to: previousTo,\n slides,\n slidesGrid: previousSlidesGrid,\n offset: previousOffset,\n } = swiper.virtual;\n\n if (!swiper.params.cssMode) {\n swiper.updateActiveIndex();\n }\n\n const activeIndex = swiper.activeIndex || 0;\n let offsetProp;\n if (swiper.rtlTranslate) offsetProp = 'right';\n else offsetProp = swiper.isHorizontal() ? 'left' : 'top';\n let slidesAfter;\n let slidesBefore;\n\n if (centeredSlides) {\n slidesAfter = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesAfter;\n slidesBefore = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesBefore;\n } else {\n slidesAfter = slidesPerView + (slidesPerGroup - 1) + addSlidesAfter;\n slidesBefore = slidesPerGroup + addSlidesBefore;\n }\n\n const from = Math.max((activeIndex || 0) - slidesBefore, 0);\n const to = Math.min((activeIndex || 0) + slidesAfter, slides.length - 1);\n const offset = (swiper.slidesGrid[from] || 0) - (swiper.slidesGrid[0] || 0);\n Object.assign(swiper.virtual, {\n from,\n to,\n offset,\n slidesGrid: swiper.slidesGrid,\n });\n\n function onRendered() {\n swiper.updateSlides();\n swiper.updateProgress();\n swiper.updateSlidesClasses();\n\n if (swiper.lazy && swiper.params.lazy.enabled) {\n swiper.lazy.load();\n }\n }\n\n if (previousFrom === from && previousTo === to && !force) {\n if (swiper.slidesGrid !== previousSlidesGrid && offset !== previousOffset) {\n swiper.slides.css(offsetProp, `${offset}px`);\n }\n\n swiper.updateProgress();\n return;\n }\n\n if (swiper.params.virtual.renderExternal) {\n swiper.params.virtual.renderExternal.call(swiper, {\n offset,\n from,\n to,\n slides: (function getSlides() {\n const slidesToRender = [];\n\n for (let i = from; i <= to; i += 1) {\n slidesToRender.push(slides[i]);\n }\n\n return slidesToRender;\n })(),\n });\n\n if (swiper.params.virtual.renderExternalUpdate) {\n onRendered();\n }\n\n return;\n }\n\n const prependIndexes = [];\n const appendIndexes = [];\n\n if (force) {\n swiper.$wrapperEl.find(`.${swiper.params.slideClass}`).remove();\n } else {\n for (let i = previousFrom; i <= previousTo; i += 1) {\n if (i < from || i > to) {\n swiper.$wrapperEl.find(`.${swiper.params.slideClass}[data-swiper-slide-index=\"${i}\"]`).remove();\n }\n }\n }\n\n for (let i = 0; i < slides.length; i += 1) {\n if (i >= from && i <= to) {\n if (typeof previousTo === 'undefined' || force) {\n appendIndexes.push(i);\n } else {\n if (i > previousTo) appendIndexes.push(i);\n if (i < previousFrom) prependIndexes.push(i);\n }\n }\n }\n\n appendIndexes.forEach((index) => {\n swiper.$wrapperEl.append(renderSlide(slides[index], index));\n });\n prependIndexes\n .sort((a, b) => b - a)\n .forEach((index) => {\n swiper.$wrapperEl.prepend(renderSlide(slides[index], index));\n });\n swiper.$wrapperEl.children('.swiper-slide').css(offsetProp, `${offset}px`);\n onRendered();\n }\n\n function appendSlide(slides) {\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) swiper.virtual.slides.push(slides[i]);\n }\n } else {\n swiper.virtual.slides.push(slides);\n }\n\n update(true);\n }\n\n function prependSlide(slides) {\n const activeIndex = swiper.activeIndex;\n let newActiveIndex = activeIndex + 1;\n let numberOfNewSlides = 1;\n\n if (Array.isArray(slides)) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) swiper.virtual.slides.unshift(slides[i]);\n }\n\n newActiveIndex = activeIndex + slides.length;\n numberOfNewSlides = slides.length;\n } else {\n swiper.virtual.slides.unshift(slides);\n }\n\n if (swiper.params.virtual.cache) {\n const cache = swiper.virtual.cache;\n const newCache = {};\n Object.keys(cache).forEach((cachedIndex) => {\n const $cachedEl = cache[cachedIndex];\n const cachedElIndex = $cachedEl.attr('data-swiper-slide-index');\n\n if (cachedElIndex) {\n $cachedEl.attr('data-swiper-slide-index', parseInt(cachedElIndex, 10) + numberOfNewSlides);\n }\n\n newCache[parseInt(cachedIndex, 10) + numberOfNewSlides] = $cachedEl;\n });\n swiper.virtual.cache = newCache;\n }\n\n update(true);\n swiper.slideTo(newActiveIndex, 0);\n }\n\n function removeSlide(slidesIndexes) {\n if (typeof slidesIndexes === 'undefined' || slidesIndexes === null) return;\n let activeIndex = swiper.activeIndex;\n\n if (Array.isArray(slidesIndexes)) {\n for (let i = slidesIndexes.length - 1; i >= 0; i -= 1) {\n swiper.virtual.slides.splice(slidesIndexes[i], 1);\n\n if (swiper.params.virtual.cache) {\n delete swiper.virtual.cache[slidesIndexes[i]];\n }\n\n if (slidesIndexes[i] < activeIndex) activeIndex -= 1;\n activeIndex = Math.max(activeIndex, 0);\n }\n } else {\n swiper.virtual.slides.splice(slidesIndexes, 1);\n\n if (swiper.params.virtual.cache) {\n delete swiper.virtual.cache[slidesIndexes];\n }\n\n if (slidesIndexes < activeIndex) activeIndex -= 1;\n activeIndex = Math.max(activeIndex, 0);\n }\n\n update(true);\n swiper.slideTo(activeIndex, 0);\n }\n\n function removeAllSlides() {\n swiper.virtual.slides = [];\n\n if (swiper.params.virtual.cache) {\n swiper.virtual.cache = {};\n }\n\n update(true);\n swiper.slideTo(0, 0);\n }\n\n on('beforeInit', () => {\n if (!swiper.params.virtual.enabled) return;\n swiper.virtual.slides = swiper.params.virtual.slides;\n swiper.classNames.push(`${swiper.params.containerModifierClass}virtual`);\n swiper.params.watchSlidesProgress = true;\n swiper.originalParams.watchSlidesProgress = true;\n\n if (!swiper.params.initialSlide) {\n update();\n }\n });\n on('setTranslate', () => {\n if (!swiper.params.virtual.enabled) return;\n\n if (swiper.params.cssMode && !swiper._immediateVirtual) {\n clearTimeout(cssModeTimeout);\n cssModeTimeout = setTimeout(() => {\n update();\n }, 100);\n } else {\n update();\n }\n });\n on('init update resize', () => {\n if (!swiper.params.virtual.enabled) return;\n\n if (swiper.params.cssMode) {\n setCSSProperty(swiper.wrapperEl, '--swiper-virtual-size', `${swiper.virtualSize}px`);\n }\n });\n Object.assign(swiper.virtual, {\n appendSlide,\n prependSlide,\n removeSlide,\n removeAllSlides,\n update,\n });\n }\n\n /* eslint-disable consistent-return */\n function Keyboard({swiper, extendParams, on, emit}) {\n const document = getDocument();\n const window = getWindow();\n swiper.keyboard = {\n enabled: false,\n };\n extendParams({\n keyboard: {\n enabled: false,\n onlyInViewport: true,\n pageUpDown: true,\n },\n });\n\n function handle(event) {\n if (!swiper.enabled) return;\n const {rtlTranslate: rtl} = swiper;\n let e = event;\n if (e.originalEvent) e = e.originalEvent; // jquery fix\n\n const kc = e.keyCode || e.charCode;\n const pageUpDown = swiper.params.keyboard.pageUpDown;\n const isPageUp = pageUpDown && kc === 33;\n const isPageDown = pageUpDown && kc === 34;\n const isArrowLeft = kc === 37;\n const isArrowRight = kc === 39;\n const isArrowUp = kc === 38;\n const isArrowDown = kc === 40; // Directions locks\n\n if (\n !swiper.allowSlideNext &&\n ((swiper.isHorizontal() && isArrowRight) || (swiper.isVertical() && isArrowDown) || isPageDown)\n ) {\n return false;\n }\n\n if (\n !swiper.allowSlidePrev &&\n ((swiper.isHorizontal() && isArrowLeft) || (swiper.isVertical() && isArrowUp) || isPageUp)\n ) {\n return false;\n }\n\n if (e.shiftKey || e.altKey || e.ctrlKey || e.metaKey) {\n return undefined;\n }\n\n if (\n document.activeElement &&\n document.activeElement.nodeName &&\n (document.activeElement.nodeName.toLowerCase() === 'input' ||\n document.activeElement.nodeName.toLowerCase() === 'textarea')\n ) {\n return undefined;\n }\n\n if (\n swiper.params.keyboard.onlyInViewport &&\n (isPageUp || isPageDown || isArrowLeft || isArrowRight || isArrowUp || isArrowDown)\n ) {\n let inView = false; // Check that swiper should be inside of visible area of window\n\n if (\n swiper.$el.parents(`.${swiper.params.slideClass}`).length > 0 &&\n swiper.$el.parents(`.${swiper.params.slideActiveClass}`).length === 0\n ) {\n return undefined;\n }\n\n const $el = swiper.$el;\n const swiperWidth = $el[0].clientWidth;\n const swiperHeight = $el[0].clientHeight;\n const windowWidth = window.innerWidth;\n const windowHeight = window.innerHeight;\n const swiperOffset = swiper.$el.offset();\n if (rtl) swiperOffset.left -= swiper.$el[0].scrollLeft;\n const swiperCoord = [\n [swiperOffset.left, swiperOffset.top],\n [swiperOffset.left + swiperWidth, swiperOffset.top],\n [swiperOffset.left, swiperOffset.top + swiperHeight],\n [swiperOffset.left + swiperWidth, swiperOffset.top + swiperHeight],\n ];\n\n for (let i = 0; i < swiperCoord.length; i += 1) {\n const point = swiperCoord[i];\n\n if (point[0] >= 0 && point[0] <= windowWidth && point[1] >= 0 && point[1] <= windowHeight) {\n if (point[0] === 0 && point[1] === 0) continue; // eslint-disable-line\n\n inView = true;\n }\n }\n\n if (!inView) return undefined;\n }\n\n if (swiper.isHorizontal()) {\n if (isPageUp || isPageDown || isArrowLeft || isArrowRight) {\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n }\n\n if (((isPageDown || isArrowRight) && !rtl) || ((isPageUp || isArrowLeft) && rtl)) swiper.slideNext();\n if (((isPageUp || isArrowLeft) && !rtl) || ((isPageDown || isArrowRight) && rtl)) swiper.slidePrev();\n } else {\n if (isPageUp || isPageDown || isArrowUp || isArrowDown) {\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n }\n\n if (isPageDown || isArrowDown) swiper.slideNext();\n if (isPageUp || isArrowUp) swiper.slidePrev();\n }\n\n emit('keyPress', kc);\n return undefined;\n }\n\n function enable() {\n if (swiper.keyboard.enabled) return;\n $(document).on('keydown', handle);\n swiper.keyboard.enabled = true;\n }\n\n function disable() {\n if (!swiper.keyboard.enabled) return;\n $(document).off('keydown', handle);\n swiper.keyboard.enabled = false;\n }\n\n on('init', () => {\n if (swiper.params.keyboard.enabled) {\n enable();\n }\n });\n on('destroy', () => {\n if (swiper.keyboard.enabled) {\n disable();\n }\n });\n Object.assign(swiper.keyboard, {\n enable,\n disable,\n });\n }\n\n /* eslint-disable consistent-return */\n function Mousewheel({swiper, extendParams, on, emit}) {\n const window = getWindow();\n extendParams({\n mousewheel: {\n enabled: false,\n releaseOnEdges: false,\n invert: false,\n forceToAxis: false,\n sensitivity: 1,\n eventsTarget: 'container',\n thresholdDelta: null,\n thresholdTime: null,\n },\n });\n swiper.mousewheel = {\n enabled: false,\n };\n let timeout;\n let lastScrollTime = now();\n let lastEventBeforeSnap;\n const recentWheelEvents = [];\n\n function normalize(e) {\n // Reasonable defaults\n const PIXEL_STEP = 10;\n const LINE_HEIGHT = 40;\n const PAGE_HEIGHT = 800;\n let sX = 0;\n let sY = 0; // spinX, spinY\n\n let pX = 0;\n let pY = 0; // pixelX, pixelY\n // Legacy\n\n if ('detail' in e) {\n sY = e.detail;\n }\n\n if ('wheelDelta' in e) {\n sY = -e.wheelDelta / 120;\n }\n\n if ('wheelDeltaY' in e) {\n sY = -e.wheelDeltaY / 120;\n }\n\n if ('wheelDeltaX' in e) {\n sX = -e.wheelDeltaX / 120;\n } // side scrolling on FF with DOMMouseScroll\n\n if ('axis' in e && e.axis === e.HORIZONTAL_AXIS) {\n sX = sY;\n sY = 0;\n }\n\n pX = sX * PIXEL_STEP;\n pY = sY * PIXEL_STEP;\n\n if ('deltaY' in e) {\n pY = e.deltaY;\n }\n\n if ('deltaX' in e) {\n pX = e.deltaX;\n }\n\n if (e.shiftKey && !pX) {\n // if user scrolls with shift he wants horizontal scroll\n pX = pY;\n pY = 0;\n }\n\n if ((pX || pY) && e.deltaMode) {\n if (e.deltaMode === 1) {\n // delta in LINE units\n pX *= LINE_HEIGHT;\n pY *= LINE_HEIGHT;\n } else {\n // delta in PAGE units\n pX *= PAGE_HEIGHT;\n pY *= PAGE_HEIGHT;\n }\n } // Fall-back if spin cannot be determined\n\n if (pX && !sX) {\n sX = pX < 1 ? -1 : 1;\n }\n\n if (pY && !sY) {\n sY = pY < 1 ? -1 : 1;\n }\n\n return {\n spinX: sX,\n spinY: sY,\n pixelX: pX,\n pixelY: pY,\n };\n }\n\n function handleMouseEnter() {\n if (!swiper.enabled) return;\n swiper.mouseEntered = true;\n }\n\n function handleMouseLeave() {\n if (!swiper.enabled) return;\n swiper.mouseEntered = false;\n }\n\n function animateSlider(newEvent) {\n if (swiper.params.mousewheel.thresholdDelta && newEvent.delta < swiper.params.mousewheel.thresholdDelta) {\n // Prevent if delta of wheel scroll delta is below configured threshold\n return false;\n }\n\n if (swiper.params.mousewheel.thresholdTime && now() - lastScrollTime < swiper.params.mousewheel.thresholdTime) {\n // Prevent if time between scrolls is below configured threshold\n return false;\n } // If the movement is NOT big enough and\n // if the last time the user scrolled was too close to the current one (avoid continuously triggering the slider):\n // Don't go any further (avoid insignificant scroll movement).\n\n if (newEvent.delta >= 6 && now() - lastScrollTime < 60) {\n // Return false as a default\n return true;\n } // If user is scrolling towards the end:\n // If the slider hasn't hit the latest slide or\n // if the slider is a loop and\n // if the slider isn't moving right now:\n // Go to next slide and\n // emit a scroll event.\n // Else (the user is scrolling towards the beginning) and\n // if the slider hasn't hit the first slide or\n // if the slider is a loop and\n // if the slider isn't moving right now:\n // Go to prev slide and\n // emit a scroll event.\n\n if (newEvent.direction < 0) {\n if ((!swiper.isEnd || swiper.params.loop) && !swiper.animating) {\n swiper.slideNext();\n emit('scroll', newEvent.raw);\n }\n } else if ((!swiper.isBeginning || swiper.params.loop) && !swiper.animating) {\n swiper.slidePrev();\n emit('scroll', newEvent.raw);\n } // If you got here is because an animation has been triggered so store the current time\n\n lastScrollTime = new window.Date().getTime(); // Return false as a default\n\n return false;\n }\n\n function releaseScroll(newEvent) {\n const params = swiper.params.mousewheel;\n\n if (newEvent.direction < 0) {\n if (swiper.isEnd && !swiper.params.loop && params.releaseOnEdges) {\n // Return true to animate scroll on edges\n return true;\n }\n } else if (swiper.isBeginning && !swiper.params.loop && params.releaseOnEdges) {\n // Return true to animate scroll on edges\n return true;\n }\n\n return false;\n }\n\n function handle(event) {\n let e = event;\n let disableParentSwiper = true;\n if (!swiper.enabled) return;\n const params = swiper.params.mousewheel;\n\n if (swiper.params.cssMode) {\n e.preventDefault();\n }\n\n let target = swiper.$el;\n\n if (swiper.params.mousewheel.eventsTarget !== 'container') {\n target = $(swiper.params.mousewheel.eventsTarget);\n }\n\n if (!swiper.mouseEntered && !target[0].contains(e.target) && !params.releaseOnEdges) return true;\n if (e.originalEvent) e = e.originalEvent; // jquery fix\n\n let delta = 0;\n const rtlFactor = swiper.rtlTranslate ? -1 : 1;\n const data = normalize(e);\n\n if (params.forceToAxis) {\n if (swiper.isHorizontal()) {\n if (Math.abs(data.pixelX) > Math.abs(data.pixelY)) delta = -data.pixelX * rtlFactor;\n else return true;\n } else if (Math.abs(data.pixelY) > Math.abs(data.pixelX)) delta = -data.pixelY;\n else return true;\n } else {\n delta = Math.abs(data.pixelX) > Math.abs(data.pixelY) ? -data.pixelX * rtlFactor : -data.pixelY;\n }\n\n if (delta === 0) return true;\n if (params.invert) delta = -delta; // Get the scroll positions\n\n let positions = swiper.getTranslate() + delta * params.sensitivity;\n if (positions >= swiper.minTranslate()) positions = swiper.minTranslate();\n if (positions <= swiper.maxTranslate()) positions = swiper.maxTranslate(); // When loop is true:\n // the disableParentSwiper will be true.\n // When loop is false:\n // if the scroll positions is not on edge,\n // then the disableParentSwiper will be true.\n // if the scroll on edge positions,\n // then the disableParentSwiper will be false.\n\n disableParentSwiper = swiper.params.loop\n ? true\n : !(positions === swiper.minTranslate() || positions === swiper.maxTranslate());\n if (disableParentSwiper && swiper.params.nested) e.stopPropagation();\n\n if (!swiper.params.freeMode || !swiper.params.freeMode.enabled) {\n // Register the new event in a variable which stores the relevant data\n const newEvent = {\n time: now(),\n delta: Math.abs(delta),\n direction: Math.sign(delta),\n raw: event,\n }; // Keep the most recent events\n\n if (recentWheelEvents.length >= 2) {\n recentWheelEvents.shift(); // only store the last N events\n }\n\n const prevEvent = recentWheelEvents.length ? recentWheelEvents[recentWheelEvents.length - 1] : undefined;\n recentWheelEvents.push(newEvent); // If there is at least one previous recorded event:\n // If direction has changed or\n // if the scroll is quicker than the previous one:\n // Animate the slider.\n // Else (this is the first time the wheel is moved):\n // Animate the slider.\n\n if (prevEvent) {\n if (\n newEvent.direction !== prevEvent.direction ||\n newEvent.delta > prevEvent.delta ||\n newEvent.time > prevEvent.time + 150\n ) {\n animateSlider(newEvent);\n }\n } else {\n animateSlider(newEvent);\n } // If it's time to release the scroll:\n // Return now so you don't hit the preventDefault.\n\n if (releaseScroll(newEvent)) {\n return true;\n }\n } else {\n // Freemode or scrollContainer:\n // If we recently snapped after a momentum scroll, then ignore wheel events\n // to give time for the deceleration to finish. Stop ignoring after 500 msecs\n // or if it's a new scroll (larger delta or inverse sign as last event before\n // an end-of-momentum snap).\n const newEvent = {\n time: now(),\n delta: Math.abs(delta),\n direction: Math.sign(delta),\n };\n const ignoreWheelEvents =\n lastEventBeforeSnap &&\n newEvent.time < lastEventBeforeSnap.time + 500 &&\n newEvent.delta <= lastEventBeforeSnap.delta &&\n newEvent.direction === lastEventBeforeSnap.direction;\n\n if (!ignoreWheelEvents) {\n lastEventBeforeSnap = undefined;\n\n if (swiper.params.loop) {\n swiper.loopFix();\n }\n\n let position = swiper.getTranslate() + delta * params.sensitivity;\n const wasBeginning = swiper.isBeginning;\n const wasEnd = swiper.isEnd;\n if (position >= swiper.minTranslate()) position = swiper.minTranslate();\n if (position <= swiper.maxTranslate()) position = swiper.maxTranslate();\n swiper.setTransition(0);\n swiper.setTranslate(position);\n swiper.updateProgress();\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n\n if ((!wasBeginning && swiper.isBeginning) || (!wasEnd && swiper.isEnd)) {\n swiper.updateSlidesClasses();\n }\n\n if (swiper.params.freeMode.sticky) {\n // When wheel scrolling starts with sticky (aka snap) enabled, then detect\n // the end of a momentum scroll by storing recent (N=15?) wheel events.\n // 1. do all N events have decreasing or same (absolute value) delta?\n // 2. did all N events arrive in the last M (M=500?) msecs?\n // 3. does the earliest event have an (absolute value) delta that's\n // at least P (P=1?) larger than the most recent event's delta?\n // 4. does the latest event have a delta that's smaller than Q (Q=6?) pixels?\n // If 1-4 are \"yes\" then we're near the end of a momentum scroll deceleration.\n // Snap immediately and ignore remaining wheel events in this scroll.\n // See comment above for \"remaining wheel events in this scroll\" determination.\n // If 1-4 aren't satisfied, then wait to snap until 500ms after the last event.\n clearTimeout(timeout);\n timeout = undefined;\n\n if (recentWheelEvents.length >= 15) {\n recentWheelEvents.shift(); // only store the last N events\n }\n\n const prevEvent = recentWheelEvents.length ? recentWheelEvents[recentWheelEvents.length - 1] : undefined;\n const firstEvent = recentWheelEvents[0];\n recentWheelEvents.push(newEvent);\n\n if (prevEvent && (newEvent.delta > prevEvent.delta || newEvent.direction !== prevEvent.direction)) {\n // Increasing or reverse-sign delta means the user started scrolling again. Clear the wheel event log.\n recentWheelEvents.splice(0);\n } else if (\n recentWheelEvents.length >= 15 &&\n newEvent.time - firstEvent.time < 500 &&\n firstEvent.delta - newEvent.delta >= 1 &&\n newEvent.delta <= 6\n ) {\n // We're at the end of the deceleration of a momentum scroll, so there's no need\n // to wait for more events. Snap ASAP on the next tick.\n // Also, because there's some remaining momentum we'll bias the snap in the\n // direction of the ongoing scroll because it's better UX for the scroll to snap\n // in the same direction as the scroll instead of reversing to snap. Therefore,\n // if it's already scrolled more than 20% in the current direction, keep going.\n const snapToThreshold = delta > 0 ? 0.8 : 0.2;\n lastEventBeforeSnap = newEvent;\n recentWheelEvents.splice(0);\n timeout = nextTick(() => {\n swiper.slideToClosest(swiper.params.speed, true, undefined, snapToThreshold);\n }, 0); // no delay; move on next tick\n }\n\n if (!timeout) {\n // if we get here, then we haven't detected the end of a momentum scroll, so\n // we'll consider a scroll \"complete\" when there haven't been any wheel events\n // for 500ms.\n timeout = nextTick(() => {\n const snapToThreshold = 0.5;\n lastEventBeforeSnap = newEvent;\n recentWheelEvents.splice(0);\n swiper.slideToClosest(swiper.params.speed, true, undefined, snapToThreshold);\n }, 500);\n }\n } // Emit event\n\n if (!ignoreWheelEvents) emit('scroll', e); // Stop autoplay\n\n if (swiper.params.autoplay && swiper.params.autoplayDisableOnInteraction) swiper.autoplay.stop(); // Return page scroll on edge positions\n\n if (position === swiper.minTranslate() || position === swiper.maxTranslate()) return true;\n }\n }\n\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n return false;\n }\n\n function events(method) {\n let target = swiper.$el;\n\n if (swiper.params.mousewheel.eventsTarget !== 'container') {\n target = $(swiper.params.mousewheel.eventsTarget);\n }\n\n target[method]('mouseenter', handleMouseEnter);\n target[method]('mouseleave', handleMouseLeave);\n target[method]('wheel', handle);\n }\n\n function enable() {\n if (swiper.params.cssMode) {\n swiper.wrapperEl.removeEventListener('wheel', handle);\n return true;\n }\n\n if (swiper.mousewheel.enabled) return false;\n events('on');\n swiper.mousewheel.enabled = true;\n return true;\n }\n\n function disable() {\n if (swiper.params.cssMode) {\n swiper.wrapperEl.addEventListener(event, handle);\n return true;\n }\n\n if (!swiper.mousewheel.enabled) return false;\n events('off');\n swiper.mousewheel.enabled = false;\n return true;\n }\n\n on('init', () => {\n if (!swiper.params.mousewheel.enabled && swiper.params.cssMode) {\n disable();\n }\n\n if (swiper.params.mousewheel.enabled) enable();\n });\n on('destroy', () => {\n if (swiper.params.cssMode) {\n enable();\n }\n\n if (swiper.mousewheel.enabled) disable();\n });\n Object.assign(swiper.mousewheel, {\n enable,\n disable,\n });\n }\n\n function createElementIfNotDefined(swiper, originalParams, params, checkProps) {\n const document = getDocument();\n\n if (swiper.params.createElements) {\n Object.keys(checkProps).forEach((key) => {\n if (!params[key] && params.auto === true) {\n let element = swiper.$el.children(`.${checkProps[key]}`)[0];\n\n if (!element) {\n element = document.createElement('div');\n element.className = checkProps[key];\n swiper.$el.append(element);\n }\n\n params[key] = element;\n originalParams[key] = element;\n }\n });\n }\n\n return params;\n }\n\n function Navigation({swiper, extendParams, on, emit}) {\n extendParams({\n navigation: {\n nextEl: null,\n prevEl: null,\n hideOnClick: false,\n disabledClass: 'swiper-button-disabled',\n hiddenClass: 'swiper-button-hidden',\n lockClass: 'swiper-button-lock',\n },\n });\n swiper.navigation = {\n nextEl: null,\n $nextEl: null,\n prevEl: null,\n $prevEl: null,\n };\n\n function getEl(el) {\n let $el;\n\n if (el) {\n $el = $(el);\n\n if (\n swiper.params.uniqueNavElements &&\n typeof el === 'string' &&\n $el.length > 1 &&\n swiper.$el.find(el).length === 1\n ) {\n $el = swiper.$el.find(el);\n }\n }\n\n return $el;\n }\n\n function toggleEl($el, disabled) {\n const params = swiper.params.navigation;\n\n if ($el && $el.length > 0) {\n $el[disabled ? 'addClass' : 'removeClass'](params.disabledClass);\n if ($el[0] && $el[0].tagName === 'BUTTON') $el[0].disabled = disabled;\n\n if (swiper.params.watchOverflow && swiper.enabled) {\n $el[swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);\n }\n }\n }\n\n function update() {\n // Update Navigation Buttons\n if (swiper.params.loop) return;\n const {$nextEl, $prevEl} = swiper.navigation;\n toggleEl($prevEl, swiper.isBeginning && !swiper.params.rewind);\n toggleEl($nextEl, swiper.isEnd && !swiper.params.rewind);\n }\n\n function onPrevClick(e) {\n e.preventDefault();\n if (swiper.isBeginning && !swiper.params.loop && !swiper.params.rewind) return;\n swiper.slidePrev();\n }\n\n function onNextClick(e) {\n e.preventDefault();\n if (swiper.isEnd && !swiper.params.loop && !swiper.params.rewind) return;\n swiper.slideNext();\n }\n\n function init() {\n const params = swiper.params.navigation;\n swiper.params.navigation = createElementIfNotDefined(\n swiper,\n swiper.originalParams.navigation,\n swiper.params.navigation,\n {\n nextEl: 'swiper-button-next',\n prevEl: 'swiper-button-prev',\n },\n );\n if (!(params.nextEl || params.prevEl)) return;\n const $nextEl = getEl(params.nextEl);\n const $prevEl = getEl(params.prevEl);\n\n if ($nextEl && $nextEl.length > 0) {\n $nextEl.on('click', onNextClick);\n }\n\n if ($prevEl && $prevEl.length > 0) {\n $prevEl.on('click', onPrevClick);\n }\n\n Object.assign(swiper.navigation, {\n $nextEl,\n nextEl: $nextEl && $nextEl[0],\n $prevEl,\n prevEl: $prevEl && $prevEl[0],\n });\n\n if (!swiper.enabled) {\n if ($nextEl) $nextEl.addClass(params.lockClass);\n if ($prevEl) $prevEl.addClass(params.lockClass);\n }\n }\n\n function destroy() {\n const {$nextEl, $prevEl} = swiper.navigation;\n\n if ($nextEl && $nextEl.length) {\n $nextEl.off('click', onNextClick);\n $nextEl.removeClass(swiper.params.navigation.disabledClass);\n }\n\n if ($prevEl && $prevEl.length) {\n $prevEl.off('click', onPrevClick);\n $prevEl.removeClass(swiper.params.navigation.disabledClass);\n }\n }\n\n on('init', () => {\n init();\n update();\n });\n on('toEdge fromEdge lock unlock', () => {\n update();\n });\n on('destroy', () => {\n destroy();\n });\n on('enable disable', () => {\n const {$nextEl, $prevEl} = swiper.navigation;\n\n if ($nextEl) {\n $nextEl[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.navigation.lockClass);\n }\n\n if ($prevEl) {\n $prevEl[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.navigation.lockClass);\n }\n });\n on('click', (_s, e) => {\n const {$nextEl, $prevEl} = swiper.navigation;\n const targetEl = e.target;\n\n if (swiper.params.navigation.hideOnClick && !$(targetEl).is($prevEl) && !$(targetEl).is($nextEl)) {\n if (\n swiper.pagination &&\n swiper.params.pagination &&\n swiper.params.pagination.clickable &&\n (swiper.pagination.el === targetEl || swiper.pagination.el.contains(targetEl))\n )\n return;\n let isHidden;\n\n if ($nextEl) {\n isHidden = $nextEl.hasClass(swiper.params.navigation.hiddenClass);\n } else if ($prevEl) {\n isHidden = $prevEl.hasClass(swiper.params.navigation.hiddenClass);\n }\n\n if (isHidden === true) {\n emit('navigationShow');\n } else {\n emit('navigationHide');\n }\n\n if ($nextEl) {\n $nextEl.toggleClass(swiper.params.navigation.hiddenClass);\n }\n\n if ($prevEl) {\n $prevEl.toggleClass(swiper.params.navigation.hiddenClass);\n }\n }\n });\n Object.assign(swiper.navigation, {\n update,\n init,\n destroy,\n });\n }\n\n function classesToSelector(classes = '') {\n return `.${classes\n .trim()\n .replace(/([\\.:!\\/])/g, '\\\\$1') // eslint-disable-line\n .replace(/ /g, '.')}`;\n }\n\n function Pagination({swiper, extendParams, on, emit}) {\n const pfx = 'swiper-pagination';\n extendParams({\n pagination: {\n el: null,\n bulletElement: 'span',\n clickable: false,\n hideOnClick: false,\n renderBullet: null,\n renderProgressbar: null,\n renderFraction: null,\n renderCustom: null,\n progressbarOpposite: false,\n type: 'bullets',\n // 'bullets' or 'progressbar' or 'fraction' or 'custom'\n dynamicBullets: false,\n dynamicMainBullets: 1,\n formatFractionCurrent: (number) => number,\n formatFractionTotal: (number) => number,\n bulletClass: `${pfx}-bullet`,\n bulletActiveClass: `${pfx}-bullet-active`,\n modifierClass: `${pfx}-`,\n currentClass: `${pfx}-current`,\n totalClass: `${pfx}-total`,\n hiddenClass: `${pfx}-hidden`,\n progressbarFillClass: `${pfx}-progressbar-fill`,\n progressbarOppositeClass: `${pfx}-progressbar-opposite`,\n clickableClass: `${pfx}-clickable`,\n lockClass: `${pfx}-lock`,\n horizontalClass: `${pfx}-horizontal`,\n verticalClass: `${pfx}-vertical`,\n },\n });\n swiper.pagination = {\n el: null,\n $el: null,\n bullets: [],\n };\n let bulletSize;\n let dynamicBulletIndex = 0;\n\n function isPaginationDisabled() {\n return (\n !swiper.params.pagination.el ||\n !swiper.pagination.el ||\n !swiper.pagination.$el ||\n swiper.pagination.$el.length === 0\n );\n }\n\n function setSideBullets($bulletEl, position) {\n const {bulletActiveClass} = swiper.params.pagination;\n $bulletEl[position]()\n .addClass(`${bulletActiveClass}-${position}`)\n [position]()\n .addClass(`${bulletActiveClass}-${position}-${position}`);\n }\n\n function update() {\n // Render || Update Pagination bullets/items\n const rtl = swiper.rtl;\n const params = swiper.params.pagination;\n if (isPaginationDisabled()) return;\n const slidesLength =\n swiper.virtual && swiper.params.virtual.enabled ? swiper.virtual.slides.length : swiper.slides.length;\n const $el = swiper.pagination.$el; // Current/Total\n\n let current;\n const total = swiper.params.loop\n ? Math.ceil((slidesLength - swiper.loopedSlides * 2) / swiper.params.slidesPerGroup)\n : swiper.snapGrid.length;\n\n if (swiper.params.loop) {\n current = Math.ceil((swiper.activeIndex - swiper.loopedSlides) / swiper.params.slidesPerGroup);\n\n if (current > slidesLength - 1 - swiper.loopedSlides * 2) {\n current -= slidesLength - swiper.loopedSlides * 2;\n }\n\n if (current > total - 1) current -= total;\n if (current < 0 && swiper.params.paginationType !== 'bullets') current = total + current;\n } else if (typeof swiper.snapIndex !== 'undefined') {\n current = swiper.snapIndex;\n } else {\n current = swiper.activeIndex || 0;\n } // Types\n\n if (params.type === 'bullets' && swiper.pagination.bullets && swiper.pagination.bullets.length > 0) {\n const bullets = swiper.pagination.bullets;\n let firstIndex;\n let lastIndex;\n let midIndex;\n\n if (params.dynamicBullets) {\n bulletSize = bullets.eq(0)[swiper.isHorizontal() ? 'outerWidth' : 'outerHeight'](true);\n $el.css(swiper.isHorizontal() ? 'width' : 'height', `${bulletSize * (params.dynamicMainBullets + 4)}px`);\n\n if (params.dynamicMainBullets > 1 && swiper.previousIndex !== undefined) {\n dynamicBulletIndex += current - (swiper.previousIndex - swiper.loopedSlides || 0);\n\n if (dynamicBulletIndex > params.dynamicMainBullets - 1) {\n dynamicBulletIndex = params.dynamicMainBullets - 1;\n } else if (dynamicBulletIndex < 0) {\n dynamicBulletIndex = 0;\n }\n }\n\n firstIndex = Math.max(current - dynamicBulletIndex, 0);\n lastIndex = firstIndex + (Math.min(bullets.length, params.dynamicMainBullets) - 1);\n midIndex = (lastIndex + firstIndex) / 2;\n }\n\n bullets.removeClass(\n ['', '-next', '-next-next', '-prev', '-prev-prev', '-main']\n .map((suffix) => `${params.bulletActiveClass}${suffix}`)\n .join(' '),\n );\n\n if ($el.length > 1) {\n bullets.each((bullet) => {\n const $bullet = $(bullet);\n const bulletIndex = $bullet.index();\n\n if (bulletIndex === current) {\n $bullet.addClass(params.bulletActiveClass);\n }\n\n if (params.dynamicBullets) {\n if (bulletIndex >= firstIndex && bulletIndex <= lastIndex) {\n $bullet.addClass(`${params.bulletActiveClass}-main`);\n }\n\n if (bulletIndex === firstIndex) {\n setSideBullets($bullet, 'prev');\n }\n\n if (bulletIndex === lastIndex) {\n setSideBullets($bullet, 'next');\n }\n }\n });\n } else {\n const $bullet = bullets.eq(current);\n const bulletIndex = $bullet.index();\n $bullet.addClass(params.bulletActiveClass);\n\n if (params.dynamicBullets) {\n const $firstDisplayedBullet = bullets.eq(firstIndex);\n const $lastDisplayedBullet = bullets.eq(lastIndex);\n\n for (let i = firstIndex; i <= lastIndex; i += 1) {\n bullets.eq(i).addClass(`${params.bulletActiveClass}-main`);\n }\n\n if (swiper.params.loop) {\n if (bulletIndex >= bullets.length) {\n for (let i = params.dynamicMainBullets; i >= 0; i -= 1) {\n bullets.eq(bullets.length - i).addClass(`${params.bulletActiveClass}-main`);\n }\n\n bullets\n .eq(bullets.length - params.dynamicMainBullets - 1)\n .addClass(`${params.bulletActiveClass}-prev`);\n } else {\n setSideBullets($firstDisplayedBullet, 'prev');\n setSideBullets($lastDisplayedBullet, 'next');\n }\n } else {\n setSideBullets($firstDisplayedBullet, 'prev');\n setSideBullets($lastDisplayedBullet, 'next');\n }\n }\n }\n\n if (params.dynamicBullets) {\n const dynamicBulletsLength = Math.min(bullets.length, params.dynamicMainBullets + 4);\n const bulletsOffset = (bulletSize * dynamicBulletsLength - bulletSize) / 2 - midIndex * bulletSize;\n const offsetProp = rtl ? 'right' : 'left';\n bullets.css(swiper.isHorizontal() ? offsetProp : 'top', `${bulletsOffset}px`);\n }\n }\n\n if (params.type === 'fraction') {\n $el.find(classesToSelector(params.currentClass)).text(params.formatFractionCurrent(current + 1));\n $el.find(classesToSelector(params.totalClass)).text(params.formatFractionTotal(total));\n }\n\n if (params.type === 'progressbar') {\n let progressbarDirection;\n\n if (params.progressbarOpposite) {\n progressbarDirection = swiper.isHorizontal() ? 'vertical' : 'horizontal';\n } else {\n progressbarDirection = swiper.isHorizontal() ? 'horizontal' : 'vertical';\n }\n\n const scale = (current + 1) / total;\n let scaleX = 1;\n let scaleY = 1;\n\n if (progressbarDirection === 'horizontal') {\n scaleX = scale;\n } else {\n scaleY = scale;\n }\n\n $el\n .find(classesToSelector(params.progressbarFillClass))\n .transform(`translate3d(0,0,0) scaleX(${scaleX}) scaleY(${scaleY})`)\n .transition(swiper.params.speed);\n }\n\n if (params.type === 'custom' && params.renderCustom) {\n $el.html(params.renderCustom(swiper, current + 1, total));\n emit('paginationRender', $el[0]);\n } else {\n emit('paginationUpdate', $el[0]);\n }\n\n if (swiper.params.watchOverflow && swiper.enabled) {\n $el[swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);\n }\n }\n\n function render() {\n // Render Container\n const params = swiper.params.pagination;\n if (isPaginationDisabled()) return;\n const slidesLength =\n swiper.virtual && swiper.params.virtual.enabled ? swiper.virtual.slides.length : swiper.slides.length;\n const $el = swiper.pagination.$el;\n let paginationHTML = '';\n\n if (params.type === 'bullets') {\n let numberOfBullets = swiper.params.loop\n ? Math.ceil((slidesLength - swiper.loopedSlides * 2) / swiper.params.slidesPerGroup)\n : swiper.snapGrid.length;\n\n if (\n swiper.params.freeMode &&\n swiper.params.freeMode.enabled &&\n !swiper.params.loop &&\n numberOfBullets > slidesLength\n ) {\n numberOfBullets = slidesLength;\n }\n\n for (let i = 0; i < numberOfBullets; i += 1) {\n if (params.renderBullet) {\n paginationHTML += params.renderBullet.call(swiper, i, params.bulletClass);\n } else {\n paginationHTML += `<${params.bulletElement} class=\"${params.bulletClass}\">`;\n }\n }\n\n $el.html(paginationHTML);\n swiper.pagination.bullets = $el.find(classesToSelector(params.bulletClass));\n }\n\n if (params.type === 'fraction') {\n if (params.renderFraction) {\n paginationHTML = params.renderFraction.call(swiper, params.currentClass, params.totalClass);\n } else {\n paginationHTML =\n `` + ' / ' + ``;\n }\n\n $el.html(paginationHTML);\n }\n\n if (params.type === 'progressbar') {\n if (params.renderProgressbar) {\n paginationHTML = params.renderProgressbar.call(swiper, params.progressbarFillClass);\n } else {\n paginationHTML = ``;\n }\n\n $el.html(paginationHTML);\n }\n\n if (params.type !== 'custom') {\n emit('paginationRender', swiper.pagination.$el[0]);\n }\n }\n\n function init() {\n swiper.params.pagination = createElementIfNotDefined(\n swiper,\n swiper.originalParams.pagination,\n swiper.params.pagination,\n {\n el: 'swiper-pagination',\n },\n );\n const params = swiper.params.pagination;\n if (!params.el) return;\n let $el = $(params.el);\n if ($el.length === 0) return;\n\n if (swiper.params.uniqueNavElements && typeof params.el === 'string' && $el.length > 1) {\n $el = swiper.$el.find(params.el); // check if it belongs to another nested Swiper\n\n if ($el.length > 1) {\n $el = $el.filter((el) => {\n if ($(el).parents('.swiper')[0] !== swiper.el) return false;\n return true;\n });\n }\n }\n\n if (params.type === 'bullets' && params.clickable) {\n $el.addClass(params.clickableClass);\n }\n\n $el.addClass(params.modifierClass + params.type);\n $el.addClass(params.modifierClass + swiper.params.direction);\n\n if (params.type === 'bullets' && params.dynamicBullets) {\n $el.addClass(`${params.modifierClass}${params.type}-dynamic`);\n dynamicBulletIndex = 0;\n\n if (params.dynamicMainBullets < 1) {\n params.dynamicMainBullets = 1;\n }\n }\n\n if (params.type === 'progressbar' && params.progressbarOpposite) {\n $el.addClass(params.progressbarOppositeClass);\n }\n\n if (params.clickable) {\n $el.on('click', classesToSelector(params.bulletClass), function onClick(e) {\n e.preventDefault();\n let index = $(this).index() * swiper.params.slidesPerGroup;\n if (swiper.params.loop) index += swiper.loopedSlides;\n swiper.slideTo(index);\n });\n }\n\n Object.assign(swiper.pagination, {\n $el,\n el: $el[0],\n });\n\n if (!swiper.enabled) {\n $el.addClass(params.lockClass);\n }\n }\n\n function destroy() {\n const params = swiper.params.pagination;\n if (isPaginationDisabled()) return;\n const $el = swiper.pagination.$el;\n $el.removeClass(params.hiddenClass);\n $el.removeClass(params.modifierClass + params.type);\n $el.removeClass(params.modifierClass + swiper.params.direction);\n if (swiper.pagination.bullets && swiper.pagination.bullets.removeClass)\n swiper.pagination.bullets.removeClass(params.bulletActiveClass);\n\n if (params.clickable) {\n $el.off('click', classesToSelector(params.bulletClass));\n }\n }\n\n on('init', () => {\n init();\n render();\n update();\n });\n on('activeIndexChange', () => {\n if (swiper.params.loop) {\n update();\n } else if (typeof swiper.snapIndex === 'undefined') {\n update();\n }\n });\n on('snapIndexChange', () => {\n if (!swiper.params.loop) {\n update();\n }\n });\n on('slidesLengthChange', () => {\n if (swiper.params.loop) {\n render();\n update();\n }\n });\n on('snapGridLengthChange', () => {\n if (!swiper.params.loop) {\n render();\n update();\n }\n });\n on('destroy', () => {\n destroy();\n });\n on('enable disable', () => {\n const {$el} = swiper.pagination;\n\n if ($el) {\n $el[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.pagination.lockClass);\n }\n });\n on('lock unlock', () => {\n update();\n });\n on('click', (_s, e) => {\n const targetEl = e.target;\n const {$el} = swiper.pagination;\n\n if (\n swiper.params.pagination.el &&\n swiper.params.pagination.hideOnClick &&\n $el.length > 0 &&\n !$(targetEl).hasClass(swiper.params.pagination.bulletClass)\n ) {\n if (\n swiper.navigation &&\n ((swiper.navigation.nextEl && targetEl === swiper.navigation.nextEl) ||\n (swiper.navigation.prevEl && targetEl === swiper.navigation.prevEl))\n )\n return;\n const isHidden = $el.hasClass(swiper.params.pagination.hiddenClass);\n\n if (isHidden === true) {\n emit('paginationShow');\n } else {\n emit('paginationHide');\n }\n\n $el.toggleClass(swiper.params.pagination.hiddenClass);\n }\n });\n Object.assign(swiper.pagination, {\n render,\n update,\n init,\n destroy,\n });\n }\n\n function Scrollbar({swiper, extendParams, on, emit}) {\n const document = getDocument();\n let isTouched = false;\n let timeout = null;\n let dragTimeout = null;\n let dragStartPos;\n let dragSize;\n let trackSize;\n let divider;\n extendParams({\n scrollbar: {\n el: null,\n dragSize: 'auto',\n hide: false,\n draggable: false,\n snapOnRelease: true,\n lockClass: 'swiper-scrollbar-lock',\n dragClass: 'swiper-scrollbar-drag',\n },\n });\n swiper.scrollbar = {\n el: null,\n dragEl: null,\n $el: null,\n $dragEl: null,\n };\n\n function setTranslate() {\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return;\n const {scrollbar, rtlTranslate: rtl, progress} = swiper;\n const {$dragEl, $el} = scrollbar;\n const params = swiper.params.scrollbar;\n let newSize = dragSize;\n let newPos = (trackSize - dragSize) * progress;\n\n if (rtl) {\n newPos = -newPos;\n\n if (newPos > 0) {\n newSize = dragSize - newPos;\n newPos = 0;\n } else if (-newPos + dragSize > trackSize) {\n newSize = trackSize + newPos;\n }\n } else if (newPos < 0) {\n newSize = dragSize + newPos;\n newPos = 0;\n } else if (newPos + dragSize > trackSize) {\n newSize = trackSize - newPos;\n }\n\n if (swiper.isHorizontal()) {\n $dragEl.transform(`translate3d(${newPos}px, 0, 0)`);\n $dragEl[0].style.width = `${newSize}px`;\n } else {\n $dragEl.transform(`translate3d(0px, ${newPos}px, 0)`);\n $dragEl[0].style.height = `${newSize}px`;\n }\n\n if (params.hide) {\n clearTimeout(timeout);\n $el[0].style.opacity = 1;\n timeout = setTimeout(() => {\n $el[0].style.opacity = 0;\n $el.transition(400);\n }, 1000);\n }\n }\n\n function setTransition(duration) {\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return;\n swiper.scrollbar.$dragEl.transition(duration);\n }\n\n function updateSize() {\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return;\n const {scrollbar} = swiper;\n const {$dragEl, $el} = scrollbar;\n $dragEl[0].style.width = '';\n $dragEl[0].style.height = '';\n trackSize = swiper.isHorizontal() ? $el[0].offsetWidth : $el[0].offsetHeight;\n divider =\n swiper.size /\n (swiper.virtualSize +\n swiper.params.slidesOffsetBefore -\n (swiper.params.centeredSlides ? swiper.snapGrid[0] : 0));\n\n if (swiper.params.scrollbar.dragSize === 'auto') {\n dragSize = trackSize * divider;\n } else {\n dragSize = parseInt(swiper.params.scrollbar.dragSize, 10);\n }\n\n if (swiper.isHorizontal()) {\n $dragEl[0].style.width = `${dragSize}px`;\n } else {\n $dragEl[0].style.height = `${dragSize}px`;\n }\n\n if (divider >= 1) {\n $el[0].style.display = 'none';\n } else {\n $el[0].style.display = '';\n }\n\n if (swiper.params.scrollbar.hide) {\n $el[0].style.opacity = 0;\n }\n\n if (swiper.params.watchOverflow && swiper.enabled) {\n scrollbar.$el[swiper.isLocked ? 'addClass' : 'removeClass'](swiper.params.scrollbar.lockClass);\n }\n }\n\n function getPointerPosition(e) {\n if (swiper.isHorizontal()) {\n return e.type === 'touchstart' || e.type === 'touchmove' ? e.targetTouches[0].clientX : e.clientX;\n }\n\n return e.type === 'touchstart' || e.type === 'touchmove' ? e.targetTouches[0].clientY : e.clientY;\n }\n\n function setDragPosition(e) {\n const {scrollbar, rtlTranslate: rtl} = swiper;\n const {$el} = scrollbar;\n let positionRatio;\n positionRatio =\n (getPointerPosition(e) -\n $el.offset()[swiper.isHorizontal() ? 'left' : 'top'] -\n (dragStartPos !== null ? dragStartPos : dragSize / 2)) /\n (trackSize - dragSize);\n positionRatio = Math.max(Math.min(positionRatio, 1), 0);\n\n if (rtl) {\n positionRatio = 1 - positionRatio;\n }\n\n const position = swiper.minTranslate() + (swiper.maxTranslate() - swiper.minTranslate()) * positionRatio;\n swiper.updateProgress(position);\n swiper.setTranslate(position);\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n\n function onDragStart(e) {\n const params = swiper.params.scrollbar;\n const {scrollbar, $wrapperEl} = swiper;\n const {$el, $dragEl} = scrollbar;\n isTouched = true;\n dragStartPos =\n e.target === $dragEl[0] || e.target === $dragEl\n ? getPointerPosition(e) - e.target.getBoundingClientRect()[swiper.isHorizontal() ? 'left' : 'top']\n : null;\n e.preventDefault();\n e.stopPropagation();\n $wrapperEl.transition(100);\n $dragEl.transition(100);\n setDragPosition(e);\n clearTimeout(dragTimeout);\n $el.transition(0);\n\n if (params.hide) {\n $el.css('opacity', 1);\n }\n\n if (swiper.params.cssMode) {\n swiper.$wrapperEl.css('scroll-snap-type', 'none');\n }\n\n emit('scrollbarDragStart', e);\n }\n\n function onDragMove(e) {\n const {scrollbar, $wrapperEl} = swiper;\n const {$el, $dragEl} = scrollbar;\n if (!isTouched) return;\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n setDragPosition(e);\n $wrapperEl.transition(0);\n $el.transition(0);\n $dragEl.transition(0);\n emit('scrollbarDragMove', e);\n }\n\n function onDragEnd(e) {\n const params = swiper.params.scrollbar;\n const {scrollbar, $wrapperEl} = swiper;\n const {$el} = scrollbar;\n if (!isTouched) return;\n isTouched = false;\n\n if (swiper.params.cssMode) {\n swiper.$wrapperEl.css('scroll-snap-type', '');\n $wrapperEl.transition('');\n }\n\n if (params.hide) {\n clearTimeout(dragTimeout);\n dragTimeout = nextTick(() => {\n $el.css('opacity', 0);\n $el.transition(400);\n }, 1000);\n }\n\n emit('scrollbarDragEnd', e);\n\n if (params.snapOnRelease) {\n swiper.slideToClosest();\n }\n }\n\n function events(method) {\n const {scrollbar, touchEventsTouch, touchEventsDesktop, params, support} = swiper;\n const $el = scrollbar.$el;\n const target = $el[0];\n const activeListener =\n support.passiveListener && params.passiveListeners\n ? {\n passive: false,\n capture: false,\n }\n : false;\n const passiveListener =\n support.passiveListener && params.passiveListeners\n ? {\n passive: true,\n capture: false,\n }\n : false;\n if (!target) return;\n const eventMethod = method === 'on' ? 'addEventListener' : 'removeEventListener';\n\n if (!support.touch) {\n target[eventMethod](touchEventsDesktop.start, onDragStart, activeListener);\n document[eventMethod](touchEventsDesktop.move, onDragMove, activeListener);\n document[eventMethod](touchEventsDesktop.end, onDragEnd, passiveListener);\n } else {\n target[eventMethod](touchEventsTouch.start, onDragStart, activeListener);\n target[eventMethod](touchEventsTouch.move, onDragMove, activeListener);\n target[eventMethod](touchEventsTouch.end, onDragEnd, passiveListener);\n }\n }\n\n function enableDraggable() {\n if (!swiper.params.scrollbar.el) return;\n events('on');\n }\n\n function disableDraggable() {\n if (!swiper.params.scrollbar.el) return;\n events('off');\n }\n\n function init() {\n const {scrollbar, $el: $swiperEl} = swiper;\n swiper.params.scrollbar = createElementIfNotDefined(\n swiper,\n swiper.originalParams.scrollbar,\n swiper.params.scrollbar,\n {\n el: 'swiper-scrollbar',\n },\n );\n const params = swiper.params.scrollbar;\n if (!params.el) return;\n let $el = $(params.el);\n\n if (\n swiper.params.uniqueNavElements &&\n typeof params.el === 'string' &&\n $el.length > 1 &&\n $swiperEl.find(params.el).length === 1\n ) {\n $el = $swiperEl.find(params.el);\n }\n\n let $dragEl = $el.find(`.${swiper.params.scrollbar.dragClass}`);\n\n if ($dragEl.length === 0) {\n $dragEl = $(`
    `);\n $el.append($dragEl);\n }\n\n Object.assign(scrollbar, {\n $el,\n el: $el[0],\n $dragEl,\n dragEl: $dragEl[0],\n });\n\n if (params.draggable) {\n enableDraggable();\n }\n\n if ($el) {\n $el[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.scrollbar.lockClass);\n }\n }\n\n function destroy() {\n disableDraggable();\n }\n\n on('init', () => {\n init();\n updateSize();\n setTranslate();\n });\n on('update resize observerUpdate lock unlock', () => {\n updateSize();\n });\n on('setTranslate', () => {\n setTranslate();\n });\n on('setTransition', (_s, duration) => {\n setTransition(duration);\n });\n on('enable disable', () => {\n const {$el} = swiper.scrollbar;\n\n if ($el) {\n $el[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.scrollbar.lockClass);\n }\n });\n on('destroy', () => {\n destroy();\n });\n Object.assign(swiper.scrollbar, {\n updateSize,\n setTranslate,\n init,\n destroy,\n });\n }\n\n function Parallax({swiper, extendParams, on}) {\n extendParams({\n parallax: {\n enabled: false,\n },\n });\n\n const setTransform = (el, progress) => {\n const {rtl} = swiper;\n const $el = $(el);\n const rtlFactor = rtl ? -1 : 1;\n const p = $el.attr('data-swiper-parallax') || '0';\n let x = $el.attr('data-swiper-parallax-x');\n let y = $el.attr('data-swiper-parallax-y');\n const scale = $el.attr('data-swiper-parallax-scale');\n const opacity = $el.attr('data-swiper-parallax-opacity');\n\n if (x || y) {\n x = x || '0';\n y = y || '0';\n } else if (swiper.isHorizontal()) {\n x = p;\n y = '0';\n } else {\n y = p;\n x = '0';\n }\n\n if (x.indexOf('%') >= 0) {\n x = `${parseInt(x, 10) * progress * rtlFactor}%`;\n } else {\n x = `${x * progress * rtlFactor}px`;\n }\n\n if (y.indexOf('%') >= 0) {\n y = `${parseInt(y, 10) * progress}%`;\n } else {\n y = `${y * progress}px`;\n }\n\n if (typeof opacity !== 'undefined' && opacity !== null) {\n const currentOpacity = opacity - (opacity - 1) * (1 - Math.abs(progress));\n $el[0].style.opacity = currentOpacity;\n }\n\n if (typeof scale === 'undefined' || scale === null) {\n $el.transform(`translate3d(${x}, ${y}, 0px)`);\n } else {\n const currentScale = scale - (scale - 1) * (1 - Math.abs(progress));\n $el.transform(`translate3d(${x}, ${y}, 0px) scale(${currentScale})`);\n }\n };\n\n const setTranslate = () => {\n const {$el, slides, progress, snapGrid} = swiper;\n $el\n .children(\n '[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]',\n )\n .each((el) => {\n setTransform(el, progress);\n });\n slides.each((slideEl, slideIndex) => {\n let slideProgress = slideEl.progress;\n\n if (swiper.params.slidesPerGroup > 1 && swiper.params.slidesPerView !== 'auto') {\n slideProgress += Math.ceil(slideIndex / 2) - progress * (snapGrid.length - 1);\n }\n\n slideProgress = Math.min(Math.max(slideProgress, -1), 1);\n $(slideEl)\n .find(\n '[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]',\n )\n .each((el) => {\n setTransform(el, slideProgress);\n });\n });\n };\n\n const setTransition = (duration = swiper.params.speed) => {\n const {$el} = swiper;\n $el\n .find(\n '[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]',\n )\n .each((parallaxEl) => {\n const $parallaxEl = $(parallaxEl);\n let parallaxDuration = parseInt($parallaxEl.attr('data-swiper-parallax-duration'), 10) || duration;\n if (duration === 0) parallaxDuration = 0;\n $parallaxEl.transition(parallaxDuration);\n });\n };\n\n on('beforeInit', () => {\n if (!swiper.params.parallax.enabled) return;\n swiper.params.watchSlidesProgress = true;\n swiper.originalParams.watchSlidesProgress = true;\n });\n on('init', () => {\n if (!swiper.params.parallax.enabled) return;\n setTranslate();\n });\n on('setTranslate', () => {\n if (!swiper.params.parallax.enabled) return;\n setTranslate();\n });\n on('setTransition', (_swiper, duration) => {\n if (!swiper.params.parallax.enabled) return;\n setTransition(duration);\n });\n }\n\n function Zoom({swiper, extendParams, on, emit}) {\n const window = getWindow();\n extendParams({\n zoom: {\n enabled: false,\n maxRatio: 3,\n minRatio: 1,\n toggle: true,\n containerClass: 'swiper-zoom-container',\n zoomedSlideClass: 'swiper-slide-zoomed',\n },\n });\n swiper.zoom = {\n enabled: false,\n };\n let currentScale = 1;\n let isScaling = false;\n let gesturesEnabled;\n let fakeGestureTouched;\n let fakeGestureMoved;\n const gesture = {\n $slideEl: undefined,\n slideWidth: undefined,\n slideHeight: undefined,\n $imageEl: undefined,\n $imageWrapEl: undefined,\n maxRatio: 3,\n };\n const image = {\n isTouched: undefined,\n isMoved: undefined,\n currentX: undefined,\n currentY: undefined,\n minX: undefined,\n minY: undefined,\n maxX: undefined,\n maxY: undefined,\n width: undefined,\n height: undefined,\n startX: undefined,\n startY: undefined,\n touchesStart: {},\n touchesCurrent: {},\n };\n const velocity = {\n x: undefined,\n y: undefined,\n prevPositionX: undefined,\n prevPositionY: undefined,\n prevTime: undefined,\n };\n let scale = 1;\n Object.defineProperty(swiper.zoom, 'scale', {\n get() {\n return scale;\n },\n\n set(value) {\n if (scale !== value) {\n const imageEl = gesture.$imageEl ? gesture.$imageEl[0] : undefined;\n const slideEl = gesture.$slideEl ? gesture.$slideEl[0] : undefined;\n emit('zoomChange', value, imageEl, slideEl);\n }\n\n scale = value;\n },\n });\n\n function getDistanceBetweenTouches(e) {\n if (e.targetTouches.length < 2) return 1;\n const x1 = e.targetTouches[0].pageX;\n const y1 = e.targetTouches[0].pageY;\n const x2 = e.targetTouches[1].pageX;\n const y2 = e.targetTouches[1].pageY;\n const distance = Math.sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2);\n return distance;\n } // Events\n\n function onGestureStart(e) {\n const support = swiper.support;\n const params = swiper.params.zoom;\n fakeGestureTouched = false;\n fakeGestureMoved = false;\n\n if (!support.gestures) {\n if (e.type !== 'touchstart' || (e.type === 'touchstart' && e.targetTouches.length < 2)) {\n return;\n }\n\n fakeGestureTouched = true;\n gesture.scaleStart = getDistanceBetweenTouches(e);\n }\n\n if (!gesture.$slideEl || !gesture.$slideEl.length) {\n gesture.$slideEl = $(e.target).closest(`.${swiper.params.slideClass}`);\n if (gesture.$slideEl.length === 0) gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);\n gesture.$imageEl = gesture.$slideEl\n .find(`.${params.containerClass}`)\n .eq(0)\n .find('picture, img, svg, canvas, .swiper-zoom-target')\n .eq(0);\n gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`);\n gesture.maxRatio = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n\n if (gesture.$imageWrapEl.length === 0) {\n gesture.$imageEl = undefined;\n return;\n }\n }\n\n if (gesture.$imageEl) {\n gesture.$imageEl.transition(0);\n }\n\n isScaling = true;\n }\n\n function onGestureChange(e) {\n const support = swiper.support;\n const params = swiper.params.zoom;\n const zoom = swiper.zoom;\n\n if (!support.gestures) {\n if (e.type !== 'touchmove' || (e.type === 'touchmove' && e.targetTouches.length < 2)) {\n return;\n }\n\n fakeGestureMoved = true;\n gesture.scaleMove = getDistanceBetweenTouches(e);\n }\n\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) {\n if (e.type === 'gesturechange') onGestureStart(e);\n return;\n }\n\n if (support.gestures) {\n zoom.scale = e.scale * currentScale;\n } else {\n zoom.scale = (gesture.scaleMove / gesture.scaleStart) * currentScale;\n }\n\n if (zoom.scale > gesture.maxRatio) {\n zoom.scale = gesture.maxRatio - 1 + (zoom.scale - gesture.maxRatio + 1) ** 0.5;\n }\n\n if (zoom.scale < params.minRatio) {\n zoom.scale = params.minRatio + 1 - (params.minRatio - zoom.scale + 1) ** 0.5;\n }\n\n gesture.$imageEl.transform(`translate3d(0,0,0) scale(${zoom.scale})`);\n }\n\n function onGestureEnd(e) {\n const device = swiper.device;\n const support = swiper.support;\n const params = swiper.params.zoom;\n const zoom = swiper.zoom;\n\n if (!support.gestures) {\n if (!fakeGestureTouched || !fakeGestureMoved) {\n return;\n }\n\n if (e.type !== 'touchend' || (e.type === 'touchend' && e.changedTouches.length < 2 && !device.android)) {\n return;\n }\n\n fakeGestureTouched = false;\n fakeGestureMoved = false;\n }\n\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n zoom.scale = Math.max(Math.min(zoom.scale, gesture.maxRatio), params.minRatio);\n gesture.$imageEl.transition(swiper.params.speed).transform(`translate3d(0,0,0) scale(${zoom.scale})`);\n currentScale = zoom.scale;\n isScaling = false;\n if (zoom.scale === 1) gesture.$slideEl = undefined;\n }\n\n function onTouchStart(e) {\n const device = swiper.device;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n if (image.isTouched) return;\n if (device.android && e.cancelable) e.preventDefault();\n image.isTouched = true;\n image.touchesStart.x = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX;\n image.touchesStart.y = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY;\n }\n\n function onTouchMove(e) {\n const zoom = swiper.zoom;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n swiper.allowClick = false;\n if (!image.isTouched || !gesture.$slideEl) return;\n\n if (!image.isMoved) {\n image.width = gesture.$imageEl[0].offsetWidth;\n image.height = gesture.$imageEl[0].offsetHeight;\n image.startX = getTranslate(gesture.$imageWrapEl[0], 'x') || 0;\n image.startY = getTranslate(gesture.$imageWrapEl[0], 'y') || 0;\n gesture.slideWidth = gesture.$slideEl[0].offsetWidth;\n gesture.slideHeight = gesture.$slideEl[0].offsetHeight;\n gesture.$imageWrapEl.transition(0);\n } // Define if we need image drag\n\n const scaledWidth = image.width * zoom.scale;\n const scaledHeight = image.height * zoom.scale;\n if (scaledWidth < gesture.slideWidth && scaledHeight < gesture.slideHeight) return;\n image.minX = Math.min(gesture.slideWidth / 2 - scaledWidth / 2, 0);\n image.maxX = -image.minX;\n image.minY = Math.min(gesture.slideHeight / 2 - scaledHeight / 2, 0);\n image.maxY = -image.minY;\n image.touchesCurrent.x = e.type === 'touchmove' ? e.targetTouches[0].pageX : e.pageX;\n image.touchesCurrent.y = e.type === 'touchmove' ? e.targetTouches[0].pageY : e.pageY;\n\n if (!image.isMoved && !isScaling) {\n if (\n swiper.isHorizontal() &&\n ((Math.floor(image.minX) === Math.floor(image.startX) && image.touchesCurrent.x < image.touchesStart.x) ||\n (Math.floor(image.maxX) === Math.floor(image.startX) && image.touchesCurrent.x > image.touchesStart.x))\n ) {\n image.isTouched = false;\n return;\n }\n\n if (\n !swiper.isHorizontal() &&\n ((Math.floor(image.minY) === Math.floor(image.startY) && image.touchesCurrent.y < image.touchesStart.y) ||\n (Math.floor(image.maxY) === Math.floor(image.startY) && image.touchesCurrent.y > image.touchesStart.y))\n ) {\n image.isTouched = false;\n return;\n }\n }\n\n if (e.cancelable) {\n e.preventDefault();\n }\n\n e.stopPropagation();\n image.isMoved = true;\n image.currentX = image.touchesCurrent.x - image.touchesStart.x + image.startX;\n image.currentY = image.touchesCurrent.y - image.touchesStart.y + image.startY;\n\n if (image.currentX < image.minX) {\n image.currentX = image.minX + 1 - (image.minX - image.currentX + 1) ** 0.8;\n }\n\n if (image.currentX > image.maxX) {\n image.currentX = image.maxX - 1 + (image.currentX - image.maxX + 1) ** 0.8;\n }\n\n if (image.currentY < image.minY) {\n image.currentY = image.minY + 1 - (image.minY - image.currentY + 1) ** 0.8;\n }\n\n if (image.currentY > image.maxY) {\n image.currentY = image.maxY - 1 + (image.currentY - image.maxY + 1) ** 0.8;\n } // Velocity\n\n if (!velocity.prevPositionX) velocity.prevPositionX = image.touchesCurrent.x;\n if (!velocity.prevPositionY) velocity.prevPositionY = image.touchesCurrent.y;\n if (!velocity.prevTime) velocity.prevTime = Date.now();\n velocity.x = (image.touchesCurrent.x - velocity.prevPositionX) / (Date.now() - velocity.prevTime) / 2;\n velocity.y = (image.touchesCurrent.y - velocity.prevPositionY) / (Date.now() - velocity.prevTime) / 2;\n if (Math.abs(image.touchesCurrent.x - velocity.prevPositionX) < 2) velocity.x = 0;\n if (Math.abs(image.touchesCurrent.y - velocity.prevPositionY) < 2) velocity.y = 0;\n velocity.prevPositionX = image.touchesCurrent.x;\n velocity.prevPositionY = image.touchesCurrent.y;\n velocity.prevTime = Date.now();\n gesture.$imageWrapEl.transform(`translate3d(${image.currentX}px, ${image.currentY}px,0)`);\n }\n\n function onTouchEnd() {\n const zoom = swiper.zoom;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n\n if (!image.isTouched || !image.isMoved) {\n image.isTouched = false;\n image.isMoved = false;\n return;\n }\n\n image.isTouched = false;\n image.isMoved = false;\n let momentumDurationX = 300;\n let momentumDurationY = 300;\n const momentumDistanceX = velocity.x * momentumDurationX;\n const newPositionX = image.currentX + momentumDistanceX;\n const momentumDistanceY = velocity.y * momentumDurationY;\n const newPositionY = image.currentY + momentumDistanceY; // Fix duration\n\n if (velocity.x !== 0) momentumDurationX = Math.abs((newPositionX - image.currentX) / velocity.x);\n if (velocity.y !== 0) momentumDurationY = Math.abs((newPositionY - image.currentY) / velocity.y);\n const momentumDuration = Math.max(momentumDurationX, momentumDurationY);\n image.currentX = newPositionX;\n image.currentY = newPositionY; // Define if we need image drag\n\n const scaledWidth = image.width * zoom.scale;\n const scaledHeight = image.height * zoom.scale;\n image.minX = Math.min(gesture.slideWidth / 2 - scaledWidth / 2, 0);\n image.maxX = -image.minX;\n image.minY = Math.min(gesture.slideHeight / 2 - scaledHeight / 2, 0);\n image.maxY = -image.minY;\n image.currentX = Math.max(Math.min(image.currentX, image.maxX), image.minX);\n image.currentY = Math.max(Math.min(image.currentY, image.maxY), image.minY);\n gesture.$imageWrapEl\n .transition(momentumDuration)\n .transform(`translate3d(${image.currentX}px, ${image.currentY}px,0)`);\n }\n\n function onTransitionEnd() {\n const zoom = swiper.zoom;\n\n if (gesture.$slideEl && swiper.previousIndex !== swiper.activeIndex) {\n if (gesture.$imageEl) {\n gesture.$imageEl.transform('translate3d(0,0,0) scale(1)');\n }\n\n if (gesture.$imageWrapEl) {\n gesture.$imageWrapEl.transform('translate3d(0,0,0)');\n }\n\n zoom.scale = 1;\n currentScale = 1;\n gesture.$slideEl = undefined;\n gesture.$imageEl = undefined;\n gesture.$imageWrapEl = undefined;\n }\n }\n\n function zoomIn(e) {\n const zoom = swiper.zoom;\n const params = swiper.params.zoom;\n\n if (!gesture.$slideEl) {\n if (e && e.target) {\n gesture.$slideEl = $(e.target).closest(`.${swiper.params.slideClass}`);\n }\n\n if (!gesture.$slideEl) {\n if (swiper.params.virtual && swiper.params.virtual.enabled && swiper.virtual) {\n gesture.$slideEl = swiper.$wrapperEl.children(`.${swiper.params.slideActiveClass}`);\n } else {\n gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);\n }\n }\n\n gesture.$imageEl = gesture.$slideEl\n .find(`.${params.containerClass}`)\n .eq(0)\n .find('picture, img, svg, canvas, .swiper-zoom-target')\n .eq(0);\n gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`);\n }\n\n if (\n !gesture.$imageEl ||\n gesture.$imageEl.length === 0 ||\n !gesture.$imageWrapEl ||\n gesture.$imageWrapEl.length === 0\n )\n return;\n\n if (swiper.params.cssMode) {\n swiper.wrapperEl.style.overflow = 'hidden';\n swiper.wrapperEl.style.touchAction = 'none';\n }\n\n gesture.$slideEl.addClass(`${params.zoomedSlideClass}`);\n let touchX;\n let touchY;\n let offsetX;\n let offsetY;\n let diffX;\n let diffY;\n let translateX;\n let translateY;\n let imageWidth;\n let imageHeight;\n let scaledWidth;\n let scaledHeight;\n let translateMinX;\n let translateMinY;\n let translateMaxX;\n let translateMaxY;\n let slideWidth;\n let slideHeight;\n\n if (typeof image.touchesStart.x === 'undefined' && e) {\n touchX = e.type === 'touchend' ? e.changedTouches[0].pageX : e.pageX;\n touchY = e.type === 'touchend' ? e.changedTouches[0].pageY : e.pageY;\n } else {\n touchX = image.touchesStart.x;\n touchY = image.touchesStart.y;\n }\n\n zoom.scale = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n currentScale = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n\n if (e) {\n slideWidth = gesture.$slideEl[0].offsetWidth;\n slideHeight = gesture.$slideEl[0].offsetHeight;\n offsetX = gesture.$slideEl.offset().left + window.scrollX;\n offsetY = gesture.$slideEl.offset().top + window.scrollY;\n diffX = offsetX + slideWidth / 2 - touchX;\n diffY = offsetY + slideHeight / 2 - touchY;\n imageWidth = gesture.$imageEl[0].offsetWidth;\n imageHeight = gesture.$imageEl[0].offsetHeight;\n scaledWidth = imageWidth * zoom.scale;\n scaledHeight = imageHeight * zoom.scale;\n translateMinX = Math.min(slideWidth / 2 - scaledWidth / 2, 0);\n translateMinY = Math.min(slideHeight / 2 - scaledHeight / 2, 0);\n translateMaxX = -translateMinX;\n translateMaxY = -translateMinY;\n translateX = diffX * zoom.scale;\n translateY = diffY * zoom.scale;\n\n if (translateX < translateMinX) {\n translateX = translateMinX;\n }\n\n if (translateX > translateMaxX) {\n translateX = translateMaxX;\n }\n\n if (translateY < translateMinY) {\n translateY = translateMinY;\n }\n\n if (translateY > translateMaxY) {\n translateY = translateMaxY;\n }\n } else {\n translateX = 0;\n translateY = 0;\n }\n\n gesture.$imageWrapEl.transition(300).transform(`translate3d(${translateX}px, ${translateY}px,0)`);\n gesture.$imageEl.transition(300).transform(`translate3d(0,0,0) scale(${zoom.scale})`);\n }\n\n function zoomOut() {\n const zoom = swiper.zoom;\n const params = swiper.params.zoom;\n\n if (!gesture.$slideEl) {\n if (swiper.params.virtual && swiper.params.virtual.enabled && swiper.virtual) {\n gesture.$slideEl = swiper.$wrapperEl.children(`.${swiper.params.slideActiveClass}`);\n } else {\n gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);\n }\n\n gesture.$imageEl = gesture.$slideEl\n .find(`.${params.containerClass}`)\n .eq(0)\n .find('picture, img, svg, canvas, .swiper-zoom-target')\n .eq(0);\n gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`);\n }\n\n if (\n !gesture.$imageEl ||\n gesture.$imageEl.length === 0 ||\n !gesture.$imageWrapEl ||\n gesture.$imageWrapEl.length === 0\n )\n return;\n\n if (swiper.params.cssMode) {\n swiper.wrapperEl.style.overflow = '';\n swiper.wrapperEl.style.touchAction = '';\n }\n\n zoom.scale = 1;\n currentScale = 1;\n gesture.$imageWrapEl.transition(300).transform('translate3d(0,0,0)');\n gesture.$imageEl.transition(300).transform('translate3d(0,0,0) scale(1)');\n gesture.$slideEl.removeClass(`${params.zoomedSlideClass}`);\n gesture.$slideEl = undefined;\n } // Toggle Zoom\n\n function zoomToggle(e) {\n const zoom = swiper.zoom;\n\n if (zoom.scale && zoom.scale !== 1) {\n // Zoom Out\n zoomOut();\n } else {\n // Zoom In\n zoomIn(e);\n }\n }\n\n function getListeners() {\n const support = swiper.support;\n const passiveListener =\n swiper.touchEvents.start === 'touchstart' && support.passiveListener && swiper.params.passiveListeners\n ? {\n passive: true,\n capture: false,\n }\n : false;\n const activeListenerWithCapture = support.passiveListener\n ? {\n passive: false,\n capture: true,\n }\n : true;\n return {\n passiveListener,\n activeListenerWithCapture,\n };\n }\n\n function getSlideSelector() {\n return `.${swiper.params.slideClass}`;\n }\n\n function toggleGestures(method) {\n const {passiveListener} = getListeners();\n const slideSelector = getSlideSelector();\n swiper.$wrapperEl[method]('gesturestart', slideSelector, onGestureStart, passiveListener);\n swiper.$wrapperEl[method]('gesturechange', slideSelector, onGestureChange, passiveListener);\n swiper.$wrapperEl[method]('gestureend', slideSelector, onGestureEnd, passiveListener);\n }\n\n function enableGestures() {\n if (gesturesEnabled) return;\n gesturesEnabled = true;\n toggleGestures('on');\n }\n\n function disableGestures() {\n if (!gesturesEnabled) return;\n gesturesEnabled = false;\n toggleGestures('off');\n } // Attach/Detach Events\n\n function enable() {\n const zoom = swiper.zoom;\n if (zoom.enabled) return;\n zoom.enabled = true;\n const support = swiper.support;\n const {passiveListener, activeListenerWithCapture} = getListeners();\n const slideSelector = getSlideSelector(); // Scale image\n\n if (support.gestures) {\n swiper.$wrapperEl.on(swiper.touchEvents.start, enableGestures, passiveListener);\n swiper.$wrapperEl.on(swiper.touchEvents.end, disableGestures, passiveListener);\n } else if (swiper.touchEvents.start === 'touchstart') {\n swiper.$wrapperEl.on(swiper.touchEvents.start, slideSelector, onGestureStart, passiveListener);\n swiper.$wrapperEl.on(swiper.touchEvents.move, slideSelector, onGestureChange, activeListenerWithCapture);\n swiper.$wrapperEl.on(swiper.touchEvents.end, slideSelector, onGestureEnd, passiveListener);\n\n if (swiper.touchEvents.cancel) {\n swiper.$wrapperEl.on(swiper.touchEvents.cancel, slideSelector, onGestureEnd, passiveListener);\n }\n } // Move image\n\n swiper.$wrapperEl.on(\n swiper.touchEvents.move,\n `.${swiper.params.zoom.containerClass}`,\n onTouchMove,\n activeListenerWithCapture,\n );\n }\n\n function disable() {\n const zoom = swiper.zoom;\n if (!zoom.enabled) return;\n const support = swiper.support;\n zoom.enabled = false;\n const {passiveListener, activeListenerWithCapture} = getListeners();\n const slideSelector = getSlideSelector(); // Scale image\n\n if (support.gestures) {\n swiper.$wrapperEl.off(swiper.touchEvents.start, enableGestures, passiveListener);\n swiper.$wrapperEl.off(swiper.touchEvents.end, disableGestures, passiveListener);\n } else if (swiper.touchEvents.start === 'touchstart') {\n swiper.$wrapperEl.off(swiper.touchEvents.start, slideSelector, onGestureStart, passiveListener);\n swiper.$wrapperEl.off(swiper.touchEvents.move, slideSelector, onGestureChange, activeListenerWithCapture);\n swiper.$wrapperEl.off(swiper.touchEvents.end, slideSelector, onGestureEnd, passiveListener);\n\n if (swiper.touchEvents.cancel) {\n swiper.$wrapperEl.off(swiper.touchEvents.cancel, slideSelector, onGestureEnd, passiveListener);\n }\n } // Move image\n\n swiper.$wrapperEl.off(\n swiper.touchEvents.move,\n `.${swiper.params.zoom.containerClass}`,\n onTouchMove,\n activeListenerWithCapture,\n );\n }\n\n on('init', () => {\n if (swiper.params.zoom.enabled) {\n enable();\n }\n });\n on('destroy', () => {\n disable();\n });\n on('touchStart', (_s, e) => {\n if (!swiper.zoom.enabled) return;\n onTouchStart(e);\n });\n on('touchEnd', (_s, e) => {\n if (!swiper.zoom.enabled) return;\n onTouchEnd();\n });\n on('doubleTap', (_s, e) => {\n if (!swiper.animating && swiper.params.zoom.enabled && swiper.zoom.enabled && swiper.params.zoom.toggle) {\n zoomToggle(e);\n }\n });\n on('transitionEnd', () => {\n if (swiper.zoom.enabled && swiper.params.zoom.enabled) {\n onTransitionEnd();\n }\n });\n on('slideChange', () => {\n if (swiper.zoom.enabled && swiper.params.zoom.enabled && swiper.params.cssMode) {\n onTransitionEnd();\n }\n });\n Object.assign(swiper.zoom, {\n enable,\n disable,\n in: zoomIn,\n out: zoomOut,\n toggle: zoomToggle,\n });\n }\n\n function Lazy({swiper, extendParams, on, emit}) {\n extendParams({\n lazy: {\n checkInView: false,\n enabled: false,\n loadPrevNext: false,\n loadPrevNextAmount: 1,\n loadOnTransitionStart: false,\n scrollingElement: '',\n elementClass: 'swiper-lazy',\n loadingClass: 'swiper-lazy-loading',\n loadedClass: 'swiper-lazy-loaded',\n preloaderClass: 'swiper-lazy-preloader',\n },\n });\n swiper.lazy = {};\n let scrollHandlerAttached = false;\n let initialImageLoaded = false;\n\n function loadInSlide(index, loadInDuplicate = true) {\n const params = swiper.params.lazy;\n if (typeof index === 'undefined') return;\n if (swiper.slides.length === 0) return;\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n const $slideEl = isVirtual\n ? swiper.$wrapperEl.children(`.${swiper.params.slideClass}[data-swiper-slide-index=\"${index}\"]`)\n : swiper.slides.eq(index);\n const $images = $slideEl.find(\n `.${params.elementClass}:not(.${params.loadedClass}):not(.${params.loadingClass})`,\n );\n\n if (\n $slideEl.hasClass(params.elementClass) &&\n !$slideEl.hasClass(params.loadedClass) &&\n !$slideEl.hasClass(params.loadingClass)\n ) {\n $images.push($slideEl[0]);\n }\n\n if ($images.length === 0) return;\n $images.each((imageEl) => {\n const $imageEl = $(imageEl);\n $imageEl.addClass(params.loadingClass);\n const background = $imageEl.attr('data-background');\n const src = $imageEl.attr('data-src');\n const srcset = $imageEl.attr('data-srcset');\n const sizes = $imageEl.attr('data-sizes');\n const $pictureEl = $imageEl.parent('picture');\n swiper.loadImage($imageEl[0], src || background, srcset, sizes, false, () => {\n if (\n typeof swiper === 'undefined' ||\n swiper === null ||\n !swiper ||\n (swiper && !swiper.params) ||\n swiper.destroyed\n )\n return;\n\n if (background) {\n $imageEl.css('background-image', `url(\"${background}\")`);\n $imageEl.removeAttr('data-background');\n } else {\n if (srcset) {\n $imageEl.attr('srcset', srcset);\n $imageEl.removeAttr('data-srcset');\n }\n\n if (sizes) {\n $imageEl.attr('sizes', sizes);\n $imageEl.removeAttr('data-sizes');\n }\n\n if ($pictureEl.length) {\n $pictureEl.children('source').each((sourceEl) => {\n const $source = $(sourceEl);\n\n if ($source.attr('data-srcset')) {\n $source.attr('srcset', $source.attr('data-srcset'));\n $source.removeAttr('data-srcset');\n }\n });\n }\n\n if (src) {\n $imageEl.attr('src', src);\n $imageEl.removeAttr('data-src');\n }\n }\n\n $imageEl.addClass(params.loadedClass).removeClass(params.loadingClass);\n $slideEl.find(`.${params.preloaderClass}`).remove();\n\n if (swiper.params.loop && loadInDuplicate) {\n const slideOriginalIndex = $slideEl.attr('data-swiper-slide-index');\n\n if ($slideEl.hasClass(swiper.params.slideDuplicateClass)) {\n const originalSlide = swiper.$wrapperEl.children(\n `[data-swiper-slide-index=\"${slideOriginalIndex}\"]:not(.${swiper.params.slideDuplicateClass})`,\n );\n loadInSlide(originalSlide.index(), false);\n } else {\n const duplicatedSlide = swiper.$wrapperEl.children(\n `.${swiper.params.slideDuplicateClass}[data-swiper-slide-index=\"${slideOriginalIndex}\"]`,\n );\n loadInSlide(duplicatedSlide.index(), false);\n }\n }\n\n emit('lazyImageReady', $slideEl[0], $imageEl[0]);\n\n if (swiper.params.autoHeight) {\n swiper.updateAutoHeight();\n }\n });\n emit('lazyImageLoad', $slideEl[0], $imageEl[0]);\n });\n }\n\n function load() {\n const {$wrapperEl, params: swiperParams, slides, activeIndex} = swiper;\n const isVirtual = swiper.virtual && swiperParams.virtual.enabled;\n const params = swiperParams.lazy;\n let slidesPerView = swiperParams.slidesPerView;\n\n if (slidesPerView === 'auto') {\n slidesPerView = 0;\n }\n\n function slideExist(index) {\n if (isVirtual) {\n if ($wrapperEl.children(`.${swiperParams.slideClass}[data-swiper-slide-index=\"${index}\"]`).length) {\n return true;\n }\n } else if (slides[index]) return true;\n\n return false;\n }\n\n function slideIndex(slideEl) {\n if (isVirtual) {\n return $(slideEl).attr('data-swiper-slide-index');\n }\n\n return $(slideEl).index();\n }\n\n if (!initialImageLoaded) initialImageLoaded = true;\n\n if (swiper.params.watchSlidesProgress) {\n $wrapperEl.children(`.${swiperParams.slideVisibleClass}`).each((slideEl) => {\n const index = isVirtual ? $(slideEl).attr('data-swiper-slide-index') : $(slideEl).index();\n loadInSlide(index);\n });\n } else if (slidesPerView > 1) {\n for (let i = activeIndex; i < activeIndex + slidesPerView; i += 1) {\n if (slideExist(i)) loadInSlide(i);\n }\n } else {\n loadInSlide(activeIndex);\n }\n\n if (params.loadPrevNext) {\n if (slidesPerView > 1 || (params.loadPrevNextAmount && params.loadPrevNextAmount > 1)) {\n const amount = params.loadPrevNextAmount;\n const spv = slidesPerView;\n const maxIndex = Math.min(activeIndex + spv + Math.max(amount, spv), slides.length);\n const minIndex = Math.max(activeIndex - Math.max(spv, amount), 0); // Next Slides\n\n for (let i = activeIndex + slidesPerView; i < maxIndex; i += 1) {\n if (slideExist(i)) loadInSlide(i);\n } // Prev Slides\n\n for (let i = minIndex; i < activeIndex; i += 1) {\n if (slideExist(i)) loadInSlide(i);\n }\n } else {\n const nextSlide = $wrapperEl.children(`.${swiperParams.slideNextClass}`);\n if (nextSlide.length > 0) loadInSlide(slideIndex(nextSlide));\n const prevSlide = $wrapperEl.children(`.${swiperParams.slidePrevClass}`);\n if (prevSlide.length > 0) loadInSlide(slideIndex(prevSlide));\n }\n }\n }\n\n function checkInViewOnLoad() {\n const window = getWindow();\n if (!swiper || swiper.destroyed) return;\n const $scrollElement = swiper.params.lazy.scrollingElement ? $(swiper.params.lazy.scrollingElement) : $(window);\n const isWindow = $scrollElement[0] === window;\n const scrollElementWidth = isWindow ? window.innerWidth : $scrollElement[0].offsetWidth;\n const scrollElementHeight = isWindow ? window.innerHeight : $scrollElement[0].offsetHeight;\n const swiperOffset = swiper.$el.offset();\n const {rtlTranslate: rtl} = swiper;\n let inView = false;\n if (rtl) swiperOffset.left -= swiper.$el[0].scrollLeft;\n const swiperCoord = [\n [swiperOffset.left, swiperOffset.top],\n [swiperOffset.left + swiper.width, swiperOffset.top],\n [swiperOffset.left, swiperOffset.top + swiper.height],\n [swiperOffset.left + swiper.width, swiperOffset.top + swiper.height],\n ];\n\n for (let i = 0; i < swiperCoord.length; i += 1) {\n const point = swiperCoord[i];\n\n if (point[0] >= 0 && point[0] <= scrollElementWidth && point[1] >= 0 && point[1] <= scrollElementHeight) {\n if (point[0] === 0 && point[1] === 0) continue; // eslint-disable-line\n\n inView = true;\n }\n }\n\n const passiveListener =\n swiper.touchEvents.start === 'touchstart' && swiper.support.passiveListener && swiper.params.passiveListeners\n ? {\n passive: true,\n capture: false,\n }\n : false;\n\n if (inView) {\n load();\n $scrollElement.off('scroll', checkInViewOnLoad, passiveListener);\n } else if (!scrollHandlerAttached) {\n scrollHandlerAttached = true;\n $scrollElement.on('scroll', checkInViewOnLoad, passiveListener);\n }\n }\n\n on('beforeInit', () => {\n if (swiper.params.lazy.enabled && swiper.params.preloadImages) {\n swiper.params.preloadImages = false;\n }\n });\n on('init', () => {\n if (swiper.params.lazy.enabled) {\n if (swiper.params.lazy.checkInView) {\n checkInViewOnLoad();\n } else {\n load();\n }\n }\n });\n on('scroll', () => {\n if (swiper.params.freeMode && swiper.params.freeMode.enabled && !swiper.params.freeMode.sticky) {\n load();\n }\n });\n on('scrollbarDragMove resize _freeModeNoMomentumRelease', () => {\n if (swiper.params.lazy.enabled) {\n if (swiper.params.lazy.checkInView) {\n checkInViewOnLoad();\n } else {\n load();\n }\n }\n });\n on('transitionStart', () => {\n if (swiper.params.lazy.enabled) {\n if (\n swiper.params.lazy.loadOnTransitionStart ||\n (!swiper.params.lazy.loadOnTransitionStart && !initialImageLoaded)\n ) {\n if (swiper.params.lazy.checkInView) {\n checkInViewOnLoad();\n } else {\n load();\n }\n }\n }\n });\n on('transitionEnd', () => {\n if (swiper.params.lazy.enabled && !swiper.params.lazy.loadOnTransitionStart) {\n if (swiper.params.lazy.checkInView) {\n checkInViewOnLoad();\n } else {\n load();\n }\n }\n });\n on('slideChange', () => {\n const {lazy, cssMode, watchSlidesProgress, touchReleaseOnEdges, resistanceRatio} = swiper.params;\n\n if (lazy.enabled && (cssMode || (watchSlidesProgress && (touchReleaseOnEdges || resistanceRatio === 0)))) {\n load();\n }\n });\n Object.assign(swiper.lazy, {\n load,\n loadInSlide,\n });\n }\n\n /* eslint no-bitwise: [\"error\", { \"allow\": [\">>\"] }] */\n function Controller({swiper, extendParams, on}) {\n extendParams({\n controller: {\n control: undefined,\n inverse: false,\n by: 'slide', // or 'container'\n },\n });\n swiper.controller = {\n control: undefined,\n };\n\n function LinearSpline(x, y) {\n const binarySearch = (function search() {\n let maxIndex;\n let minIndex;\n let guess;\n return (array, val) => {\n minIndex = -1;\n maxIndex = array.length;\n\n while (maxIndex - minIndex > 1) {\n guess = (maxIndex + minIndex) >> 1;\n\n if (array[guess] <= val) {\n minIndex = guess;\n } else {\n maxIndex = guess;\n }\n }\n\n return maxIndex;\n };\n })();\n\n this.x = x;\n this.y = y;\n this.lastIndex = x.length - 1; // Given an x value (x2), return the expected y2 value:\n // (x1,y1) is the known point before given value,\n // (x3,y3) is the known point after given value.\n\n let i1;\n let i3;\n\n this.interpolate = function interpolate(x2) {\n if (!x2) return 0; // Get the indexes of x1 and x3 (the array indexes before and after given x2):\n\n i3 = binarySearch(this.x, x2);\n i1 = i3 - 1; // We have our indexes i1 & i3, so we can calculate already:\n // y2 := ((x2−x1) × (y3−y1)) ÷ (x3−x1) + y1\n\n return ((x2 - this.x[i1]) * (this.y[i3] - this.y[i1])) / (this.x[i3] - this.x[i1]) + this.y[i1];\n };\n\n return this;\n } // xxx: for now i will just save one spline function to to\n\n function getInterpolateFunction(c) {\n if (!swiper.controller.spline) {\n swiper.controller.spline = swiper.params.loop\n ? new LinearSpline(swiper.slidesGrid, c.slidesGrid)\n : new LinearSpline(swiper.snapGrid, c.snapGrid);\n }\n }\n\n function setTranslate(_t, byController) {\n const controlled = swiper.controller.control;\n let multiplier;\n let controlledTranslate;\n const Swiper = swiper.constructor;\n\n function setControlledTranslate(c) {\n // this will create an Interpolate function based on the snapGrids\n // x is the Grid of the scrolled scroller and y will be the controlled scroller\n // it makes sense to create this only once and recall it for the interpolation\n // the function does a lot of value caching for performance\n const translate = swiper.rtlTranslate ? -swiper.translate : swiper.translate;\n\n if (swiper.params.controller.by === 'slide') {\n getInterpolateFunction(c); // i am not sure why the values have to be multiplicated this way, tried to invert the snapGrid\n // but it did not work out\n\n controlledTranslate = -swiper.controller.spline.interpolate(-translate);\n }\n\n if (!controlledTranslate || swiper.params.controller.by === 'container') {\n multiplier = (c.maxTranslate() - c.minTranslate()) / (swiper.maxTranslate() - swiper.minTranslate());\n controlledTranslate = (translate - swiper.minTranslate()) * multiplier + c.minTranslate();\n }\n\n if (swiper.params.controller.inverse) {\n controlledTranslate = c.maxTranslate() - controlledTranslate;\n }\n\n c.updateProgress(controlledTranslate);\n c.setTranslate(controlledTranslate, swiper);\n c.updateActiveIndex();\n c.updateSlidesClasses();\n }\n\n if (Array.isArray(controlled)) {\n for (let i = 0; i < controlled.length; i += 1) {\n if (controlled[i] !== byController && controlled[i] instanceof Swiper) {\n setControlledTranslate(controlled[i]);\n }\n }\n } else if (controlled instanceof Swiper && byController !== controlled) {\n setControlledTranslate(controlled);\n }\n }\n\n function setTransition(duration, byController) {\n const Swiper = swiper.constructor;\n const controlled = swiper.controller.control;\n let i;\n\n function setControlledTransition(c) {\n c.setTransition(duration, swiper);\n\n if (duration !== 0) {\n c.transitionStart();\n\n if (c.params.autoHeight) {\n nextTick(() => {\n c.updateAutoHeight();\n });\n }\n\n c.$wrapperEl.transitionEnd(() => {\n if (!controlled) return;\n\n if (c.params.loop && swiper.params.controller.by === 'slide') {\n c.loopFix();\n }\n\n c.transitionEnd();\n });\n }\n }\n\n if (Array.isArray(controlled)) {\n for (i = 0; i < controlled.length; i += 1) {\n if (controlled[i] !== byController && controlled[i] instanceof Swiper) {\n setControlledTransition(controlled[i]);\n }\n }\n } else if (controlled instanceof Swiper && byController !== controlled) {\n setControlledTransition(controlled);\n }\n }\n\n function removeSpline() {\n if (!swiper.controller.control) return;\n\n if (swiper.controller.spline) {\n swiper.controller.spline = undefined;\n delete swiper.controller.spline;\n }\n }\n\n on('beforeInit', () => {\n swiper.controller.control = swiper.params.controller.control;\n });\n on('update', () => {\n removeSpline();\n });\n on('resize', () => {\n removeSpline();\n });\n on('observerUpdate', () => {\n removeSpline();\n });\n on('setTranslate', (_s, translate, byController) => {\n if (!swiper.controller.control) return;\n swiper.controller.setTranslate(translate, byController);\n });\n on('setTransition', (_s, duration, byController) => {\n if (!swiper.controller.control) return;\n swiper.controller.setTransition(duration, byController);\n });\n Object.assign(swiper.controller, {\n setTranslate,\n setTransition,\n });\n }\n\n function A11y({swiper, extendParams, on}) {\n extendParams({\n a11y: {\n enabled: true,\n notificationClass: 'swiper-notification',\n prevSlideMessage: 'Previous slide',\n nextSlideMessage: 'Next slide',\n firstSlideMessage: 'This is the first slide',\n lastSlideMessage: 'This is the last slide',\n paginationBulletMessage: 'Go to slide {{index}}',\n slideLabelMessage: '{{index}} / {{slidesLength}}',\n containerMessage: null,\n containerRoleDescriptionMessage: null,\n itemRoleDescriptionMessage: null,\n slideRole: 'group',\n },\n });\n let liveRegion = null;\n\n function notify(message) {\n const notification = liveRegion;\n if (notification.length === 0) return;\n notification.html('');\n notification.html(message);\n }\n\n function getRandomNumber(size = 16) {\n const randomChar = () => Math.round(16 * Math.random()).toString(16);\n\n return 'x'.repeat(size).replace(/x/g, randomChar);\n }\n\n function makeElFocusable($el) {\n $el.attr('tabIndex', '0');\n }\n\n function makeElNotFocusable($el) {\n $el.attr('tabIndex', '-1');\n }\n\n function addElRole($el, role) {\n $el.attr('role', role);\n }\n\n function addElRoleDescription($el, description) {\n $el.attr('aria-roledescription', description);\n }\n\n function addElControls($el, controls) {\n $el.attr('aria-controls', controls);\n }\n\n function addElLabel($el, label) {\n $el.attr('aria-label', label);\n }\n\n function addElId($el, id) {\n $el.attr('id', id);\n }\n\n function addElLive($el, live) {\n $el.attr('aria-live', live);\n }\n\n function disableEl($el) {\n $el.attr('aria-disabled', true);\n }\n\n function enableEl($el) {\n $el.attr('aria-disabled', false);\n }\n\n function onEnterOrSpaceKey(e) {\n if (e.keyCode !== 13 && e.keyCode !== 32) return;\n const params = swiper.params.a11y;\n const $targetEl = $(e.target);\n\n if (swiper.navigation && swiper.navigation.$nextEl && $targetEl.is(swiper.navigation.$nextEl)) {\n if (!(swiper.isEnd && !swiper.params.loop)) {\n swiper.slideNext();\n }\n\n if (swiper.isEnd) {\n notify(params.lastSlideMessage);\n } else {\n notify(params.nextSlideMessage);\n }\n }\n\n if (swiper.navigation && swiper.navigation.$prevEl && $targetEl.is(swiper.navigation.$prevEl)) {\n if (!(swiper.isBeginning && !swiper.params.loop)) {\n swiper.slidePrev();\n }\n\n if (swiper.isBeginning) {\n notify(params.firstSlideMessage);\n } else {\n notify(params.prevSlideMessage);\n }\n }\n\n if (swiper.pagination && $targetEl.is(classesToSelector(swiper.params.pagination.bulletClass))) {\n $targetEl[0].click();\n }\n }\n\n function updateNavigation() {\n if (swiper.params.loop || swiper.params.rewind || !swiper.navigation) return;\n const {$nextEl, $prevEl} = swiper.navigation;\n\n if ($prevEl && $prevEl.length > 0) {\n if (swiper.isBeginning) {\n disableEl($prevEl);\n makeElNotFocusable($prevEl);\n } else {\n enableEl($prevEl);\n makeElFocusable($prevEl);\n }\n }\n\n if ($nextEl && $nextEl.length > 0) {\n if (swiper.isEnd) {\n disableEl($nextEl);\n makeElNotFocusable($nextEl);\n } else {\n enableEl($nextEl);\n makeElFocusable($nextEl);\n }\n }\n }\n\n function hasPagination() {\n return swiper.pagination && swiper.pagination.bullets && swiper.pagination.bullets.length;\n }\n\n function hasClickablePagination() {\n return hasPagination() && swiper.params.pagination.clickable;\n }\n\n function updatePagination() {\n const params = swiper.params.a11y;\n if (!hasPagination()) return;\n swiper.pagination.bullets.each((bulletEl) => {\n const $bulletEl = $(bulletEl);\n\n if (swiper.params.pagination.clickable) {\n makeElFocusable($bulletEl);\n\n if (!swiper.params.pagination.renderBullet) {\n addElRole($bulletEl, 'button');\n addElLabel($bulletEl, params.paginationBulletMessage.replace(/\\{\\{index\\}\\}/, $bulletEl.index() + 1));\n }\n }\n\n if ($bulletEl.is(`.${swiper.params.pagination.bulletActiveClass}`)) {\n $bulletEl.attr('aria-current', 'true');\n } else {\n $bulletEl.removeAttr('aria-current');\n }\n });\n }\n\n const initNavEl = ($el, wrapperId, message) => {\n makeElFocusable($el);\n\n if ($el[0].tagName !== 'BUTTON') {\n addElRole($el, 'button');\n $el.on('keydown', onEnterOrSpaceKey);\n }\n\n addElLabel($el, message);\n addElControls($el, wrapperId);\n };\n\n function init() {\n const params = swiper.params.a11y;\n swiper.$el.append(liveRegion); // Container\n\n const $containerEl = swiper.$el;\n\n if (params.containerRoleDescriptionMessage) {\n addElRoleDescription($containerEl, params.containerRoleDescriptionMessage);\n }\n\n if (params.containerMessage) {\n addElLabel($containerEl, params.containerMessage);\n } // Wrapper\n\n const $wrapperEl = swiper.$wrapperEl;\n const wrapperId = $wrapperEl.attr('id') || `swiper-wrapper-${getRandomNumber(16)}`;\n const live = swiper.params.autoplay && swiper.params.autoplay.enabled ? 'off' : 'polite';\n addElId($wrapperEl, wrapperId);\n addElLive($wrapperEl, live); // Slide\n\n if (params.itemRoleDescriptionMessage) {\n addElRoleDescription($(swiper.slides), params.itemRoleDescriptionMessage);\n }\n\n addElRole($(swiper.slides), params.slideRole);\n const slidesLength = swiper.params.loop\n ? swiper.slides.filter((el) => !el.classList.contains(swiper.params.slideDuplicateClass)).length\n : swiper.slides.length;\n swiper.slides.each((slideEl, index) => {\n const $slideEl = $(slideEl);\n const slideIndex = swiper.params.loop ? parseInt($slideEl.attr('data-swiper-slide-index'), 10) : index;\n const ariaLabelMessage = params.slideLabelMessage\n .replace(/\\{\\{index\\}\\}/, slideIndex + 1)\n .replace(/\\{\\{slidesLength\\}\\}/, slidesLength);\n addElLabel($slideEl, ariaLabelMessage);\n }); // Navigation\n\n let $nextEl;\n let $prevEl;\n\n if (swiper.navigation && swiper.navigation.$nextEl) {\n $nextEl = swiper.navigation.$nextEl;\n }\n\n if (swiper.navigation && swiper.navigation.$prevEl) {\n $prevEl = swiper.navigation.$prevEl;\n }\n\n if ($nextEl && $nextEl.length) {\n initNavEl($nextEl, wrapperId, params.nextSlideMessage);\n }\n\n if ($prevEl && $prevEl.length) {\n initNavEl($prevEl, wrapperId, params.prevSlideMessage);\n } // Pagination\n\n if (hasClickablePagination()) {\n swiper.pagination.$el.on(\n 'keydown',\n classesToSelector(swiper.params.pagination.bulletClass),\n onEnterOrSpaceKey,\n );\n }\n }\n\n function destroy() {\n if (liveRegion && liveRegion.length > 0) liveRegion.remove();\n let $nextEl;\n let $prevEl;\n\n if (swiper.navigation && swiper.navigation.$nextEl) {\n $nextEl = swiper.navigation.$nextEl;\n }\n\n if (swiper.navigation && swiper.navigation.$prevEl) {\n $prevEl = swiper.navigation.$prevEl;\n }\n\n if ($nextEl) {\n $nextEl.off('keydown', onEnterOrSpaceKey);\n }\n\n if ($prevEl) {\n $prevEl.off('keydown', onEnterOrSpaceKey);\n } // Pagination\n\n if (hasClickablePagination()) {\n swiper.pagination.$el.off(\n 'keydown',\n classesToSelector(swiper.params.pagination.bulletClass),\n onEnterOrSpaceKey,\n );\n }\n }\n\n on('beforeInit', () => {\n liveRegion = $(\n ``,\n );\n });\n on('afterInit', () => {\n if (!swiper.params.a11y.enabled) return;\n init();\n updateNavigation();\n });\n on('toEdge', () => {\n if (!swiper.params.a11y.enabled) return;\n updateNavigation();\n });\n on('fromEdge', () => {\n if (!swiper.params.a11y.enabled) return;\n updateNavigation();\n });\n on('paginationUpdate', () => {\n if (!swiper.params.a11y.enabled) return;\n updatePagination();\n });\n on('destroy', () => {\n if (!swiper.params.a11y.enabled) return;\n destroy();\n });\n }\n\n function History({swiper, extendParams, on}) {\n extendParams({\n history: {\n enabled: false,\n root: '',\n replaceState: false,\n key: 'slides',\n },\n });\n let initialized = false;\n let paths = {};\n\n const slugify = (text) => {\n return text\n .toString()\n .replace(/\\s+/g, '-')\n .replace(/[^\\w-]+/g, '')\n .replace(/--+/g, '-')\n .replace(/^-+/, '')\n .replace(/-+$/, '');\n };\n\n const getPathValues = (urlOverride) => {\n const window = getWindow();\n let location;\n\n if (urlOverride) {\n location = new URL(urlOverride);\n } else {\n location = window.location;\n }\n\n const pathArray = location.pathname\n .slice(1)\n .split('/')\n .filter((part) => part !== '');\n const total = pathArray.length;\n const key = pathArray[total - 2];\n const value = pathArray[total - 1];\n return {\n key,\n value,\n };\n };\n\n const setHistory = (key, index) => {\n const window = getWindow();\n if (!initialized || !swiper.params.history.enabled) return;\n let location;\n\n if (swiper.params.url) {\n location = new URL(swiper.params.url);\n } else {\n location = window.location;\n }\n\n const slide = swiper.slides.eq(index);\n let value = slugify(slide.attr('data-history'));\n\n if (swiper.params.history.root.length > 0) {\n let root = swiper.params.history.root;\n if (root[root.length - 1] === '/') root = root.slice(0, root.length - 1);\n value = `${root}/${key}/${value}`;\n } else if (!location.pathname.includes(key)) {\n value = `${key}/${value}`;\n }\n\n const currentState = window.history.state;\n\n if (currentState && currentState.value === value) {\n return;\n }\n\n if (swiper.params.history.replaceState) {\n window.history.replaceState(\n {\n value,\n },\n null,\n value,\n );\n } else {\n window.history.pushState(\n {\n value,\n },\n null,\n value,\n );\n }\n };\n\n const scrollToSlide = (speed, value, runCallbacks) => {\n if (value) {\n for (let i = 0, length = swiper.slides.length; i < length; i += 1) {\n const slide = swiper.slides.eq(i);\n const slideHistory = slugify(slide.attr('data-history'));\n\n if (slideHistory === value && !slide.hasClass(swiper.params.slideDuplicateClass)) {\n const index = slide.index();\n swiper.slideTo(index, speed, runCallbacks);\n }\n }\n } else {\n swiper.slideTo(0, speed, runCallbacks);\n }\n };\n\n const setHistoryPopState = () => {\n paths = getPathValues(swiper.params.url);\n scrollToSlide(swiper.params.speed, swiper.paths.value, false);\n };\n\n const init = () => {\n const window = getWindow();\n if (!swiper.params.history) return;\n\n if (!window.history || !window.history.pushState) {\n swiper.params.history.enabled = false;\n swiper.params.hashNavigation.enabled = true;\n return;\n }\n\n initialized = true;\n paths = getPathValues(swiper.params.url);\n if (!paths.key && !paths.value) return;\n scrollToSlide(0, paths.value, swiper.params.runCallbacksOnInit);\n\n if (!swiper.params.history.replaceState) {\n window.addEventListener('popstate', setHistoryPopState);\n }\n };\n\n const destroy = () => {\n const window = getWindow();\n\n if (!swiper.params.history.replaceState) {\n window.removeEventListener('popstate', setHistoryPopState);\n }\n };\n\n on('init', () => {\n if (swiper.params.history.enabled) {\n init();\n }\n });\n on('destroy', () => {\n if (swiper.params.history.enabled) {\n destroy();\n }\n });\n on('transitionEnd _freeModeNoMomentumRelease', () => {\n if (initialized) {\n setHistory(swiper.params.history.key, swiper.activeIndex);\n }\n });\n on('slideChange', () => {\n if (initialized && swiper.params.cssMode) {\n setHistory(swiper.params.history.key, swiper.activeIndex);\n }\n });\n }\n\n function HashNavigation({swiper, extendParams, emit, on}) {\n let initialized = false;\n const document = getDocument();\n const window = getWindow();\n extendParams({\n hashNavigation: {\n enabled: false,\n replaceState: false,\n watchState: false,\n },\n });\n\n const onHashChange = () => {\n emit('hashChange');\n const newHash = document.location.hash.replace('#', '');\n const activeSlideHash = swiper.slides.eq(swiper.activeIndex).attr('data-hash');\n\n if (newHash !== activeSlideHash) {\n const newIndex = swiper.$wrapperEl.children(`.${swiper.params.slideClass}[data-hash=\"${newHash}\"]`).index();\n if (typeof newIndex === 'undefined') return;\n swiper.slideTo(newIndex);\n }\n };\n\n const setHash = () => {\n if (!initialized || !swiper.params.hashNavigation.enabled) return;\n\n if (swiper.params.hashNavigation.replaceState && window.history && window.history.replaceState) {\n window.history.replaceState(null, null, `#${swiper.slides.eq(swiper.activeIndex).attr('data-hash')}` || '');\n emit('hashSet');\n } else {\n const slide = swiper.slides.eq(swiper.activeIndex);\n const hash = slide.attr('data-hash') || slide.attr('data-history');\n document.location.hash = hash || '';\n emit('hashSet');\n }\n };\n\n const init = () => {\n if (!swiper.params.hashNavigation.enabled || (swiper.params.history && swiper.params.history.enabled)) return;\n initialized = true;\n const hash = document.location.hash.replace('#', '');\n\n if (hash) {\n const speed = 0;\n\n for (let i = 0, length = swiper.slides.length; i < length; i += 1) {\n const slide = swiper.slides.eq(i);\n const slideHash = slide.attr('data-hash') || slide.attr('data-history');\n\n if (slideHash === hash && !slide.hasClass(swiper.params.slideDuplicateClass)) {\n const index = slide.index();\n swiper.slideTo(index, speed, swiper.params.runCallbacksOnInit, true);\n }\n }\n }\n\n if (swiper.params.hashNavigation.watchState) {\n $(window).on('hashchange', onHashChange);\n }\n };\n\n const destroy = () => {\n if (swiper.params.hashNavigation.watchState) {\n $(window).off('hashchange', onHashChange);\n }\n };\n\n on('init', () => {\n if (swiper.params.hashNavigation.enabled) {\n init();\n }\n });\n on('destroy', () => {\n if (swiper.params.hashNavigation.enabled) {\n destroy();\n }\n });\n on('transitionEnd _freeModeNoMomentumRelease', () => {\n if (initialized) {\n setHash();\n }\n });\n on('slideChange', () => {\n if (initialized && swiper.params.cssMode) {\n setHash();\n }\n });\n }\n\n /* eslint no-underscore-dangle: \"off\" */\n function Autoplay({swiper, extendParams, on, emit}) {\n let timeout;\n swiper.autoplay = {\n running: false,\n paused: false,\n };\n extendParams({\n autoplay: {\n enabled: false,\n delay: 3000,\n waitForTransition: true,\n disableOnInteraction: true,\n stopOnLastSlide: false,\n reverseDirection: false,\n pauseOnMouseEnter: false,\n },\n });\n\n function run() {\n const $activeSlideEl = swiper.slides.eq(swiper.activeIndex);\n let delay = swiper.params.autoplay.delay;\n\n if ($activeSlideEl.attr('data-swiper-autoplay')) {\n delay = $activeSlideEl.attr('data-swiper-autoplay') || swiper.params.autoplay.delay;\n }\n\n clearTimeout(timeout);\n timeout = nextTick(() => {\n let autoplayResult;\n\n if (swiper.params.autoplay.reverseDirection) {\n if (swiper.params.loop) {\n swiper.loopFix();\n autoplayResult = swiper.slidePrev(swiper.params.speed, true, true);\n emit('autoplay');\n } else if (!swiper.isBeginning) {\n autoplayResult = swiper.slidePrev(swiper.params.speed, true, true);\n emit('autoplay');\n } else if (!swiper.params.autoplay.stopOnLastSlide) {\n autoplayResult = swiper.slideTo(swiper.slides.length - 1, swiper.params.speed, true, true);\n emit('autoplay');\n } else {\n stop();\n }\n } else if (swiper.params.loop) {\n swiper.loopFix();\n autoplayResult = swiper.slideNext(swiper.params.speed, true, true);\n emit('autoplay');\n } else if (!swiper.isEnd) {\n autoplayResult = swiper.slideNext(swiper.params.speed, true, true);\n emit('autoplay');\n } else if (!swiper.params.autoplay.stopOnLastSlide) {\n autoplayResult = swiper.slideTo(0, swiper.params.speed, true, true);\n emit('autoplay');\n } else {\n stop();\n }\n\n if (swiper.params.cssMode && swiper.autoplay.running) run();\n else if (autoplayResult === false) {\n run();\n }\n }, delay);\n }\n\n function start() {\n if (typeof timeout !== 'undefined') return false;\n if (swiper.autoplay.running) return false;\n swiper.autoplay.running = true;\n emit('autoplayStart');\n run();\n return true;\n }\n\n function stop() {\n if (!swiper.autoplay.running) return false;\n if (typeof timeout === 'undefined') return false;\n\n if (timeout) {\n clearTimeout(timeout);\n timeout = undefined;\n }\n\n swiper.autoplay.running = false;\n emit('autoplayStop');\n return true;\n }\n\n function pause(speed) {\n if (!swiper.autoplay.running) return;\n if (swiper.autoplay.paused) return;\n if (timeout) clearTimeout(timeout);\n swiper.autoplay.paused = true;\n\n if (speed === 0 || !swiper.params.autoplay.waitForTransition) {\n swiper.autoplay.paused = false;\n run();\n } else {\n ['transitionend', 'webkitTransitionEnd'].forEach((event) => {\n swiper.$wrapperEl[0].addEventListener(event, onTransitionEnd);\n });\n }\n }\n\n function onVisibilityChange() {\n const document = getDocument();\n\n if (document.visibilityState === 'hidden' && swiper.autoplay.running) {\n pause();\n }\n\n if (document.visibilityState === 'visible' && swiper.autoplay.paused) {\n run();\n swiper.autoplay.paused = false;\n }\n }\n\n function onTransitionEnd(e) {\n if (!swiper || swiper.destroyed || !swiper.$wrapperEl) return;\n if (e.target !== swiper.$wrapperEl[0]) return;\n ['transitionend', 'webkitTransitionEnd'].forEach((event) => {\n swiper.$wrapperEl[0].removeEventListener(event, onTransitionEnd);\n });\n swiper.autoplay.paused = false;\n\n if (!swiper.autoplay.running) {\n stop();\n } else {\n run();\n }\n }\n\n function onMouseEnter() {\n if (swiper.params.autoplay.disableOnInteraction) {\n stop();\n } else {\n pause();\n }\n\n ['transitionend', 'webkitTransitionEnd'].forEach((event) => {\n swiper.$wrapperEl[0].removeEventListener(event, onTransitionEnd);\n });\n }\n\n function onMouseLeave() {\n if (swiper.params.autoplay.disableOnInteraction) {\n return;\n }\n\n swiper.autoplay.paused = false;\n run();\n }\n\n function attachMouseEvents() {\n if (swiper.params.autoplay.pauseOnMouseEnter) {\n swiper.$el.on('mouseenter', onMouseEnter);\n swiper.$el.on('mouseleave', onMouseLeave);\n }\n }\n\n function detachMouseEvents() {\n swiper.$el.off('mouseenter', onMouseEnter);\n swiper.$el.off('mouseleave', onMouseLeave);\n }\n\n on('init', () => {\n if (swiper.params.autoplay.enabled) {\n start();\n const document = getDocument();\n document.addEventListener('visibilitychange', onVisibilityChange);\n attachMouseEvents();\n }\n });\n on('beforeTransitionStart', (_s, speed, internal) => {\n if (swiper.autoplay.running) {\n if (internal || !swiper.params.autoplay.disableOnInteraction) {\n swiper.autoplay.pause(speed);\n } else {\n stop();\n }\n }\n });\n on('sliderFirstMove', () => {\n if (swiper.autoplay.running) {\n if (swiper.params.autoplay.disableOnInteraction) {\n stop();\n } else {\n pause();\n }\n }\n });\n on('touchEnd', () => {\n if (swiper.params.cssMode && swiper.autoplay.paused && !swiper.params.autoplay.disableOnInteraction) {\n run();\n }\n });\n on('destroy', () => {\n detachMouseEvents();\n\n if (swiper.autoplay.running) {\n stop();\n }\n\n const document = getDocument();\n document.removeEventListener('visibilitychange', onVisibilityChange);\n });\n Object.assign(swiper.autoplay, {\n pause,\n run,\n start,\n stop,\n });\n }\n\n function Thumb({swiper, extendParams, on}) {\n extendParams({\n thumbs: {\n swiper: null,\n multipleActiveThumbs: true,\n autoScrollOffset: 0,\n slideThumbActiveClass: 'swiper-slide-thumb-active',\n thumbsContainerClass: 'swiper-thumbs',\n },\n });\n let initialized = false;\n let swiperCreated = false;\n swiper.thumbs = {\n swiper: null,\n };\n\n function onThumbClick() {\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n const clickedIndex = thumbsSwiper.clickedIndex;\n const clickedSlide = thumbsSwiper.clickedSlide;\n if (clickedSlide && $(clickedSlide).hasClass(swiper.params.thumbs.slideThumbActiveClass)) return;\n if (typeof clickedIndex === 'undefined' || clickedIndex === null) return;\n let slideToIndex;\n\n if (thumbsSwiper.params.loop) {\n slideToIndex = parseInt($(thumbsSwiper.clickedSlide).attr('data-swiper-slide-index'), 10);\n } else {\n slideToIndex = clickedIndex;\n }\n\n if (swiper.params.loop) {\n let currentIndex = swiper.activeIndex;\n\n if (swiper.slides.eq(currentIndex).hasClass(swiper.params.slideDuplicateClass)) {\n swiper.loopFix(); // eslint-disable-next-line\n\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n currentIndex = swiper.activeIndex;\n }\n\n const prevIndex = swiper.slides\n .eq(currentIndex)\n .prevAll(`[data-swiper-slide-index=\"${slideToIndex}\"]`)\n .eq(0)\n .index();\n const nextIndex = swiper.slides\n .eq(currentIndex)\n .nextAll(`[data-swiper-slide-index=\"${slideToIndex}\"]`)\n .eq(0)\n .index();\n if (typeof prevIndex === 'undefined') slideToIndex = nextIndex;\n else if (typeof nextIndex === 'undefined') slideToIndex = prevIndex;\n else if (nextIndex - currentIndex < currentIndex - prevIndex) slideToIndex = nextIndex;\n else slideToIndex = prevIndex;\n }\n\n swiper.slideTo(slideToIndex);\n }\n\n function init() {\n const {thumbs: thumbsParams} = swiper.params;\n if (initialized) return false;\n initialized = true;\n const SwiperClass = swiper.constructor;\n\n if (thumbsParams.swiper instanceof SwiperClass) {\n swiper.thumbs.swiper = thumbsParams.swiper;\n Object.assign(swiper.thumbs.swiper.originalParams, {\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n });\n Object.assign(swiper.thumbs.swiper.params, {\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n });\n } else if (isObject(thumbsParams.swiper)) {\n const thumbsSwiperParams = Object.assign({}, thumbsParams.swiper);\n Object.assign(thumbsSwiperParams, {\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n });\n swiper.thumbs.swiper = new SwiperClass(thumbsSwiperParams);\n swiperCreated = true;\n }\n\n swiper.thumbs.swiper.$el.addClass(swiper.params.thumbs.thumbsContainerClass);\n swiper.thumbs.swiper.on('tap', onThumbClick);\n return true;\n }\n\n function update(initial) {\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n const slidesPerView =\n thumbsSwiper.params.slidesPerView === 'auto'\n ? thumbsSwiper.slidesPerViewDynamic()\n : thumbsSwiper.params.slidesPerView;\n const autoScrollOffset = swiper.params.thumbs.autoScrollOffset;\n const useOffset = autoScrollOffset && !thumbsSwiper.params.loop;\n\n if (swiper.realIndex !== thumbsSwiper.realIndex || useOffset) {\n let currentThumbsIndex = thumbsSwiper.activeIndex;\n let newThumbsIndex;\n let direction;\n\n if (thumbsSwiper.params.loop) {\n if (thumbsSwiper.slides.eq(currentThumbsIndex).hasClass(thumbsSwiper.params.slideDuplicateClass)) {\n thumbsSwiper.loopFix(); // eslint-disable-next-line\n\n thumbsSwiper._clientLeft = thumbsSwiper.$wrapperEl[0].clientLeft;\n currentThumbsIndex = thumbsSwiper.activeIndex;\n } // Find actual thumbs index to slide to\n\n const prevThumbsIndex = thumbsSwiper.slides\n .eq(currentThumbsIndex)\n .prevAll(`[data-swiper-slide-index=\"${swiper.realIndex}\"]`)\n .eq(0)\n .index();\n const nextThumbsIndex = thumbsSwiper.slides\n .eq(currentThumbsIndex)\n .nextAll(`[data-swiper-slide-index=\"${swiper.realIndex}\"]`)\n .eq(0)\n .index();\n\n if (typeof prevThumbsIndex === 'undefined') {\n newThumbsIndex = nextThumbsIndex;\n } else if (typeof nextThumbsIndex === 'undefined') {\n newThumbsIndex = prevThumbsIndex;\n } else if (nextThumbsIndex - currentThumbsIndex === currentThumbsIndex - prevThumbsIndex) {\n newThumbsIndex = thumbsSwiper.params.slidesPerGroup > 1 ? nextThumbsIndex : currentThumbsIndex;\n } else if (nextThumbsIndex - currentThumbsIndex < currentThumbsIndex - prevThumbsIndex) {\n newThumbsIndex = nextThumbsIndex;\n } else {\n newThumbsIndex = prevThumbsIndex;\n }\n\n direction = swiper.activeIndex > swiper.previousIndex ? 'next' : 'prev';\n } else {\n newThumbsIndex = swiper.realIndex;\n direction = newThumbsIndex > swiper.previousIndex ? 'next' : 'prev';\n }\n\n if (useOffset) {\n newThumbsIndex += direction === 'next' ? autoScrollOffset : -1 * autoScrollOffset;\n }\n\n if (thumbsSwiper.visibleSlidesIndexes && thumbsSwiper.visibleSlidesIndexes.indexOf(newThumbsIndex) < 0) {\n if (thumbsSwiper.params.centeredSlides) {\n if (newThumbsIndex > currentThumbsIndex) {\n newThumbsIndex = newThumbsIndex - Math.floor(slidesPerView / 2) + 1;\n } else {\n newThumbsIndex = newThumbsIndex + Math.floor(slidesPerView / 2) - 1;\n }\n } else if (newThumbsIndex > currentThumbsIndex && thumbsSwiper.params.slidesPerGroup === 1);\n\n thumbsSwiper.slideTo(newThumbsIndex, initial ? 0 : undefined);\n }\n } // Activate thumbs\n\n let thumbsToActivate = 1;\n const thumbActiveClass = swiper.params.thumbs.slideThumbActiveClass;\n\n if (swiper.params.slidesPerView > 1 && !swiper.params.centeredSlides) {\n thumbsToActivate = swiper.params.slidesPerView;\n }\n\n if (!swiper.params.thumbs.multipleActiveThumbs) {\n thumbsToActivate = 1;\n }\n\n thumbsToActivate = Math.floor(thumbsToActivate);\n thumbsSwiper.slides.removeClass(thumbActiveClass);\n\n if (thumbsSwiper.params.loop || (thumbsSwiper.params.virtual && thumbsSwiper.params.virtual.enabled)) {\n for (let i = 0; i < thumbsToActivate; i += 1) {\n thumbsSwiper.$wrapperEl\n .children(`[data-swiper-slide-index=\"${swiper.realIndex + i}\"]`)\n .addClass(thumbActiveClass);\n }\n } else {\n for (let i = 0; i < thumbsToActivate; i += 1) {\n thumbsSwiper.slides.eq(swiper.realIndex + i).addClass(thumbActiveClass);\n }\n }\n }\n\n on('beforeInit', () => {\n const {thumbs} = swiper.params;\n if (!thumbs || !thumbs.swiper) return;\n init();\n update(true);\n });\n on('slideChange update resize observerUpdate', () => {\n if (!swiper.thumbs.swiper) return;\n update();\n });\n on('setTransition', (_s, duration) => {\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n thumbsSwiper.setTransition(duration);\n });\n on('beforeDestroy', () => {\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n\n if (swiperCreated && thumbsSwiper) {\n thumbsSwiper.destroy();\n }\n });\n Object.assign(swiper.thumbs, {\n init,\n update,\n });\n }\n\n function freeMode({swiper, extendParams, emit, once}) {\n extendParams({\n freeMode: {\n enabled: false,\n momentum: true,\n momentumRatio: 1,\n momentumBounce: true,\n momentumBounceRatio: 1,\n momentumVelocityRatio: 1,\n sticky: false,\n minimumVelocity: 0.02,\n },\n });\n\n function onTouchMove() {\n const {touchEventsData: data, touches} = swiper; // Velocity\n\n if (data.velocities.length === 0) {\n data.velocities.push({\n position: touches[swiper.isHorizontal() ? 'startX' : 'startY'],\n time: data.touchStartTime,\n });\n }\n\n data.velocities.push({\n position: touches[swiper.isHorizontal() ? 'currentX' : 'currentY'],\n time: now(),\n });\n }\n\n function onTouchEnd({currentPos}) {\n const {params, $wrapperEl, rtlTranslate: rtl, snapGrid, touchEventsData: data} = swiper; // Time diff\n\n const touchEndTime = now();\n const timeDiff = touchEndTime - data.touchStartTime;\n\n if (currentPos < -swiper.minTranslate()) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n\n if (currentPos > -swiper.maxTranslate()) {\n if (swiper.slides.length < snapGrid.length) {\n swiper.slideTo(snapGrid.length - 1);\n } else {\n swiper.slideTo(swiper.slides.length - 1);\n }\n\n return;\n }\n\n if (params.freeMode.momentum) {\n if (data.velocities.length > 1) {\n const lastMoveEvent = data.velocities.pop();\n const velocityEvent = data.velocities.pop();\n const distance = lastMoveEvent.position - velocityEvent.position;\n const time = lastMoveEvent.time - velocityEvent.time;\n swiper.velocity = distance / time;\n swiper.velocity /= 2;\n\n if (Math.abs(swiper.velocity) < params.freeMode.minimumVelocity) {\n swiper.velocity = 0;\n } // this implies that the user stopped moving a finger then released.\n // There would be no events with distance zero, so the last event is stale.\n\n if (time > 150 || now() - lastMoveEvent.time > 300) {\n swiper.velocity = 0;\n }\n } else {\n swiper.velocity = 0;\n }\n\n swiper.velocity *= params.freeMode.momentumVelocityRatio;\n data.velocities.length = 0;\n let momentumDuration = 1000 * params.freeMode.momentumRatio;\n const momentumDistance = swiper.velocity * momentumDuration;\n let newPosition = swiper.translate + momentumDistance;\n if (rtl) newPosition = -newPosition;\n let doBounce = false;\n let afterBouncePosition;\n const bounceAmount = Math.abs(swiper.velocity) * 20 * params.freeMode.momentumBounceRatio;\n let needsLoopFix;\n\n if (newPosition < swiper.maxTranslate()) {\n if (params.freeMode.momentumBounce) {\n if (newPosition + swiper.maxTranslate() < -bounceAmount) {\n newPosition = swiper.maxTranslate() - bounceAmount;\n }\n\n afterBouncePosition = swiper.maxTranslate();\n doBounce = true;\n data.allowMomentumBounce = true;\n } else {\n newPosition = swiper.maxTranslate();\n }\n\n if (params.loop && params.centeredSlides) needsLoopFix = true;\n } else if (newPosition > swiper.minTranslate()) {\n if (params.freeMode.momentumBounce) {\n if (newPosition - swiper.minTranslate() > bounceAmount) {\n newPosition = swiper.minTranslate() + bounceAmount;\n }\n\n afterBouncePosition = swiper.minTranslate();\n doBounce = true;\n data.allowMomentumBounce = true;\n } else {\n newPosition = swiper.minTranslate();\n }\n\n if (params.loop && params.centeredSlides) needsLoopFix = true;\n } else if (params.freeMode.sticky) {\n let nextSlide;\n\n for (let j = 0; j < snapGrid.length; j += 1) {\n if (snapGrid[j] > -newPosition) {\n nextSlide = j;\n break;\n }\n }\n\n if (\n Math.abs(snapGrid[nextSlide] - newPosition) < Math.abs(snapGrid[nextSlide - 1] - newPosition) ||\n swiper.swipeDirection === 'next'\n ) {\n newPosition = snapGrid[nextSlide];\n } else {\n newPosition = snapGrid[nextSlide - 1];\n }\n\n newPosition = -newPosition;\n }\n\n if (needsLoopFix) {\n once('transitionEnd', () => {\n swiper.loopFix();\n });\n } // Fix duration\n\n if (swiper.velocity !== 0) {\n if (rtl) {\n momentumDuration = Math.abs((-newPosition - swiper.translate) / swiper.velocity);\n } else {\n momentumDuration = Math.abs((newPosition - swiper.translate) / swiper.velocity);\n }\n\n if (params.freeMode.sticky) {\n // If freeMode.sticky is active and the user ends a swipe with a slow-velocity\n // event, then durations can be 20+ seconds to slide one (or zero!) slides.\n // It's easy to see this when simulating touch with mouse events. To fix this,\n // limit single-slide swipes to the default slide duration. This also has the\n // nice side effect of matching slide speed if the user stopped moving before\n // lifting finger or mouse vs. moving slowly before lifting the finger/mouse.\n // For faster swipes, also apply limits (albeit higher ones).\n const moveDistance = Math.abs((rtl ? -newPosition : newPosition) - swiper.translate);\n const currentSlideSize = swiper.slidesSizesGrid[swiper.activeIndex];\n\n if (moveDistance < currentSlideSize) {\n momentumDuration = params.speed;\n } else if (moveDistance < 2 * currentSlideSize) {\n momentumDuration = params.speed * 1.5;\n } else {\n momentumDuration = params.speed * 2.5;\n }\n }\n } else if (params.freeMode.sticky) {\n swiper.slideToClosest();\n return;\n }\n\n if (params.freeMode.momentumBounce && doBounce) {\n swiper.updateProgress(afterBouncePosition);\n swiper.setTransition(momentumDuration);\n swiper.setTranslate(newPosition);\n swiper.transitionStart(true, swiper.swipeDirection);\n swiper.animating = true;\n $wrapperEl.transitionEnd(() => {\n if (!swiper || swiper.destroyed || !data.allowMomentumBounce) return;\n emit('momentumBounce');\n swiper.setTransition(params.speed);\n setTimeout(() => {\n swiper.setTranslate(afterBouncePosition);\n $wrapperEl.transitionEnd(() => {\n if (!swiper || swiper.destroyed) return;\n swiper.transitionEnd();\n });\n }, 0);\n });\n } else if (swiper.velocity) {\n emit('_freeModeNoMomentumRelease');\n swiper.updateProgress(newPosition);\n swiper.setTransition(momentumDuration);\n swiper.setTranslate(newPosition);\n swiper.transitionStart(true, swiper.swipeDirection);\n\n if (!swiper.animating) {\n swiper.animating = true;\n $wrapperEl.transitionEnd(() => {\n if (!swiper || swiper.destroyed) return;\n swiper.transitionEnd();\n });\n }\n } else {\n swiper.updateProgress(newPosition);\n }\n\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n } else if (params.freeMode.sticky) {\n swiper.slideToClosest();\n return;\n } else if (params.freeMode) {\n emit('_freeModeNoMomentumRelease');\n }\n\n if (!params.freeMode.momentum || timeDiff >= params.longSwipesMs) {\n swiper.updateProgress();\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n }\n\n Object.assign(swiper, {\n freeMode: {\n onTouchMove,\n onTouchEnd,\n },\n });\n }\n\n function Grid({swiper, extendParams}) {\n extendParams({\n grid: {\n rows: 1,\n fill: 'column',\n },\n });\n let slidesNumberEvenToRows;\n let slidesPerRow;\n let numFullColumns;\n\n const initSlides = (slidesLength) => {\n const {slidesPerView} = swiper.params;\n const {rows, fill} = swiper.params.grid;\n slidesPerRow = slidesNumberEvenToRows / rows;\n numFullColumns = Math.floor(slidesLength / rows);\n\n if (Math.floor(slidesLength / rows) === slidesLength / rows) {\n slidesNumberEvenToRows = slidesLength;\n } else {\n slidesNumberEvenToRows = Math.ceil(slidesLength / rows) * rows;\n }\n\n if (slidesPerView !== 'auto' && fill === 'row') {\n slidesNumberEvenToRows = Math.max(slidesNumberEvenToRows, slidesPerView * rows);\n }\n };\n\n const updateSlide = (i, slide, slidesLength, getDirectionLabel) => {\n const {slidesPerGroup, spaceBetween} = swiper.params;\n const {rows, fill} = swiper.params.grid; // Set slides order\n\n let newSlideOrderIndex;\n let column;\n let row;\n\n if (fill === 'row' && slidesPerGroup > 1) {\n const groupIndex = Math.floor(i / (slidesPerGroup * rows));\n const slideIndexInGroup = i - rows * slidesPerGroup * groupIndex;\n const columnsInGroup =\n groupIndex === 0\n ? slidesPerGroup\n : Math.min(Math.ceil((slidesLength - groupIndex * rows * slidesPerGroup) / rows), slidesPerGroup);\n row = Math.floor(slideIndexInGroup / columnsInGroup);\n column = slideIndexInGroup - row * columnsInGroup + groupIndex * slidesPerGroup;\n newSlideOrderIndex = column + (row * slidesNumberEvenToRows) / rows;\n slide.css({\n '-webkit-order': newSlideOrderIndex,\n order: newSlideOrderIndex,\n });\n } else if (fill === 'column') {\n column = Math.floor(i / rows);\n row = i - column * rows;\n\n if (column > numFullColumns || (column === numFullColumns && row === rows - 1)) {\n row += 1;\n\n if (row >= rows) {\n row = 0;\n column += 1;\n }\n }\n } else {\n row = Math.floor(i / slidesPerRow);\n column = i - row * slidesPerRow;\n }\n\n slide.css(getDirectionLabel('margin-top'), row !== 0 ? spaceBetween && `${spaceBetween}px` : '');\n };\n\n const updateWrapperSize = (slideSize, snapGrid, getDirectionLabel) => {\n const {spaceBetween, centeredSlides, roundLengths} = swiper.params;\n const {rows} = swiper.params.grid;\n swiper.virtualSize = (slideSize + spaceBetween) * slidesNumberEvenToRows;\n swiper.virtualSize = Math.ceil(swiper.virtualSize / rows) - spaceBetween;\n swiper.$wrapperEl.css({\n [getDirectionLabel('width')]: `${swiper.virtualSize + spaceBetween}px`,\n });\n\n if (centeredSlides) {\n snapGrid.splice(0, snapGrid.length);\n const newSlidesGrid = [];\n\n for (let i = 0; i < snapGrid.length; i += 1) {\n let slidesGridItem = snapGrid[i];\n if (roundLengths) slidesGridItem = Math.floor(slidesGridItem);\n if (snapGrid[i] < swiper.virtualSize + snapGrid[0]) newSlidesGrid.push(slidesGridItem);\n }\n\n snapGrid.push(...newSlidesGrid);\n }\n };\n\n swiper.grid = {\n initSlides,\n updateSlide,\n updateWrapperSize,\n };\n }\n\n function appendSlide(slides) {\n const swiper = this;\n const {$wrapperEl, params} = swiper;\n\n if (params.loop) {\n swiper.loopDestroy();\n }\n\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) $wrapperEl.append(slides[i]);\n }\n } else {\n $wrapperEl.append(slides);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n\n if (!params.observer) {\n swiper.update();\n }\n }\n\n function prependSlide(slides) {\n const swiper = this;\n const {params, $wrapperEl, activeIndex} = swiper;\n\n if (params.loop) {\n swiper.loopDestroy();\n }\n\n let newActiveIndex = activeIndex + 1;\n\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) $wrapperEl.prepend(slides[i]);\n }\n\n newActiveIndex = activeIndex + slides.length;\n } else {\n $wrapperEl.prepend(slides);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n\n if (!params.observer) {\n swiper.update();\n }\n\n swiper.slideTo(newActiveIndex, 0, false);\n }\n\n function addSlide(index, slides) {\n const swiper = this;\n const {$wrapperEl, params, activeIndex} = swiper;\n let activeIndexBuffer = activeIndex;\n\n if (params.loop) {\n activeIndexBuffer -= swiper.loopedSlides;\n swiper.loopDestroy();\n swiper.slides = $wrapperEl.children(`.${params.slideClass}`);\n }\n\n const baseLength = swiper.slides.length;\n\n if (index <= 0) {\n swiper.prependSlide(slides);\n return;\n }\n\n if (index >= baseLength) {\n swiper.appendSlide(slides);\n return;\n }\n\n let newActiveIndex = activeIndexBuffer > index ? activeIndexBuffer + 1 : activeIndexBuffer;\n const slidesBuffer = [];\n\n for (let i = baseLength - 1; i >= index; i -= 1) {\n const currentSlide = swiper.slides.eq(i);\n currentSlide.remove();\n slidesBuffer.unshift(currentSlide);\n }\n\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) $wrapperEl.append(slides[i]);\n }\n\n newActiveIndex = activeIndexBuffer > index ? activeIndexBuffer + slides.length : activeIndexBuffer;\n } else {\n $wrapperEl.append(slides);\n }\n\n for (let i = 0; i < slidesBuffer.length; i += 1) {\n $wrapperEl.append(slidesBuffer[i]);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n\n if (!params.observer) {\n swiper.update();\n }\n\n if (params.loop) {\n swiper.slideTo(newActiveIndex + swiper.loopedSlides, 0, false);\n } else {\n swiper.slideTo(newActiveIndex, 0, false);\n }\n }\n\n function removeSlide(slidesIndexes) {\n const swiper = this;\n const {params, $wrapperEl, activeIndex} = swiper;\n let activeIndexBuffer = activeIndex;\n\n if (params.loop) {\n activeIndexBuffer -= swiper.loopedSlides;\n swiper.loopDestroy();\n swiper.slides = $wrapperEl.children(`.${params.slideClass}`);\n }\n\n let newActiveIndex = activeIndexBuffer;\n let indexToRemove;\n\n if (typeof slidesIndexes === 'object' && 'length' in slidesIndexes) {\n for (let i = 0; i < slidesIndexes.length; i += 1) {\n indexToRemove = slidesIndexes[i];\n if (swiper.slides[indexToRemove]) swiper.slides.eq(indexToRemove).remove();\n if (indexToRemove < newActiveIndex) newActiveIndex -= 1;\n }\n\n newActiveIndex = Math.max(newActiveIndex, 0);\n } else {\n indexToRemove = slidesIndexes;\n if (swiper.slides[indexToRemove]) swiper.slides.eq(indexToRemove).remove();\n if (indexToRemove < newActiveIndex) newActiveIndex -= 1;\n newActiveIndex = Math.max(newActiveIndex, 0);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n\n if (!params.observer) {\n swiper.update();\n }\n\n if (params.loop) {\n swiper.slideTo(newActiveIndex + swiper.loopedSlides, 0, false);\n } else {\n swiper.slideTo(newActiveIndex, 0, false);\n }\n }\n\n function removeAllSlides() {\n const swiper = this;\n const slidesIndexes = [];\n\n for (let i = 0; i < swiper.slides.length; i += 1) {\n slidesIndexes.push(i);\n }\n\n swiper.removeSlide(slidesIndexes);\n }\n\n function Manipulation({swiper}) {\n Object.assign(swiper, {\n appendSlide: appendSlide.bind(swiper),\n prependSlide: prependSlide.bind(swiper),\n addSlide: addSlide.bind(swiper),\n removeSlide: removeSlide.bind(swiper),\n removeAllSlides: removeAllSlides.bind(swiper),\n });\n }\n\n function effectInit(params) {\n const {effect, swiper, on, setTranslate, setTransition, overwriteParams, perspective} = params;\n on('beforeInit', () => {\n if (swiper.params.effect !== effect) return;\n swiper.classNames.push(`${swiper.params.containerModifierClass}${effect}`);\n\n if (perspective && perspective()) {\n swiper.classNames.push(`${swiper.params.containerModifierClass}3d`);\n }\n\n const overwriteParamsResult = overwriteParams ? overwriteParams() : {};\n Object.assign(swiper.params, overwriteParamsResult);\n Object.assign(swiper.originalParams, overwriteParamsResult);\n });\n on('setTranslate', () => {\n if (swiper.params.effect !== effect) return;\n setTranslate();\n });\n on('setTransition', (_s, duration) => {\n if (swiper.params.effect !== effect) return;\n setTransition(duration);\n });\n }\n\n function effectTarget(effectParams, $slideEl) {\n if (effectParams.transformEl) {\n return $slideEl.find(effectParams.transformEl).css({\n 'backface-visibility': 'hidden',\n '-webkit-backface-visibility': 'hidden',\n });\n }\n\n return $slideEl;\n }\n\n function effectVirtualTransitionEnd({swiper, duration, transformEl, allSlides}) {\n const {slides, activeIndex, $wrapperEl} = swiper;\n\n if (swiper.params.virtualTranslate && duration !== 0) {\n let eventTriggered = false;\n let $transitionEndTarget;\n\n if (allSlides) {\n $transitionEndTarget = transformEl ? slides.find(transformEl) : slides;\n } else {\n $transitionEndTarget = transformEl ? slides.eq(activeIndex).find(transformEl) : slides.eq(activeIndex);\n }\n\n $transitionEndTarget.transitionEnd(() => {\n if (eventTriggered) return;\n if (!swiper || swiper.destroyed) return;\n eventTriggered = true;\n swiper.animating = false;\n const triggerEvents = ['webkitTransitionEnd', 'transitionend'];\n\n for (let i = 0; i < triggerEvents.length; i += 1) {\n $wrapperEl.trigger(triggerEvents[i]);\n }\n });\n }\n }\n\n function EffectFade({swiper, extendParams, on}) {\n extendParams({\n fadeEffect: {\n crossFade: false,\n transformEl: null,\n },\n });\n\n const setTranslate = () => {\n const {slides} = swiper;\n const params = swiper.params.fadeEffect;\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = swiper.slides.eq(i);\n const offset = $slideEl[0].swiperSlideOffset;\n let tx = -offset;\n if (!swiper.params.virtualTranslate) tx -= swiper.translate;\n let ty = 0;\n\n if (!swiper.isHorizontal()) {\n ty = tx;\n tx = 0;\n }\n\n const slideOpacity = swiper.params.fadeEffect.crossFade\n ? Math.max(1 - Math.abs($slideEl[0].progress), 0)\n : 1 + Math.min(Math.max($slideEl[0].progress, -1), 0);\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl\n .css({\n opacity: slideOpacity,\n })\n .transform(`translate3d(${tx}px, ${ty}px, 0px)`);\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.fadeEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements.transition(duration);\n effectVirtualTransitionEnd({\n swiper,\n duration,\n transformEl,\n allSlides: true,\n });\n };\n\n effectInit({\n effect: 'fade',\n swiper,\n on,\n setTranslate,\n setTransition,\n overwriteParams: () => ({\n slidesPerView: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n spaceBetween: 0,\n virtualTranslate: !swiper.params.cssMode,\n }),\n });\n }\n\n function EffectCube({swiper, extendParams, on}) {\n extendParams({\n cubeEffect: {\n slideShadows: true,\n shadow: true,\n shadowOffset: 20,\n shadowScale: 0.94,\n },\n });\n\n const setTranslate = () => {\n const {\n $el,\n $wrapperEl,\n slides,\n width: swiperWidth,\n height: swiperHeight,\n rtlTranslate: rtl,\n size: swiperSize,\n browser,\n } = swiper;\n const params = swiper.params.cubeEffect;\n const isHorizontal = swiper.isHorizontal();\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n let wrapperRotate = 0;\n let $cubeShadowEl;\n\n if (params.shadow) {\n if (isHorizontal) {\n $cubeShadowEl = $wrapperEl.find('.swiper-cube-shadow');\n\n if ($cubeShadowEl.length === 0) {\n $cubeShadowEl = $('
    ');\n $wrapperEl.append($cubeShadowEl);\n }\n\n $cubeShadowEl.css({\n height: `${swiperWidth}px`,\n });\n } else {\n $cubeShadowEl = $el.find('.swiper-cube-shadow');\n\n if ($cubeShadowEl.length === 0) {\n $cubeShadowEl = $('
    ');\n $el.append($cubeShadowEl);\n }\n }\n }\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n let slideIndex = i;\n\n if (isVirtual) {\n slideIndex = parseInt($slideEl.attr('data-swiper-slide-index'), 10);\n }\n\n let slideAngle = slideIndex * 90;\n let round = Math.floor(slideAngle / 360);\n\n if (rtl) {\n slideAngle = -slideAngle;\n round = Math.floor(-slideAngle / 360);\n }\n\n const progress = Math.max(Math.min($slideEl[0].progress, 1), -1);\n let tx = 0;\n let ty = 0;\n let tz = 0;\n\n if (slideIndex % 4 === 0) {\n tx = -round * 4 * swiperSize;\n tz = 0;\n } else if ((slideIndex - 1) % 4 === 0) {\n tx = 0;\n tz = -round * 4 * swiperSize;\n } else if ((slideIndex - 2) % 4 === 0) {\n tx = swiperSize + round * 4 * swiperSize;\n tz = swiperSize;\n } else if ((slideIndex - 3) % 4 === 0) {\n tx = -swiperSize;\n tz = 3 * swiperSize + swiperSize * 4 * round;\n }\n\n if (rtl) {\n tx = -tx;\n }\n\n if (!isHorizontal) {\n ty = tx;\n tx = 0;\n }\n\n const transform = `rotateX(${isHorizontal ? 0 : -slideAngle}deg) rotateY(${\n isHorizontal ? slideAngle : 0\n }deg) translate3d(${tx}px, ${ty}px, ${tz}px)`;\n\n if (progress <= 1 && progress > -1) {\n wrapperRotate = slideIndex * 90 + progress * 90;\n if (rtl) wrapperRotate = -slideIndex * 90 - progress * 90;\n }\n\n $slideEl.transform(transform);\n\n if (params.slideShadows) {\n // Set shadows\n let shadowBefore = isHorizontal\n ? $slideEl.find('.swiper-slide-shadow-left')\n : $slideEl.find('.swiper-slide-shadow-top');\n let shadowAfter = isHorizontal\n ? $slideEl.find('.swiper-slide-shadow-right')\n : $slideEl.find('.swiper-slide-shadow-bottom');\n\n if (shadowBefore.length === 0) {\n shadowBefore = $(`
    `);\n $slideEl.append(shadowBefore);\n }\n\n if (shadowAfter.length === 0) {\n shadowAfter = $(`
    `);\n $slideEl.append(shadowAfter);\n }\n\n if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0);\n if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0);\n }\n }\n\n $wrapperEl.css({\n '-webkit-transform-origin': `50% 50% -${swiperSize / 2}px`,\n 'transform-origin': `50% 50% -${swiperSize / 2}px`,\n });\n\n if (params.shadow) {\n if (isHorizontal) {\n $cubeShadowEl.transform(\n `translate3d(0px, ${swiperWidth / 2 + params.shadowOffset}px, ${\n -swiperWidth / 2\n }px) rotateX(90deg) rotateZ(0deg) scale(${params.shadowScale})`,\n );\n } else {\n const shadowAngle = Math.abs(wrapperRotate) - Math.floor(Math.abs(wrapperRotate) / 90) * 90;\n const multiplier =\n 1.5 - (Math.sin((shadowAngle * 2 * Math.PI) / 360) / 2 + Math.cos((shadowAngle * 2 * Math.PI) / 360) / 2);\n const scale1 = params.shadowScale;\n const scale2 = params.shadowScale / multiplier;\n const offset = params.shadowOffset;\n $cubeShadowEl.transform(\n `scale3d(${scale1}, 1, ${scale2}) translate3d(0px, ${swiperHeight / 2 + offset}px, ${\n -swiperHeight / 2 / scale2\n }px) rotateX(-90deg)`,\n );\n }\n }\n\n const zFactor = browser.isSafari || browser.isWebView ? -swiperSize / 2 : 0;\n $wrapperEl.transform(\n `translate3d(0px,0,${zFactor}px) rotateX(${swiper.isHorizontal() ? 0 : wrapperRotate}deg) rotateY(${\n swiper.isHorizontal() ? -wrapperRotate : 0\n }deg)`,\n );\n };\n\n const setTransition = (duration) => {\n const {$el, slides} = swiper;\n slides\n .transition(duration)\n .find(\n '.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left',\n )\n .transition(duration);\n\n if (swiper.params.cubeEffect.shadow && !swiper.isHorizontal()) {\n $el.find('.swiper-cube-shadow').transition(duration);\n }\n };\n\n effectInit({\n effect: 'cube',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => true,\n overwriteParams: () => ({\n slidesPerView: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n resistanceRatio: 0,\n spaceBetween: 0,\n centeredSlides: false,\n virtualTranslate: true,\n }),\n });\n }\n\n function createShadow(params, $slideEl, side) {\n const shadowClass = `swiper-slide-shadow${side ? `-${side}` : ''}`;\n const $shadowContainer = params.transformEl ? $slideEl.find(params.transformEl) : $slideEl;\n let $shadowEl = $shadowContainer.children(`.${shadowClass}`);\n\n if (!$shadowEl.length) {\n $shadowEl = $(`
    `);\n $shadowContainer.append($shadowEl);\n }\n\n return $shadowEl;\n }\n\n function EffectFlip({swiper, extendParams, on}) {\n extendParams({\n flipEffect: {\n slideShadows: true,\n limitRotation: true,\n transformEl: null,\n },\n });\n\n const setTranslate = () => {\n const {slides, rtlTranslate: rtl} = swiper;\n const params = swiper.params.flipEffect;\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n let progress = $slideEl[0].progress;\n\n if (swiper.params.flipEffect.limitRotation) {\n progress = Math.max(Math.min($slideEl[0].progress, 1), -1);\n }\n\n const offset = $slideEl[0].swiperSlideOffset;\n const rotate = -180 * progress;\n let rotateY = rotate;\n let rotateX = 0;\n let tx = swiper.params.cssMode ? -offset - swiper.translate : -offset;\n let ty = 0;\n\n if (!swiper.isHorizontal()) {\n ty = tx;\n tx = 0;\n rotateX = -rotateY;\n rotateY = 0;\n } else if (rtl) {\n rotateY = -rotateY;\n }\n\n $slideEl[0].style.zIndex = -Math.abs(Math.round(progress)) + slides.length;\n\n if (params.slideShadows) {\n // Set shadows\n let shadowBefore = swiper.isHorizontal()\n ? $slideEl.find('.swiper-slide-shadow-left')\n : $slideEl.find('.swiper-slide-shadow-top');\n let shadowAfter = swiper.isHorizontal()\n ? $slideEl.find('.swiper-slide-shadow-right')\n : $slideEl.find('.swiper-slide-shadow-bottom');\n\n if (shadowBefore.length === 0) {\n shadowBefore = createShadow(params, $slideEl, swiper.isHorizontal() ? 'left' : 'top');\n }\n\n if (shadowAfter.length === 0) {\n shadowAfter = createShadow(params, $slideEl, swiper.isHorizontal() ? 'right' : 'bottom');\n }\n\n if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0);\n if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0);\n }\n\n const transform = `translate3d(${tx}px, ${ty}px, 0px) rotateX(${rotateX}deg) rotateY(${rotateY}deg)`;\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl.transform(transform);\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.flipEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements\n .transition(duration)\n .find(\n '.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left',\n )\n .transition(duration);\n effectVirtualTransitionEnd({\n swiper,\n duration,\n transformEl,\n });\n };\n\n effectInit({\n effect: 'flip',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => true,\n overwriteParams: () => ({\n slidesPerView: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n spaceBetween: 0,\n virtualTranslate: !swiper.params.cssMode,\n }),\n });\n }\n\n function EffectCoverflow({swiper, extendParams, on}) {\n extendParams({\n coverflowEffect: {\n rotate: 50,\n stretch: 0,\n depth: 100,\n scale: 1,\n modifier: 1,\n slideShadows: true,\n transformEl: null,\n },\n });\n\n const setTranslate = () => {\n const {width: swiperWidth, height: swiperHeight, slides, slidesSizesGrid} = swiper;\n const params = swiper.params.coverflowEffect;\n const isHorizontal = swiper.isHorizontal();\n const transform = swiper.translate;\n const center = isHorizontal ? -transform + swiperWidth / 2 : -transform + swiperHeight / 2;\n const rotate = isHorizontal ? params.rotate : -params.rotate;\n const translate = params.depth; // Each slide offset from center\n\n for (let i = 0, length = slides.length; i < length; i += 1) {\n const $slideEl = slides.eq(i);\n const slideSize = slidesSizesGrid[i];\n const slideOffset = $slideEl[0].swiperSlideOffset;\n const offsetMultiplier = ((center - slideOffset - slideSize / 2) / slideSize) * params.modifier;\n let rotateY = isHorizontal ? rotate * offsetMultiplier : 0;\n let rotateX = isHorizontal ? 0 : rotate * offsetMultiplier; // var rotateZ = 0\n\n let translateZ = -translate * Math.abs(offsetMultiplier);\n let stretch = params.stretch; // Allow percentage to make a relative stretch for responsive sliders\n\n if (typeof stretch === 'string' && stretch.indexOf('%') !== -1) {\n stretch = (parseFloat(params.stretch) / 100) * slideSize;\n }\n\n let translateY = isHorizontal ? 0 : stretch * offsetMultiplier;\n let translateX = isHorizontal ? stretch * offsetMultiplier : 0;\n let scale = 1 - (1 - params.scale) * Math.abs(offsetMultiplier); // Fix for ultra small values\n\n if (Math.abs(translateX) < 0.001) translateX = 0;\n if (Math.abs(translateY) < 0.001) translateY = 0;\n if (Math.abs(translateZ) < 0.001) translateZ = 0;\n if (Math.abs(rotateY) < 0.001) rotateY = 0;\n if (Math.abs(rotateX) < 0.001) rotateX = 0;\n if (Math.abs(scale) < 0.001) scale = 0;\n const slideTransform = `translate3d(${translateX}px,${translateY}px,${translateZ}px) rotateX(${rotateX}deg) rotateY(${rotateY}deg) scale(${scale})`;\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl.transform(slideTransform);\n $slideEl[0].style.zIndex = -Math.abs(Math.round(offsetMultiplier)) + 1;\n\n if (params.slideShadows) {\n // Set shadows\n let $shadowBeforeEl = isHorizontal\n ? $slideEl.find('.swiper-slide-shadow-left')\n : $slideEl.find('.swiper-slide-shadow-top');\n let $shadowAfterEl = isHorizontal\n ? $slideEl.find('.swiper-slide-shadow-right')\n : $slideEl.find('.swiper-slide-shadow-bottom');\n\n if ($shadowBeforeEl.length === 0) {\n $shadowBeforeEl = createShadow(params, $slideEl, isHorizontal ? 'left' : 'top');\n }\n\n if ($shadowAfterEl.length === 0) {\n $shadowAfterEl = createShadow(params, $slideEl, isHorizontal ? 'right' : 'bottom');\n }\n\n if ($shadowBeforeEl.length) $shadowBeforeEl[0].style.opacity = offsetMultiplier > 0 ? offsetMultiplier : 0;\n if ($shadowAfterEl.length) $shadowAfterEl[0].style.opacity = -offsetMultiplier > 0 ? -offsetMultiplier : 0;\n }\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.coverflowEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements\n .transition(duration)\n .find(\n '.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left',\n )\n .transition(duration);\n };\n\n effectInit({\n effect: 'coverflow',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => true,\n overwriteParams: () => ({\n watchSlidesProgress: true,\n }),\n });\n }\n\n function EffectCreative({swiper, extendParams, on}) {\n extendParams({\n creativeEffect: {\n transformEl: null,\n limitProgress: 1,\n shadowPerProgress: false,\n progressMultiplier: 1,\n perspective: true,\n prev: {\n translate: [0, 0, 0],\n rotate: [0, 0, 0],\n opacity: 1,\n scale: 1,\n },\n next: {\n translate: [0, 0, 0],\n rotate: [0, 0, 0],\n opacity: 1,\n scale: 1,\n },\n },\n });\n\n const getTranslateValue = (value) => {\n if (typeof value === 'string') return value;\n return `${value}px`;\n };\n\n const setTranslate = () => {\n const {slides, $wrapperEl, slidesSizesGrid} = swiper;\n const params = swiper.params.creativeEffect;\n const {progressMultiplier: multiplier} = params;\n const isCenteredSlides = swiper.params.centeredSlides;\n\n if (isCenteredSlides) {\n const margin = slidesSizesGrid[0] / 2 - swiper.params.slidesOffsetBefore || 0;\n $wrapperEl.transform(`translateX(calc(50% - ${margin}px))`);\n }\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n const slideProgress = $slideEl[0].progress;\n const progress = Math.min(Math.max($slideEl[0].progress, -params.limitProgress), params.limitProgress);\n let originalProgress = progress;\n\n if (!isCenteredSlides) {\n originalProgress = Math.min(\n Math.max($slideEl[0].originalProgress, -params.limitProgress),\n params.limitProgress,\n );\n }\n\n const offset = $slideEl[0].swiperSlideOffset;\n const t = [swiper.params.cssMode ? -offset - swiper.translate : -offset, 0, 0];\n const r = [0, 0, 0];\n let custom = false;\n\n if (!swiper.isHorizontal()) {\n t[1] = t[0];\n t[0] = 0;\n }\n\n let data = {\n translate: [0, 0, 0],\n rotate: [0, 0, 0],\n scale: 1,\n opacity: 1,\n };\n\n if (progress < 0) {\n data = params.next;\n custom = true;\n } else if (progress > 0) {\n data = params.prev;\n custom = true;\n } // set translate\n\n t.forEach((value, index) => {\n t[index] = `calc(${value}px + (${getTranslateValue(data.translate[index])} * ${Math.abs(\n progress * multiplier,\n )}))`;\n }); // set rotates\n\n r.forEach((value, index) => {\n r[index] = data.rotate[index] * Math.abs(progress * multiplier);\n });\n $slideEl[0].style.zIndex = -Math.abs(Math.round(slideProgress)) + slides.length;\n const translateString = t.join(', ');\n const rotateString = `rotateX(${r[0]}deg) rotateY(${r[1]}deg) rotateZ(${r[2]}deg)`;\n const scaleString =\n originalProgress < 0\n ? `scale(${1 + (1 - data.scale) * originalProgress * multiplier})`\n : `scale(${1 - (1 - data.scale) * originalProgress * multiplier})`;\n const opacityString =\n originalProgress < 0\n ? 1 + (1 - data.opacity) * originalProgress * multiplier\n : 1 - (1 - data.opacity) * originalProgress * multiplier;\n const transform = `translate3d(${translateString}) ${rotateString} ${scaleString}`; // Set shadows\n\n if ((custom && data.shadow) || !custom) {\n let $shadowEl = $slideEl.children('.swiper-slide-shadow');\n\n if ($shadowEl.length === 0 && data.shadow) {\n $shadowEl = createShadow(params, $slideEl);\n }\n\n if ($shadowEl.length) {\n const shadowOpacity = params.shadowPerProgress ? progress * (1 / params.limitProgress) : progress;\n $shadowEl[0].style.opacity = Math.min(Math.max(Math.abs(shadowOpacity), 0), 1);\n }\n }\n\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl.transform(transform).css({\n opacity: opacityString,\n });\n\n if (data.origin) {\n $targetEl.css('transform-origin', data.origin);\n }\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.creativeEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements.transition(duration).find('.swiper-slide-shadow').transition(duration);\n effectVirtualTransitionEnd({\n swiper,\n duration,\n transformEl,\n allSlides: true,\n });\n };\n\n effectInit({\n effect: 'creative',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => swiper.params.creativeEffect.perspective,\n overwriteParams: () => ({\n watchSlidesProgress: true,\n virtualTranslate: !swiper.params.cssMode,\n }),\n });\n }\n\n function EffectCards({swiper, extendParams, on}) {\n extendParams({\n cardsEffect: {\n slideShadows: true,\n transformEl: null,\n },\n });\n\n const setTranslate = () => {\n const {slides, activeIndex} = swiper;\n const params = swiper.params.cardsEffect;\n const {startTranslate, isTouched} = swiper.touchEventsData;\n const currentTranslate = swiper.translate;\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n const slideProgress = $slideEl[0].progress;\n const progress = Math.min(Math.max(slideProgress, -4), 4);\n let offset = $slideEl[0].swiperSlideOffset;\n\n if (swiper.params.centeredSlides && !swiper.params.cssMode) {\n swiper.$wrapperEl.transform(`translateX(${swiper.minTranslate()}px)`);\n }\n\n if (swiper.params.centeredSlides && swiper.params.cssMode) {\n offset -= slides[0].swiperSlideOffset;\n }\n\n let tX = swiper.params.cssMode ? -offset - swiper.translate : -offset;\n let tY = 0;\n const tZ = -100 * Math.abs(progress);\n let scale = 1;\n let rotate = -2 * progress;\n let tXAdd = 8 - Math.abs(progress) * 0.75;\n const isSwipeToNext =\n (i === activeIndex || i === activeIndex - 1) &&\n progress > 0 &&\n progress < 1 &&\n (isTouched || swiper.params.cssMode) &&\n currentTranslate < startTranslate;\n const isSwipeToPrev =\n (i === activeIndex || i === activeIndex + 1) &&\n progress < 0 &&\n progress > -1 &&\n (isTouched || swiper.params.cssMode) &&\n currentTranslate > startTranslate;\n\n if (isSwipeToNext || isSwipeToPrev) {\n const subProgress = (1 - Math.abs((Math.abs(progress) - 0.5) / 0.5)) ** 0.5;\n rotate += -28 * progress * subProgress;\n scale += -0.5 * subProgress;\n tXAdd += 96 * subProgress;\n tY = `${-25 * subProgress * Math.abs(progress)}%`;\n }\n\n if (progress < 0) {\n // next\n tX = `calc(${tX}px + (${tXAdd * Math.abs(progress)}%))`;\n } else if (progress > 0) {\n // prev\n tX = `calc(${tX}px + (-${tXAdd * Math.abs(progress)}%))`;\n } else {\n tX = `${tX}px`;\n }\n\n if (!swiper.isHorizontal()) {\n const prevY = tY;\n tY = tX;\n tX = prevY;\n }\n\n const scaleString = progress < 0 ? `${1 + (1 - scale) * progress}` : `${1 - (1 - scale) * progress}`;\n const transform = `\n translate3d(${tX}, ${tY}, ${tZ}px)\n rotateZ(${rotate}deg)\n scale(${scaleString})\n `;\n\n if (params.slideShadows) {\n // Set shadows\n let $shadowEl = $slideEl.find('.swiper-slide-shadow');\n\n if ($shadowEl.length === 0) {\n $shadowEl = createShadow(params, $slideEl);\n }\n\n if ($shadowEl.length)\n $shadowEl[0].style.opacity = Math.min(Math.max((Math.abs(progress) - 0.5) / 0.5, 0), 1);\n }\n\n $slideEl[0].style.zIndex = -Math.abs(Math.round(slideProgress)) + slides.length;\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl.transform(transform);\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.cardsEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements.transition(duration).find('.swiper-slide-shadow').transition(duration);\n effectVirtualTransitionEnd({\n swiper,\n duration,\n transformEl,\n });\n };\n\n effectInit({\n effect: 'cards',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => true,\n overwriteParams: () => ({\n watchSlidesProgress: true,\n virtualTranslate: !swiper.params.cssMode,\n }),\n });\n }\n\n // Swiper Class\n const modules = [\n Virtual,\n Keyboard,\n Mousewheel,\n Navigation,\n Pagination,\n Scrollbar,\n Parallax,\n Zoom,\n Lazy,\n Controller,\n A11y,\n History,\n HashNavigation,\n Autoplay,\n Thumb,\n freeMode,\n Grid,\n Manipulation,\n EffectFade,\n EffectCube,\n EffectFlip,\n EffectCoverflow,\n EffectCreative,\n EffectCards,\n ];\n Swiper.use(modules);\n\n global.Swiper = Swiper;\n\n return Swiper;\n });\n //# sourceMappingURL=swiper-bundle.js.map\n};\n\nexport default swiper();\n"]} \ No newline at end of file +{"version":3,"sources":["node_modules/browser-pack/_prelude.js","source/js/main.js","source/js/modules/accordions/accordions.js","source/js/modules/accordions/init-accordion.js","source/js/modules/form-validate/callback.js","source/js/modules/form-validate/form.js","source/js/modules/form-validate/init-phone-input.js","source/js/modules/form-validate/matrix.js","source/js/modules/form-validate/regular-expression.js","source/js/modules/form-validate/render-message.js","source/js/modules/form-validate/validator.js","source/js/modules/modals/init-modals.js","source/js/modules/modals/modals.js","source/js/modules/tabs/init-tabs.js","source/js/modules/tabs/tabs.js","source/js/utils/focus-lock.js","source/js/utils/ios-checker.js","source/js/utils/ios-vh-fix.js","source/js/utils/scroll-lock.js","source/js/vendor/swiper.js"],"names":[],"mappings":"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","file":"main.min.js","sourcesContent":["(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i {\n\n // Utils\n // ---------------------------------\n\n iosVhFix();\n\n // Modules\n // ---------------------------------\n\n // все скрипты должны быть в обработчике 'DOMContentLoaded', но не все в 'load'\n // в load следует добавить скрипты, не участвующие в работе первого экрана\n window.addEventListener('load', () => {\n initModals();\n const form = new Form();\n window.form = form;\n form.init();\n initAccordions();\n });\n initTabs();\n trainerSwiper();\n reviewsSwiper();\n});\n\n\n// ---------------------------------\n\n// ❗❗❗ обязательно установите плагины eslint, stylelint, editorconfig в редактор кода.\n\n// привязывайте js не на классы, а на дата атрибуты (data-validate)\n\n// вместо модификаторов .block--active используем утилитарные классы\n// .is-active || .is-open || .is-invalid и прочие (обязателен нейминг в два слова)\n// .select.select--opened ❌ ---> [data-select].is-open ✅\n\n// выносим все в дата атрибуты\n// url до иконок пинов карты, настройки автопрокрутки слайдера, url к json и т.д.\n\n// для адаптивного JS используется matchMedia и addListener\n// const breakpoint = window.matchMedia(`(min-width:1024px)`);\n// const breakpointChecker = () => {\n// if (breakpoint.matches) {\n// } else {\n// }\n// };\n// breakpoint.addListener(breakpointChecker);\n// breakpointChecker();\n\n// используйте .closest(el)\n","export class Accordions {\n constructor() {\n this._openHeight = 0;\n this._windowWidth = window.innerWidth;\n this._documentClickHandler = this._documentClickHandler.bind(this);\n this._windowResizeHandler = this._windowResizeHandler.bind(this);\n this._init();\n }\n\n _init() {\n this.fullUpdate();\n document.addEventListener('click', this._documentClickHandler);\n window.addEventListener('resize', this._windowResizeHandler);\n }\n\n _documentClickHandler(evt) {\n const target = evt.target;\n if (!target.closest('[data-accordion=\"button\"]')) {\n return;\n }\n\n evt.preventDefault();\n const parent = target.closest('[data-accordion=\"parent\"]');\n\n if (parent.dataset.destroy && !window.matchMedia(parent.dataset.destroy).matches) {\n return;\n }\n\n const element = target.closest('[data-accordion=\"element\"]');\n if (element.classList.contains('is-active')) {\n this.closeAccordion(element);\n return;\n }\n this.openAccordion(element);\n }\n\n _windowResizeHandler() {\n if (this._windowWidth === window.innerWidth) {\n return;\n }\n this._windowWidth = window.innerWidth;\n this.updateAccordionsHeight();\n }\n\n closeAllAccordion(parent) {\n const elements = parent.querySelectorAll('[data-accordion=\"element\"]');\n elements.forEach((element) => {\n const currentParent = element.closest('[data-accordion=\"parent\"]');\n if (currentParent === parent) {\n this.closeAccordion(element);\n }\n });\n }\n\n updateAccordionsHeight(element = null) {\n if (element) {\n const content = element.querySelector('[data-accordion=\"content\"]');\n content.style.transition = 'none';\n content.style.maxHeight = `${content.scrollHeight}px`;\n setTimeout(() => {\n content.style.transition = null;\n });\n return;\n }\n\n const closeElements = document.querySelectorAll('[data-accordion=\"element\"]:not(.is-active)');\n\n closeElements.forEach((closeElement) => {\n const parent = closeElement.closest('[data-accordion=\"parent\"]');\n const content = closeElement.querySelector('[data-accordion=\"content\"]');\n if (parent.dataset.destroy && !window.matchMedia(parent.dataset.destroy).matches) {\n content.style.maxHeight = '100%';\n return;\n }\n content.style.maxHeight = null;\n });\n\n const openElements = document.querySelectorAll('[data-accordion=\"element\"].is-active');\n openElements.forEach((openElement) => {\n const content = openElement.querySelector('[data-accordion=\"content\"]');\n const parent = openElement.closest('[data-accordion=\"parent\"]');\n if (parent.dataset.destroy && !window.matchMedia(parent.dataset.destroy).matches) {\n content.style.maxHeight = '100%';\n return;\n }\n content.style.transition = 'none';\n content.style.maxHeight = `${content.scrollHeight}px`;\n setTimeout(() => {\n content.style.transition = null;\n });\n });\n }\n\n fullUpdate(parent = null, transition = false) {\n let openElements;\n if (parent) {\n openElements = parent.querySelectorAll('[data-accordion=\"element\"].is-active');\n } else {\n openElements = document.querySelectorAll('[data-accordion=\"element\"].is-active');\n }\n openElements.forEach((openElement) => {\n const innerParent = openElement.querySelector('[data-accordion=\"parent\"]');\n if (innerParent) {\n return;\n }\n this.openAccordion(openElement, transition);\n });\n this.updateAccordionsHeight();\n }\n\n openAccordion(element, transition = true) {\n const parentElement = element.closest('[data-accordion=\"parent\"]');\n const contentElement = element.querySelector('[data-accordion=\"content\"]');\n this._openHeight += contentElement.scrollHeight;\n\n if (parentElement.hasAttribute('data-single')) {\n this.closeAllAccordion(parentElement);\n }\n\n element.classList.add('is-active');\n if (transition) {\n contentElement.style.maxHeight = `${this._openHeight}px`;\n } else {\n contentElement.style.transition = 'none';\n contentElement.style.maxHeight = `${this._openHeight}px`;\n setTimeout(() => {\n contentElement.style.transition = null;\n });\n }\n\n if (parentElement.closest('[data-accordion=\"element\"]')) {\n this.openAccordion(parentElement.closest('[data-accordion=\"element\"]'), transition);\n return;\n }\n\n this._openHeight = 0;\n }\n\n closeAccordion(element, transition = true) {\n const contentElement = element.querySelector('[data-accordion=\"content\"]');\n if (!contentElement) {\n return;\n }\n element.classList.remove('is-active');\n if (transition) {\n contentElement.style.maxHeight = '0';\n } else {\n contentElement.style.transition = 'none';\n contentElement.style.maxHeight = '0';\n setTimeout(() => {\n contentElement.style.transition = null;\n });\n }\n }\n}\n","import {Accordions} from './accordions';\nlet accordions;\n\nconst initAccordions = () => {\n accordions = new Accordions();\n // Используйте в разработке экспортируемую переменную accordions, window сделан для бэкэнда\n window.accordions = accordions;\n};\n\nexport {initAccordions, accordions};\n","\nconst baseSuccessCallback = (event) => {\n event.preventDefault();\n // В данном колбеке бэкендер, либо разработчик при необходимости будет писать запрос на отправку формы на сервер и обрабатывать возможные ошибки или успешную отправку формы на сервер\n};\n\nconst baseErrorCallback = (event) => {\n event.preventDefault();\n // Данный коллбек используется при необходимости выполнить какое-либо действие помимо показа ошибок при попытке отправить неккорректные данные, он не связан с запросами на сервер\n};\n\nexport const callbacks = {\n base: {\n // Сбросс формы\n reset: true,\n // Таймаут сброса формы\n resetTimeout: 500,\n successCallback: baseSuccessCallback,\n errorCallback: baseErrorCallback,\n },\n};\n","import {Validator} from './validator';\nimport {callbacks} from './callback';\nimport {initPhoneInput} from './init-phone-input';\n\nexport class Form {\n constructor() {\n this._validator = new Validator();\n this._initPhoneInput = initPhoneInput;\n this._callbacks = callbacks;\n }\n\n _resetSelect(select) {\n const nativeSelect = select.querySelector('select');\n const activeIndex = nativeSelect.options.selectedIndex;\n const selectedOption = nativeSelect.options[activeIndex];\n const buttonText = select.querySelector('.custom-select__text');\n const selectItems = select.querySelectorAll('.custom-select__item');\n buttonText.textContent = selectedOption.textContent;\n selectItems.forEach((item, index) => {\n if (index === activeIndex - 1) {\n item.setAttribute('aria-selected', 'true');\n return;\n }\n item.setAttribute('aria-selected', 'false');\n });\n if (!nativeSelect.value) {\n select.classList.remove('not-empty');\n select.classList.remove('is-valid');\n }\n }\n\n _resetSelects(form) {\n const selects = form.querySelectorAll('[data-select]');\n selects.forEach((select) => {\n this._resetSelect(select);\n });\n }\n\n reset(form) {\n form.reset();\n form.querySelectorAll('.is-invalid').forEach((item) => item.classList.remove('is-invalid'));\n form.querySelectorAll('.is-valid').forEach((item) => item.classList.remove('is-valid'));\n form.querySelectorAll('.input-message').forEach((item) => item.remove());\n setTimeout(() => {\n this._resetSelects(form);\n });\n }\n\n initPhoneInput(parent) {\n this._initPhoneInput(parent);\n }\n\n validateForm(form) {\n return this._validator.validateForm(form);\n }\n\n validateFormElement(item) {\n return this._validator.validateFormElement(item);\n }\n\n _onFormSubmit(event, callback = null) {\n if (this.validateForm(event.target) && callback) {\n this._callbacks[callback].successCallback(event);\n if (this._callbacks[callback].reset) {\n setTimeout(() => {\n this.reset(event.target);\n }, this._callbacks[callback].resetTimeout ? this._callbacks[callback].resetTimeout : 500);\n }\n return;\n }\n if (!this.validateForm(event.target) && callback) {\n this._callbacks[callback].errorCallback(event);\n return;\n }\n }\n\n _onFormInput(item) {\n this.validateFormElement(item);\n }\n\n _initValidate(parent) {\n const form = parent.querySelector('form');\n if (!form) {\n return;\n }\n\n const phoneParents = form.querySelectorAll('[data-validate-type=\"phone\"]');\n phoneParents.forEach((item) => this._initPhoneInput(item));\n\n const callback = parent.dataset.callback;\n form.noValidate = true;\n\n form.addEventListener('submit', (event) => {\n event.preventDefault();\n this._onFormSubmit(event, callback);\n });\n\n form.addEventListener('input', (event) => {\n this._onFormInput(event.target);\n });\n\n form.addEventListener('reset', (event) => {\n this.reset(event.target);\n });\n }\n\n init() {\n this._validateParent = document.querySelectorAll('[data-form-validate]');\n if (!this._validateParent.length) {\n return;\n }\n this._validateParent.forEach((parent) => this._initValidate(parent));\n }\n}\n","const baseCountryCode = '+7';\nconst baseMatrix = ' (___) ___ __ __';\nconst phoneLength = baseCountryCode.length + baseMatrix.length;\n\nconst onPhoneInputInput = (e) => {\n const matrix = `${baseCountryCode}${baseMatrix}`;\n const def = matrix.replace(/\\D/g, '');\n let i = 0;\n let val = e.target.value.replace(/\\D/g, '');\n if (def.length >= val.length) {\n val = def;\n }\n e.target.value = matrix.replace(/./g, (a) => {\n if (/[_\\d]/.test(a) && i < val.length) {\n return val.charAt(i++);\n } else if (i >= val.length) {\n return '';\n } else {\n return a;\n }\n });\n};\n\nconst onPhoneInputFocus = ({target}) => {\n if (!target.value) {\n target.value = baseCountryCode;\n }\n target.addEventListener('input', onPhoneInputInput);\n target.addEventListener('blur', onPhoneInputBlur);\n target.addEventListener('keydown', onPhoneInputKeydown);\n target.addEventListener('paste', onPhoneInputPaste);\n target.addEventListener('click', onPhoneInputClick);\n};\n\nconst onPhoneInputClick = (e) => {\n if (e.target.selectionStart < 4) {\n e.preventDefault();\n e.target.setSelectionRange(3, 3);\n }\n};\n\nconst onPhoneInputPaste = (e) => {\n e.target.setSelectionRange(0, 0);\n if (!e.target.selectionStart) {\n setTimeout(() => {\n if (e.target.value.startsWith('+7')) {\n return;\n }\n if (e.target.value.startsWith('+8')) {\n e.target.value = `+7 ${e.target.value.slice(3)}`;\n return;\n }\n e.target.value = '';\n });\n }\n};\n\nconst onPhoneInputKeydown = (e) => {\n if (e.target.selectionStart < 4 && (e.keyCode === 37 || e.keyCode === 13)) {\n e.preventDefault();\n e.target.setSelectionRange(3, 3);\n }\n};\n\nconst onPhoneInputBlur = ({target}) => {\n if (target.value === baseCountryCode) {\n const parent = target.closest('[data-validate-type=\"phone\"]');\n target.value = '';\n if (!parent.hasAttribute('data-required')) {\n parent.classList.remove('is-valid');\n parent.classList.remove('is-invalid');\n const parentMessage = parent.querySelector('.input-message');\n if (parentMessage) {\n parentMessage.remove();\n }\n }\n parent.classList.remove('not-empty');\n target.removeEventListener('input', onPhoneInputInput);\n target.removeEventListener('blur', onPhoneInputBlur);\n target.removeEventListener('keydown', onPhoneInputKeydown);\n target.removeEventListener('paste', onPhoneInputPaste);\n target.removeEventListener('click', onPhoneInputClick);\n }\n};\n\nexport const initPhoneInput = (parent) => {\n const input = parent.querySelector('input');\n parent.dataset.phoneLength = phoneLength;\n input.addEventListener('focus', onPhoneInputFocus);\n};\n","export const matrixReplace = (item, matrix, RegEx) => {\n if (!matrix) {\n // eslint-disable-next-line no-console\n console.error('При валидации по матрице обязательно указывать формат матрицы: data-matrix=\"\"');\n item.value = '';\n return;\n }\n\n if (!RegEx) {\n // eslint-disable-next-line no-console\n console.error('При валидации по матрице обязательно указывать формат ограничений: data-matrix-limitations=\"\"');\n item.value = '';\n return;\n }\n\n const def = matrix.replace(RegEx, '');\n let val = item.value.replace(RegEx, '');\n let i = 0;\n\n if (def.length >= val.length) {\n val = def;\n }\n\n item.value = matrix.replace(/./g, (a) => {\n if (/[_\\^]/.test(a) && i < val.length) {\n return val.charAt(i++);\n } else if (i >= val.length) {\n return '';\n } else {\n return a;\n }\n });\n};\n","const setLimitationError = (limitation) => {\n // eslint-disable-next-line no-console\n console.error(`Переданный формат ограничения(data-limitation=\"${limitation}\") - не поддерживается. Проверьте корректность введённых значений.`);\n};\n\nexport const getLimitationsRegEx = (limitation) => {\n switch (limitation) {\n case 'digit':\n return /[^\\d]/g;\n case 'name':\n return /[^a-zA-Zа-яёА-ЯЁ\\-\\s]/g;\n case 'letters':\n return /[^a-zA-Zа-яёА-ЯЁ\\s]/g;\n case 'letters-and-digit':\n return /[^a-zA-Zа-яёА-ЯЁ\\s\\d]/g;\n case 'cyrillic':\n return /[^а-яёА-ЯЁ\\s]/g;\n case 'latin':\n return /[^a-zA-Z\\s]/g;\n default:\n return setLimitationError(limitation);\n }\n};\n\nexport const getMatrixLimitationsRegEx = (matrix) => {\n switch (matrix) {\n case 'digit':\n return /[^\\d]/g;\n case 'name':\n return /[^\\а-яё\\А-ЯЁ\\a-z\\A-Z\\-]]/g;\n case 'letters':\n return /[^\\а-яё\\А-ЯЁ\\a-z\\A-Z]/g;\n case 'letters-and-digit':\n return /[^\\а-яё\\А-ЯЁ\\a-z\\A-Z\\d]/g;\n case 'cyrillic':\n return /[^\\а-яё\\А-ЯЁ]/g;\n case 'latin':\n return /[^\\a-z\\A-Z]/g;\n default:\n return false;\n }\n};\n\nexport const getMailRegEx = () => /[a-zA-Zа-яёА-ЯЁ0-9]{1}([a-zA-Zа-яёА-ЯЁ0-9\\-_\\.]{1,})?@[a-zA-Zа-яёА-ЯЁ0-9\\-]{1}([a-zA-Zа-яёА-ЯЁ0-9.\\-]{1,})?[a-zA-Zа-яёА-ЯЁ0-9\\-]{1}\\.[a-zA-Zа-яёА-ЯЁ]{2,6}/;\n","export class Message {\n constructor() {\n this._baseErrorText = 'Это поле является обязательным';\n }\n\n _messageTemplate(message, state) {\n const cssClass = state === 'valid' ? 'is-valid' : 'is-invalid';\n return `${message}`;\n }\n\n removeMessage(parent) {\n const parentMessage = parent.querySelector('.input-message');\n if (parentMessage) {\n parentMessage.remove();\n }\n }\n\n renderMessage(parent, message, state) {\n this.removeMessage(parent);\n parent.insertAdjacentHTML('beforeend', this._messageTemplate(message, state));\n }\n}\n","import {getLimitationsRegEx, getMatrixLimitationsRegEx, getMailRegEx} from './regular-expression';\nimport {matrixReplace} from './matrix';\nimport {Message} from './render-message';\n\nexport class Validator {\n constructor() {\n this._getLimitationsRegEx = getLimitationsRegEx;\n this._getMatrixLimitationsRegEx = getMatrixLimitationsRegEx;\n this._getMailRegEx = getMailRegEx;\n this._matrixReplace = matrixReplace;\n this._message = new Message();\n }\n\n _renderMessage(trigger, parent, input) {\n if (!parent.hasAttribute('data-required') && !input.value) {\n return;\n }\n if (!trigger) {\n parent.classList.add('is-invalid');\n if (parent.hasAttribute('data-message-base') && !input.value) {\n this._message.renderMessage(parent, parent.dataset.messageBase, 'invalid');\n } else if (parent.hasAttribute('data-message-extra') && input.value) {\n this._message.renderMessage(parent, parent.dataset.messageExtra, 'invalid');\n } else if (!parent.hasAttribute('data-message-extra') && parent.hasAttribute('data-message-base') && input.value) {\n this._message.renderMessage(parent, parent.dataset.messageBase, 'invalid');\n } else {\n this._message.removeMessage(parent);\n }\n } else {\n if (parent.hasAttribute('data-message-success')) {\n this._message.renderMessage(parent, parent.dataset.messageSuccess, 'valid');\n } else {\n this._message.removeMessage(parent);\n }\n }\n }\n\n _setItemValidState(parent, input) {\n if (!parent.hasAttribute('data-required') && !input.value) {\n return;\n }\n parent.classList.add('is-valid');\n parent.classList.remove('is-invalid');\n input.setAttribute('aria-invalid', 'false');\n this._message.removeMessage(parent);\n }\n\n _setItemInvalidState(parent, input) {\n if (!parent.hasAttribute('data-required') && !input.value) {\n return;\n }\n parent.classList.remove('is-valid');\n input.setAttribute('aria-invalid', 'true');\n }\n\n _simpleLimitation(item, limitation) {\n item.value = item.value.replace(this._getLimitationsRegEx(limitation), '');\n }\n\n _matrixLimitation(item, matrix, limitation) {\n this._matrixReplace(item, matrix, limitation);\n }\n\n _validateTextInput(parent, input) {\n let flag = true;\n if (input.value.length >= (+input.getAttribute('minlength') || 1)) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validateMatrixInput(parent, input) {\n let flag = true;\n if (input.value.length === input.closest('[data-matrix]').dataset.matrix.length) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validateEmailInput(parent, input) {\n let flag = true;\n if (new RegExp(this._getMailRegEx(), '').test(input.value)) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validatePhoneInput(parent, input) {\n let flag = true;\n if (input.value.length >= +parent.dataset.phoneLength) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validateCheckbox(parent, input) {\n let flag = true;\n if (input.checked) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _findSelectedOption(options) {\n let flag = false;\n options.forEach((option) => {\n if (option.value && option.selected) {\n flag = true;\n }\n });\n return flag;\n }\n\n _validateSelect(parent, input) {\n const options = input.querySelectorAll('option');\n const customSelectText = parent.querySelector('.custom-select__text');\n input.setAttribute('aria-invalid', 'false');\n let flag = true;\n if (this._findSelectedOption(options)) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n parent.classList.remove('not-empty');\n customSelectText.innerHTML = '';\n flag = false;\n }\n return flag;\n }\n\n _returnCheckedElements(inputs) {\n let flag = false;\n inputs.forEach((input) => {\n if (input.checked) {\n flag = true;\n }\n });\n return flag;\n }\n\n _removeGroupAria(inputs) {\n inputs.forEach((input) => {\n if (!input.checked) {\n input.removeAttribute('aria-required');\n input.removeAttribute('aria-invalid');\n } else {\n input.setAttribute('aria-required', true);\n input.setAttribute('aria-invalid', false);\n }\n });\n }\n\n _setGroupAria(inputs) {\n inputs.forEach((input) => {\n input.setAttribute('aria-required', true);\n input.setAttribute('aria-invalid', true);\n });\n }\n\n _validateToggleGroup(parent) {\n const formElements = parent.querySelectorAll('input');\n let flag = true;\n if (this._returnCheckedElements(formElements)) {\n this._removeGroupAria(formElements);\n parent.classList.remove('is-invalid');\n parent.classList.add('is-valid');\n this._message.removeMessage(parent);\n } else {\n this._setGroupAria(formElements);\n parent.classList.remove('is-valid');\n flag = false;\n }\n return flag;\n }\n\n _customExample(parent, input) {\n let flag = true;\n if (!input.value.length) {\n parent.dataset.messageBase = 'Поле обязательно к заполнению';\n this._setItemInvalidState(parent, input);\n flag = false;\n } else if (input.value.length < input.minLength) {\n parent.dataset.messageBase = `Осталось ввести ещё ${input.minLength - input.value.length} символов`;\n this._setItemInvalidState(parent, input);\n flag = false;\n } else if (input.value.length > input.minLength) {\n parent.dataset.messageBase = `Вы ввели ${input.value.length - input.minLength} лишних символов`;\n this._setItemInvalidState(parent, input);\n flag = false;\n } else {\n parent.dataset.messageSuccess = 'Поле заполнено корректно';\n this._setItemValidState(parent, input);\n flag = true;\n }\n return flag;\n }\n\n _validateFile(parent, input) {\n let flag = true;\n const sizeTest = parent.dataset.maxSize && input.files[0] ? input.files[0].size < +parent.dataset.maxSize : true;\n if (input.value && sizeTest) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validateInput(type, parent, input) {\n switch (type) {\n case 'text':\n return this._validateTextInput(parent, input);\n case 'matrix':\n return this._validateMatrixInput(parent, input);\n case 'email':\n return this._validateEmailInput(parent, input);\n case 'phone':\n return this._validatePhoneInput(parent, input);\n case 'checkbox':\n return this._validateCheckbox(parent, input);\n case 'select':\n return this._validateSelect(parent, input);\n case 'toggle-group':\n return this._validateToggleGroup(parent, input);\n case 'file':\n return this._validateFile(parent, input);\n case 'custom-example':\n return this._customExample(parent, input);\n default:\n return false;\n }\n }\n\n validateFormElement(formElement, fullValidate = false) {\n const parent = formElement.closest('[data-validate-type]');\n if (!parent) {\n return;\n }\n\n if (!parent.hasAttribute('data-required')) {\n const removeElement = parent.querySelector('input') || parent.querySelector('select') || parent.querySelector('textarea');\n\n if (!removeElement.value) {\n parent.classList.remove('is-valid');\n parent.classList.remove('is-invalid');\n }\n }\n\n const onInputValidate = parent.hasAttribute('data-on-input-validate');\n\n if (parent.hasAttribute('data-limitation')) {\n this._simpleLimitation(formElement, parent.dataset.limitation);\n }\n\n if (parent.dataset.validateType === 'matrix') {\n this._matrixLimitation(formElement, parent.dataset.matrix, this._getMatrixLimitationsRegEx(parent.dataset.matrixLimitation));\n }\n\n const isValid = this._validateInput(parent.dataset.validateType, parent, formElement);\n\n if (onInputValidate || fullValidate) {\n this._renderMessage(isValid, parent, formElement);\n }\n }\n\n _fullValidate(items) {\n let result = true;\n items.forEach((item) => {\n const formElement = item.querySelector('input') || item.querySelector('select') || item.querySelector('textarea');\n this.validateFormElement(formElement, true);\n if (item.classList.contains('is-invalid')) {\n result = false;\n }\n });\n return result;\n }\n\n validateForm(form) {\n const validateItems = form.querySelectorAll('[data-validate-type]');\n const result = this._fullValidate(validateItems);\n return result;\n }\n}\n","import {Modals} from './modals';\n\nlet modals;\n\n// Здесь реализован пример открытия модалки через колбэк закрытия\n// const openModalInCloseCallback = (name, context = this) => {\n// context._enableScrolling = false;\n// context._setSettings('default');\n// modals.open(name);\n// };\n\n// closeCallback() {\n// openModalInCloseCallback('modal-5');\n// },\n\nconst settings = {\n 'default': {\n preventDefault: true,\n stopPlay: true,\n lockFocus: true,\n startFocus: true,\n focusBack: true,\n eventTimeout: 400,\n openCallback: false,\n closeCallback: false,\n },\n};\n\nconst initModals = () => {\n const modalElements = document.querySelectorAll('.modal');\n modalElements.forEach((el) => {\n setTimeout(() => {\n el.classList.remove('modal--preload');\n }, 100);\n });\n modals = new Modals(settings);\n // Используйте в разработке экспортируемую переменную modals, window сделан для бэкэнда\n window.modals = modals;\n};\n\nexport {modals, initModals};\n","import {ScrollLock} from '../../utils/scroll-lock';\nimport {FocusLock} from '../../utils/focus-lock';\n\nexport class Modals {\n constructor(settings = {}) {\n this._scrollLock = new ScrollLock();\n this._focusLock = new FocusLock();\n\n this._modalOpenElements = document.querySelectorAll('[data-open-modal]');\n this._openedModalElement = null;\n this._modalName = null;\n this._enableScrolling = true;\n this._settingKey = 'default';\n\n this._settings = settings;\n this._preventDefault = this._settings[this._settingKey].preventDefault;\n this._stopPlay = this._settings[this._settingKey].stopPlay;\n this._lockFocus = this._settings[this._settingKey].lockFocus;\n this._startFocus = this._settings[this._settingKey].startFocus;\n this._focusBack = this._settings[this._settingKey].focusBack;\n this._eventTimeout = this._settings[this._settingKey].eventTimeout;\n this._openCallback = this._settings[this._settingKey].openCallback;\n this._closeCallback = this._settings[this._settingKey].closeCallback;\n\n this._documentKeydownHandler = this._documentKeydownHandler.bind(this);\n this._documentClickHandler = this._documentClickHandler.bind(this);\n this._modalClickHandler = this._modalClickHandler.bind(this);\n\n this._init();\n }\n\n _init() {\n if (this._modalOpenElements.length) {\n document.addEventListener('click', this._documentClickHandler);\n }\n }\n\n _setSettings(settingKey = this._settingKey) {\n if (!this._settings[settingKey]) {\n return;\n }\n\n this._preventDefault =\n typeof this._settings[settingKey].preventDefault === 'boolean'\n ? this._settings[settingKey].preventDefault\n : this._settings[this._settingKey].preventDefault;\n this._stopPlay =\n typeof this._settings[settingKey].stopPlay === 'boolean'\n ? this._settings[settingKey].stopPlay\n : this._settings[this._settingKey].stopPlay;\n this._lockFocus =\n typeof this._settings[settingKey].lockFocus === 'boolean'\n ? this._settings[settingKey].lockFocus\n : this._settings[this._settingKey].lockFocus;\n this._startFocus =\n typeof this._settings[settingKey].startFocus === 'boolean'\n ? this._settings[settingKey].startFocus\n : this._settings[this._settingKey].startFocus;\n this._focusBack =\n typeof this._settings[settingKey].lockFocus === 'boolean'\n ? this._settings[settingKey].focusBack\n : this._settings[this._settingKey].focusBack;\n this._eventTimeout =\n typeof this._settings[settingKey].eventTimeout === 'number'\n ? this._settings[settingKey].eventTimeout\n : this._settings[this._settingKey].eventTimeout;\n this._openCallback = this._settings[settingKey].openCallback || this._settings[this._settingKey].openCallback;\n this._closeCallback = this._settings[settingKey].closeCallback || this._settings[this._settingKey].closeCallback;\n }\n\n _documentClickHandler(evt) {\n const target = evt.target;\n\n if (!target.closest('[data-open-modal]')) {\n return;\n }\n\n evt.preventDefault();\n\n this._modalName = target.closest('[data-open-modal]').dataset.openModal;\n\n if (!this._modalName) {\n return;\n }\n\n this.open();\n }\n\n _documentKeydownHandler(evt) {\n const isEscKey = evt.key === 'Escape' || evt.key === 'Esc';\n\n if (isEscKey) {\n evt.preventDefault();\n this.close(document.querySelector('.modal.is-active').dataset.modal);\n }\n }\n\n _modalClickHandler(evt) {\n const target = evt.target;\n\n if (!target.closest('[data-close-modal]')) {\n return;\n }\n\n this.close(target.closest('[data-modal]').dataset.modal);\n }\n\n _addListeners(modal) {\n modal.addEventListener('click', this._modalClickHandler);\n document.addEventListener('keydown', this._documentKeydownHandler);\n }\n\n _removeListeners(modal) {\n modal.removeEventListener('click', this._modalClickHandler);\n document.removeEventListener('keydown', this._documentKeydownHandler);\n }\n\n _stopInteractive(modal) {\n if (this._stopPlay) {\n modal.querySelectorAll('video, audio').forEach((el) => el.pause());\n modal.querySelectorAll('[data-iframe]').forEach((el) => {\n el.querySelector('iframe').contentWindow.postMessage('{\"event\": \"command\", \"func\": \"pauseVideo\", \"args\": \"\"}', '*');\n });\n }\n }\n\n _autoPlay(modal) {\n modal.querySelectorAll('[data-iframe]').forEach((el) => {\n const autoPlay = el.closest('[data-auto-play]');\n if (autoPlay) {\n el.querySelector('iframe').contentWindow.postMessage('{\"event\":\"command\",\"func\":\"playVideo\",\"args\":\"\"}', '*');\n }\n });\n }\n\n open(modalName = this._modalName) {\n const modal = document.querySelector(`[data-modal=\"${modalName}\"]`);\n\n if (!modal || modal.classList.contains('is-active')) {\n return;\n }\n\n document.removeEventListener('click', this._documentClickHandler);\n\n this._openedModalElement = document.querySelector('.modal.is-active');\n\n if (this._openedModalElement) {\n this._enableScrolling = false;\n this.close(this._openedModalElement.dataset.modal);\n }\n\n this._setSettings(modalName);\n modal.classList.add('is-active');\n\n if (!this._openedModalElement) {\n this._scrollLock.disableScrolling();\n }\n\n if (this._openCallback) {\n this._openCallback();\n }\n\n if (this._lockFocus) {\n this._focusLock.lock('.modal.is-active', this._startFocus);\n }\n\n setTimeout(() => {\n this._addListeners(modal);\n this._autoPlay(modal);\n document.addEventListener('click', this._documentClickHandler);\n }, this._eventTimeout);\n }\n\n close(modalName = this._modalName) {\n const modal = document.querySelector(`[data-modal=\"${modalName}\"]`);\n document.removeEventListener('click', this._documentClickHandler);\n\n if (!modal || !modal.classList.contains('is-active')) {\n return;\n }\n\n if (this._lockFocus) {\n this._focusLock.unlock(this._focusBack);\n }\n\n modal.classList.remove('is-active');\n this._removeListeners(modal);\n this._stopInteractive(modal);\n\n if (this._closeCallback) {\n this._closeCallback();\n }\n\n if (this._enableScrolling) {\n setTimeout(() => {\n this._scrollLock.enableScrolling();\n }, this._eventTimeout);\n }\n\n setTimeout(() => {\n document.addEventListener('click', this._documentClickHandler);\n }, this._eventTimeout);\n\n this._setSettings('default');\n this._enableScrolling = true;\n }\n}\n","import {Tabs} from './tabs';\n\nlet tabs;\n\nconst initTabs = () => {\n tabs = new Tabs();\n // Используйте в разработке экспортируемую переменную tabs, window сделан для бэкэнда\n window.tabs = tabs;\n};\n\nexport {initTabs, tabs};\n","export class Tabs {\n constructor() {\n this._windowWidth = window.innerWidth;\n this._documentClickHandler = this._documentClickHandler.bind(this);\n this._init();\n }\n\n _init() {\n this._initAllTabs();\n document.addEventListener('click', this._documentClickHandler);\n }\n\n _resizeObserver() {\n return new ResizeObserver((entries) => {\n for (let entry of entries) {\n if (entry.target.classList.contains('is-active')) {\n this._updateTabHeight();\n }\n }\n });\n }\n\n _documentClickHandler(evt) {\n const target = evt.target;\n if (!target.closest('[data-tabs=\"control\"]')) {\n return;\n }\n evt.preventDefault();\n const control = target.closest('[data-tabs=\"control\"]');\n this.openTab(control);\n }\n\n _initAllTabs() {\n const tabs = document.querySelectorAll('[data-tabs=\"parent\"]');\n const forLoadTabs = document.querySelectorAll('[data-tabs=\"element\"].for-load');\n tabs.forEach((tab) => {\n this._initTab(tab);\n });\n forLoadTabs.forEach((tab) => {\n tab.classList.remove('for-load');\n });\n }\n\n _removeAllActiveClasses(tabControlElements, tabElements) {\n tabElements.forEach((tab) => {\n tab.classList.remove('is-active');\n });\n\n tabControlElements.forEach((element, index) => {\n element.classList.remove('is-active');\n element.setAttribute('data-index', index);\n });\n }\n\n _setTabStartState(tab, dataHeight, tabElements, tabContentElement, tabControlElements, dataDelay) {\n const activeIndex = this._returnActiveIndex(tabControlElements);\n const blockHeight = dataHeight === 'max' ? this._returnMaxHeight(tabElements) : tabElements[activeIndex].offsetHeight;\n this._removeAllActiveClasses(tabControlElements, tabElements);\n tab.classList.add('no-transition');\n tabControlElements[activeIndex].classList.add('is-active');\n tabElements[activeIndex].classList.add('is-active');\n if (dataHeight !== 'unset') {\n tabContentElement.style.height = `${blockHeight}px`;\n }\n setTimeout(() => {\n if (dataDelay) {\n tab.classList.remove('no-transition');\n }\n }, dataDelay);\n }\n\n _returnActiveIndex(tabControlElements) {\n let activeIndex = 0;\n let flag = true;\n tabControlElements.forEach((control, index) => {\n if (control.classList.contains('is-active') && flag) {\n activeIndex = index;\n flag = false;\n }\n });\n return activeIndex;\n }\n\n _returnMaxHeight(tabElements) {\n let height = [];\n tabElements.forEach((element) => {\n height.push(element.offsetHeight);\n });\n height.sort((a, b) => a - b);\n return height[height.length - 1];\n }\n\n _returnScopeList(nodeList, parent) {\n const array = [];\n nodeList.forEach((element) => {\n const elementParent = element.closest('[data-tabs=\"parent\"]');\n if (elementParent === parent) {\n array.push(element);\n }\n });\n\n return array;\n }\n\n _returnScopeChild(nodeList, parent) {\n let currentChild;\n nodeList.forEach((element) => {\n const elementParent = element.closest('[data-tabs=\"parent\"]');\n if (elementParent === parent) {\n currentChild = element;\n }\n });\n\n return currentChild;\n }\n\n _updateTabHeight() {\n const activeElements = document.querySelectorAll('[data-tabs=\"element\"].is-active');\n activeElements.forEach((element) => {\n let transition = false;\n const parent = element.closest('[data-tabs=\"parent\"]');\n if (parent.closest('[data-tabs=\"element\"]')) {\n transition = true;\n }\n this._setTabElementHeight(element, transition);\n });\n }\n\n _setTabElementHeight(element, transition) {\n const parentElement = element.closest('[data-tabs=\"parent\"]');\n const dataHeight = parentElement.dataset.height;\n const contentElement = this._returnScopeChild(parentElement.querySelectorAll('[data-tabs=\"content\"]'), parentElement);\n const tabElements = this._returnScopeList(parentElement.querySelectorAll('[data-tabs=\"element\"]'), parentElement);\n\n if (!transition) {\n parentElement.classList.add('no-transition');\n }\n\n if (dataHeight === 'max') {\n contentElement.style.height = `${this._returnMaxHeight(tabElements)}px`;\n } else if (dataHeight === 'unset') {\n contentElement.style.height = null;\n } else {\n contentElement.style.height = `${this._returnScopeChild(parentElement.querySelectorAll('[data-tabs=\"element\"].is-active'), parentElement).offsetHeight}px`;\n }\n\n setTimeout(() => parentElement.classList.remove('no-transition'));\n }\n\n _initTab(tab) {\n const dataHeight = tab.dataset.height;\n const dataDelay = tab.dataset.delay ? tab.dataset.delay : 0;\n const tabContentElement = tab.querySelector('[data-tabs=\"content\"]');\n const tabControlElements = this._returnScopeList(tab.querySelectorAll('[data-tabs=\"control\"]'), tab);\n const tabElements = this._returnScopeList(tab.querySelectorAll('[data-tabs=\"element\"]'), tab);\n this._setTabStartState(tab, dataHeight, tabElements, tabContentElement, tabControlElements, dataDelay);\n if (dataHeight !== 'unset') {\n tabElements.forEach((element) => {\n this._resizeObserver().observe(element);\n });\n }\n setTimeout(() => {\n tab.classList.remove('no-transition-global');\n });\n }\n\n reInit() {\n this._initAllTabs();\n }\n\n openTab(control) {\n const currentIndex = control.dataset.index;\n const parentElement = control.closest('[data-tabs=\"parent\"]');\n\n if (control.classList.contains('is-active') || parentElement.classList.contains('no-action')) {\n return;\n }\n\n const dataDelay = parentElement.dataset.delay ? parentElement.dataset.delay : 0;\n const dataHeight = parentElement.dataset.height;\n const contentElement = parentElement.querySelector('[data-tabs=\"content\"]');\n const tabElements = this._returnScopeList(parentElement.querySelectorAll('[data-tabs=\"element\"]'), parentElement);\n\n const activeControl = this._returnScopeChild(parentElement.querySelectorAll('[data-tabs=\"control\"].is-active'), parentElement);\n const activeElement = this._returnScopeChild(parentElement.querySelectorAll('[data-tabs=\"element\"].is-active'), parentElement);\n const currentHeight = contentElement.offsetHeight;\n const newHeight = tabElements[currentIndex].offsetHeight;\n\n parentElement.classList.add('no-action');\n document.activeElement.blur();\n\n if (activeControl) {\n activeControl.classList.remove('is-active');\n }\n\n if (activeElement) {\n activeElement.classList.remove('is-active');\n }\n\n if (currentHeight > newHeight) {\n setTimeout(() => {\n if (dataHeight !== 'max' && dataHeight !== 'unset') {\n contentElement.style.height = newHeight + 'px';\n }\n control.classList.add('is-active');\n tabElements[currentIndex].classList.add('is-active');\n parentElement.classList.remove('no-action');\n }, dataDelay);\n } else {\n if (dataHeight !== 'max' && dataHeight !== 'unset') {\n contentElement.style.height = newHeight + 'px';\n }\n setTimeout(() => {\n control.classList.add('is-active');\n tabElements[currentIndex].classList.add('is-active');\n parentElement.classList.remove('no-action');\n }, dataDelay);\n }\n }\n}\n","const SELECTORS = [\n 'a[href]',\n 'area[href]',\n 'input:not([disabled]):not([type=\"hidden\"]):not([aria-hidden])',\n 'select:not([disabled]):not([aria-hidden])',\n 'textarea:not([disabled]):not([aria-hidden])',\n 'button:not([disabled]):not([aria-hidden])',\n 'iframe',\n 'object',\n 'embed',\n '[contenteditable]',\n '[tabindex]:not([tabindex^=\"-\"])'\n];\n\nexport class FocusLock {\n constructor() {\n this._lockedSelector = null;\n this._focusableElements = null;\n this._endElement = null;\n this._selectors = SELECTORS;\n\n this._documentKeydownHandler = this._documentKeydownHandler.bind(this);\n }\n\n _documentKeydownHandler(evt) {\n const activeElement = document.activeElement;\n if (evt.key === 'Tab') {\n if (!this._focusableElements.length) {\n evt.preventDefault();\n activeElement.blur();\n return;\n }\n if (this._focusableElements.length === 1) {\n evt.preventDefault();\n this._focusableElements[0].focus();\n return;\n }\n if (this._focusableElements.length > 1 && !activeElement.closest(this._lockedSelector)) {\n evt.preventDefault();\n this._focusableElements[0].focus();\n return;\n }\n }\n if (evt.key === 'Tab' && !evt.shiftKey && activeElement === this._focusableElements[this._focusableElements.length - 1]) {\n evt.preventDefault();\n this._focusableElements[0].focus();\n }\n if (evt.key === 'Tab' && evt.shiftKey && activeElement === this._focusableElements[0]) {\n evt.preventDefault();\n this._focusableElements[this._focusableElements.length - 1].focus();\n }\n }\n\n lock(lockedSelector, startFocus = true) {\n this.unlock();\n this._lockedSelector = lockedSelector;\n const lockedElement = document.querySelector(this._lockedSelector);\n if (!lockedElement) {\n return;\n }\n this._focusableElements = lockedElement.querySelectorAll(this._selectors);\n this._endElement = document.activeElement;\n const startElement = lockedElement.querySelector('[data-focus]') || this._focusableElements[0];\n if (this._endElement) {\n this._endElement.blur();\n }\n if (startElement && startFocus) {\n startElement.focus();\n }\n document.addEventListener('keydown', this._documentKeydownHandler);\n }\n\n unlock(returnFocus = true) {\n if (this._endElement && returnFocus) {\n this._endElement.focus();\n }\n this._lockedSelector = null;\n this._focusableElements = null;\n this._endElement = null;\n document.removeEventListener('keydown', this._documentKeydownHandler);\n }\n}\n\nwindow.focusLock = new FocusLock();\n","export const iosChecker = () => {\n return [\n 'iPad Simulator',\n 'iPhone Simulator',\n 'iPod Simulator',\n 'iPad',\n 'iPhone',\n 'iPod'\n ].includes(navigator.platform)\n // iPad on iOS 13 detection\n || (navigator.userAgent.includes('Mac') && 'ontouchend' in document);\n};\n","import {iosChecker} from './ios-checker';\n\nconst iosVhFix = () => {\n if (!(!!window.MSInputMethodContext && !!document.documentMode)) {\n if (iosChecker()) {\n let vh = window.innerHeight * 0.01;\n document.documentElement.style.setProperty('--vh', `${vh}px`);\n\n window.addEventListener('resize', function () {\n vh = window.innerHeight * 0.01;\n document.documentElement.style.setProperty('--vh', `${vh}px`);\n });\n }\n }\n};\n\nexport {iosVhFix};\n","import {iosChecker} from './ios-checker';\n\nexport class ScrollLock {\n constructor() {\n this._iosChecker = iosChecker;\n this._lockClass = this._iosChecker() ? 'scroll-lock-ios' : 'scroll-lock';\n this._scrollTop = null;\n this._fixedBlockElements = document.querySelectorAll('[data-fix-block]');\n }\n\n _getScrollbarWidth() {\n return window.innerWidth - document.documentElement.clientWidth;\n }\n\n _getBodyScrollTop() {\n return (\n self.pageYOffset ||\n (document.documentElement && document.documentElement.ScrollTop) ||\n (document.body && document.body.scrollTop)\n );\n }\n\n disableScrolling() {\n this._scrollTop = document.body.dataset.scroll = document.body.dataset.scroll ? document.body.dataset.scroll : this._getBodyScrollTop();\n if (this._getScrollbarWidth()) {\n document.body.style.paddingRight = `${this._getScrollbarWidth()}px`;\n this._fixedBlockElements.forEach((block) => {\n block.style.paddingRight = `${this._getScrollbarWidth()}px`;\n });\n }\n document.body.style.top = `-${this._scrollTop}px`;\n document.body.classList.add(this._lockClass);\n }\n\n enableScrolling() {\n document.body.classList.remove(this._lockClass);\n window.scrollTo(0, +document.body.dataset.scroll);\n document.body.style.paddingRight = null;\n document.body.style.top = null;\n this._fixedBlockElements.forEach((block) => {\n block.style.paddingRight = null;\n });\n document.body.removeAttribute('data-scroll');\n this._scrollTop = null;\n }\n}\n\nwindow.scrollLock = new ScrollLock();\n"," const swiper = () => {\n /**\n * Swiper 7.4.1\n * Most modern mobile touch slider and framework with hardware accelerated transitions\n * https://swiperjs.com\n *\n * Copyright 2014-2021 Vladimir Kharlampidi\n *\n * Released under the MIT License\n *\n * Released on: December 24, 2021\n */\n\n (function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n ? (module.exports = factory())\n : typeof define === 'function' && define.amd\n ? define(factory)\n : ((global = typeof globalThis !== 'undefined' ? globalThis : global || self), (global.Swiper = factory()));\n })(this, function () {\n\n 'use strict';\n\n /**\n * SSR Window 4.0.2\n * Better handling for window object in SSR environment\n * https://github.com/nolimits4web/ssr-window\n *\n * Copyright 2021, Vladimir Kharlampidi\n *\n * Licensed under MIT\n *\n * Released on: December 13, 2021\n */\n\n /* eslint-disable no-param-reassign */\n function isObject$1(obj) {\n return obj !== null && typeof obj === 'object' && 'constructor' in obj && obj.constructor === Object;\n }\n\n function extend$1(target = {}, src = {}) {\n Object.keys(src).forEach((key) => {\n if (typeof target[key] === 'undefined') target[key] = src[key];\n else if (isObject$1(src[key]) && isObject$1(target[key]) && Object.keys(src[key]).length > 0) {\n extend$1(target[key], src[key]);\n }\n });\n }\n\n const ssrDocument = {\n body: {},\n\n addEventListener() {},\n\n removeEventListener() {},\n\n activeElement: {\n blur() {},\n\n nodeName: '',\n },\n\n querySelector() {\n return null;\n },\n\n querySelectorAll() {\n return [];\n },\n\n getElementById() {\n return null;\n },\n\n createEvent() {\n return {\n initEvent() {},\n };\n },\n\n createElement() {\n return {\n children: [],\n childNodes: [],\n style: {},\n\n setAttribute() {},\n\n getElementsByTagName() {\n return [];\n },\n };\n },\n\n createElementNS() {\n return {};\n },\n\n importNode() {\n return null;\n },\n\n location: {\n hash: '',\n host: '',\n hostname: '',\n href: '',\n origin: '',\n pathname: '',\n protocol: '',\n search: '',\n },\n };\n\n function getDocument() {\n const doc = typeof document !== 'undefined' ? document : {};\n extend$1(doc, ssrDocument);\n return doc;\n }\n\n const ssrWindow = {\n document: ssrDocument,\n navigator: {\n userAgent: '',\n },\n location: {\n hash: '',\n host: '',\n hostname: '',\n href: '',\n origin: '',\n pathname: '',\n protocol: '',\n search: '',\n },\n history: {\n replaceState() {},\n\n pushState() {},\n\n go() {},\n\n back() {},\n },\n CustomEvent: function CustomEvent() {\n return this;\n },\n\n addEventListener() {},\n\n removeEventListener() {},\n\n getComputedStyle() {\n return {\n getPropertyValue() {\n return '';\n },\n };\n },\n\n Image() {},\n\n Date() {},\n\n screen: {},\n\n setTimeout() {},\n\n clearTimeout() {},\n\n matchMedia() {\n return {};\n },\n\n requestAnimationFrame(callback) {\n if (typeof setTimeout === 'undefined') {\n callback();\n return null;\n }\n\n return setTimeout(callback, 0);\n },\n\n cancelAnimationFrame(id) {\n if (typeof setTimeout === 'undefined') {\n return;\n }\n\n clearTimeout(id);\n },\n };\n\n function getWindow() {\n const win = typeof window !== 'undefined' ? window : {};\n extend$1(win, ssrWindow);\n return win;\n }\n\n /**\n * Dom7 4.0.2\n * Minimalistic JavaScript library for DOM manipulation, with a jQuery-compatible API\n * https://framework7.io/docs/dom7.html\n *\n * Copyright 2021, Vladimir Kharlampidi\n *\n * Licensed under MIT\n *\n * Released on: December 13, 2021\n */\n /* eslint-disable no-proto */\n\n function makeReactive(obj) {\n const proto = obj.__proto__;\n Object.defineProperty(obj, '__proto__', {\n get() {\n return proto;\n },\n\n set(value) {\n proto.__proto__ = value;\n },\n });\n }\n\n class Dom7 extends Array {\n constructor(items) {\n super(...(items || []));\n makeReactive(this);\n }\n }\n\n function arrayFlat(arr = []) {\n const res = [];\n arr.forEach((el) => {\n if (Array.isArray(el)) {\n res.push(...arrayFlat(el));\n } else {\n res.push(el);\n }\n });\n return res;\n }\n\n function arrayFilter(arr, callback) {\n return Array.prototype.filter.call(arr, callback);\n }\n\n function arrayUnique(arr) {\n const uniqueArray = [];\n\n for (let i = 0; i < arr.length; i += 1) {\n if (uniqueArray.indexOf(arr[i]) === -1) uniqueArray.push(arr[i]);\n }\n\n return uniqueArray;\n }\n\n function qsa(selector, context) {\n if (typeof selector !== 'string') {\n return [selector];\n }\n\n const a = [];\n const res = context.querySelectorAll(selector);\n\n for (let i = 0; i < res.length; i += 1) {\n a.push(res[i]);\n }\n\n return a;\n }\n\n function $(selector, context) {\n const window = getWindow();\n const document = getDocument();\n let arr = [];\n\n if (!context && selector instanceof Dom7) {\n return selector;\n }\n\n if (!selector) {\n return new Dom7(arr);\n }\n\n if (typeof selector === 'string') {\n const html = selector.trim();\n\n if (html.indexOf('<') >= 0 && html.indexOf('>') >= 0) {\n let toCreate = 'div';\n if (html.indexOf(' c.split(' ')));\n this.forEach((el) => {\n el.classList.add(...classNames);\n });\n return this;\n }\n\n function removeClass(...classes) {\n const classNames = arrayFlat(classes.map((c) => c.split(' ')));\n this.forEach((el) => {\n el.classList.remove(...classNames);\n });\n return this;\n }\n\n function toggleClass(...classes) {\n const classNames = arrayFlat(classes.map((c) => c.split(' ')));\n this.forEach((el) => {\n classNames.forEach((className) => {\n el.classList.toggle(className);\n });\n });\n }\n\n function hasClass(...classes) {\n const classNames = arrayFlat(classes.map((c) => c.split(' ')));\n return (\n arrayFilter(this, (el) => {\n return classNames.filter((className) => el.classList.contains(className)).length > 0;\n }).length > 0\n );\n }\n\n function attr(attrs, value) {\n if (arguments.length === 1 && typeof attrs === 'string') {\n // Get attr\n if (this[0]) return this[0].getAttribute(attrs);\n return undefined;\n } // Set attrs\n\n for (let i = 0; i < this.length; i += 1) {\n if (arguments.length === 2) {\n // String\n this[i].setAttribute(attrs, value);\n } else {\n // Object\n for (const attrName in attrs) {\n this[i][attrName] = attrs[attrName];\n this[i].setAttribute(attrName, attrs[attrName]);\n }\n }\n }\n\n return this;\n }\n\n function removeAttr(attr) {\n for (let i = 0; i < this.length; i += 1) {\n this[i].removeAttribute(attr);\n }\n\n return this;\n }\n\n function transform(transform) {\n for (let i = 0; i < this.length; i += 1) {\n this[i].style.transform = transform;\n }\n\n return this;\n }\n\n function transition$1(duration) {\n for (let i = 0; i < this.length; i += 1) {\n this[i].style.transitionDuration = typeof duration !== 'string' ? `${duration}ms` : duration;\n }\n\n return this;\n }\n\n function on(...args) {\n let [eventType, targetSelector, listener, capture] = args;\n\n if (typeof args[1] === 'function') {\n [eventType, listener, capture] = args;\n targetSelector = undefined;\n }\n\n if (!capture) capture = false;\n\n function handleLiveEvent(e) {\n const target = e.target;\n if (!target) return;\n const eventData = e.target.dom7EventData || [];\n\n if (eventData.indexOf(e) < 0) {\n eventData.unshift(e);\n }\n\n if ($(target).is(targetSelector)) listener.apply(target, eventData);\n else {\n const parents = $(target).parents(); // eslint-disable-line\n\n for (let k = 0; k < parents.length; k += 1) {\n if ($(parents[k]).is(targetSelector)) listener.apply(parents[k], eventData);\n }\n }\n }\n\n function handleEvent(e) {\n const eventData = e && e.target ? e.target.dom7EventData || [] : [];\n\n if (eventData.indexOf(e) < 0) {\n eventData.unshift(e);\n }\n\n listener.apply(this, eventData);\n }\n\n const events = eventType.split(' ');\n let j;\n\n for (let i = 0; i < this.length; i += 1) {\n const el = this[i];\n\n if (!targetSelector) {\n for (j = 0; j < events.length; j += 1) {\n const event = events[j];\n if (!el.dom7Listeners) el.dom7Listeners = {};\n if (!el.dom7Listeners[event]) el.dom7Listeners[event] = [];\n el.dom7Listeners[event].push({\n listener,\n proxyListener: handleEvent,\n });\n el.addEventListener(event, handleEvent, capture);\n }\n } else {\n // Live events\n for (j = 0; j < events.length; j += 1) {\n const event = events[j];\n if (!el.dom7LiveListeners) el.dom7LiveListeners = {};\n if (!el.dom7LiveListeners[event]) el.dom7LiveListeners[event] = [];\n el.dom7LiveListeners[event].push({\n listener,\n proxyListener: handleLiveEvent,\n });\n el.addEventListener(event, handleLiveEvent, capture);\n }\n }\n }\n\n return this;\n }\n\n function off(...args) {\n let [eventType, targetSelector, listener, capture] = args;\n\n if (typeof args[1] === 'function') {\n [eventType, listener, capture] = args;\n targetSelector = undefined;\n }\n\n if (!capture) capture = false;\n const events = eventType.split(' ');\n\n for (let i = 0; i < events.length; i += 1) {\n const event = events[i];\n\n for (let j = 0; j < this.length; j += 1) {\n const el = this[j];\n let handlers;\n\n if (!targetSelector && el.dom7Listeners) {\n handlers = el.dom7Listeners[event];\n } else if (targetSelector && el.dom7LiveListeners) {\n handlers = el.dom7LiveListeners[event];\n }\n\n if (handlers && handlers.length) {\n for (let k = handlers.length - 1; k >= 0; k -= 1) {\n const handler = handlers[k];\n\n if (listener && handler.listener === listener) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n } else if (\n listener &&\n handler.listener &&\n handler.listener.dom7proxy &&\n handler.listener.dom7proxy === listener\n ) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n } else if (!listener) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n }\n }\n }\n }\n }\n\n return this;\n }\n\n function trigger(...args) {\n const window = getWindow();\n const events = args[0].split(' ');\n const eventData = args[1];\n\n for (let i = 0; i < events.length; i += 1) {\n const event = events[i];\n\n for (let j = 0; j < this.length; j += 1) {\n const el = this[j];\n\n if (window.CustomEvent) {\n const evt = new window.CustomEvent(event, {\n detail: eventData,\n bubbles: true,\n cancelable: true,\n });\n el.dom7EventData = args.filter((data, dataIndex) => dataIndex > 0);\n el.dispatchEvent(evt);\n el.dom7EventData = [];\n delete el.dom7EventData;\n }\n }\n }\n\n return this;\n }\n\n function transitionEnd$1(callback) {\n const dom = this;\n\n function fireCallBack(e) {\n if (e.target !== this) return;\n callback.call(this, e);\n dom.off('transitionend', fireCallBack);\n }\n\n if (callback) {\n dom.on('transitionend', fireCallBack);\n }\n\n return this;\n }\n\n function outerWidth(includeMargins) {\n if (this.length > 0) {\n if (includeMargins) {\n const styles = this.styles();\n return (\n this[0].offsetWidth +\n parseFloat(styles.getPropertyValue('margin-right')) +\n parseFloat(styles.getPropertyValue('margin-left'))\n );\n }\n\n return this[0].offsetWidth;\n }\n\n return null;\n }\n\n function outerHeight(includeMargins) {\n if (this.length > 0) {\n if (includeMargins) {\n const styles = this.styles();\n return (\n this[0].offsetHeight +\n parseFloat(styles.getPropertyValue('margin-top')) +\n parseFloat(styles.getPropertyValue('margin-bottom'))\n );\n }\n\n return this[0].offsetHeight;\n }\n\n return null;\n }\n\n function offset() {\n if (this.length > 0) {\n const window = getWindow();\n const document = getDocument();\n const el = this[0];\n const box = el.getBoundingClientRect();\n const body = document.body;\n const clientTop = el.clientTop || body.clientTop || 0;\n const clientLeft = el.clientLeft || body.clientLeft || 0;\n const scrollTop = el === window ? window.scrollY : el.scrollTop;\n const scrollLeft = el === window ? window.scrollX : el.scrollLeft;\n return {\n top: box.top + scrollTop - clientTop,\n left: box.left + scrollLeft - clientLeft,\n };\n }\n\n return null;\n }\n\n function styles() {\n const window = getWindow();\n if (this[0]) return window.getComputedStyle(this[0], null);\n return {};\n }\n\n function css(props, value) {\n const window = getWindow();\n let i;\n\n if (arguments.length === 1) {\n if (typeof props === 'string') {\n // .css('width')\n if (this[0]) return window.getComputedStyle(this[0], null).getPropertyValue(props);\n } else {\n // .css({ width: '100px' })\n for (i = 0; i < this.length; i += 1) {\n for (const prop in props) {\n this[i].style[prop] = props[prop];\n }\n }\n\n return this;\n }\n }\n\n if (arguments.length === 2 && typeof props === 'string') {\n // .css('width', '100px')\n for (i = 0; i < this.length; i += 1) {\n this[i].style[props] = value;\n }\n\n return this;\n }\n\n return this;\n }\n\n function each(callback) {\n if (!callback) return this;\n this.forEach((el, index) => {\n callback.apply(el, [el, index]);\n });\n return this;\n }\n\n function filter(callback) {\n const result = arrayFilter(this, callback);\n return $(result);\n }\n\n function html(html) {\n if (typeof html === 'undefined') {\n return this[0] ? this[0].innerHTML : null;\n }\n\n for (let i = 0; i < this.length; i += 1) {\n this[i].innerHTML = html;\n }\n\n return this;\n }\n\n function text(text) {\n if (typeof text === 'undefined') {\n return this[0] ? this[0].textContent.trim() : null;\n }\n\n for (let i = 0; i < this.length; i += 1) {\n this[i].textContent = text;\n }\n\n return this;\n }\n\n function is(selector) {\n const window = getWindow();\n const document = getDocument();\n const el = this[0];\n let compareWith;\n let i;\n if (!el || typeof selector === 'undefined') return false;\n\n if (typeof selector === 'string') {\n if (el.matches) return el.matches(selector);\n if (el.webkitMatchesSelector) return el.webkitMatchesSelector(selector);\n if (el.msMatchesSelector) return el.msMatchesSelector(selector);\n compareWith = $(selector);\n\n for (i = 0; i < compareWith.length; i += 1) {\n if (compareWith[i] === el) return true;\n }\n\n return false;\n }\n\n if (selector === document) {\n return el === document;\n }\n\n if (selector === window) {\n return el === window;\n }\n\n if (selector.nodeType || selector instanceof Dom7) {\n compareWith = selector.nodeType ? [selector] : selector;\n\n for (i = 0; i < compareWith.length; i += 1) {\n if (compareWith[i] === el) return true;\n }\n\n return false;\n }\n\n return false;\n }\n\n function index() {\n let child = this[0];\n let i;\n\n if (child) {\n i = 0; // eslint-disable-next-line\n\n while ((child = child.previousSibling) !== null) {\n if (child.nodeType === 1) i += 1;\n }\n\n return i;\n }\n\n return undefined;\n }\n\n function eq(index) {\n if (typeof index === 'undefined') return this;\n const length = this.length;\n\n if (index > length - 1) {\n return $([]);\n }\n\n if (index < 0) {\n const returnIndex = length + index;\n if (returnIndex < 0) return $([]);\n return $([this[returnIndex]]);\n }\n\n return $([this[index]]);\n }\n\n function append(...els) {\n let newChild;\n const document = getDocument();\n\n for (let k = 0; k < els.length; k += 1) {\n newChild = els[k];\n\n for (let i = 0; i < this.length; i += 1) {\n if (typeof newChild === 'string') {\n const tempDiv = document.createElement('div');\n tempDiv.innerHTML = newChild;\n\n while (tempDiv.firstChild) {\n this[i].appendChild(tempDiv.firstChild);\n }\n } else if (newChild instanceof Dom7) {\n for (let j = 0; j < newChild.length; j += 1) {\n this[i].appendChild(newChild[j]);\n }\n } else {\n this[i].appendChild(newChild);\n }\n }\n }\n\n return this;\n }\n\n function prepend(newChild) {\n const document = getDocument();\n let i;\n let j;\n\n for (i = 0; i < this.length; i += 1) {\n if (typeof newChild === 'string') {\n const tempDiv = document.createElement('div');\n tempDiv.innerHTML = newChild;\n\n for (j = tempDiv.childNodes.length - 1; j >= 0; j -= 1) {\n this[i].insertBefore(tempDiv.childNodes[j], this[i].childNodes[0]);\n }\n } else if (newChild instanceof Dom7) {\n for (j = 0; j < newChild.length; j += 1) {\n this[i].insertBefore(newChild[j], this[i].childNodes[0]);\n }\n } else {\n this[i].insertBefore(newChild, this[i].childNodes[0]);\n }\n }\n\n return this;\n }\n\n function next(selector) {\n if (this.length > 0) {\n if (selector) {\n if (this[0].nextElementSibling && $(this[0].nextElementSibling).is(selector)) {\n return $([this[0].nextElementSibling]);\n }\n\n return $([]);\n }\n\n if (this[0].nextElementSibling) return $([this[0].nextElementSibling]);\n return $([]);\n }\n\n return $([]);\n }\n\n function nextAll(selector) {\n const nextEls = [];\n let el = this[0];\n if (!el) return $([]);\n\n while (el.nextElementSibling) {\n const next = el.nextElementSibling; // eslint-disable-line\n\n if (selector) {\n if ($(next).is(selector)) nextEls.push(next);\n } else nextEls.push(next);\n\n el = next;\n }\n\n return $(nextEls);\n }\n\n function prev(selector) {\n if (this.length > 0) {\n const el = this[0];\n\n if (selector) {\n if (el.previousElementSibling && $(el.previousElementSibling).is(selector)) {\n return $([el.previousElementSibling]);\n }\n\n return $([]);\n }\n\n if (el.previousElementSibling) return $([el.previousElementSibling]);\n return $([]);\n }\n\n return $([]);\n }\n\n function prevAll(selector) {\n const prevEls = [];\n let el = this[0];\n if (!el) return $([]);\n\n while (el.previousElementSibling) {\n const prev = el.previousElementSibling; // eslint-disable-line\n\n if (selector) {\n if ($(prev).is(selector)) prevEls.push(prev);\n } else prevEls.push(prev);\n\n el = prev;\n }\n\n return $(prevEls);\n }\n\n function parent(selector) {\n const parents = []; // eslint-disable-line\n\n for (let i = 0; i < this.length; i += 1) {\n if (this[i].parentNode !== null) {\n if (selector) {\n if ($(this[i].parentNode).is(selector)) parents.push(this[i].parentNode);\n } else {\n parents.push(this[i].parentNode);\n }\n }\n }\n\n return $(parents);\n }\n\n function parents(selector) {\n const parents = []; // eslint-disable-line\n\n for (let i = 0; i < this.length; i += 1) {\n let parent = this[i].parentNode; // eslint-disable-line\n\n while (parent) {\n if (selector) {\n if ($(parent).is(selector)) parents.push(parent);\n } else {\n parents.push(parent);\n }\n\n parent = parent.parentNode;\n }\n }\n\n return $(parents);\n }\n\n function closest(selector) {\n let closest = this; // eslint-disable-line\n\n if (typeof selector === 'undefined') {\n return $([]);\n }\n\n if (!closest.is(selector)) {\n closest = closest.parents(selector).eq(0);\n }\n\n return closest;\n }\n\n function find(selector) {\n const foundElements = [];\n\n for (let i = 0; i < this.length; i += 1) {\n const found = this[i].querySelectorAll(selector);\n\n for (let j = 0; j < found.length; j += 1) {\n foundElements.push(found[j]);\n }\n }\n\n return $(foundElements);\n }\n\n function children(selector) {\n const children = []; // eslint-disable-line\n\n for (let i = 0; i < this.length; i += 1) {\n const childNodes = this[i].children;\n\n for (let j = 0; j < childNodes.length; j += 1) {\n if (!selector || $(childNodes[j]).is(selector)) {\n children.push(childNodes[j]);\n }\n }\n }\n\n return $(children);\n }\n\n function remove() {\n for (let i = 0; i < this.length; i += 1) {\n if (this[i].parentNode) this[i].parentNode.removeChild(this[i]);\n }\n\n return this;\n }\n\n const Methods = {\n addClass,\n removeClass,\n hasClass,\n toggleClass,\n attr,\n removeAttr,\n transform,\n transition: transition$1,\n on,\n off,\n trigger,\n transitionEnd: transitionEnd$1,\n outerWidth,\n outerHeight,\n styles,\n offset,\n css,\n each,\n html,\n text,\n is,\n index,\n eq,\n append,\n prepend,\n next,\n nextAll,\n prev,\n prevAll,\n parent,\n parents,\n closest,\n find,\n children,\n filter,\n remove,\n };\n Object.keys(Methods).forEach((methodName) => {\n Object.defineProperty($.fn, methodName, {\n value: Methods[methodName],\n writable: true,\n });\n });\n\n function deleteProps(obj) {\n const object = obj;\n Object.keys(object).forEach((key) => {\n try {\n object[key] = null;\n } catch (e) {\n // no getter for object\n }\n\n try {\n delete object[key];\n } catch (e) {\n // something got wrong\n }\n });\n }\n\n function nextTick(callback, delay = 0) {\n return setTimeout(callback, delay);\n }\n\n function now() {\n return Date.now();\n }\n\n function getComputedStyle$1(el) {\n const window = getWindow();\n let style;\n\n if (window.getComputedStyle) {\n style = window.getComputedStyle(el, null);\n }\n\n if (!style && el.currentStyle) {\n style = el.currentStyle;\n }\n\n if (!style) {\n style = el.style;\n }\n\n return style;\n }\n\n function getTranslate(el, axis = 'x') {\n const window = getWindow();\n let matrix;\n let curTransform;\n let transformMatrix;\n const curStyle = getComputedStyle$1(el);\n\n if (window.WebKitCSSMatrix) {\n curTransform = curStyle.transform || curStyle.webkitTransform;\n\n if (curTransform.split(',').length > 6) {\n curTransform = curTransform\n .split(', ')\n .map((a) => a.replace(',', '.'))\n .join(', ');\n } // Some old versions of Webkit choke when 'none' is passed; pass\n // empty string instead in this case\n\n transformMatrix = new window.WebKitCSSMatrix(curTransform === 'none' ? '' : curTransform);\n } else {\n transformMatrix =\n curStyle.MozTransform ||\n curStyle.OTransform ||\n curStyle.MsTransform ||\n curStyle.msTransform ||\n curStyle.transform ||\n curStyle.getPropertyValue('transform').replace('translate(', 'matrix(1, 0, 0, 1,');\n matrix = transformMatrix.toString().split(',');\n }\n\n if (axis === 'x') {\n // Latest Chrome and webkits Fix\n if (window.WebKitCSSMatrix) curTransform = transformMatrix.m41; // Crazy IE10 Matrix\n else if (matrix.length === 16) curTransform = parseFloat(matrix[12]); // Normal Browsers\n else curTransform = parseFloat(matrix[4]);\n }\n\n if (axis === 'y') {\n // Latest Chrome and webkits Fix\n if (window.WebKitCSSMatrix) curTransform = transformMatrix.m42; // Crazy IE10 Matrix\n else if (matrix.length === 16) curTransform = parseFloat(matrix[13]); // Normal Browsers\n else curTransform = parseFloat(matrix[5]);\n }\n\n return curTransform || 0;\n }\n\n function isObject(o) {\n return (\n typeof o === 'object' &&\n o !== null &&\n o.constructor &&\n Object.prototype.toString.call(o).slice(8, -1) === 'Object'\n );\n }\n\n function isNode(node) {\n // eslint-disable-next-line\n if (typeof window !== 'undefined' && typeof window.HTMLElement !== 'undefined') {\n return node instanceof HTMLElement;\n }\n\n return node && (node.nodeType === 1 || node.nodeType === 11);\n }\n\n function extend(...args) {\n const to = Object(args[0]);\n const noExtend = ['__proto__', 'constructor', 'prototype'];\n\n for (let i = 1; i < args.length; i += 1) {\n const nextSource = args[i];\n\n if (nextSource !== undefined && nextSource !== null && !isNode(nextSource)) {\n const keysArray = Object.keys(Object(nextSource)).filter((key) => noExtend.indexOf(key) < 0);\n\n for (let nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex += 1) {\n const nextKey = keysArray[nextIndex];\n const desc = Object.getOwnPropertyDescriptor(nextSource, nextKey);\n\n if (desc !== undefined && desc.enumerable) {\n if (isObject(to[nextKey]) && isObject(nextSource[nextKey])) {\n if (nextSource[nextKey].__swiper__) {\n to[nextKey] = nextSource[nextKey];\n } else {\n extend(to[nextKey], nextSource[nextKey]);\n }\n } else if (!isObject(to[nextKey]) && isObject(nextSource[nextKey])) {\n to[nextKey] = {};\n\n if (nextSource[nextKey].__swiper__) {\n to[nextKey] = nextSource[nextKey];\n } else {\n extend(to[nextKey], nextSource[nextKey]);\n }\n } else {\n to[nextKey] = nextSource[nextKey];\n }\n }\n }\n }\n }\n\n return to;\n }\n\n function setCSSProperty(el, varName, varValue) {\n el.style.setProperty(varName, varValue);\n }\n\n function animateCSSModeScroll({swiper, targetPosition, side}) {\n const window = getWindow();\n const startPosition = -swiper.translate;\n let startTime = null;\n let time;\n const duration = swiper.params.speed;\n swiper.wrapperEl.style.scrollSnapType = 'none';\n window.cancelAnimationFrame(swiper.cssModeFrameID);\n const dir = targetPosition > startPosition ? 'next' : 'prev';\n\n const isOutOfBound = (current, target) => {\n return (dir === 'next' && current >= target) || (dir === 'prev' && current <= target);\n };\n\n const animate = () => {\n time = new Date().getTime();\n\n if (startTime === null) {\n startTime = time;\n }\n\n const progress = Math.max(Math.min((time - startTime) / duration, 1), 0);\n const easeProgress = 0.5 - Math.cos(progress * Math.PI) / 2;\n let currentPosition = startPosition + easeProgress * (targetPosition - startPosition);\n\n if (isOutOfBound(currentPosition, targetPosition)) {\n currentPosition = targetPosition;\n }\n\n swiper.wrapperEl.scrollTo({\n [side]: currentPosition,\n });\n\n if (isOutOfBound(currentPosition, targetPosition)) {\n swiper.wrapperEl.style.overflow = 'hidden';\n swiper.wrapperEl.style.scrollSnapType = '';\n setTimeout(() => {\n swiper.wrapperEl.style.overflow = '';\n swiper.wrapperEl.scrollTo({\n [side]: currentPosition,\n });\n });\n window.cancelAnimationFrame(swiper.cssModeFrameID);\n return;\n }\n\n swiper.cssModeFrameID = window.requestAnimationFrame(animate);\n };\n\n animate();\n }\n\n let support;\n\n function calcSupport() {\n const window = getWindow();\n const document = getDocument();\n return {\n smoothScroll: document.documentElement && 'scrollBehavior' in document.documentElement.style,\n touch: !!('ontouchstart' in window || (window.DocumentTouch && document instanceof window.DocumentTouch)),\n passiveListener: (function checkPassiveListener() {\n let supportsPassive = false;\n\n try {\n const opts = Object.defineProperty({}, 'passive', {\n // eslint-disable-next-line\n get() {\n supportsPassive = true;\n },\n });\n window.addEventListener('testPassiveListener', null, opts);\n } catch (e) {\n // No support\n }\n\n return supportsPassive;\n })(),\n gestures: (function checkGestures() {\n return 'ongesturestart' in window;\n })(),\n };\n }\n\n function getSupport() {\n if (!support) {\n support = calcSupport();\n }\n\n return support;\n }\n\n let deviceCached;\n\n function calcDevice({userAgent} = {}) {\n const support = getSupport();\n const window = getWindow();\n const platform = window.navigator.platform;\n const ua = userAgent || window.navigator.userAgent;\n const device = {\n ios: false,\n android: false,\n };\n const screenWidth = window.screen.width;\n const screenHeight = window.screen.height;\n const android = ua.match(/(Android);?[\\s\\/]+([\\d.]+)?/); // eslint-disable-line\n\n let ipad = ua.match(/(iPad).*OS\\s([\\d_]+)/);\n const ipod = ua.match(/(iPod)(.*OS\\s([\\d_]+))?/);\n const iphone = !ipad && ua.match(/(iPhone\\sOS|iOS)\\s([\\d_]+)/);\n const windows = platform === 'Win32';\n let macos = platform === 'MacIntel'; // iPadOs 13 fix\n\n const iPadScreens = [\n '1024x1366',\n '1366x1024',\n '834x1194',\n '1194x834',\n '834x1112',\n '1112x834',\n '768x1024',\n '1024x768',\n '820x1180',\n '1180x820',\n '810x1080',\n '1080x810',\n ];\n\n if (!ipad && macos && support.touch && iPadScreens.indexOf(`${screenWidth}x${screenHeight}`) >= 0) {\n ipad = ua.match(/(Version)\\/([\\d.]+)/);\n if (!ipad) ipad = [0, 1, '13_0_0'];\n macos = false;\n } // Android\n\n if (android && !windows) {\n device.os = 'android';\n device.android = true;\n }\n\n if (ipad || iphone || ipod) {\n device.os = 'ios';\n device.ios = true;\n } // Export object\n\n return device;\n }\n\n function getDevice(overrides = {}) {\n if (!deviceCached) {\n deviceCached = calcDevice(overrides);\n }\n\n return deviceCached;\n }\n\n let browser;\n\n function calcBrowser() {\n const window = getWindow();\n\n function isSafari() {\n const ua = window.navigator.userAgent.toLowerCase();\n return ua.indexOf('safari') >= 0 && ua.indexOf('chrome') < 0 && ua.indexOf('android') < 0;\n }\n\n return {\n isSafari: isSafari(),\n isWebView: /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(window.navigator.userAgent),\n };\n }\n\n function getBrowser() {\n if (!browser) {\n browser = calcBrowser();\n }\n\n return browser;\n }\n\n function Resize({swiper, on, emit}) {\n const window = getWindow();\n let observer = null;\n\n const resizeHandler = () => {\n if (!swiper || swiper.destroyed || !swiper.initialized) return;\n emit('beforeResize');\n emit('resize');\n };\n\n const createObserver = () => {\n if (!swiper || swiper.destroyed || !swiper.initialized) return;\n observer = new ResizeObserver((entries) => {\n const {width, height} = swiper;\n let newWidth = width;\n let newHeight = height;\n entries.forEach(({contentBoxSize, contentRect, target}) => {\n if (target && target !== swiper.el) return;\n newWidth = contentRect ? contentRect.width : (contentBoxSize[0] || contentBoxSize).inlineSize;\n newHeight = contentRect ? contentRect.height : (contentBoxSize[0] || contentBoxSize).blockSize;\n });\n\n if (newWidth !== width || newHeight !== height) {\n resizeHandler();\n }\n });\n observer.observe(swiper.el);\n };\n\n const removeObserver = () => {\n if (observer && observer.unobserve && swiper.el) {\n observer.unobserve(swiper.el);\n observer = null;\n }\n };\n\n const orientationChangeHandler = () => {\n if (!swiper || swiper.destroyed || !swiper.initialized) return;\n emit('orientationchange');\n };\n\n on('init', () => {\n if (swiper.params.resizeObserver && typeof window.ResizeObserver !== 'undefined') {\n createObserver();\n return;\n }\n\n window.addEventListener('resize', resizeHandler);\n window.addEventListener('orientationchange', orientationChangeHandler);\n });\n on('destroy', () => {\n removeObserver();\n window.removeEventListener('resize', resizeHandler);\n window.removeEventListener('orientationchange', orientationChangeHandler);\n });\n }\n\n function Observer({swiper, extendParams, on, emit}) {\n const observers = [];\n const window = getWindow();\n\n const attach = (target, options = {}) => {\n const ObserverFunc = window.MutationObserver || window.WebkitMutationObserver;\n const observer = new ObserverFunc((mutations) => {\n // The observerUpdate event should only be triggered\n // once despite the number of mutations. Additional\n // triggers are redundant and are very costly\n if (mutations.length === 1) {\n emit('observerUpdate', mutations[0]);\n return;\n }\n\n const observerUpdate = function observerUpdate() {\n emit('observerUpdate', mutations[0]);\n };\n\n if (window.requestAnimationFrame) {\n window.requestAnimationFrame(observerUpdate);\n } else {\n window.setTimeout(observerUpdate, 0);\n }\n });\n observer.observe(target, {\n attributes: typeof options.attributes === 'undefined' ? true : options.attributes,\n childList: typeof options.childList === 'undefined' ? true : options.childList,\n characterData: typeof options.characterData === 'undefined' ? true : options.characterData,\n });\n observers.push(observer);\n };\n\n const init = () => {\n if (!swiper.params.observer) return;\n\n if (swiper.params.observeParents) {\n const containerParents = swiper.$el.parents();\n\n for (let i = 0; i < containerParents.length; i += 1) {\n attach(containerParents[i]);\n }\n } // Observe container\n\n attach(swiper.$el[0], {\n childList: swiper.params.observeSlideChildren,\n }); // Observe wrapper\n\n attach(swiper.$wrapperEl[0], {\n attributes: false,\n });\n };\n\n const destroy = () => {\n observers.forEach((observer) => {\n observer.disconnect();\n });\n observers.splice(0, observers.length);\n };\n\n extendParams({\n observer: false,\n observeParents: false,\n observeSlideChildren: false,\n });\n on('init', init);\n on('destroy', destroy);\n }\n\n /* eslint-disable no-underscore-dangle */\n var eventsEmitter = {\n on(events, handler, priority) {\n const self = this;\n if (typeof handler !== 'function') return self;\n const method = priority ? 'unshift' : 'push';\n events.split(' ').forEach((event) => {\n if (!self.eventsListeners[event]) self.eventsListeners[event] = [];\n self.eventsListeners[event][method](handler);\n });\n return self;\n },\n\n once(events, handler, priority) {\n const self = this;\n if (typeof handler !== 'function') return self;\n\n function onceHandler(...args) {\n self.off(events, onceHandler);\n\n if (onceHandler.__emitterProxy) {\n delete onceHandler.__emitterProxy;\n }\n\n handler.apply(self, args);\n }\n\n onceHandler.__emitterProxy = handler;\n return self.on(events, onceHandler, priority);\n },\n\n onAny(handler, priority) {\n const self = this;\n if (typeof handler !== 'function') return self;\n const method = priority ? 'unshift' : 'push';\n\n if (self.eventsAnyListeners.indexOf(handler) < 0) {\n self.eventsAnyListeners[method](handler);\n }\n\n return self;\n },\n\n offAny(handler) {\n const self = this;\n if (!self.eventsAnyListeners) return self;\n const index = self.eventsAnyListeners.indexOf(handler);\n\n if (index >= 0) {\n self.eventsAnyListeners.splice(index, 1);\n }\n\n return self;\n },\n\n off(events, handler) {\n const self = this;\n if (!self.eventsListeners) return self;\n events.split(' ').forEach((event) => {\n if (typeof handler === 'undefined') {\n self.eventsListeners[event] = [];\n } else if (self.eventsListeners[event]) {\n self.eventsListeners[event].forEach((eventHandler, index) => {\n if (\n eventHandler === handler ||\n (eventHandler.__emitterProxy && eventHandler.__emitterProxy === handler)\n ) {\n self.eventsListeners[event].splice(index, 1);\n }\n });\n }\n });\n return self;\n },\n\n emit(...args) {\n const self = this;\n if (!self.eventsListeners) return self;\n let events;\n let data;\n let context;\n\n if (typeof args[0] === 'string' || Array.isArray(args[0])) {\n events = args[0];\n data = args.slice(1, args.length);\n context = self;\n } else {\n events = args[0].events;\n data = args[0].data;\n context = args[0].context || self;\n }\n\n data.unshift(context);\n const eventsArray = Array.isArray(events) ? events : events.split(' ');\n eventsArray.forEach((event) => {\n if (self.eventsAnyListeners && self.eventsAnyListeners.length) {\n self.eventsAnyListeners.forEach((eventHandler) => {\n eventHandler.apply(context, [event, ...data]);\n });\n }\n\n if (self.eventsListeners && self.eventsListeners[event]) {\n self.eventsListeners[event].forEach((eventHandler) => {\n eventHandler.apply(context, data);\n });\n }\n });\n return self;\n },\n };\n\n function updateSize() {\n const swiper = this;\n let width;\n let height;\n const $el = swiper.$el;\n\n if (typeof swiper.params.width !== 'undefined' && swiper.params.width !== null) {\n width = swiper.params.width;\n } else {\n width = $el[0].clientWidth;\n }\n\n if (typeof swiper.params.height !== 'undefined' && swiper.params.height !== null) {\n height = swiper.params.height;\n } else {\n height = $el[0].clientHeight;\n }\n\n if ((width === 0 && swiper.isHorizontal()) || (height === 0 && swiper.isVertical())) {\n return;\n } // Subtract paddings\n\n width = width - parseInt($el.css('padding-left') || 0, 10) - parseInt($el.css('padding-right') || 0, 10);\n height = height - parseInt($el.css('padding-top') || 0, 10) - parseInt($el.css('padding-bottom') || 0, 10);\n if (Number.isNaN(width)) width = 0;\n if (Number.isNaN(height)) height = 0;\n Object.assign(swiper, {\n width,\n height,\n size: swiper.isHorizontal() ? width : height,\n });\n }\n\n function updateSlides() {\n const swiper = this;\n\n function getDirectionLabel(property) {\n if (swiper.isHorizontal()) {\n return property;\n } // prettier-ignore\n\n return {\n width: 'height',\n 'margin-top': 'margin-left',\n 'margin-bottom ': 'margin-right',\n 'margin-left': 'margin-top',\n 'margin-right': 'margin-bottom',\n 'padding-left': 'padding-top',\n 'padding-right': 'padding-bottom',\n marginRight: 'marginBottom',\n }[property];\n }\n\n function getDirectionPropertyValue(node, label) {\n return parseFloat(node.getPropertyValue(getDirectionLabel(label)) || 0);\n }\n\n const params = swiper.params;\n const {$wrapperEl, size: swiperSize, rtlTranslate: rtl, wrongRTL} = swiper;\n const isVirtual = swiper.virtual && params.virtual.enabled;\n const previousSlidesLength = isVirtual ? swiper.virtual.slides.length : swiper.slides.length;\n const slides = $wrapperEl.children(`.${swiper.params.slideClass}`);\n const slidesLength = isVirtual ? swiper.virtual.slides.length : slides.length;\n let snapGrid = [];\n const slidesGrid = [];\n const slidesSizesGrid = [];\n let offsetBefore = params.slidesOffsetBefore;\n\n if (typeof offsetBefore === 'function') {\n offsetBefore = params.slidesOffsetBefore.call(swiper);\n }\n\n let offsetAfter = params.slidesOffsetAfter;\n\n if (typeof offsetAfter === 'function') {\n offsetAfter = params.slidesOffsetAfter.call(swiper);\n }\n\n const previousSnapGridLength = swiper.snapGrid.length;\n const previousSlidesGridLength = swiper.slidesGrid.length;\n let spaceBetween = params.spaceBetween;\n let slidePosition = -offsetBefore;\n let prevSlideSize = 0;\n let index = 0;\n\n if (typeof swiperSize === 'undefined') {\n return;\n }\n\n if (typeof spaceBetween === 'string' && spaceBetween.indexOf('%') >= 0) {\n spaceBetween = (parseFloat(spaceBetween.replace('%', '')) / 100) * swiperSize;\n }\n\n swiper.virtualSize = -spaceBetween; // reset margins\n\n if (rtl)\n slides.css({\n marginLeft: '',\n marginBottom: '',\n marginTop: '',\n });\n else\n slides.css({\n marginRight: '',\n marginBottom: '',\n marginTop: '',\n }); // reset cssMode offsets\n\n if (params.centeredSlides && params.cssMode) {\n setCSSProperty(swiper.wrapperEl, '--swiper-centered-offset-before', '');\n setCSSProperty(swiper.wrapperEl, '--swiper-centered-offset-after', '');\n }\n\n const gridEnabled = params.grid && params.grid.rows > 1 && swiper.grid;\n\n if (gridEnabled) {\n swiper.grid.initSlides(slidesLength);\n } // Calc slides\n\n let slideSize;\n const shouldResetSlideSize =\n params.slidesPerView === 'auto' &&\n params.breakpoints &&\n Object.keys(params.breakpoints).filter((key) => {\n return typeof params.breakpoints[key].slidesPerView !== 'undefined';\n }).length > 0;\n\n for (let i = 0; i < slidesLength; i += 1) {\n slideSize = 0;\n const slide = slides.eq(i);\n\n if (gridEnabled) {\n swiper.grid.updateSlide(i, slide, slidesLength, getDirectionLabel);\n }\n\n if (slide.css('display') === 'none') continue; // eslint-disable-line\n\n if (params.slidesPerView === 'auto') {\n if (shouldResetSlideSize) {\n slides[i].style[getDirectionLabel('width')] = ``;\n }\n\n const slideStyles = getComputedStyle(slide[0]);\n const currentTransform = slide[0].style.transform;\n const currentWebKitTransform = slide[0].style.webkitTransform;\n\n if (currentTransform) {\n slide[0].style.transform = 'none';\n }\n\n if (currentWebKitTransform) {\n slide[0].style.webkitTransform = 'none';\n }\n\n if (params.roundLengths) {\n slideSize = swiper.isHorizontal() ? slide.outerWidth(true) : slide.outerHeight(true);\n } else {\n // eslint-disable-next-line\n const width = getDirectionPropertyValue(slideStyles, 'width');\n const paddingLeft = getDirectionPropertyValue(slideStyles, 'padding-left');\n const paddingRight = getDirectionPropertyValue(slideStyles, 'padding-right');\n const marginLeft = getDirectionPropertyValue(slideStyles, 'margin-left');\n const marginRight = getDirectionPropertyValue(slideStyles, 'margin-right');\n const boxSizing = slideStyles.getPropertyValue('box-sizing');\n\n if (boxSizing && boxSizing === 'border-box') {\n slideSize = width + marginLeft + marginRight;\n } else {\n const {clientWidth, offsetWidth} = slide[0];\n slideSize = width + paddingLeft + paddingRight + marginLeft + marginRight + (offsetWidth - clientWidth);\n }\n }\n\n if (currentTransform) {\n slide[0].style.transform = currentTransform;\n }\n\n if (currentWebKitTransform) {\n slide[0].style.webkitTransform = currentWebKitTransform;\n }\n\n if (params.roundLengths) slideSize = Math.floor(slideSize);\n } else {\n slideSize = (swiperSize - (params.slidesPerView - 1) * spaceBetween) / params.slidesPerView;\n if (params.roundLengths) slideSize = Math.floor(slideSize);\n\n if (slides[i]) {\n slides[i].style[getDirectionLabel('width')] = `${slideSize}px`;\n }\n }\n\n if (slides[i]) {\n slides[i].swiperSlideSize = slideSize;\n }\n\n slidesSizesGrid.push(slideSize);\n\n if (params.centeredSlides) {\n slidePosition = slidePosition + slideSize / 2 + prevSlideSize / 2 + spaceBetween;\n if (prevSlideSize === 0 && i !== 0) slidePosition = slidePosition - swiperSize / 2 - spaceBetween;\n if (i === 0) slidePosition = slidePosition - swiperSize / 2 - spaceBetween;\n if (Math.abs(slidePosition) < 1 / 1000) slidePosition = 0;\n if (params.roundLengths) slidePosition = Math.floor(slidePosition);\n if (index % params.slidesPerGroup === 0) snapGrid.push(slidePosition);\n slidesGrid.push(slidePosition);\n } else {\n if (params.roundLengths) slidePosition = Math.floor(slidePosition);\n if ((index - Math.min(swiper.params.slidesPerGroupSkip, index)) % swiper.params.slidesPerGroup === 0)\n snapGrid.push(slidePosition);\n slidesGrid.push(slidePosition);\n slidePosition = slidePosition + slideSize + spaceBetween;\n }\n\n swiper.virtualSize += slideSize + spaceBetween;\n prevSlideSize = slideSize;\n index += 1;\n }\n\n swiper.virtualSize = Math.max(swiper.virtualSize, swiperSize) + offsetAfter;\n\n if (rtl && wrongRTL && (params.effect === 'slide' || params.effect === 'coverflow')) {\n $wrapperEl.css({\n width: `${swiper.virtualSize + params.spaceBetween}px`,\n });\n }\n\n if (params.setWrapperSize) {\n $wrapperEl.css({\n [getDirectionLabel('width')]: `${swiper.virtualSize + params.spaceBetween}px`,\n });\n }\n\n if (gridEnabled) {\n swiper.grid.updateWrapperSize(slideSize, snapGrid, getDirectionLabel);\n } // Remove last grid elements depending on width\n\n if (!params.centeredSlides) {\n const newSlidesGrid = [];\n\n for (let i = 0; i < snapGrid.length; i += 1) {\n let slidesGridItem = snapGrid[i];\n if (params.roundLengths) slidesGridItem = Math.floor(slidesGridItem);\n\n if (snapGrid[i] <= swiper.virtualSize - swiperSize) {\n newSlidesGrid.push(slidesGridItem);\n }\n }\n\n snapGrid = newSlidesGrid;\n\n if (Math.floor(swiper.virtualSize - swiperSize) - Math.floor(snapGrid[snapGrid.length - 1]) > 1) {\n snapGrid.push(swiper.virtualSize - swiperSize);\n }\n }\n\n if (snapGrid.length === 0) snapGrid = [0];\n\n if (params.spaceBetween !== 0) {\n const key = swiper.isHorizontal() && rtl ? 'marginLeft' : getDirectionLabel('marginRight');\n slides\n .filter((_, slideIndex) => {\n if (!params.cssMode) return true;\n\n if (slideIndex === slides.length - 1) {\n return false;\n }\n\n return true;\n })\n .css({\n [key]: `${spaceBetween}px`,\n });\n }\n\n if (params.centeredSlides && params.centeredSlidesBounds) {\n let allSlidesSize = 0;\n slidesSizesGrid.forEach((slideSizeValue) => {\n allSlidesSize += slideSizeValue + (params.spaceBetween ? params.spaceBetween : 0);\n });\n allSlidesSize -= params.spaceBetween;\n const maxSnap = allSlidesSize - swiperSize;\n snapGrid = snapGrid.map((snap) => {\n if (snap < 0) return -offsetBefore;\n if (snap > maxSnap) return maxSnap + offsetAfter;\n return snap;\n });\n }\n\n if (params.centerInsufficientSlides) {\n let allSlidesSize = 0;\n slidesSizesGrid.forEach((slideSizeValue) => {\n allSlidesSize += slideSizeValue + (params.spaceBetween ? params.spaceBetween : 0);\n });\n allSlidesSize -= params.spaceBetween;\n\n if (allSlidesSize < swiperSize) {\n const allSlidesOffset = (swiperSize - allSlidesSize) / 2;\n snapGrid.forEach((snap, snapIndex) => {\n snapGrid[snapIndex] = snap - allSlidesOffset;\n });\n slidesGrid.forEach((snap, snapIndex) => {\n slidesGrid[snapIndex] = snap + allSlidesOffset;\n });\n }\n }\n\n Object.assign(swiper, {\n slides,\n snapGrid,\n slidesGrid,\n slidesSizesGrid,\n });\n\n if (params.centeredSlides && params.cssMode && !params.centeredSlidesBounds) {\n setCSSProperty(swiper.wrapperEl, '--swiper-centered-offset-before', `${-snapGrid[0]}px`);\n setCSSProperty(\n swiper.wrapperEl,\n '--swiper-centered-offset-after',\n `${swiper.size / 2 - slidesSizesGrid[slidesSizesGrid.length - 1] / 2}px`,\n );\n const addToSnapGrid = -swiper.snapGrid[0];\n const addToSlidesGrid = -swiper.slidesGrid[0];\n swiper.snapGrid = swiper.snapGrid.map((v) => v + addToSnapGrid);\n swiper.slidesGrid = swiper.slidesGrid.map((v) => v + addToSlidesGrid);\n }\n\n if (slidesLength !== previousSlidesLength) {\n swiper.emit('slidesLengthChange');\n }\n\n if (snapGrid.length !== previousSnapGridLength) {\n if (swiper.params.watchOverflow) swiper.checkOverflow();\n swiper.emit('snapGridLengthChange');\n }\n\n if (slidesGrid.length !== previousSlidesGridLength) {\n swiper.emit('slidesGridLengthChange');\n }\n\n if (params.watchSlidesProgress) {\n swiper.updateSlidesOffset();\n }\n }\n\n function updateAutoHeight(speed) {\n const swiper = this;\n const activeSlides = [];\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n let newHeight = 0;\n let i;\n\n if (typeof speed === 'number') {\n swiper.setTransition(speed);\n } else if (speed === true) {\n swiper.setTransition(swiper.params.speed);\n }\n\n const getSlideByIndex = (index) => {\n if (isVirtual) {\n return swiper.slides.filter((el) => parseInt(el.getAttribute('data-swiper-slide-index'), 10) === index)[0];\n }\n\n return swiper.slides.eq(index)[0];\n }; // Find slides currently in view\n\n if (swiper.params.slidesPerView !== 'auto' && swiper.params.slidesPerView > 1) {\n if (swiper.params.centeredSlides) {\n swiper.visibleSlides.each((slide) => {\n activeSlides.push(slide);\n });\n } else {\n for (i = 0; i < Math.ceil(swiper.params.slidesPerView); i += 1) {\n const index = swiper.activeIndex + i;\n if (index > swiper.slides.length && !isVirtual) break;\n activeSlides.push(getSlideByIndex(index));\n }\n }\n } else {\n activeSlides.push(getSlideByIndex(swiper.activeIndex));\n } // Find new height from highest slide in view\n\n for (i = 0; i < activeSlides.length; i += 1) {\n if (typeof activeSlides[i] !== 'undefined') {\n const height = activeSlides[i].offsetHeight;\n newHeight = height > newHeight ? height : newHeight;\n }\n } // Update Height\n\n if (newHeight || newHeight === 0) swiper.$wrapperEl.css('height', `${newHeight}px`);\n }\n\n function updateSlidesOffset() {\n const swiper = this;\n const slides = swiper.slides;\n\n for (let i = 0; i < slides.length; i += 1) {\n slides[i].swiperSlideOffset = swiper.isHorizontal() ? slides[i].offsetLeft : slides[i].offsetTop;\n }\n }\n\n function updateSlidesProgress(translate = (this && this.translate) || 0) {\n const swiper = this;\n const params = swiper.params;\n const {slides, rtlTranslate: rtl, snapGrid} = swiper;\n if (slides.length === 0) return;\n if (typeof slides[0].swiperSlideOffset === 'undefined') swiper.updateSlidesOffset();\n let offsetCenter = -translate;\n if (rtl) offsetCenter = translate; // Visible Slides\n\n slides.removeClass(params.slideVisibleClass);\n swiper.visibleSlidesIndexes = [];\n swiper.visibleSlides = [];\n\n for (let i = 0; i < slides.length; i += 1) {\n const slide = slides[i];\n let slideOffset = slide.swiperSlideOffset;\n\n if (params.cssMode && params.centeredSlides) {\n slideOffset -= slides[0].swiperSlideOffset;\n }\n\n const slideProgress =\n (offsetCenter + (params.centeredSlides ? swiper.minTranslate() : 0) - slideOffset) /\n (slide.swiperSlideSize + params.spaceBetween);\n const originalSlideProgress =\n (offsetCenter - snapGrid[0] + (params.centeredSlides ? swiper.minTranslate() : 0) - slideOffset) /\n (slide.swiperSlideSize + params.spaceBetween);\n const slideBefore = -(offsetCenter - slideOffset);\n const slideAfter = slideBefore + swiper.slidesSizesGrid[i];\n const isVisible =\n (slideBefore >= 0 && slideBefore < swiper.size - 1) ||\n (slideAfter > 1 && slideAfter <= swiper.size) ||\n (slideBefore <= 0 && slideAfter >= swiper.size);\n\n if (isVisible) {\n swiper.visibleSlides.push(slide);\n swiper.visibleSlidesIndexes.push(i);\n slides.eq(i).addClass(params.slideVisibleClass);\n }\n\n slide.progress = rtl ? -slideProgress : slideProgress;\n slide.originalProgress = rtl ? -originalSlideProgress : originalSlideProgress;\n }\n\n swiper.visibleSlides = $(swiper.visibleSlides);\n }\n\n function updateProgress(translate) {\n const swiper = this;\n\n if (typeof translate === 'undefined') {\n const multiplier = swiper.rtlTranslate ? -1 : 1; // eslint-disable-next-line\n\n translate = (swiper && swiper.translate && swiper.translate * multiplier) || 0;\n }\n\n const params = swiper.params;\n const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n let {progress, isBeginning, isEnd} = swiper;\n const wasBeginning = isBeginning;\n const wasEnd = isEnd;\n\n if (translatesDiff === 0) {\n progress = 0;\n isBeginning = true;\n isEnd = true;\n } else {\n progress = (translate - swiper.minTranslate()) / translatesDiff;\n isBeginning = progress <= 0;\n isEnd = progress >= 1;\n }\n\n Object.assign(swiper, {\n progress,\n isBeginning,\n isEnd,\n });\n if (params.watchSlidesProgress || (params.centeredSlides && params.autoHeight))\n swiper.updateSlidesProgress(translate);\n\n if (isBeginning && !wasBeginning) {\n swiper.emit('reachBeginning toEdge');\n }\n\n if (isEnd && !wasEnd) {\n swiper.emit('reachEnd toEdge');\n }\n\n if ((wasBeginning && !isBeginning) || (wasEnd && !isEnd)) {\n swiper.emit('fromEdge');\n }\n\n swiper.emit('progress', progress);\n }\n\n function updateSlidesClasses() {\n const swiper = this;\n const {slides, params, $wrapperEl, activeIndex, realIndex} = swiper;\n const isVirtual = swiper.virtual && params.virtual.enabled;\n slides.removeClass(\n `${params.slideActiveClass} ${params.slideNextClass} ${params.slidePrevClass} ${params.slideDuplicateActiveClass} ${params.slideDuplicateNextClass} ${params.slideDuplicatePrevClass}`,\n );\n let activeSlide;\n\n if (isVirtual) {\n activeSlide = swiper.$wrapperEl.find(`.${params.slideClass}[data-swiper-slide-index=\"${activeIndex}\"]`);\n } else {\n activeSlide = slides.eq(activeIndex);\n } // Active classes\n\n activeSlide.addClass(params.slideActiveClass);\n\n if (params.loop) {\n // Duplicate to all looped slides\n if (activeSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children(\n `.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index=\"${realIndex}\"]`,\n )\n .addClass(params.slideDuplicateActiveClass);\n } else {\n $wrapperEl\n .children(`.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index=\"${realIndex}\"]`)\n .addClass(params.slideDuplicateActiveClass);\n }\n } // Next Slide\n\n let nextSlide = activeSlide.nextAll(`.${params.slideClass}`).eq(0).addClass(params.slideNextClass);\n\n if (params.loop && nextSlide.length === 0) {\n nextSlide = slides.eq(0);\n nextSlide.addClass(params.slideNextClass);\n } // Prev Slide\n\n let prevSlide = activeSlide.prevAll(`.${params.slideClass}`).eq(0).addClass(params.slidePrevClass);\n\n if (params.loop && prevSlide.length === 0) {\n prevSlide = slides.eq(-1);\n prevSlide.addClass(params.slidePrevClass);\n }\n\n if (params.loop) {\n // Duplicate to all looped slides\n if (nextSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children(\n `.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index=\"${nextSlide.attr(\n 'data-swiper-slide-index',\n )}\"]`,\n )\n .addClass(params.slideDuplicateNextClass);\n } else {\n $wrapperEl\n .children(\n `.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index=\"${nextSlide.attr(\n 'data-swiper-slide-index',\n )}\"]`,\n )\n .addClass(params.slideDuplicateNextClass);\n }\n\n if (prevSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children(\n `.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index=\"${prevSlide.attr(\n 'data-swiper-slide-index',\n )}\"]`,\n )\n .addClass(params.slideDuplicatePrevClass);\n } else {\n $wrapperEl\n .children(\n `.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index=\"${prevSlide.attr(\n 'data-swiper-slide-index',\n )}\"]`,\n )\n .addClass(params.slideDuplicatePrevClass);\n }\n }\n\n swiper.emitSlidesClasses();\n }\n\n function updateActiveIndex(newActiveIndex) {\n const swiper = this;\n const translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate;\n const {\n slidesGrid,\n snapGrid,\n params,\n activeIndex: previousIndex,\n realIndex: previousRealIndex,\n snapIndex: previousSnapIndex,\n } = swiper;\n let activeIndex = newActiveIndex;\n let snapIndex;\n\n if (typeof activeIndex === 'undefined') {\n for (let i = 0; i < slidesGrid.length; i += 1) {\n if (typeof slidesGrid[i + 1] !== 'undefined') {\n if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1] - (slidesGrid[i + 1] - slidesGrid[i]) / 2) {\n activeIndex = i;\n } else if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1]) {\n activeIndex = i + 1;\n }\n } else if (translate >= slidesGrid[i]) {\n activeIndex = i;\n }\n } // Normalize slideIndex\n\n if (params.normalizeSlideIndex) {\n if (activeIndex < 0 || typeof activeIndex === 'undefined') activeIndex = 0;\n }\n }\n\n if (snapGrid.indexOf(translate) >= 0) {\n snapIndex = snapGrid.indexOf(translate);\n } else {\n const skip = Math.min(params.slidesPerGroupSkip, activeIndex);\n snapIndex = skip + Math.floor((activeIndex - skip) / params.slidesPerGroup);\n }\n\n if (snapIndex >= snapGrid.length) snapIndex = snapGrid.length - 1;\n\n if (activeIndex === previousIndex) {\n if (snapIndex !== previousSnapIndex) {\n swiper.snapIndex = snapIndex;\n swiper.emit('snapIndexChange');\n }\n\n return;\n } // Get real index\n\n const realIndex = parseInt(swiper.slides.eq(activeIndex).attr('data-swiper-slide-index') || activeIndex, 10);\n Object.assign(swiper, {\n snapIndex,\n realIndex,\n previousIndex,\n activeIndex,\n });\n swiper.emit('activeIndexChange');\n swiper.emit('snapIndexChange');\n\n if (previousRealIndex !== realIndex) {\n swiper.emit('realIndexChange');\n }\n\n if (swiper.initialized || swiper.params.runCallbacksOnInit) {\n swiper.emit('slideChange');\n }\n }\n\n function updateClickedSlide(e) {\n const swiper = this;\n const params = swiper.params;\n const slide = $(e).closest(`.${params.slideClass}`)[0];\n let slideFound = false;\n let slideIndex;\n\n if (slide) {\n for (let i = 0; i < swiper.slides.length; i += 1) {\n if (swiper.slides[i] === slide) {\n slideFound = true;\n slideIndex = i;\n break;\n }\n }\n }\n\n if (slide && slideFound) {\n swiper.clickedSlide = slide;\n\n if (swiper.virtual && swiper.params.virtual.enabled) {\n swiper.clickedIndex = parseInt($(slide).attr('data-swiper-slide-index'), 10);\n } else {\n swiper.clickedIndex = slideIndex;\n }\n } else {\n swiper.clickedSlide = undefined;\n swiper.clickedIndex = undefined;\n return;\n }\n\n if (\n params.slideToClickedSlide &&\n swiper.clickedIndex !== undefined &&\n swiper.clickedIndex !== swiper.activeIndex\n ) {\n swiper.slideToClickedSlide();\n }\n }\n\n var update = {\n updateSize,\n updateSlides,\n updateAutoHeight,\n updateSlidesOffset,\n updateSlidesProgress,\n updateProgress,\n updateSlidesClasses,\n updateActiveIndex,\n updateClickedSlide,\n };\n\n function getSwiperTranslate(axis = this.isHorizontal() ? 'x' : 'y') {\n const swiper = this;\n const {params, rtlTranslate: rtl, translate, $wrapperEl} = swiper;\n\n if (params.virtualTranslate) {\n return rtl ? -translate : translate;\n }\n\n if (params.cssMode) {\n return translate;\n }\n\n let currentTranslate = getTranslate($wrapperEl[0], axis);\n if (rtl) currentTranslate = -currentTranslate;\n return currentTranslate || 0;\n }\n\n function setTranslate(translate, byController) {\n const swiper = this;\n const {rtlTranslate: rtl, params, $wrapperEl, wrapperEl, progress} = swiper;\n let x = 0;\n let y = 0;\n const z = 0;\n\n if (swiper.isHorizontal()) {\n x = rtl ? -translate : translate;\n } else {\n y = translate;\n }\n\n if (params.roundLengths) {\n x = Math.floor(x);\n y = Math.floor(y);\n }\n\n if (params.cssMode) {\n wrapperEl[swiper.isHorizontal() ? 'scrollLeft' : 'scrollTop'] = swiper.isHorizontal() ? -x : -y;\n } else if (!params.virtualTranslate) {\n $wrapperEl.transform(`translate3d(${x}px, ${y}px, ${z}px)`);\n }\n\n swiper.previousTranslate = swiper.translate;\n swiper.translate = swiper.isHorizontal() ? x : y; // Check if we need to update progress\n\n let newProgress;\n const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n\n if (translatesDiff === 0) {\n newProgress = 0;\n } else {\n newProgress = (translate - swiper.minTranslate()) / translatesDiff;\n }\n\n if (newProgress !== progress) {\n swiper.updateProgress(translate);\n }\n\n swiper.emit('setTranslate', swiper.translate, byController);\n }\n\n function minTranslate() {\n return -this.snapGrid[0];\n }\n\n function maxTranslate() {\n return -this.snapGrid[this.snapGrid.length - 1];\n }\n\n function translateTo(\n translate = 0,\n speed = this.params.speed,\n runCallbacks = true,\n translateBounds = true,\n internal,\n ) {\n const swiper = this;\n const {params, wrapperEl} = swiper;\n\n if (swiper.animating && params.preventInteractionOnTransition) {\n return false;\n }\n\n const minTranslate = swiper.minTranslate();\n const maxTranslate = swiper.maxTranslate();\n let newTranslate;\n if (translateBounds && translate > minTranslate) newTranslate = minTranslate;\n else if (translateBounds && translate < maxTranslate) newTranslate = maxTranslate;\n else newTranslate = translate; // Update progress\n\n swiper.updateProgress(newTranslate);\n\n if (params.cssMode) {\n const isH = swiper.isHorizontal();\n\n if (speed === 0) {\n wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = -newTranslate;\n } else {\n if (!swiper.support.smoothScroll) {\n animateCSSModeScroll({\n swiper,\n targetPosition: -newTranslate,\n side: isH ? 'left' : 'top',\n });\n return true;\n }\n\n wrapperEl.scrollTo({\n [isH ? 'left' : 'top']: -newTranslate,\n behavior: 'smooth',\n });\n }\n\n return true;\n }\n\n if (speed === 0) {\n swiper.setTransition(0);\n swiper.setTranslate(newTranslate);\n\n if (runCallbacks) {\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.emit('transitionEnd');\n }\n } else {\n swiper.setTransition(speed);\n swiper.setTranslate(newTranslate);\n\n if (runCallbacks) {\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.emit('transitionStart');\n }\n\n if (!swiper.animating) {\n swiper.animating = true;\n\n if (!swiper.onTranslateToWrapperTransitionEnd) {\n swiper.onTranslateToWrapperTransitionEnd = function transitionEnd(e) {\n if (!swiper || swiper.destroyed) return;\n if (e.target !== this) return;\n swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.onTranslateToWrapperTransitionEnd);\n swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.onTranslateToWrapperTransitionEnd);\n swiper.onTranslateToWrapperTransitionEnd = null;\n delete swiper.onTranslateToWrapperTransitionEnd;\n\n if (runCallbacks) {\n swiper.emit('transitionEnd');\n }\n };\n }\n\n swiper.$wrapperEl[0].addEventListener('transitionend', swiper.onTranslateToWrapperTransitionEnd);\n swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.onTranslateToWrapperTransitionEnd);\n }\n }\n\n return true;\n }\n\n var translate = {\n getTranslate: getSwiperTranslate,\n setTranslate,\n minTranslate,\n maxTranslate,\n translateTo,\n };\n\n function setTransition(duration, byController) {\n const swiper = this;\n\n if (!swiper.params.cssMode) {\n swiper.$wrapperEl.transition(duration);\n }\n\n swiper.emit('setTransition', duration, byController);\n }\n\n function transitionEmit({swiper, runCallbacks, direction, step}) {\n const {activeIndex, previousIndex} = swiper;\n let dir = direction;\n\n if (!dir) {\n if (activeIndex > previousIndex) dir = 'next';\n else if (activeIndex < previousIndex) dir = 'prev';\n else dir = 'reset';\n }\n\n swiper.emit(`transition${step}`);\n\n if (runCallbacks && activeIndex !== previousIndex) {\n if (dir === 'reset') {\n swiper.emit(`slideResetTransition${step}`);\n return;\n }\n\n swiper.emit(`slideChangeTransition${step}`);\n\n if (dir === 'next') {\n swiper.emit(`slideNextTransition${step}`);\n } else {\n swiper.emit(`slidePrevTransition${step}`);\n }\n }\n }\n\n function transitionStart(runCallbacks = true, direction) {\n const swiper = this;\n const {params} = swiper;\n if (params.cssMode) return;\n\n if (params.autoHeight) {\n swiper.updateAutoHeight();\n }\n\n transitionEmit({\n swiper,\n runCallbacks,\n direction,\n step: 'Start',\n });\n }\n\n function transitionEnd(runCallbacks = true, direction) {\n const swiper = this;\n const {params} = swiper;\n swiper.animating = false;\n if (params.cssMode) return;\n swiper.setTransition(0);\n transitionEmit({\n swiper,\n runCallbacks,\n direction,\n step: 'End',\n });\n }\n\n var transition = {\n setTransition,\n transitionStart,\n transitionEnd,\n };\n\n function slideTo(index = 0, speed = this.params.speed, runCallbacks = true, internal, initial) {\n if (typeof index !== 'number' && typeof index !== 'string') {\n throw new Error(\n `The 'index' argument cannot have type other than 'number' or 'string'. [${typeof index}] given.`,\n );\n }\n\n if (typeof index === 'string') {\n /**\n * The `index` argument converted from `string` to `number`.\n * @type {number}\n */\n const indexAsNumber = parseInt(index, 10);\n /**\n * Determines whether the `index` argument is a valid `number`\n * after being converted from the `string` type.\n * @type {boolean}\n */\n\n const isValidNumber = isFinite(indexAsNumber);\n\n if (!isValidNumber) {\n throw new Error(`The passed-in 'index' (string) couldn't be converted to 'number'. [${index}] given.`);\n } // Knowing that the converted `index` is a valid number,\n // we can update the original argument's value.\n\n index = indexAsNumber;\n }\n\n const swiper = this;\n let slideIndex = index;\n if (slideIndex < 0) slideIndex = 0;\n const {params, snapGrid, slidesGrid, previousIndex, activeIndex, rtlTranslate: rtl, wrapperEl, enabled} = swiper;\n\n if ((swiper.animating && params.preventInteractionOnTransition) || (!enabled && !internal && !initial)) {\n return false;\n }\n\n const skip = Math.min(swiper.params.slidesPerGroupSkip, slideIndex);\n let snapIndex = skip + Math.floor((slideIndex - skip) / swiper.params.slidesPerGroup);\n if (snapIndex >= snapGrid.length) snapIndex = snapGrid.length - 1;\n\n if ((activeIndex || params.initialSlide || 0) === (previousIndex || 0) && runCallbacks) {\n swiper.emit('beforeSlideChangeStart');\n }\n\n const translate = -snapGrid[snapIndex]; // Update progress\n\n swiper.updateProgress(translate); // Normalize slideIndex\n\n if (params.normalizeSlideIndex) {\n for (let i = 0; i < slidesGrid.length; i += 1) {\n const normalizedTranslate = -Math.floor(translate * 100);\n const normalizedGrid = Math.floor(slidesGrid[i] * 100);\n const normalizedGridNext = Math.floor(slidesGrid[i + 1] * 100);\n\n if (typeof slidesGrid[i + 1] !== 'undefined') {\n if (\n normalizedTranslate >= normalizedGrid &&\n normalizedTranslate < normalizedGridNext - (normalizedGridNext - normalizedGrid) / 2\n ) {\n slideIndex = i;\n } else if (normalizedTranslate >= normalizedGrid && normalizedTranslate < normalizedGridNext) {\n slideIndex = i + 1;\n }\n } else if (normalizedTranslate >= normalizedGrid) {\n slideIndex = i;\n }\n }\n } // Directions locks\n\n if (swiper.initialized && slideIndex !== activeIndex) {\n if (!swiper.allowSlideNext && translate < swiper.translate && translate < swiper.minTranslate()) {\n return false;\n }\n\n if (!swiper.allowSlidePrev && translate > swiper.translate && translate > swiper.maxTranslate()) {\n if ((activeIndex || 0) !== slideIndex) return false;\n }\n }\n\n let direction;\n if (slideIndex > activeIndex) direction = 'next';\n else if (slideIndex < activeIndex) direction = 'prev';\n else direction = 'reset'; // Update Index\n\n if ((rtl && -translate === swiper.translate) || (!rtl && translate === swiper.translate)) {\n swiper.updateActiveIndex(slideIndex); // Update Height\n\n if (params.autoHeight) {\n swiper.updateAutoHeight();\n }\n\n swiper.updateSlidesClasses();\n\n if (params.effect !== 'slide') {\n swiper.setTranslate(translate);\n }\n\n if (direction !== 'reset') {\n swiper.transitionStart(runCallbacks, direction);\n swiper.transitionEnd(runCallbacks, direction);\n }\n\n return false;\n }\n\n if (params.cssMode) {\n const isH = swiper.isHorizontal();\n const t = rtl ? translate : -translate;\n\n if (speed === 0) {\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n\n if (isVirtual) {\n swiper.wrapperEl.style.scrollSnapType = 'none';\n swiper._immediateVirtual = true;\n }\n\n wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = t;\n\n if (isVirtual) {\n requestAnimationFrame(() => {\n swiper.wrapperEl.style.scrollSnapType = '';\n swiper._swiperImmediateVirtual = false;\n });\n }\n } else {\n if (!swiper.support.smoothScroll) {\n animateCSSModeScroll({\n swiper,\n targetPosition: t,\n side: isH ? 'left' : 'top',\n });\n return true;\n }\n\n wrapperEl.scrollTo({\n [isH ? 'left' : 'top']: t,\n behavior: 'smooth',\n });\n }\n\n return true;\n }\n\n swiper.setTransition(speed);\n swiper.setTranslate(translate);\n swiper.updateActiveIndex(slideIndex);\n swiper.updateSlidesClasses();\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.transitionStart(runCallbacks, direction);\n\n if (speed === 0) {\n swiper.transitionEnd(runCallbacks, direction);\n } else if (!swiper.animating) {\n swiper.animating = true;\n\n if (!swiper.onSlideToWrapperTransitionEnd) {\n swiper.onSlideToWrapperTransitionEnd = function transitionEnd(e) {\n if (!swiper || swiper.destroyed) return;\n if (e.target !== this) return;\n swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd);\n swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd);\n swiper.onSlideToWrapperTransitionEnd = null;\n delete swiper.onSlideToWrapperTransitionEnd;\n swiper.transitionEnd(runCallbacks, direction);\n };\n }\n\n swiper.$wrapperEl[0].addEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd);\n swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd);\n }\n\n return true;\n }\n\n function slideToLoop(index = 0, speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n let newIndex = index;\n\n if (swiper.params.loop) {\n newIndex += swiper.loopedSlides;\n }\n\n return swiper.slideTo(newIndex, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slideNext(speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n const {animating, enabled, params} = swiper;\n if (!enabled) return swiper;\n let perGroup = params.slidesPerGroup;\n\n if (params.slidesPerView === 'auto' && params.slidesPerGroup === 1 && params.slidesPerGroupAuto) {\n perGroup = Math.max(swiper.slidesPerViewDynamic('current', true), 1);\n }\n\n const increment = swiper.activeIndex < params.slidesPerGroupSkip ? 1 : perGroup;\n\n if (params.loop) {\n if (animating && params.loopPreventsSlide) return false;\n swiper.loopFix(); // eslint-disable-next-line\n\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n }\n\n if (params.rewind && swiper.isEnd) {\n return swiper.slideTo(0, speed, runCallbacks, internal);\n }\n\n return swiper.slideTo(swiper.activeIndex + increment, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slidePrev(speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n const {params, animating, snapGrid, slidesGrid, rtlTranslate, enabled} = swiper;\n if (!enabled) return swiper;\n\n if (params.loop) {\n if (animating && params.loopPreventsSlide) return false;\n swiper.loopFix(); // eslint-disable-next-line\n\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n }\n\n const translate = rtlTranslate ? swiper.translate : -swiper.translate;\n\n function normalize(val) {\n if (val < 0) return -Math.floor(Math.abs(val));\n return Math.floor(val);\n }\n\n const normalizedTranslate = normalize(translate);\n const normalizedSnapGrid = snapGrid.map((val) => normalize(val));\n let prevSnap = snapGrid[normalizedSnapGrid.indexOf(normalizedTranslate) - 1];\n\n if (typeof prevSnap === 'undefined' && params.cssMode) {\n let prevSnapIndex;\n snapGrid.forEach((snap, snapIndex) => {\n if (normalizedTranslate >= snap) {\n // prevSnap = snap;\n prevSnapIndex = snapIndex;\n }\n });\n\n if (typeof prevSnapIndex !== 'undefined') {\n prevSnap = snapGrid[prevSnapIndex > 0 ? prevSnapIndex - 1 : prevSnapIndex];\n }\n }\n\n let prevIndex = 0;\n\n if (typeof prevSnap !== 'undefined') {\n prevIndex = slidesGrid.indexOf(prevSnap);\n if (prevIndex < 0) prevIndex = swiper.activeIndex - 1;\n\n if (params.slidesPerView === 'auto' && params.slidesPerGroup === 1 && params.slidesPerGroupAuto) {\n prevIndex = prevIndex - swiper.slidesPerViewDynamic('previous', true) + 1;\n prevIndex = Math.max(prevIndex, 0);\n }\n }\n\n if (params.rewind && swiper.isBeginning) {\n return swiper.slideTo(swiper.slides.length - 1, speed, runCallbacks, internal);\n }\n\n return swiper.slideTo(prevIndex, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slideReset(speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n return swiper.slideTo(swiper.activeIndex, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slideToClosest(speed = this.params.speed, runCallbacks = true, internal, threshold = 0.5) {\n const swiper = this;\n let index = swiper.activeIndex;\n const skip = Math.min(swiper.params.slidesPerGroupSkip, index);\n const snapIndex = skip + Math.floor((index - skip) / swiper.params.slidesPerGroup);\n const translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate;\n\n if (translate >= swiper.snapGrid[snapIndex]) {\n // The current translate is on or after the current snap index, so the choice\n // is between the current index and the one after it.\n const currentSnap = swiper.snapGrid[snapIndex];\n const nextSnap = swiper.snapGrid[snapIndex + 1];\n\n if (translate - currentSnap > (nextSnap - currentSnap) * threshold) {\n index += swiper.params.slidesPerGroup;\n }\n } else {\n // The current translate is before the current snap index, so the choice\n // is between the current index and the one before it.\n const prevSnap = swiper.snapGrid[snapIndex - 1];\n const currentSnap = swiper.snapGrid[snapIndex];\n\n if (translate - prevSnap <= (currentSnap - prevSnap) * threshold) {\n index -= swiper.params.slidesPerGroup;\n }\n }\n\n index = Math.max(index, 0);\n index = Math.min(index, swiper.slidesGrid.length - 1);\n return swiper.slideTo(index, speed, runCallbacks, internal);\n }\n\n function slideToClickedSlide() {\n const swiper = this;\n const {params, $wrapperEl} = swiper;\n const slidesPerView = params.slidesPerView === 'auto' ? swiper.slidesPerViewDynamic() : params.slidesPerView;\n let slideToIndex = swiper.clickedIndex;\n let realIndex;\n\n if (params.loop) {\n if (swiper.animating) return;\n realIndex = parseInt($(swiper.clickedSlide).attr('data-swiper-slide-index'), 10);\n\n if (params.centeredSlides) {\n if (\n slideToIndex < swiper.loopedSlides - slidesPerView / 2 ||\n slideToIndex > swiper.slides.length - swiper.loopedSlides + slidesPerView / 2\n ) {\n swiper.loopFix();\n slideToIndex = $wrapperEl\n .children(\n `.${params.slideClass}[data-swiper-slide-index=\"${realIndex}\"]:not(.${params.slideDuplicateClass})`,\n )\n .eq(0)\n .index();\n nextTick(() => {\n swiper.slideTo(slideToIndex);\n });\n } else {\n swiper.slideTo(slideToIndex);\n }\n } else if (slideToIndex > swiper.slides.length - slidesPerView) {\n swiper.loopFix();\n slideToIndex = $wrapperEl\n .children(\n `.${params.slideClass}[data-swiper-slide-index=\"${realIndex}\"]:not(.${params.slideDuplicateClass})`,\n )\n .eq(0)\n .index();\n nextTick(() => {\n swiper.slideTo(slideToIndex);\n });\n } else {\n swiper.slideTo(slideToIndex);\n }\n } else {\n swiper.slideTo(slideToIndex);\n }\n }\n\n var slide = {\n slideTo,\n slideToLoop,\n slideNext,\n slidePrev,\n slideReset,\n slideToClosest,\n slideToClickedSlide,\n };\n\n function loopCreate() {\n const swiper = this;\n const document = getDocument();\n const {params, $wrapperEl} = swiper; // Remove duplicated slides\n\n const $selector = $wrapperEl.children().length > 0 ? $($wrapperEl.children()[0].parentNode) : $wrapperEl;\n $selector.children(`.${params.slideClass}.${params.slideDuplicateClass}`).remove();\n let slides = $selector.children(`.${params.slideClass}`);\n\n if (params.loopFillGroupWithBlank) {\n const blankSlidesNum = params.slidesPerGroup - (slides.length % params.slidesPerGroup);\n\n if (blankSlidesNum !== params.slidesPerGroup) {\n for (let i = 0; i < blankSlidesNum; i += 1) {\n const blankNode = $(document.createElement('div')).addClass(\n `${params.slideClass} ${params.slideBlankClass}`,\n );\n $selector.append(blankNode);\n }\n\n slides = $selector.children(`.${params.slideClass}`);\n }\n }\n\n if (params.slidesPerView === 'auto' && !params.loopedSlides) params.loopedSlides = slides.length;\n swiper.loopedSlides = Math.ceil(parseFloat(params.loopedSlides || params.slidesPerView, 10));\n swiper.loopedSlides += params.loopAdditionalSlides;\n\n if (swiper.loopedSlides > slides.length) {\n swiper.loopedSlides = slides.length;\n }\n\n const prependSlides = [];\n const appendSlides = [];\n slides.each((el, index) => {\n const slide = $(el);\n\n if (index < swiper.loopedSlides) {\n appendSlides.push(el);\n }\n\n if (index < slides.length && index >= slides.length - swiper.loopedSlides) {\n prependSlides.push(el);\n }\n\n slide.attr('data-swiper-slide-index', index);\n });\n\n for (let i = 0; i < appendSlides.length; i += 1) {\n $selector.append($(appendSlides[i].cloneNode(true)).addClass(params.slideDuplicateClass));\n }\n\n for (let i = prependSlides.length - 1; i >= 0; i -= 1) {\n $selector.prepend($(prependSlides[i].cloneNode(true)).addClass(params.slideDuplicateClass));\n }\n }\n\n function loopFix() {\n const swiper = this;\n swiper.emit('beforeLoopFix');\n const {activeIndex, slides, loopedSlides, allowSlidePrev, allowSlideNext, snapGrid, rtlTranslate: rtl} = swiper;\n let newIndex;\n swiper.allowSlidePrev = true;\n swiper.allowSlideNext = true;\n const snapTranslate = -snapGrid[activeIndex];\n const diff = snapTranslate - swiper.getTranslate(); // Fix For Negative Oversliding\n\n if (activeIndex < loopedSlides) {\n newIndex = slides.length - loopedSlides * 3 + activeIndex;\n newIndex += loopedSlides;\n const slideChanged = swiper.slideTo(newIndex, 0, false, true);\n\n if (slideChanged && diff !== 0) {\n swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff);\n }\n } else if (activeIndex >= slides.length - loopedSlides) {\n // Fix For Positive Oversliding\n newIndex = -slides.length + activeIndex + loopedSlides;\n newIndex += loopedSlides;\n const slideChanged = swiper.slideTo(newIndex, 0, false, true);\n\n if (slideChanged && diff !== 0) {\n swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff);\n }\n }\n\n swiper.allowSlidePrev = allowSlidePrev;\n swiper.allowSlideNext = allowSlideNext;\n swiper.emit('loopFix');\n }\n\n function loopDestroy() {\n const swiper = this;\n const {$wrapperEl, params, slides} = swiper;\n $wrapperEl\n .children(`.${params.slideClass}.${params.slideDuplicateClass},.${params.slideClass}.${params.slideBlankClass}`)\n .remove();\n slides.removeAttr('data-swiper-slide-index');\n }\n\n var loop = {\n loopCreate,\n loopFix,\n loopDestroy,\n };\n\n function setGrabCursor(moving) {\n const swiper = this;\n if (\n swiper.support.touch ||\n !swiper.params.simulateTouch ||\n (swiper.params.watchOverflow && swiper.isLocked) ||\n swiper.params.cssMode\n )\n return;\n const el = swiper.params.touchEventsTarget === 'container' ? swiper.el : swiper.wrapperEl;\n el.style.cursor = 'move';\n el.style.cursor = moving ? '-webkit-grabbing' : '-webkit-grab';\n el.style.cursor = moving ? '-moz-grabbin' : '-moz-grab';\n el.style.cursor = moving ? 'grabbing' : 'grab';\n }\n\n function unsetGrabCursor() {\n const swiper = this;\n\n if (swiper.support.touch || (swiper.params.watchOverflow && swiper.isLocked) || swiper.params.cssMode) {\n return;\n }\n\n swiper[swiper.params.touchEventsTarget === 'container' ? 'el' : 'wrapperEl'].style.cursor = '';\n }\n\n var grabCursor = {\n setGrabCursor,\n unsetGrabCursor,\n };\n\n function closestElement(selector, base = this) {\n function __closestFrom(el) {\n if (!el || el === getDocument() || el === getWindow()) return null;\n if (el.assignedSlot) el = el.assignedSlot;\n const found = el.closest(selector);\n return found || __closestFrom(el.getRootNode().host);\n }\n\n return __closestFrom(base);\n }\n\n function onTouchStart(event) {\n const swiper = this;\n const document = getDocument();\n const window = getWindow();\n const data = swiper.touchEventsData;\n const {params, touches, enabled} = swiper;\n if (!enabled) return;\n\n if (swiper.animating && params.preventInteractionOnTransition) {\n return;\n }\n\n if (!swiper.animating && params.cssMode && params.loop) {\n swiper.loopFix();\n }\n\n let e = event;\n if (e.originalEvent) e = e.originalEvent;\n let $targetEl = $(e.target);\n\n if (params.touchEventsTarget === 'wrapper') {\n if (!$targetEl.closest(swiper.wrapperEl).length) return;\n }\n\n data.isTouchEvent = e.type === 'touchstart';\n if (!data.isTouchEvent && 'which' in e && e.which === 3) return;\n if (!data.isTouchEvent && 'button' in e && e.button > 0) return;\n if (data.isTouched && data.isMoved) return; // change target el for shadow root component\n\n const swipingClassHasValue = !!params.noSwipingClass && params.noSwipingClass !== '';\n\n if (swipingClassHasValue && e.target && e.target.shadowRoot && event.path && event.path[0]) {\n $targetEl = $(event.path[0]);\n }\n\n const noSwipingSelector = params.noSwipingSelector ? params.noSwipingSelector : `.${params.noSwipingClass}`;\n const isTargetShadow = !!(e.target && e.target.shadowRoot); // use closestElement for shadow root element to get the actual closest for nested shadow root element\n\n if (\n params.noSwiping &&\n (isTargetShadow ? closestElement(noSwipingSelector, e.target) : $targetEl.closest(noSwipingSelector)[0])\n ) {\n swiper.allowClick = true;\n return;\n }\n\n if (params.swipeHandler) {\n if (!$targetEl.closest(params.swipeHandler)[0]) return;\n }\n\n touches.currentX = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX;\n touches.currentY = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY;\n const startX = touches.currentX;\n const startY = touches.currentY; // Do NOT start if iOS edge swipe is detected. Otherwise iOS app cannot swipe-to-go-back anymore\n\n const edgeSwipeDetection = params.edgeSwipeDetection || params.iOSEdgeSwipeDetection;\n const edgeSwipeThreshold = params.edgeSwipeThreshold || params.iOSEdgeSwipeThreshold;\n\n if (edgeSwipeDetection && (startX <= edgeSwipeThreshold || startX >= window.innerWidth - edgeSwipeThreshold)) {\n if (edgeSwipeDetection === 'prevent') {\n event.preventDefault();\n } else {\n return;\n }\n }\n\n Object.assign(data, {\n isTouched: true,\n isMoved: false,\n allowTouchCallbacks: true,\n isScrolling: undefined,\n startMoving: undefined,\n });\n touches.startX = startX;\n touches.startY = startY;\n data.touchStartTime = now();\n swiper.allowClick = true;\n swiper.updateSize();\n swiper.swipeDirection = undefined;\n if (params.threshold > 0) data.allowThresholdMove = false;\n\n if (e.type !== 'touchstart') {\n let preventDefault = true;\n if ($targetEl.is(data.focusableElements)) preventDefault = false;\n\n if (\n document.activeElement &&\n $(document.activeElement).is(data.focusableElements) &&\n document.activeElement !== $targetEl[0]\n ) {\n document.activeElement.blur();\n }\n\n const shouldPreventDefault = preventDefault && swiper.allowTouchMove && params.touchStartPreventDefault;\n\n if ((params.touchStartForcePreventDefault || shouldPreventDefault) && !$targetEl[0].isContentEditable) {\n e.preventDefault();\n }\n }\n\n swiper.emit('touchStart', e);\n }\n\n function onTouchMove(event) {\n const document = getDocument();\n const swiper = this;\n const data = swiper.touchEventsData;\n const {params, touches, rtlTranslate: rtl, enabled} = swiper;\n if (!enabled) return;\n let e = event;\n if (e.originalEvent) e = e.originalEvent;\n\n if (!data.isTouched) {\n if (data.startMoving && data.isScrolling) {\n swiper.emit('touchMoveOpposite', e);\n }\n\n return;\n }\n\n if (data.isTouchEvent && e.type !== 'touchmove') return;\n const targetTouch = e.type === 'touchmove' && e.targetTouches && (e.targetTouches[0] || e.changedTouches[0]);\n const pageX = e.type === 'touchmove' ? targetTouch.pageX : e.pageX;\n const pageY = e.type === 'touchmove' ? targetTouch.pageY : e.pageY;\n\n if (e.preventedByNestedSwiper) {\n touches.startX = pageX;\n touches.startY = pageY;\n return;\n }\n\n if (!swiper.allowTouchMove) {\n // isMoved = true;\n swiper.allowClick = false;\n\n if (data.isTouched) {\n Object.assign(touches, {\n startX: pageX,\n startY: pageY,\n currentX: pageX,\n currentY: pageY,\n });\n data.touchStartTime = now();\n }\n\n return;\n }\n\n if (data.isTouchEvent && params.touchReleaseOnEdges && !params.loop) {\n if (swiper.isVertical()) {\n // Vertical\n if (\n (pageY < touches.startY && swiper.translate <= swiper.maxTranslate()) ||\n (pageY > touches.startY && swiper.translate >= swiper.minTranslate())\n ) {\n data.isTouched = false;\n data.isMoved = false;\n return;\n }\n } else if (\n (pageX < touches.startX && swiper.translate <= swiper.maxTranslate()) ||\n (pageX > touches.startX && swiper.translate >= swiper.minTranslate())\n ) {\n return;\n }\n }\n\n if (data.isTouchEvent && document.activeElement) {\n if (e.target === document.activeElement && $(e.target).is(data.focusableElements)) {\n data.isMoved = true;\n swiper.allowClick = false;\n return;\n }\n }\n\n if (data.allowTouchCallbacks) {\n swiper.emit('touchMove', e);\n }\n\n if (e.targetTouches && e.targetTouches.length > 1) return;\n touches.currentX = pageX;\n touches.currentY = pageY;\n const diffX = touches.currentX - touches.startX;\n const diffY = touches.currentY - touches.startY;\n if (swiper.params.threshold && Math.sqrt(diffX ** 2 + diffY ** 2) < swiper.params.threshold) return;\n\n if (typeof data.isScrolling === 'undefined') {\n let touchAngle;\n\n if (\n (swiper.isHorizontal() && touches.currentY === touches.startY) ||\n (swiper.isVertical() && touches.currentX === touches.startX)\n ) {\n data.isScrolling = false;\n } else {\n // eslint-disable-next-line\n if (diffX * diffX + diffY * diffY >= 25) {\n touchAngle = (Math.atan2(Math.abs(diffY), Math.abs(diffX)) * 180) / Math.PI;\n data.isScrolling = swiper.isHorizontal()\n ? touchAngle > params.touchAngle\n : 90 - touchAngle > params.touchAngle;\n }\n }\n }\n\n if (data.isScrolling) {\n swiper.emit('touchMoveOpposite', e);\n }\n\n if (typeof data.startMoving === 'undefined') {\n if (touches.currentX !== touches.startX || touches.currentY !== touches.startY) {\n data.startMoving = true;\n }\n }\n\n if (data.isScrolling) {\n data.isTouched = false;\n return;\n }\n\n if (!data.startMoving) {\n return;\n }\n\n swiper.allowClick = false;\n\n if (!params.cssMode && e.cancelable) {\n e.preventDefault();\n }\n\n if (params.touchMoveStopPropagation && !params.nested) {\n e.stopPropagation();\n }\n\n if (!data.isMoved) {\n if (params.loop && !params.cssMode) {\n swiper.loopFix();\n }\n\n data.startTranslate = swiper.getTranslate();\n swiper.setTransition(0);\n\n if (swiper.animating) {\n swiper.$wrapperEl.trigger('webkitTransitionEnd transitionend');\n }\n\n data.allowMomentumBounce = false; // Grab Cursor\n\n if (params.grabCursor && (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)) {\n swiper.setGrabCursor(true);\n }\n\n swiper.emit('sliderFirstMove', e);\n }\n\n swiper.emit('sliderMove', e);\n data.isMoved = true;\n let diff = swiper.isHorizontal() ? diffX : diffY;\n touches.diff = diff;\n diff *= params.touchRatio;\n if (rtl) diff = -diff;\n swiper.swipeDirection = diff > 0 ? 'prev' : 'next';\n data.currentTranslate = diff + data.startTranslate;\n let disableParentSwiper = true;\n let resistanceRatio = params.resistanceRatio;\n\n if (params.touchReleaseOnEdges) {\n resistanceRatio = 0;\n }\n\n if (diff > 0 && data.currentTranslate > swiper.minTranslate()) {\n disableParentSwiper = false;\n if (params.resistance)\n data.currentTranslate =\n swiper.minTranslate() - 1 + (-swiper.minTranslate() + data.startTranslate + diff) ** resistanceRatio;\n } else if (diff < 0 && data.currentTranslate < swiper.maxTranslate()) {\n disableParentSwiper = false;\n if (params.resistance)\n data.currentTranslate =\n swiper.maxTranslate() + 1 - (swiper.maxTranslate() - data.startTranslate - diff) ** resistanceRatio;\n }\n\n if (disableParentSwiper) {\n e.preventedByNestedSwiper = true;\n } // Directions locks\n\n if (!swiper.allowSlideNext && swiper.swipeDirection === 'next' && data.currentTranslate < data.startTranslate) {\n data.currentTranslate = data.startTranslate;\n }\n\n if (!swiper.allowSlidePrev && swiper.swipeDirection === 'prev' && data.currentTranslate > data.startTranslate) {\n data.currentTranslate = data.startTranslate;\n }\n\n if (!swiper.allowSlidePrev && !swiper.allowSlideNext) {\n data.currentTranslate = data.startTranslate;\n } // Threshold\n\n if (params.threshold > 0) {\n if (Math.abs(diff) > params.threshold || data.allowThresholdMove) {\n if (!data.allowThresholdMove) {\n data.allowThresholdMove = true;\n touches.startX = touches.currentX;\n touches.startY = touches.currentY;\n data.currentTranslate = data.startTranslate;\n touches.diff = swiper.isHorizontal()\n ? touches.currentX - touches.startX\n : touches.currentY - touches.startY;\n return;\n }\n } else {\n data.currentTranslate = data.startTranslate;\n return;\n }\n }\n\n if (!params.followFinger || params.cssMode) return; // Update active index in free mode\n\n if ((params.freeMode && params.freeMode.enabled && swiper.freeMode) || params.watchSlidesProgress) {\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n\n if (swiper.params.freeMode && params.freeMode.enabled && swiper.freeMode) {\n swiper.freeMode.onTouchMove();\n } // Update progress\n\n swiper.updateProgress(data.currentTranslate); // Update translate\n\n swiper.setTranslate(data.currentTranslate);\n }\n\n function onTouchEnd(event) {\n const swiper = this;\n const data = swiper.touchEventsData;\n const {params, touches, rtlTranslate: rtl, slidesGrid, enabled} = swiper;\n if (!enabled) return;\n let e = event;\n if (e.originalEvent) e = e.originalEvent;\n\n if (data.allowTouchCallbacks) {\n swiper.emit('touchEnd', e);\n }\n\n data.allowTouchCallbacks = false;\n\n if (!data.isTouched) {\n if (data.isMoved && params.grabCursor) {\n swiper.setGrabCursor(false);\n }\n\n data.isMoved = false;\n data.startMoving = false;\n return;\n } // Return Grab Cursor\n\n if (\n params.grabCursor &&\n data.isMoved &&\n data.isTouched &&\n (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)\n ) {\n swiper.setGrabCursor(false);\n } // Time diff\n\n const touchEndTime = now();\n const timeDiff = touchEndTime - data.touchStartTime; // Tap, doubleTap, Click\n\n if (swiper.allowClick) {\n const pathTree = e.path || (e.composedPath && e.composedPath());\n swiper.updateClickedSlide((pathTree && pathTree[0]) || e.target);\n swiper.emit('tap click', e);\n\n if (timeDiff < 300 && touchEndTime - data.lastClickTime < 300) {\n swiper.emit('doubleTap doubleClick', e);\n }\n }\n\n data.lastClickTime = now();\n nextTick(() => {\n if (!swiper.destroyed) swiper.allowClick = true;\n });\n\n if (\n !data.isTouched ||\n !data.isMoved ||\n !swiper.swipeDirection ||\n touches.diff === 0 ||\n data.currentTranslate === data.startTranslate\n ) {\n data.isTouched = false;\n data.isMoved = false;\n data.startMoving = false;\n return;\n }\n\n data.isTouched = false;\n data.isMoved = false;\n data.startMoving = false;\n let currentPos;\n\n if (params.followFinger) {\n currentPos = rtl ? swiper.translate : -swiper.translate;\n } else {\n currentPos = -data.currentTranslate;\n }\n\n if (params.cssMode) {\n return;\n }\n\n if (swiper.params.freeMode && params.freeMode.enabled) {\n swiper.freeMode.onTouchEnd({\n currentPos,\n });\n return;\n } // Find current slide\n\n let stopIndex = 0;\n let groupSize = swiper.slidesSizesGrid[0];\n\n for (let i = 0; i < slidesGrid.length; i += i < params.slidesPerGroupSkip ? 1 : params.slidesPerGroup) {\n const increment = i < params.slidesPerGroupSkip - 1 ? 1 : params.slidesPerGroup;\n\n if (typeof slidesGrid[i + increment] !== 'undefined') {\n if (currentPos >= slidesGrid[i] && currentPos < slidesGrid[i + increment]) {\n stopIndex = i;\n groupSize = slidesGrid[i + increment] - slidesGrid[i];\n }\n } else if (currentPos >= slidesGrid[i]) {\n stopIndex = i;\n groupSize = slidesGrid[slidesGrid.length - 1] - slidesGrid[slidesGrid.length - 2];\n }\n } // Find current slide size\n\n const ratio = (currentPos - slidesGrid[stopIndex]) / groupSize;\n const increment = stopIndex < params.slidesPerGroupSkip - 1 ? 1 : params.slidesPerGroup;\n\n if (timeDiff > params.longSwipesMs) {\n // Long touches\n if (!params.longSwipes) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n\n if (swiper.swipeDirection === 'next') {\n if (ratio >= params.longSwipesRatio) swiper.slideTo(stopIndex + increment);\n else swiper.slideTo(stopIndex);\n }\n\n if (swiper.swipeDirection === 'prev') {\n if (ratio > 1 - params.longSwipesRatio) swiper.slideTo(stopIndex + increment);\n else swiper.slideTo(stopIndex);\n }\n } else {\n // Short swipes\n if (!params.shortSwipes) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n\n const isNavButtonTarget =\n swiper.navigation && (e.target === swiper.navigation.nextEl || e.target === swiper.navigation.prevEl);\n\n if (!isNavButtonTarget) {\n if (swiper.swipeDirection === 'next') {\n swiper.slideTo(stopIndex + increment);\n }\n\n if (swiper.swipeDirection === 'prev') {\n swiper.slideTo(stopIndex);\n }\n } else if (e.target === swiper.navigation.nextEl) {\n swiper.slideTo(stopIndex + increment);\n } else {\n swiper.slideTo(stopIndex);\n }\n }\n }\n\n function onResize() {\n const swiper = this;\n const {params, el} = swiper;\n if (el && el.offsetWidth === 0) return; // Breakpoints\n\n if (params.breakpoints) {\n swiper.setBreakpoint();\n } // Save locks\n\n const {allowSlideNext, allowSlidePrev, snapGrid} = swiper; // Disable locks on resize\n\n swiper.allowSlideNext = true;\n swiper.allowSlidePrev = true;\n swiper.updateSize();\n swiper.updateSlides();\n swiper.updateSlidesClasses();\n\n if (\n (params.slidesPerView === 'auto' || params.slidesPerView > 1) &&\n swiper.isEnd &&\n !swiper.isBeginning &&\n !swiper.params.centeredSlides\n ) {\n swiper.slideTo(swiper.slides.length - 1, 0, false, true);\n } else {\n swiper.slideTo(swiper.activeIndex, 0, false, true);\n }\n\n if (swiper.autoplay && swiper.autoplay.running && swiper.autoplay.paused) {\n swiper.autoplay.run();\n } // Return locks after resize\n\n swiper.allowSlidePrev = allowSlidePrev;\n swiper.allowSlideNext = allowSlideNext;\n\n if (swiper.params.watchOverflow && snapGrid !== swiper.snapGrid) {\n swiper.checkOverflow();\n }\n }\n\n function onClick(e) {\n const swiper = this;\n if (!swiper.enabled) return;\n\n if (!swiper.allowClick) {\n if (swiper.params.preventClicks) e.preventDefault();\n\n if (swiper.params.preventClicksPropagation && swiper.animating) {\n e.stopPropagation();\n e.stopImmediatePropagation();\n }\n }\n }\n\n function onScroll() {\n const swiper = this;\n const {wrapperEl, rtlTranslate, enabled} = swiper;\n if (!enabled) return;\n swiper.previousTranslate = swiper.translate;\n\n if (swiper.isHorizontal()) {\n swiper.translate = -wrapperEl.scrollLeft;\n } else {\n swiper.translate = -wrapperEl.scrollTop;\n } // eslint-disable-next-line\n\n if (swiper.translate === -0) swiper.translate = 0;\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n let newProgress;\n const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n\n if (translatesDiff === 0) {\n newProgress = 0;\n } else {\n newProgress = (swiper.translate - swiper.minTranslate()) / translatesDiff;\n }\n\n if (newProgress !== swiper.progress) {\n swiper.updateProgress(rtlTranslate ? -swiper.translate : swiper.translate);\n }\n\n swiper.emit('setTranslate', swiper.translate, false);\n }\n\n let dummyEventAttached = false;\n\n function dummyEventListener() {}\n\n const events = (swiper, method) => {\n const document = getDocument();\n const {params, touchEvents, el, wrapperEl, device, support} = swiper;\n const capture = !!params.nested;\n const domMethod = method === 'on' ? 'addEventListener' : 'removeEventListener';\n const swiperMethod = method; // Touch Events\n\n if (!support.touch) {\n el[domMethod](touchEvents.start, swiper.onTouchStart, false);\n document[domMethod](touchEvents.move, swiper.onTouchMove, capture);\n document[domMethod](touchEvents.end, swiper.onTouchEnd, false);\n } else {\n const passiveListener =\n touchEvents.start === 'touchstart' && support.passiveListener && params.passiveListeners\n ? {\n passive: true,\n capture: false,\n }\n : false;\n el[domMethod](touchEvents.start, swiper.onTouchStart, passiveListener);\n el[domMethod](\n touchEvents.move,\n swiper.onTouchMove,\n support.passiveListener\n ? {\n passive: false,\n capture,\n }\n : capture,\n );\n el[domMethod](touchEvents.end, swiper.onTouchEnd, passiveListener);\n\n if (touchEvents.cancel) {\n el[domMethod](touchEvents.cancel, swiper.onTouchEnd, passiveListener);\n }\n } // Prevent Links Clicks\n\n if (params.preventClicks || params.preventClicksPropagation) {\n el[domMethod]('click', swiper.onClick, true);\n }\n\n if (params.cssMode) {\n wrapperEl[domMethod]('scroll', swiper.onScroll);\n } // Resize handler\n\n if (params.updateOnWindowResize) {\n swiper[swiperMethod](\n device.ios || device.android ? 'resize orientationchange observerUpdate' : 'resize observerUpdate',\n onResize,\n true,\n );\n } else {\n swiper[swiperMethod]('observerUpdate', onResize, true);\n }\n };\n\n function attachEvents() {\n const swiper = this;\n const document = getDocument();\n const {params, support} = swiper;\n swiper.onTouchStart = onTouchStart.bind(swiper);\n swiper.onTouchMove = onTouchMove.bind(swiper);\n swiper.onTouchEnd = onTouchEnd.bind(swiper);\n\n if (params.cssMode) {\n swiper.onScroll = onScroll.bind(swiper);\n }\n\n swiper.onClick = onClick.bind(swiper);\n\n if (support.touch && !dummyEventAttached) {\n document.addEventListener('touchstart', dummyEventListener);\n dummyEventAttached = true;\n }\n\n events(swiper, 'on');\n }\n\n function detachEvents() {\n const swiper = this;\n events(swiper, 'off');\n }\n\n var events$1 = {\n attachEvents,\n detachEvents,\n };\n\n const isGridEnabled = (swiper, params) => {\n return swiper.grid && params.grid && params.grid.rows > 1;\n };\n\n function setBreakpoint() {\n const swiper = this;\n const {activeIndex, initialized, loopedSlides = 0, params, $el} = swiper;\n const breakpoints = params.breakpoints;\n if (!breakpoints || (breakpoints && Object.keys(breakpoints).length === 0)) return; // Get breakpoint for window width and update parameters\n\n const breakpoint = swiper.getBreakpoint(breakpoints, swiper.params.breakpointsBase, swiper.el);\n if (!breakpoint || swiper.currentBreakpoint === breakpoint) return;\n const breakpointOnlyParams = breakpoint in breakpoints ? breakpoints[breakpoint] : undefined;\n const breakpointParams = breakpointOnlyParams || swiper.originalParams;\n const wasMultiRow = isGridEnabled(swiper, params);\n const isMultiRow = isGridEnabled(swiper, breakpointParams);\n const wasEnabled = params.enabled;\n\n if (wasMultiRow && !isMultiRow) {\n $el.removeClass(`${params.containerModifierClass}grid ${params.containerModifierClass}grid-column`);\n swiper.emitContainerClasses();\n } else if (!wasMultiRow && isMultiRow) {\n $el.addClass(`${params.containerModifierClass}grid`);\n\n if (\n (breakpointParams.grid.fill && breakpointParams.grid.fill === 'column') ||\n (!breakpointParams.grid.fill && params.grid.fill === 'column')\n ) {\n $el.addClass(`${params.containerModifierClass}grid-column`);\n }\n\n swiper.emitContainerClasses();\n }\n\n const directionChanged = breakpointParams.direction && breakpointParams.direction !== params.direction;\n const needsReLoop = params.loop && (breakpointParams.slidesPerView !== params.slidesPerView || directionChanged);\n\n if (directionChanged && initialized) {\n swiper.changeDirection();\n }\n\n extend(swiper.params, breakpointParams);\n const isEnabled = swiper.params.enabled;\n Object.assign(swiper, {\n allowTouchMove: swiper.params.allowTouchMove,\n allowSlideNext: swiper.params.allowSlideNext,\n allowSlidePrev: swiper.params.allowSlidePrev,\n });\n\n if (wasEnabled && !isEnabled) {\n swiper.disable();\n } else if (!wasEnabled && isEnabled) {\n swiper.enable();\n }\n\n swiper.currentBreakpoint = breakpoint;\n swiper.emit('_beforeBreakpoint', breakpointParams);\n\n if (needsReLoop && initialized) {\n swiper.loopDestroy();\n swiper.loopCreate();\n swiper.updateSlides();\n swiper.slideTo(activeIndex - loopedSlides + swiper.loopedSlides, 0, false);\n }\n\n swiper.emit('breakpoint', breakpointParams);\n }\n\n function getBreakpoint(breakpoints, base = 'window', containerEl) {\n if (!breakpoints || (base === 'container' && !containerEl)) return undefined;\n let breakpoint = false;\n const window = getWindow();\n const currentHeight = base === 'window' ? window.innerHeight : containerEl.clientHeight;\n const points = Object.keys(breakpoints).map((point) => {\n if (typeof point === 'string' && point.indexOf('@') === 0) {\n const minRatio = parseFloat(point.substr(1));\n const value = currentHeight * minRatio;\n return {\n value,\n point,\n };\n }\n\n return {\n value: point,\n point,\n };\n });\n points.sort((a, b) => parseInt(a.value, 10) - parseInt(b.value, 10));\n\n for (let i = 0; i < points.length; i += 1) {\n const {point, value} = points[i];\n\n if (base === 'window') {\n if (window.matchMedia(`(min-width: ${value}px)`).matches) {\n breakpoint = point;\n }\n } else if (value <= containerEl.clientWidth) {\n breakpoint = point;\n }\n }\n\n return breakpoint || 'max';\n }\n\n var breakpoints = {\n setBreakpoint,\n getBreakpoint,\n };\n\n function prepareClasses(entries, prefix) {\n const resultClasses = [];\n entries.forEach((item) => {\n if (typeof item === 'object') {\n Object.keys(item).forEach((classNames) => {\n if (item[classNames]) {\n resultClasses.push(prefix + classNames);\n }\n });\n } else if (typeof item === 'string') {\n resultClasses.push(prefix + item);\n }\n });\n return resultClasses;\n }\n\n function addClasses() {\n const swiper = this;\n const {\n classNames,\n params,\n rtl,\n $el,\n device,\n support\n } = swiper; // prettier-ignore\n\n const suffixes = prepareClasses(\n [\n 'initialized',\n params.direction,\n {\n 'pointer-events': !support.touch,\n },\n {\n 'free-mode': swiper.params.freeMode && params.freeMode.enabled,\n },\n {\n autoheight: params.autoHeight,\n },\n {\n rtl: rtl,\n },\n {\n grid: params.grid && params.grid.rows > 1,\n },\n {\n 'grid-column': params.grid && params.grid.rows > 1 && params.grid.fill === 'column',\n },\n {\n android: device.android,\n },\n {\n ios: device.ios,\n },\n {\n 'css-mode': params.cssMode,\n },\n {\n centered: params.cssMode && params.centeredSlides,\n },\n ],\n params.containerModifierClass,\n );\n classNames.push(...suffixes);\n $el.addClass([...classNames].join(' '));\n swiper.emitContainerClasses();\n }\n\n function removeClasses() {\n const swiper = this;\n const {$el, classNames} = swiper;\n $el.removeClass(classNames.join(' '));\n swiper.emitContainerClasses();\n }\n\n var classes = {\n addClasses,\n removeClasses,\n };\n\n function loadImage(imageEl, src, srcset, sizes, checkForComplete, callback) {\n const window = getWindow();\n let image;\n\n function onReady() {\n if (callback) callback();\n }\n\n const isPicture = $(imageEl).parent('picture')[0];\n\n if (!isPicture && (!imageEl.complete || !checkForComplete)) {\n if (src) {\n image = new window.Image();\n image.onload = onReady;\n image.onerror = onReady;\n\n if (sizes) {\n image.sizes = sizes;\n }\n\n if (srcset) {\n image.srcset = srcset;\n }\n\n if (src) {\n image.src = src;\n }\n } else {\n onReady();\n }\n } else {\n // image already loaded...\n onReady();\n }\n }\n\n function preloadImages() {\n const swiper = this;\n swiper.imagesToLoad = swiper.$el.find('img');\n\n function onReady() {\n if (typeof swiper === 'undefined' || swiper === null || !swiper || swiper.destroyed) return;\n if (swiper.imagesLoaded !== undefined) swiper.imagesLoaded += 1;\n\n if (swiper.imagesLoaded === swiper.imagesToLoad.length) {\n if (swiper.params.updateOnImagesReady) swiper.update();\n swiper.emit('imagesReady');\n }\n }\n\n for (let i = 0; i < swiper.imagesToLoad.length; i += 1) {\n const imageEl = swiper.imagesToLoad[i];\n swiper.loadImage(\n imageEl,\n imageEl.currentSrc || imageEl.getAttribute('src'),\n imageEl.srcset || imageEl.getAttribute('srcset'),\n imageEl.sizes || imageEl.getAttribute('sizes'),\n true,\n onReady,\n );\n }\n }\n\n var images = {\n loadImage,\n preloadImages,\n };\n\n function checkOverflow() {\n const swiper = this;\n const {isLocked: wasLocked, params} = swiper;\n const {slidesOffsetBefore} = params;\n\n if (slidesOffsetBefore) {\n const lastSlideIndex = swiper.slides.length - 1;\n const lastSlideRightEdge =\n swiper.slidesGrid[lastSlideIndex] + swiper.slidesSizesGrid[lastSlideIndex] + slidesOffsetBefore * 2;\n swiper.isLocked = swiper.size > lastSlideRightEdge;\n } else {\n swiper.isLocked = swiper.snapGrid.length === 1;\n }\n\n if (params.allowSlideNext === true) {\n swiper.allowSlideNext = !swiper.isLocked;\n }\n\n if (params.allowSlidePrev === true) {\n swiper.allowSlidePrev = !swiper.isLocked;\n }\n\n if (wasLocked && wasLocked !== swiper.isLocked) {\n swiper.isEnd = false;\n }\n\n if (wasLocked !== swiper.isLocked) {\n swiper.emit(swiper.isLocked ? 'lock' : 'unlock');\n }\n }\n\n var checkOverflow$1 = {\n checkOverflow,\n };\n\n var defaults = {\n init: true,\n direction: 'horizontal',\n touchEventsTarget: 'wrapper',\n initialSlide: 0,\n speed: 300,\n cssMode: false,\n updateOnWindowResize: true,\n resizeObserver: true,\n nested: false,\n createElements: false,\n enabled: true,\n focusableElements: 'input, select, option, textarea, button, video, label',\n // Overrides\n width: null,\n height: null,\n //\n preventInteractionOnTransition: false,\n // ssr\n userAgent: null,\n url: null,\n // To support iOS's swipe-to-go-back gesture (when being used in-app).\n edgeSwipeDetection: false,\n edgeSwipeThreshold: 20,\n // Autoheight\n autoHeight: false,\n // Set wrapper width\n setWrapperSize: false,\n // Virtual Translate\n virtualTranslate: false,\n // Effects\n effect: 'slide',\n // 'slide' or 'fade' or 'cube' or 'coverflow' or 'flip'\n // Breakpoints\n breakpoints: undefined,\n breakpointsBase: 'window',\n // Slides grid\n spaceBetween: 0,\n slidesPerView: 1,\n slidesPerGroup: 1,\n slidesPerGroupSkip: 0,\n slidesPerGroupAuto: false,\n centeredSlides: false,\n centeredSlidesBounds: false,\n slidesOffsetBefore: 0,\n // in px\n slidesOffsetAfter: 0,\n // in px\n normalizeSlideIndex: true,\n centerInsufficientSlides: false,\n // Disable swiper and hide navigation when container not overflow\n watchOverflow: true,\n // Round length\n roundLengths: false,\n // Touches\n touchRatio: 1,\n touchAngle: 45,\n simulateTouch: true,\n shortSwipes: true,\n longSwipes: true,\n longSwipesRatio: 0.5,\n longSwipesMs: 300,\n followFinger: true,\n allowTouchMove: true,\n threshold: 0,\n touchMoveStopPropagation: false,\n touchStartPreventDefault: true,\n touchStartForcePreventDefault: false,\n touchReleaseOnEdges: false,\n // Unique Navigation Elements\n uniqueNavElements: true,\n // Resistance\n resistance: true,\n resistanceRatio: 0.85,\n // Progress\n watchSlidesProgress: false,\n // Cursor\n grabCursor: false,\n // Clicks\n preventClicks: true,\n preventClicksPropagation: true,\n slideToClickedSlide: false,\n // Images\n preloadImages: true,\n updateOnImagesReady: true,\n // loop\n loop: false,\n loopAdditionalSlides: 0,\n loopedSlides: null,\n loopFillGroupWithBlank: false,\n loopPreventsSlide: true,\n // rewind\n rewind: false,\n // Swiping/no swiping\n allowSlidePrev: true,\n allowSlideNext: true,\n swipeHandler: null,\n // '.swipe-handler',\n noSwiping: true,\n noSwipingClass: 'swiper-no-swiping',\n noSwipingSelector: null,\n // Passive Listeners\n passiveListeners: true,\n // NS\n containerModifierClass: 'swiper-',\n // NEW\n slideClass: 'swiper-slide',\n slideBlankClass: 'swiper-slide-invisible-blank',\n slideActiveClass: 'swiper-slide-active',\n slideDuplicateActiveClass: 'swiper-slide-duplicate-active',\n slideVisibleClass: 'swiper-slide-visible',\n slideDuplicateClass: 'swiper-slide-duplicate',\n slideNextClass: 'swiper-slide-next',\n slideDuplicateNextClass: 'swiper-slide-duplicate-next',\n slidePrevClass: 'swiper-slide-prev',\n slideDuplicatePrevClass: 'swiper-slide-duplicate-prev',\n wrapperClass: 'swiper-wrapper',\n // Callbacks\n runCallbacksOnInit: true,\n // Internals\n _emitClasses: false,\n };\n\n function moduleExtendParams(params, allModulesParams) {\n return function extendParams(obj = {}) {\n const moduleParamName = Object.keys(obj)[0];\n const moduleParams = obj[moduleParamName];\n\n if (typeof moduleParams !== 'object' || moduleParams === null) {\n extend(allModulesParams, obj);\n return;\n }\n\n if (\n ['navigation', 'pagination', 'scrollbar'].indexOf(moduleParamName) >= 0 &&\n params[moduleParamName] === true\n ) {\n params[moduleParamName] = {\n auto: true,\n };\n }\n\n if (!(moduleParamName in params && 'enabled' in moduleParams)) {\n extend(allModulesParams, obj);\n return;\n }\n\n if (params[moduleParamName] === true) {\n params[moduleParamName] = {\n enabled: true,\n };\n }\n\n if (typeof params[moduleParamName] === 'object' && !('enabled' in params[moduleParamName])) {\n params[moduleParamName].enabled = true;\n }\n\n if (!params[moduleParamName])\n params[moduleParamName] = {\n enabled: false,\n };\n extend(allModulesParams, obj);\n };\n }\n\n /* eslint no-param-reassign: \"off\" */\n const prototypes = {\n eventsEmitter,\n update,\n translate,\n transition,\n slide,\n loop,\n grabCursor,\n events: events$1,\n breakpoints,\n checkOverflow: checkOverflow$1,\n classes,\n images,\n };\n const extendedDefaults = {};\n\n class Swiper {\n constructor(...args) {\n let el;\n let params;\n\n if (\n args.length === 1 &&\n args[0].constructor &&\n Object.prototype.toString.call(args[0]).slice(8, -1) === 'Object'\n ) {\n params = args[0];\n } else {\n [el, params] = args;\n }\n\n if (!params) params = {};\n params = extend({}, params);\n if (el && !params.el) params.el = el;\n\n if (params.el && $(params.el).length > 1) {\n const swipers = [];\n $(params.el).each((containerEl) => {\n const newParams = extend({}, params, {\n el: containerEl,\n });\n swipers.push(new Swiper(newParams));\n });\n return swipers;\n } // Swiper Instance\n\n const swiper = this;\n swiper.__swiper__ = true;\n swiper.support = getSupport();\n swiper.device = getDevice({\n userAgent: params.userAgent,\n });\n swiper.browser = getBrowser();\n swiper.eventsListeners = {};\n swiper.eventsAnyListeners = [];\n swiper.modules = [...swiper.__modules__];\n\n if (params.modules && Array.isArray(params.modules)) {\n swiper.modules.push(...params.modules);\n }\n\n const allModulesParams = {};\n swiper.modules.forEach((mod) => {\n mod({\n swiper,\n extendParams: moduleExtendParams(params, allModulesParams),\n on: swiper.on.bind(swiper),\n once: swiper.once.bind(swiper),\n off: swiper.off.bind(swiper),\n emit: swiper.emit.bind(swiper),\n });\n }); // Extend defaults with modules params\n\n const swiperParams = extend({}, defaults, allModulesParams); // Extend defaults with passed params\n\n swiper.params = extend({}, swiperParams, extendedDefaults, params);\n swiper.originalParams = extend({}, swiper.params);\n swiper.passedParams = extend({}, params); // add event listeners\n\n if (swiper.params && swiper.params.on) {\n Object.keys(swiper.params.on).forEach((eventName) => {\n swiper.on(eventName, swiper.params.on[eventName]);\n });\n }\n\n if (swiper.params && swiper.params.onAny) {\n swiper.onAny(swiper.params.onAny);\n } // Save Dom lib\n\n swiper.$ = $; // Extend Swiper\n\n Object.assign(swiper, {\n enabled: swiper.params.enabled,\n el,\n // Classes\n classNames: [],\n // Slides\n slides: $(),\n slidesGrid: [],\n snapGrid: [],\n slidesSizesGrid: [],\n\n // isDirection\n isHorizontal() {\n return swiper.params.direction === 'horizontal';\n },\n\n isVertical() {\n return swiper.params.direction === 'vertical';\n },\n\n // Indexes\n activeIndex: 0,\n realIndex: 0,\n //\n isBeginning: true,\n isEnd: false,\n // Props\n translate: 0,\n previousTranslate: 0,\n progress: 0,\n velocity: 0,\n animating: false,\n // Locks\n allowSlideNext: swiper.params.allowSlideNext,\n allowSlidePrev: swiper.params.allowSlidePrev,\n // Touch Events\n touchEvents: (function touchEvents() {\n const touch = ['touchstart', 'touchmove', 'touchend', 'touchcancel'];\n const desktop = ['pointerdown', 'pointermove', 'pointerup'];\n swiper.touchEventsTouch = {\n start: touch[0],\n move: touch[1],\n end: touch[2],\n cancel: touch[3],\n };\n swiper.touchEventsDesktop = {\n start: desktop[0],\n move: desktop[1],\n end: desktop[2],\n };\n return swiper.support.touch || !swiper.params.simulateTouch\n ? swiper.touchEventsTouch\n : swiper.touchEventsDesktop;\n })(),\n touchEventsData: {\n isTouched: undefined,\n isMoved: undefined,\n allowTouchCallbacks: undefined,\n touchStartTime: undefined,\n isScrolling: undefined,\n currentTranslate: undefined,\n startTranslate: undefined,\n allowThresholdMove: undefined,\n // Form elements to match\n focusableElements: swiper.params.focusableElements,\n // Last click time\n lastClickTime: now(),\n clickTimeout: undefined,\n // Velocities\n velocities: [],\n allowMomentumBounce: undefined,\n isTouchEvent: undefined,\n startMoving: undefined,\n },\n // Clicks\n allowClick: true,\n // Touches\n allowTouchMove: swiper.params.allowTouchMove,\n touches: {\n startX: 0,\n startY: 0,\n currentX: 0,\n currentY: 0,\n diff: 0,\n },\n // Images\n imagesToLoad: [],\n imagesLoaded: 0,\n });\n swiper.emit('_swiper'); // Init\n\n if (swiper.params.init) {\n swiper.init();\n } // Return app instance\n\n return swiper;\n }\n\n enable() {\n const swiper = this;\n if (swiper.enabled) return;\n swiper.enabled = true;\n\n if (swiper.params.grabCursor) {\n swiper.setGrabCursor();\n }\n\n swiper.emit('enable');\n }\n\n disable() {\n const swiper = this;\n if (!swiper.enabled) return;\n swiper.enabled = false;\n\n if (swiper.params.grabCursor) {\n swiper.unsetGrabCursor();\n }\n\n swiper.emit('disable');\n }\n\n setProgress(progress, speed) {\n const swiper = this;\n progress = Math.min(Math.max(progress, 0), 1);\n const min = swiper.minTranslate();\n const max = swiper.maxTranslate();\n const current = (max - min) * progress + min;\n swiper.translateTo(current, typeof speed === 'undefined' ? 0 : speed);\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n\n emitContainerClasses() {\n const swiper = this;\n if (!swiper.params._emitClasses || !swiper.el) return;\n const cls = swiper.el.className.split(' ').filter((className) => {\n return className.indexOf('swiper') === 0 || className.indexOf(swiper.params.containerModifierClass) === 0;\n });\n swiper.emit('_containerClasses', cls.join(' '));\n }\n\n getSlideClasses(slideEl) {\n const swiper = this;\n return slideEl.className\n .split(' ')\n .filter((className) => {\n return className.indexOf('swiper-slide') === 0 || className.indexOf(swiper.params.slideClass) === 0;\n })\n .join(' ');\n }\n\n emitSlidesClasses() {\n const swiper = this;\n if (!swiper.params._emitClasses || !swiper.el) return;\n const updates = [];\n swiper.slides.each((slideEl) => {\n const classNames = swiper.getSlideClasses(slideEl);\n updates.push({\n slideEl,\n classNames,\n });\n swiper.emit('_slideClass', slideEl, classNames);\n });\n swiper.emit('_slideClasses', updates);\n }\n\n slidesPerViewDynamic(view = 'current', exact = false) {\n const swiper = this;\n const {params, slides, slidesGrid, slidesSizesGrid, size: swiperSize, activeIndex} = swiper;\n let spv = 1;\n\n if (params.centeredSlides) {\n let slideSize = slides[activeIndex].swiperSlideSize;\n let breakLoop;\n\n for (let i = activeIndex + 1; i < slides.length; i += 1) {\n if (slides[i] && !breakLoop) {\n slideSize += slides[i].swiperSlideSize;\n spv += 1;\n if (slideSize > swiperSize) breakLoop = true;\n }\n }\n\n for (let i = activeIndex - 1; i >= 0; i -= 1) {\n if (slides[i] && !breakLoop) {\n slideSize += slides[i].swiperSlideSize;\n spv += 1;\n if (slideSize > swiperSize) breakLoop = true;\n }\n }\n } else {\n // eslint-disable-next-line\n if (view === 'current') {\n for (let i = activeIndex + 1; i < slides.length; i += 1) {\n const slideInView = exact\n ? slidesGrid[i] + slidesSizesGrid[i] - slidesGrid[activeIndex] < swiperSize\n : slidesGrid[i] - slidesGrid[activeIndex] < swiperSize;\n\n if (slideInView) {\n spv += 1;\n }\n }\n } else {\n // previous\n for (let i = activeIndex - 1; i >= 0; i -= 1) {\n const slideInView = slidesGrid[activeIndex] - slidesGrid[i] < swiperSize;\n\n if (slideInView) {\n spv += 1;\n }\n }\n }\n }\n\n return spv;\n }\n\n update() {\n const swiper = this;\n if (!swiper || swiper.destroyed) return;\n const {snapGrid, params} = swiper; // Breakpoints\n\n if (params.breakpoints) {\n swiper.setBreakpoint();\n }\n\n swiper.updateSize();\n swiper.updateSlides();\n swiper.updateProgress();\n swiper.updateSlidesClasses();\n\n function setTranslate() {\n const translateValue = swiper.rtlTranslate ? swiper.translate * -1 : swiper.translate;\n const newTranslate = Math.min(Math.max(translateValue, swiper.maxTranslate()), swiper.minTranslate());\n swiper.setTranslate(newTranslate);\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n\n let translated;\n\n if (swiper.params.freeMode && swiper.params.freeMode.enabled) {\n setTranslate();\n\n if (swiper.params.autoHeight) {\n swiper.updateAutoHeight();\n }\n } else {\n if (\n (swiper.params.slidesPerView === 'auto' || swiper.params.slidesPerView > 1) &&\n swiper.isEnd &&\n !swiper.params.centeredSlides\n ) {\n translated = swiper.slideTo(swiper.slides.length - 1, 0, false, true);\n } else {\n translated = swiper.slideTo(swiper.activeIndex, 0, false, true);\n }\n\n if (!translated) {\n setTranslate();\n }\n }\n\n if (params.watchOverflow && snapGrid !== swiper.snapGrid) {\n swiper.checkOverflow();\n }\n\n swiper.emit('update');\n }\n\n changeDirection(newDirection, needUpdate = true) {\n const swiper = this;\n const currentDirection = swiper.params.direction;\n\n if (!newDirection) {\n // eslint-disable-next-line\n newDirection = currentDirection === 'horizontal' ? 'vertical' : 'horizontal';\n }\n\n if (newDirection === currentDirection || (newDirection !== 'horizontal' && newDirection !== 'vertical')) {\n return swiper;\n }\n\n swiper.$el\n .removeClass(`${swiper.params.containerModifierClass}${currentDirection}`)\n .addClass(`${swiper.params.containerModifierClass}${newDirection}`);\n swiper.emitContainerClasses();\n swiper.params.direction = newDirection;\n swiper.slides.each((slideEl) => {\n if (newDirection === 'vertical') {\n slideEl.style.width = '';\n } else {\n slideEl.style.height = '';\n }\n });\n swiper.emit('changeDirection');\n if (needUpdate) swiper.update();\n return swiper;\n }\n\n mount(el) {\n const swiper = this;\n if (swiper.mounted) return true; // Find el\n\n const $el = $(el || swiper.params.el);\n el = $el[0];\n\n if (!el) {\n return false;\n }\n\n el.swiper = swiper;\n\n const getWrapperSelector = () => {\n return `.${(swiper.params.wrapperClass || '').trim().split(' ').join('.')}`;\n };\n\n const getWrapper = () => {\n if (el && el.shadowRoot && el.shadowRoot.querySelector) {\n const res = $(el.shadowRoot.querySelector(getWrapperSelector())); // Children needs to return slot items\n\n res.children = (options) => $el.children(options);\n\n return res;\n }\n\n return $el.children(getWrapperSelector());\n }; // Find Wrapper\n\n let $wrapperEl = getWrapper();\n\n if ($wrapperEl.length === 0 && swiper.params.createElements) {\n const document = getDocument();\n const wrapper = document.createElement('div');\n $wrapperEl = $(wrapper);\n wrapper.className = swiper.params.wrapperClass;\n $el.append(wrapper);\n $el.children(`.${swiper.params.slideClass}`).each((slideEl) => {\n $wrapperEl.append(slideEl);\n });\n }\n\n Object.assign(swiper, {\n $el,\n el,\n $wrapperEl,\n wrapperEl: $wrapperEl[0],\n mounted: true,\n // RTL\n rtl: el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl',\n rtlTranslate:\n swiper.params.direction === 'horizontal' &&\n (el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl'),\n wrongRTL: $wrapperEl.css('display') === '-webkit-box',\n });\n return true;\n }\n\n init(el) {\n const swiper = this;\n if (swiper.initialized) return swiper;\n const mounted = swiper.mount(el);\n if (mounted === false) return swiper;\n swiper.emit('beforeInit'); // Set breakpoint\n\n if (swiper.params.breakpoints) {\n swiper.setBreakpoint();\n } // Add Classes\n\n swiper.addClasses(); // Create loop\n\n if (swiper.params.loop) {\n swiper.loopCreate();\n } // Update size\n\n swiper.updateSize(); // Update slides\n\n swiper.updateSlides();\n\n if (swiper.params.watchOverflow) {\n swiper.checkOverflow();\n } // Set Grab Cursor\n\n if (swiper.params.grabCursor && swiper.enabled) {\n swiper.setGrabCursor();\n }\n\n if (swiper.params.preloadImages) {\n swiper.preloadImages();\n } // Slide To Initial Slide\n\n if (swiper.params.loop) {\n swiper.slideTo(\n swiper.params.initialSlide + swiper.loopedSlides,\n 0,\n swiper.params.runCallbacksOnInit,\n false,\n true,\n );\n } else {\n swiper.slideTo(swiper.params.initialSlide, 0, swiper.params.runCallbacksOnInit, false, true);\n } // Attach events\n\n swiper.attachEvents(); // Init Flag\n\n swiper.initialized = true; // Emit\n\n swiper.emit('init');\n swiper.emit('afterInit');\n return swiper;\n }\n\n destroy(deleteInstance = true, cleanStyles = true) {\n const swiper = this;\n const {params, $el, $wrapperEl, slides} = swiper;\n\n if (typeof swiper.params === 'undefined' || swiper.destroyed) {\n return null;\n }\n\n swiper.emit('beforeDestroy'); // Init Flag\n\n swiper.initialized = false; // Detach events\n\n swiper.detachEvents(); // Destroy loop\n\n if (params.loop) {\n swiper.loopDestroy();\n } // Cleanup styles\n\n if (cleanStyles) {\n swiper.removeClasses();\n $el.removeAttr('style');\n $wrapperEl.removeAttr('style');\n\n if (slides && slides.length) {\n slides\n .removeClass(\n [params.slideVisibleClass, params.slideActiveClass, params.slideNextClass, params.slidePrevClass].join(\n ' ',\n ),\n )\n .removeAttr('style')\n .removeAttr('data-swiper-slide-index');\n }\n }\n\n swiper.emit('destroy'); // Detach emitter events\n\n Object.keys(swiper.eventsListeners).forEach((eventName) => {\n swiper.off(eventName);\n });\n\n if (deleteInstance !== false) {\n swiper.$el[0].swiper = null;\n deleteProps(swiper);\n }\n\n swiper.destroyed = true;\n return null;\n }\n\n static extendDefaults(newDefaults) {\n extend(extendedDefaults, newDefaults);\n }\n\n static get extendedDefaults() {\n return extendedDefaults;\n }\n\n static get defaults() {\n return defaults;\n }\n\n static installModule(mod) {\n if (!Swiper.prototype.__modules__) Swiper.prototype.__modules__ = [];\n const modules = Swiper.prototype.__modules__;\n\n if (typeof mod === 'function' && modules.indexOf(mod) < 0) {\n modules.push(mod);\n }\n }\n\n static use(module) {\n if (Array.isArray(module)) {\n module.forEach((m) => Swiper.installModule(m));\n return Swiper;\n }\n\n Swiper.installModule(module);\n return Swiper;\n }\n }\n\n Object.keys(prototypes).forEach((prototypeGroup) => {\n Object.keys(prototypes[prototypeGroup]).forEach((protoMethod) => {\n Swiper.prototype[protoMethod] = prototypes[prototypeGroup][protoMethod];\n });\n });\n Swiper.use([Resize, Observer]);\n\n function Virtual({swiper, extendParams, on}) {\n extendParams({\n virtual: {\n enabled: false,\n slides: [],\n cache: true,\n renderSlide: null,\n renderExternal: null,\n renderExternalUpdate: true,\n addSlidesBefore: 0,\n addSlidesAfter: 0,\n },\n });\n let cssModeTimeout;\n swiper.virtual = {\n cache: {},\n from: undefined,\n to: undefined,\n slides: [],\n offset: 0,\n slidesGrid: [],\n };\n\n function renderSlide(slide, index) {\n const params = swiper.params.virtual;\n\n if (params.cache && swiper.virtual.cache[index]) {\n return swiper.virtual.cache[index];\n }\n\n const $slideEl = params.renderSlide\n ? $(params.renderSlide.call(swiper, slide, index))\n : $(`
    ${slide}
    `);\n if (!$slideEl.attr('data-swiper-slide-index')) $slideEl.attr('data-swiper-slide-index', index);\n if (params.cache) swiper.virtual.cache[index] = $slideEl;\n return $slideEl;\n }\n\n function update(force) {\n const {slidesPerView, slidesPerGroup, centeredSlides} = swiper.params;\n const {addSlidesBefore, addSlidesAfter} = swiper.params.virtual;\n const {\n from: previousFrom,\n to: previousTo,\n slides,\n slidesGrid: previousSlidesGrid,\n offset: previousOffset,\n } = swiper.virtual;\n\n if (!swiper.params.cssMode) {\n swiper.updateActiveIndex();\n }\n\n const activeIndex = swiper.activeIndex || 0;\n let offsetProp;\n if (swiper.rtlTranslate) offsetProp = 'right';\n else offsetProp = swiper.isHorizontal() ? 'left' : 'top';\n let slidesAfter;\n let slidesBefore;\n\n if (centeredSlides) {\n slidesAfter = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesAfter;\n slidesBefore = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesBefore;\n } else {\n slidesAfter = slidesPerView + (slidesPerGroup - 1) + addSlidesAfter;\n slidesBefore = slidesPerGroup + addSlidesBefore;\n }\n\n const from = Math.max((activeIndex || 0) - slidesBefore, 0);\n const to = Math.min((activeIndex || 0) + slidesAfter, slides.length - 1);\n const offset = (swiper.slidesGrid[from] || 0) - (swiper.slidesGrid[0] || 0);\n Object.assign(swiper.virtual, {\n from,\n to,\n offset,\n slidesGrid: swiper.slidesGrid,\n });\n\n function onRendered() {\n swiper.updateSlides();\n swiper.updateProgress();\n swiper.updateSlidesClasses();\n\n if (swiper.lazy && swiper.params.lazy.enabled) {\n swiper.lazy.load();\n }\n }\n\n if (previousFrom === from && previousTo === to && !force) {\n if (swiper.slidesGrid !== previousSlidesGrid && offset !== previousOffset) {\n swiper.slides.css(offsetProp, `${offset}px`);\n }\n\n swiper.updateProgress();\n return;\n }\n\n if (swiper.params.virtual.renderExternal) {\n swiper.params.virtual.renderExternal.call(swiper, {\n offset,\n from,\n to,\n slides: (function getSlides() {\n const slidesToRender = [];\n\n for (let i = from; i <= to; i += 1) {\n slidesToRender.push(slides[i]);\n }\n\n return slidesToRender;\n })(),\n });\n\n if (swiper.params.virtual.renderExternalUpdate) {\n onRendered();\n }\n\n return;\n }\n\n const prependIndexes = [];\n const appendIndexes = [];\n\n if (force) {\n swiper.$wrapperEl.find(`.${swiper.params.slideClass}`).remove();\n } else {\n for (let i = previousFrom; i <= previousTo; i += 1) {\n if (i < from || i > to) {\n swiper.$wrapperEl.find(`.${swiper.params.slideClass}[data-swiper-slide-index=\"${i}\"]`).remove();\n }\n }\n }\n\n for (let i = 0; i < slides.length; i += 1) {\n if (i >= from && i <= to) {\n if (typeof previousTo === 'undefined' || force) {\n appendIndexes.push(i);\n } else {\n if (i > previousTo) appendIndexes.push(i);\n if (i < previousFrom) prependIndexes.push(i);\n }\n }\n }\n\n appendIndexes.forEach((index) => {\n swiper.$wrapperEl.append(renderSlide(slides[index], index));\n });\n prependIndexes\n .sort((a, b) => b - a)\n .forEach((index) => {\n swiper.$wrapperEl.prepend(renderSlide(slides[index], index));\n });\n swiper.$wrapperEl.children('.swiper-slide').css(offsetProp, `${offset}px`);\n onRendered();\n }\n\n function appendSlide(slides) {\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) swiper.virtual.slides.push(slides[i]);\n }\n } else {\n swiper.virtual.slides.push(slides);\n }\n\n update(true);\n }\n\n function prependSlide(slides) {\n const activeIndex = swiper.activeIndex;\n let newActiveIndex = activeIndex + 1;\n let numberOfNewSlides = 1;\n\n if (Array.isArray(slides)) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) swiper.virtual.slides.unshift(slides[i]);\n }\n\n newActiveIndex = activeIndex + slides.length;\n numberOfNewSlides = slides.length;\n } else {\n swiper.virtual.slides.unshift(slides);\n }\n\n if (swiper.params.virtual.cache) {\n const cache = swiper.virtual.cache;\n const newCache = {};\n Object.keys(cache).forEach((cachedIndex) => {\n const $cachedEl = cache[cachedIndex];\n const cachedElIndex = $cachedEl.attr('data-swiper-slide-index');\n\n if (cachedElIndex) {\n $cachedEl.attr('data-swiper-slide-index', parseInt(cachedElIndex, 10) + numberOfNewSlides);\n }\n\n newCache[parseInt(cachedIndex, 10) + numberOfNewSlides] = $cachedEl;\n });\n swiper.virtual.cache = newCache;\n }\n\n update(true);\n swiper.slideTo(newActiveIndex, 0);\n }\n\n function removeSlide(slidesIndexes) {\n if (typeof slidesIndexes === 'undefined' || slidesIndexes === null) return;\n let activeIndex = swiper.activeIndex;\n\n if (Array.isArray(slidesIndexes)) {\n for (let i = slidesIndexes.length - 1; i >= 0; i -= 1) {\n swiper.virtual.slides.splice(slidesIndexes[i], 1);\n\n if (swiper.params.virtual.cache) {\n delete swiper.virtual.cache[slidesIndexes[i]];\n }\n\n if (slidesIndexes[i] < activeIndex) activeIndex -= 1;\n activeIndex = Math.max(activeIndex, 0);\n }\n } else {\n swiper.virtual.slides.splice(slidesIndexes, 1);\n\n if (swiper.params.virtual.cache) {\n delete swiper.virtual.cache[slidesIndexes];\n }\n\n if (slidesIndexes < activeIndex) activeIndex -= 1;\n activeIndex = Math.max(activeIndex, 0);\n }\n\n update(true);\n swiper.slideTo(activeIndex, 0);\n }\n\n function removeAllSlides() {\n swiper.virtual.slides = [];\n\n if (swiper.params.virtual.cache) {\n swiper.virtual.cache = {};\n }\n\n update(true);\n swiper.slideTo(0, 0);\n }\n\n on('beforeInit', () => {\n if (!swiper.params.virtual.enabled) return;\n swiper.virtual.slides = swiper.params.virtual.slides;\n swiper.classNames.push(`${swiper.params.containerModifierClass}virtual`);\n swiper.params.watchSlidesProgress = true;\n swiper.originalParams.watchSlidesProgress = true;\n\n if (!swiper.params.initialSlide) {\n update();\n }\n });\n on('setTranslate', () => {\n if (!swiper.params.virtual.enabled) return;\n\n if (swiper.params.cssMode && !swiper._immediateVirtual) {\n clearTimeout(cssModeTimeout);\n cssModeTimeout = setTimeout(() => {\n update();\n }, 100);\n } else {\n update();\n }\n });\n on('init update resize', () => {\n if (!swiper.params.virtual.enabled) return;\n\n if (swiper.params.cssMode) {\n setCSSProperty(swiper.wrapperEl, '--swiper-virtual-size', `${swiper.virtualSize}px`);\n }\n });\n Object.assign(swiper.virtual, {\n appendSlide,\n prependSlide,\n removeSlide,\n removeAllSlides,\n update,\n });\n }\n\n /* eslint-disable consistent-return */\n function Keyboard({swiper, extendParams, on, emit}) {\n const document = getDocument();\n const window = getWindow();\n swiper.keyboard = {\n enabled: false,\n };\n extendParams({\n keyboard: {\n enabled: false,\n onlyInViewport: true,\n pageUpDown: true,\n },\n });\n\n function handle(event) {\n if (!swiper.enabled) return;\n const {rtlTranslate: rtl} = swiper;\n let e = event;\n if (e.originalEvent) e = e.originalEvent; // jquery fix\n\n const kc = e.keyCode || e.charCode;\n const pageUpDown = swiper.params.keyboard.pageUpDown;\n const isPageUp = pageUpDown && kc === 33;\n const isPageDown = pageUpDown && kc === 34;\n const isArrowLeft = kc === 37;\n const isArrowRight = kc === 39;\n const isArrowUp = kc === 38;\n const isArrowDown = kc === 40; // Directions locks\n\n if (\n !swiper.allowSlideNext &&\n ((swiper.isHorizontal() && isArrowRight) || (swiper.isVertical() && isArrowDown) || isPageDown)\n ) {\n return false;\n }\n\n if (\n !swiper.allowSlidePrev &&\n ((swiper.isHorizontal() && isArrowLeft) || (swiper.isVertical() && isArrowUp) || isPageUp)\n ) {\n return false;\n }\n\n if (e.shiftKey || e.altKey || e.ctrlKey || e.metaKey) {\n return undefined;\n }\n\n if (\n document.activeElement &&\n document.activeElement.nodeName &&\n (document.activeElement.nodeName.toLowerCase() === 'input' ||\n document.activeElement.nodeName.toLowerCase() === 'textarea')\n ) {\n return undefined;\n }\n\n if (\n swiper.params.keyboard.onlyInViewport &&\n (isPageUp || isPageDown || isArrowLeft || isArrowRight || isArrowUp || isArrowDown)\n ) {\n let inView = false; // Check that swiper should be inside of visible area of window\n\n if (\n swiper.$el.parents(`.${swiper.params.slideClass}`).length > 0 &&\n swiper.$el.parents(`.${swiper.params.slideActiveClass}`).length === 0\n ) {\n return undefined;\n }\n\n const $el = swiper.$el;\n const swiperWidth = $el[0].clientWidth;\n const swiperHeight = $el[0].clientHeight;\n const windowWidth = window.innerWidth;\n const windowHeight = window.innerHeight;\n const swiperOffset = swiper.$el.offset();\n if (rtl) swiperOffset.left -= swiper.$el[0].scrollLeft;\n const swiperCoord = [\n [swiperOffset.left, swiperOffset.top],\n [swiperOffset.left + swiperWidth, swiperOffset.top],\n [swiperOffset.left, swiperOffset.top + swiperHeight],\n [swiperOffset.left + swiperWidth, swiperOffset.top + swiperHeight],\n ];\n\n for (let i = 0; i < swiperCoord.length; i += 1) {\n const point = swiperCoord[i];\n\n if (point[0] >= 0 && point[0] <= windowWidth && point[1] >= 0 && point[1] <= windowHeight) {\n if (point[0] === 0 && point[1] === 0) continue; // eslint-disable-line\n\n inView = true;\n }\n }\n\n if (!inView) return undefined;\n }\n\n if (swiper.isHorizontal()) {\n if (isPageUp || isPageDown || isArrowLeft || isArrowRight) {\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n }\n\n if (((isPageDown || isArrowRight) && !rtl) || ((isPageUp || isArrowLeft) && rtl)) swiper.slideNext();\n if (((isPageUp || isArrowLeft) && !rtl) || ((isPageDown || isArrowRight) && rtl)) swiper.slidePrev();\n } else {\n if (isPageUp || isPageDown || isArrowUp || isArrowDown) {\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n }\n\n if (isPageDown || isArrowDown) swiper.slideNext();\n if (isPageUp || isArrowUp) swiper.slidePrev();\n }\n\n emit('keyPress', kc);\n return undefined;\n }\n\n function enable() {\n if (swiper.keyboard.enabled) return;\n $(document).on('keydown', handle);\n swiper.keyboard.enabled = true;\n }\n\n function disable() {\n if (!swiper.keyboard.enabled) return;\n $(document).off('keydown', handle);\n swiper.keyboard.enabled = false;\n }\n\n on('init', () => {\n if (swiper.params.keyboard.enabled) {\n enable();\n }\n });\n on('destroy', () => {\n if (swiper.keyboard.enabled) {\n disable();\n }\n });\n Object.assign(swiper.keyboard, {\n enable,\n disable,\n });\n }\n\n /* eslint-disable consistent-return */\n function Mousewheel({swiper, extendParams, on, emit}) {\n const window = getWindow();\n extendParams({\n mousewheel: {\n enabled: false,\n releaseOnEdges: false,\n invert: false,\n forceToAxis: false,\n sensitivity: 1,\n eventsTarget: 'container',\n thresholdDelta: null,\n thresholdTime: null,\n },\n });\n swiper.mousewheel = {\n enabled: false,\n };\n let timeout;\n let lastScrollTime = now();\n let lastEventBeforeSnap;\n const recentWheelEvents = [];\n\n function normalize(e) {\n // Reasonable defaults\n const PIXEL_STEP = 10;\n const LINE_HEIGHT = 40;\n const PAGE_HEIGHT = 800;\n let sX = 0;\n let sY = 0; // spinX, spinY\n\n let pX = 0;\n let pY = 0; // pixelX, pixelY\n // Legacy\n\n if ('detail' in e) {\n sY = e.detail;\n }\n\n if ('wheelDelta' in e) {\n sY = -e.wheelDelta / 120;\n }\n\n if ('wheelDeltaY' in e) {\n sY = -e.wheelDeltaY / 120;\n }\n\n if ('wheelDeltaX' in e) {\n sX = -e.wheelDeltaX / 120;\n } // side scrolling on FF with DOMMouseScroll\n\n if ('axis' in e && e.axis === e.HORIZONTAL_AXIS) {\n sX = sY;\n sY = 0;\n }\n\n pX = sX * PIXEL_STEP;\n pY = sY * PIXEL_STEP;\n\n if ('deltaY' in e) {\n pY = e.deltaY;\n }\n\n if ('deltaX' in e) {\n pX = e.deltaX;\n }\n\n if (e.shiftKey && !pX) {\n // if user scrolls with shift he wants horizontal scroll\n pX = pY;\n pY = 0;\n }\n\n if ((pX || pY) && e.deltaMode) {\n if (e.deltaMode === 1) {\n // delta in LINE units\n pX *= LINE_HEIGHT;\n pY *= LINE_HEIGHT;\n } else {\n // delta in PAGE units\n pX *= PAGE_HEIGHT;\n pY *= PAGE_HEIGHT;\n }\n } // Fall-back if spin cannot be determined\n\n if (pX && !sX) {\n sX = pX < 1 ? -1 : 1;\n }\n\n if (pY && !sY) {\n sY = pY < 1 ? -1 : 1;\n }\n\n return {\n spinX: sX,\n spinY: sY,\n pixelX: pX,\n pixelY: pY,\n };\n }\n\n function handleMouseEnter() {\n if (!swiper.enabled) return;\n swiper.mouseEntered = true;\n }\n\n function handleMouseLeave() {\n if (!swiper.enabled) return;\n swiper.mouseEntered = false;\n }\n\n function animateSlider(newEvent) {\n if (swiper.params.mousewheel.thresholdDelta && newEvent.delta < swiper.params.mousewheel.thresholdDelta) {\n // Prevent if delta of wheel scroll delta is below configured threshold\n return false;\n }\n\n if (swiper.params.mousewheel.thresholdTime && now() - lastScrollTime < swiper.params.mousewheel.thresholdTime) {\n // Prevent if time between scrolls is below configured threshold\n return false;\n } // If the movement is NOT big enough and\n // if the last time the user scrolled was too close to the current one (avoid continuously triggering the slider):\n // Don't go any further (avoid insignificant scroll movement).\n\n if (newEvent.delta >= 6 && now() - lastScrollTime < 60) {\n // Return false as a default\n return true;\n } // If user is scrolling towards the end:\n // If the slider hasn't hit the latest slide or\n // if the slider is a loop and\n // if the slider isn't moving right now:\n // Go to next slide and\n // emit a scroll event.\n // Else (the user is scrolling towards the beginning) and\n // if the slider hasn't hit the first slide or\n // if the slider is a loop and\n // if the slider isn't moving right now:\n // Go to prev slide and\n // emit a scroll event.\n\n if (newEvent.direction < 0) {\n if ((!swiper.isEnd || swiper.params.loop) && !swiper.animating) {\n swiper.slideNext();\n emit('scroll', newEvent.raw);\n }\n } else if ((!swiper.isBeginning || swiper.params.loop) && !swiper.animating) {\n swiper.slidePrev();\n emit('scroll', newEvent.raw);\n } // If you got here is because an animation has been triggered so store the current time\n\n lastScrollTime = new window.Date().getTime(); // Return false as a default\n\n return false;\n }\n\n function releaseScroll(newEvent) {\n const params = swiper.params.mousewheel;\n\n if (newEvent.direction < 0) {\n if (swiper.isEnd && !swiper.params.loop && params.releaseOnEdges) {\n // Return true to animate scroll on edges\n return true;\n }\n } else if (swiper.isBeginning && !swiper.params.loop && params.releaseOnEdges) {\n // Return true to animate scroll on edges\n return true;\n }\n\n return false;\n }\n\n function handle(event) {\n let e = event;\n let disableParentSwiper = true;\n if (!swiper.enabled) return;\n const params = swiper.params.mousewheel;\n\n if (swiper.params.cssMode) {\n e.preventDefault();\n }\n\n let target = swiper.$el;\n\n if (swiper.params.mousewheel.eventsTarget !== 'container') {\n target = $(swiper.params.mousewheel.eventsTarget);\n }\n\n if (!swiper.mouseEntered && !target[0].contains(e.target) && !params.releaseOnEdges) return true;\n if (e.originalEvent) e = e.originalEvent; // jquery fix\n\n let delta = 0;\n const rtlFactor = swiper.rtlTranslate ? -1 : 1;\n const data = normalize(e);\n\n if (params.forceToAxis) {\n if (swiper.isHorizontal()) {\n if (Math.abs(data.pixelX) > Math.abs(data.pixelY)) delta = -data.pixelX * rtlFactor;\n else return true;\n } else if (Math.abs(data.pixelY) > Math.abs(data.pixelX)) delta = -data.pixelY;\n else return true;\n } else {\n delta = Math.abs(data.pixelX) > Math.abs(data.pixelY) ? -data.pixelX * rtlFactor : -data.pixelY;\n }\n\n if (delta === 0) return true;\n if (params.invert) delta = -delta; // Get the scroll positions\n\n let positions = swiper.getTranslate() + delta * params.sensitivity;\n if (positions >= swiper.minTranslate()) positions = swiper.minTranslate();\n if (positions <= swiper.maxTranslate()) positions = swiper.maxTranslate(); // When loop is true:\n // the disableParentSwiper will be true.\n // When loop is false:\n // if the scroll positions is not on edge,\n // then the disableParentSwiper will be true.\n // if the scroll on edge positions,\n // then the disableParentSwiper will be false.\n\n disableParentSwiper = swiper.params.loop\n ? true\n : !(positions === swiper.minTranslate() || positions === swiper.maxTranslate());\n if (disableParentSwiper && swiper.params.nested) e.stopPropagation();\n\n if (!swiper.params.freeMode || !swiper.params.freeMode.enabled) {\n // Register the new event in a variable which stores the relevant data\n const newEvent = {\n time: now(),\n delta: Math.abs(delta),\n direction: Math.sign(delta),\n raw: event,\n }; // Keep the most recent events\n\n if (recentWheelEvents.length >= 2) {\n recentWheelEvents.shift(); // only store the last N events\n }\n\n const prevEvent = recentWheelEvents.length ? recentWheelEvents[recentWheelEvents.length - 1] : undefined;\n recentWheelEvents.push(newEvent); // If there is at least one previous recorded event:\n // If direction has changed or\n // if the scroll is quicker than the previous one:\n // Animate the slider.\n // Else (this is the first time the wheel is moved):\n // Animate the slider.\n\n if (prevEvent) {\n if (\n newEvent.direction !== prevEvent.direction ||\n newEvent.delta > prevEvent.delta ||\n newEvent.time > prevEvent.time + 150\n ) {\n animateSlider(newEvent);\n }\n } else {\n animateSlider(newEvent);\n } // If it's time to release the scroll:\n // Return now so you don't hit the preventDefault.\n\n if (releaseScroll(newEvent)) {\n return true;\n }\n } else {\n // Freemode or scrollContainer:\n // If we recently snapped after a momentum scroll, then ignore wheel events\n // to give time for the deceleration to finish. Stop ignoring after 500 msecs\n // or if it's a new scroll (larger delta or inverse sign as last event before\n // an end-of-momentum snap).\n const newEvent = {\n time: now(),\n delta: Math.abs(delta),\n direction: Math.sign(delta),\n };\n const ignoreWheelEvents =\n lastEventBeforeSnap &&\n newEvent.time < lastEventBeforeSnap.time + 500 &&\n newEvent.delta <= lastEventBeforeSnap.delta &&\n newEvent.direction === lastEventBeforeSnap.direction;\n\n if (!ignoreWheelEvents) {\n lastEventBeforeSnap = undefined;\n\n if (swiper.params.loop) {\n swiper.loopFix();\n }\n\n let position = swiper.getTranslate() + delta * params.sensitivity;\n const wasBeginning = swiper.isBeginning;\n const wasEnd = swiper.isEnd;\n if (position >= swiper.minTranslate()) position = swiper.minTranslate();\n if (position <= swiper.maxTranslate()) position = swiper.maxTranslate();\n swiper.setTransition(0);\n swiper.setTranslate(position);\n swiper.updateProgress();\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n\n if ((!wasBeginning && swiper.isBeginning) || (!wasEnd && swiper.isEnd)) {\n swiper.updateSlidesClasses();\n }\n\n if (swiper.params.freeMode.sticky) {\n // When wheel scrolling starts with sticky (aka snap) enabled, then detect\n // the end of a momentum scroll by storing recent (N=15?) wheel events.\n // 1. do all N events have decreasing or same (absolute value) delta?\n // 2. did all N events arrive in the last M (M=500?) msecs?\n // 3. does the earliest event have an (absolute value) delta that's\n // at least P (P=1?) larger than the most recent event's delta?\n // 4. does the latest event have a delta that's smaller than Q (Q=6?) pixels?\n // If 1-4 are \"yes\" then we're near the end of a momentum scroll deceleration.\n // Snap immediately and ignore remaining wheel events in this scroll.\n // See comment above for \"remaining wheel events in this scroll\" determination.\n // If 1-4 aren't satisfied, then wait to snap until 500ms after the last event.\n clearTimeout(timeout);\n timeout = undefined;\n\n if (recentWheelEvents.length >= 15) {\n recentWheelEvents.shift(); // only store the last N events\n }\n\n const prevEvent = recentWheelEvents.length ? recentWheelEvents[recentWheelEvents.length - 1] : undefined;\n const firstEvent = recentWheelEvents[0];\n recentWheelEvents.push(newEvent);\n\n if (prevEvent && (newEvent.delta > prevEvent.delta || newEvent.direction !== prevEvent.direction)) {\n // Increasing or reverse-sign delta means the user started scrolling again. Clear the wheel event log.\n recentWheelEvents.splice(0);\n } else if (\n recentWheelEvents.length >= 15 &&\n newEvent.time - firstEvent.time < 500 &&\n firstEvent.delta - newEvent.delta >= 1 &&\n newEvent.delta <= 6\n ) {\n // We're at the end of the deceleration of a momentum scroll, so there's no need\n // to wait for more events. Snap ASAP on the next tick.\n // Also, because there's some remaining momentum we'll bias the snap in the\n // direction of the ongoing scroll because it's better UX for the scroll to snap\n // in the same direction as the scroll instead of reversing to snap. Therefore,\n // if it's already scrolled more than 20% in the current direction, keep going.\n const snapToThreshold = delta > 0 ? 0.8 : 0.2;\n lastEventBeforeSnap = newEvent;\n recentWheelEvents.splice(0);\n timeout = nextTick(() => {\n swiper.slideToClosest(swiper.params.speed, true, undefined, snapToThreshold);\n }, 0); // no delay; move on next tick\n }\n\n if (!timeout) {\n // if we get here, then we haven't detected the end of a momentum scroll, so\n // we'll consider a scroll \"complete\" when there haven't been any wheel events\n // for 500ms.\n timeout = nextTick(() => {\n const snapToThreshold = 0.5;\n lastEventBeforeSnap = newEvent;\n recentWheelEvents.splice(0);\n swiper.slideToClosest(swiper.params.speed, true, undefined, snapToThreshold);\n }, 500);\n }\n } // Emit event\n\n if (!ignoreWheelEvents) emit('scroll', e); // Stop autoplay\n\n if (swiper.params.autoplay && swiper.params.autoplayDisableOnInteraction) swiper.autoplay.stop(); // Return page scroll on edge positions\n\n if (position === swiper.minTranslate() || position === swiper.maxTranslate()) return true;\n }\n }\n\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n return false;\n }\n\n function events(method) {\n let target = swiper.$el;\n\n if (swiper.params.mousewheel.eventsTarget !== 'container') {\n target = $(swiper.params.mousewheel.eventsTarget);\n }\n\n target[method]('mouseenter', handleMouseEnter);\n target[method]('mouseleave', handleMouseLeave);\n target[method]('wheel', handle);\n }\n\n function enable() {\n if (swiper.params.cssMode) {\n swiper.wrapperEl.removeEventListener('wheel', handle);\n return true;\n }\n\n if (swiper.mousewheel.enabled) return false;\n events('on');\n swiper.mousewheel.enabled = true;\n return true;\n }\n\n function disable() {\n if (swiper.params.cssMode) {\n swiper.wrapperEl.addEventListener(event, handle);\n return true;\n }\n\n if (!swiper.mousewheel.enabled) return false;\n events('off');\n swiper.mousewheel.enabled = false;\n return true;\n }\n\n on('init', () => {\n if (!swiper.params.mousewheel.enabled && swiper.params.cssMode) {\n disable();\n }\n\n if (swiper.params.mousewheel.enabled) enable();\n });\n on('destroy', () => {\n if (swiper.params.cssMode) {\n enable();\n }\n\n if (swiper.mousewheel.enabled) disable();\n });\n Object.assign(swiper.mousewheel, {\n enable,\n disable,\n });\n }\n\n function createElementIfNotDefined(swiper, originalParams, params, checkProps) {\n const document = getDocument();\n\n if (swiper.params.createElements) {\n Object.keys(checkProps).forEach((key) => {\n if (!params[key] && params.auto === true) {\n let element = swiper.$el.children(`.${checkProps[key]}`)[0];\n\n if (!element) {\n element = document.createElement('div');\n element.className = checkProps[key];\n swiper.$el.append(element);\n }\n\n params[key] = element;\n originalParams[key] = element;\n }\n });\n }\n\n return params;\n }\n\n function Navigation({swiper, extendParams, on, emit}) {\n extendParams({\n navigation: {\n nextEl: null,\n prevEl: null,\n hideOnClick: false,\n disabledClass: 'swiper-button-disabled',\n hiddenClass: 'swiper-button-hidden',\n lockClass: 'swiper-button-lock',\n },\n });\n swiper.navigation = {\n nextEl: null,\n $nextEl: null,\n prevEl: null,\n $prevEl: null,\n };\n\n function getEl(el) {\n let $el;\n\n if (el) {\n $el = $(el);\n\n if (\n swiper.params.uniqueNavElements &&\n typeof el === 'string' &&\n $el.length > 1 &&\n swiper.$el.find(el).length === 1\n ) {\n $el = swiper.$el.find(el);\n }\n }\n\n return $el;\n }\n\n function toggleEl($el, disabled) {\n const params = swiper.params.navigation;\n\n if ($el && $el.length > 0) {\n $el[disabled ? 'addClass' : 'removeClass'](params.disabledClass);\n if ($el[0] && $el[0].tagName === 'BUTTON') $el[0].disabled = disabled;\n\n if (swiper.params.watchOverflow && swiper.enabled) {\n $el[swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);\n }\n }\n }\n\n function update() {\n // Update Navigation Buttons\n if (swiper.params.loop) return;\n const {$nextEl, $prevEl} = swiper.navigation;\n toggleEl($prevEl, swiper.isBeginning && !swiper.params.rewind);\n toggleEl($nextEl, swiper.isEnd && !swiper.params.rewind);\n }\n\n function onPrevClick(e) {\n e.preventDefault();\n if (swiper.isBeginning && !swiper.params.loop && !swiper.params.rewind) return;\n swiper.slidePrev();\n }\n\n function onNextClick(e) {\n e.preventDefault();\n if (swiper.isEnd && !swiper.params.loop && !swiper.params.rewind) return;\n swiper.slideNext();\n }\n\n function init() {\n const params = swiper.params.navigation;\n swiper.params.navigation = createElementIfNotDefined(\n swiper,\n swiper.originalParams.navigation,\n swiper.params.navigation,\n {\n nextEl: 'swiper-button-next',\n prevEl: 'swiper-button-prev',\n },\n );\n if (!(params.nextEl || params.prevEl)) return;\n const $nextEl = getEl(params.nextEl);\n const $prevEl = getEl(params.prevEl);\n\n if ($nextEl && $nextEl.length > 0) {\n $nextEl.on('click', onNextClick);\n }\n\n if ($prevEl && $prevEl.length > 0) {\n $prevEl.on('click', onPrevClick);\n }\n\n Object.assign(swiper.navigation, {\n $nextEl,\n nextEl: $nextEl && $nextEl[0],\n $prevEl,\n prevEl: $prevEl && $prevEl[0],\n });\n\n if (!swiper.enabled) {\n if ($nextEl) $nextEl.addClass(params.lockClass);\n if ($prevEl) $prevEl.addClass(params.lockClass);\n }\n }\n\n function destroy() {\n const {$nextEl, $prevEl} = swiper.navigation;\n\n if ($nextEl && $nextEl.length) {\n $nextEl.off('click', onNextClick);\n $nextEl.removeClass(swiper.params.navigation.disabledClass);\n }\n\n if ($prevEl && $prevEl.length) {\n $prevEl.off('click', onPrevClick);\n $prevEl.removeClass(swiper.params.navigation.disabledClass);\n }\n }\n\n on('init', () => {\n init();\n update();\n });\n on('toEdge fromEdge lock unlock', () => {\n update();\n });\n on('destroy', () => {\n destroy();\n });\n on('enable disable', () => {\n const {$nextEl, $prevEl} = swiper.navigation;\n\n if ($nextEl) {\n $nextEl[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.navigation.lockClass);\n }\n\n if ($prevEl) {\n $prevEl[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.navigation.lockClass);\n }\n });\n on('click', (_s, e) => {\n const {$nextEl, $prevEl} = swiper.navigation;\n const targetEl = e.target;\n\n if (swiper.params.navigation.hideOnClick && !$(targetEl).is($prevEl) && !$(targetEl).is($nextEl)) {\n if (\n swiper.pagination &&\n swiper.params.pagination &&\n swiper.params.pagination.clickable &&\n (swiper.pagination.el === targetEl || swiper.pagination.el.contains(targetEl))\n )\n return;\n let isHidden;\n\n if ($nextEl) {\n isHidden = $nextEl.hasClass(swiper.params.navigation.hiddenClass);\n } else if ($prevEl) {\n isHidden = $prevEl.hasClass(swiper.params.navigation.hiddenClass);\n }\n\n if (isHidden === true) {\n emit('navigationShow');\n } else {\n emit('navigationHide');\n }\n\n if ($nextEl) {\n $nextEl.toggleClass(swiper.params.navigation.hiddenClass);\n }\n\n if ($prevEl) {\n $prevEl.toggleClass(swiper.params.navigation.hiddenClass);\n }\n }\n });\n Object.assign(swiper.navigation, {\n update,\n init,\n destroy,\n });\n }\n\n function classesToSelector(classes = '') {\n return `.${classes\n .trim()\n .replace(/([\\.:!\\/])/g, '\\\\$1') // eslint-disable-line\n .replace(/ /g, '.')}`;\n }\n\n function Pagination({swiper, extendParams, on, emit}) {\n const pfx = 'swiper-pagination';\n extendParams({\n pagination: {\n el: null,\n bulletElement: 'span',\n clickable: false,\n hideOnClick: false,\n renderBullet: null,\n renderProgressbar: null,\n renderFraction: null,\n renderCustom: null,\n progressbarOpposite: false,\n type: 'bullets',\n // 'bullets' or 'progressbar' or 'fraction' or 'custom'\n dynamicBullets: false,\n dynamicMainBullets: 1,\n formatFractionCurrent: (number) => number,\n formatFractionTotal: (number) => number,\n bulletClass: `${pfx}-bullet`,\n bulletActiveClass: `${pfx}-bullet-active`,\n modifierClass: `${pfx}-`,\n currentClass: `${pfx}-current`,\n totalClass: `${pfx}-total`,\n hiddenClass: `${pfx}-hidden`,\n progressbarFillClass: `${pfx}-progressbar-fill`,\n progressbarOppositeClass: `${pfx}-progressbar-opposite`,\n clickableClass: `${pfx}-clickable`,\n lockClass: `${pfx}-lock`,\n horizontalClass: `${pfx}-horizontal`,\n verticalClass: `${pfx}-vertical`,\n },\n });\n swiper.pagination = {\n el: null,\n $el: null,\n bullets: [],\n };\n let bulletSize;\n let dynamicBulletIndex = 0;\n\n function isPaginationDisabled() {\n return (\n !swiper.params.pagination.el ||\n !swiper.pagination.el ||\n !swiper.pagination.$el ||\n swiper.pagination.$el.length === 0\n );\n }\n\n function setSideBullets($bulletEl, position) {\n const {bulletActiveClass} = swiper.params.pagination;\n $bulletEl[position]()\n .addClass(`${bulletActiveClass}-${position}`)\n [position]()\n .addClass(`${bulletActiveClass}-${position}-${position}`);\n }\n\n function update() {\n // Render || Update Pagination bullets/items\n const rtl = swiper.rtl;\n const params = swiper.params.pagination;\n if (isPaginationDisabled()) return;\n const slidesLength =\n swiper.virtual && swiper.params.virtual.enabled ? swiper.virtual.slides.length : swiper.slides.length;\n const $el = swiper.pagination.$el; // Current/Total\n\n let current;\n const total = swiper.params.loop\n ? Math.ceil((slidesLength - swiper.loopedSlides * 2) / swiper.params.slidesPerGroup)\n : swiper.snapGrid.length;\n\n if (swiper.params.loop) {\n current = Math.ceil((swiper.activeIndex - swiper.loopedSlides) / swiper.params.slidesPerGroup);\n\n if (current > slidesLength - 1 - swiper.loopedSlides * 2) {\n current -= slidesLength - swiper.loopedSlides * 2;\n }\n\n if (current > total - 1) current -= total;\n if (current < 0 && swiper.params.paginationType !== 'bullets') current = total + current;\n } else if (typeof swiper.snapIndex !== 'undefined') {\n current = swiper.snapIndex;\n } else {\n current = swiper.activeIndex || 0;\n } // Types\n\n if (params.type === 'bullets' && swiper.pagination.bullets && swiper.pagination.bullets.length > 0) {\n const bullets = swiper.pagination.bullets;\n let firstIndex;\n let lastIndex;\n let midIndex;\n\n if (params.dynamicBullets) {\n bulletSize = bullets.eq(0)[swiper.isHorizontal() ? 'outerWidth' : 'outerHeight'](true);\n $el.css(swiper.isHorizontal() ? 'width' : 'height', `${bulletSize * (params.dynamicMainBullets + 4)}px`);\n\n if (params.dynamicMainBullets > 1 && swiper.previousIndex !== undefined) {\n dynamicBulletIndex += current - (swiper.previousIndex - swiper.loopedSlides || 0);\n\n if (dynamicBulletIndex > params.dynamicMainBullets - 1) {\n dynamicBulletIndex = params.dynamicMainBullets - 1;\n } else if (dynamicBulletIndex < 0) {\n dynamicBulletIndex = 0;\n }\n }\n\n firstIndex = Math.max(current - dynamicBulletIndex, 0);\n lastIndex = firstIndex + (Math.min(bullets.length, params.dynamicMainBullets) - 1);\n midIndex = (lastIndex + firstIndex) / 2;\n }\n\n bullets.removeClass(\n ['', '-next', '-next-next', '-prev', '-prev-prev', '-main']\n .map((suffix) => `${params.bulletActiveClass}${suffix}`)\n .join(' '),\n );\n\n if ($el.length > 1) {\n bullets.each((bullet) => {\n const $bullet = $(bullet);\n const bulletIndex = $bullet.index();\n\n if (bulletIndex === current) {\n $bullet.addClass(params.bulletActiveClass);\n }\n\n if (params.dynamicBullets) {\n if (bulletIndex >= firstIndex && bulletIndex <= lastIndex) {\n $bullet.addClass(`${params.bulletActiveClass}-main`);\n }\n\n if (bulletIndex === firstIndex) {\n setSideBullets($bullet, 'prev');\n }\n\n if (bulletIndex === lastIndex) {\n setSideBullets($bullet, 'next');\n }\n }\n });\n } else {\n const $bullet = bullets.eq(current);\n const bulletIndex = $bullet.index();\n $bullet.addClass(params.bulletActiveClass);\n\n if (params.dynamicBullets) {\n const $firstDisplayedBullet = bullets.eq(firstIndex);\n const $lastDisplayedBullet = bullets.eq(lastIndex);\n\n for (let i = firstIndex; i <= lastIndex; i += 1) {\n bullets.eq(i).addClass(`${params.bulletActiveClass}-main`);\n }\n\n if (swiper.params.loop) {\n if (bulletIndex >= bullets.length) {\n for (let i = params.dynamicMainBullets; i >= 0; i -= 1) {\n bullets.eq(bullets.length - i).addClass(`${params.bulletActiveClass}-main`);\n }\n\n bullets\n .eq(bullets.length - params.dynamicMainBullets - 1)\n .addClass(`${params.bulletActiveClass}-prev`);\n } else {\n setSideBullets($firstDisplayedBullet, 'prev');\n setSideBullets($lastDisplayedBullet, 'next');\n }\n } else {\n setSideBullets($firstDisplayedBullet, 'prev');\n setSideBullets($lastDisplayedBullet, 'next');\n }\n }\n }\n\n if (params.dynamicBullets) {\n const dynamicBulletsLength = Math.min(bullets.length, params.dynamicMainBullets + 4);\n const bulletsOffset = (bulletSize * dynamicBulletsLength - bulletSize) / 2 - midIndex * bulletSize;\n const offsetProp = rtl ? 'right' : 'left';\n bullets.css(swiper.isHorizontal() ? offsetProp : 'top', `${bulletsOffset}px`);\n }\n }\n\n if (params.type === 'fraction') {\n $el.find(classesToSelector(params.currentClass)).text(params.formatFractionCurrent(current + 1));\n $el.find(classesToSelector(params.totalClass)).text(params.formatFractionTotal(total));\n }\n\n if (params.type === 'progressbar') {\n let progressbarDirection;\n\n if (params.progressbarOpposite) {\n progressbarDirection = swiper.isHorizontal() ? 'vertical' : 'horizontal';\n } else {\n progressbarDirection = swiper.isHorizontal() ? 'horizontal' : 'vertical';\n }\n\n const scale = (current + 1) / total;\n let scaleX = 1;\n let scaleY = 1;\n\n if (progressbarDirection === 'horizontal') {\n scaleX = scale;\n } else {\n scaleY = scale;\n }\n\n $el\n .find(classesToSelector(params.progressbarFillClass))\n .transform(`translate3d(0,0,0) scaleX(${scaleX}) scaleY(${scaleY})`)\n .transition(swiper.params.speed);\n }\n\n if (params.type === 'custom' && params.renderCustom) {\n $el.html(params.renderCustom(swiper, current + 1, total));\n emit('paginationRender', $el[0]);\n } else {\n emit('paginationUpdate', $el[0]);\n }\n\n if (swiper.params.watchOverflow && swiper.enabled) {\n $el[swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);\n }\n }\n\n function render() {\n // Render Container\n const params = swiper.params.pagination;\n if (isPaginationDisabled()) return;\n const slidesLength =\n swiper.virtual && swiper.params.virtual.enabled ? swiper.virtual.slides.length : swiper.slides.length;\n const $el = swiper.pagination.$el;\n let paginationHTML = '';\n\n if (params.type === 'bullets') {\n let numberOfBullets = swiper.params.loop\n ? Math.ceil((slidesLength - swiper.loopedSlides * 2) / swiper.params.slidesPerGroup)\n : swiper.snapGrid.length;\n\n if (\n swiper.params.freeMode &&\n swiper.params.freeMode.enabled &&\n !swiper.params.loop &&\n numberOfBullets > slidesLength\n ) {\n numberOfBullets = slidesLength;\n }\n\n for (let i = 0; i < numberOfBullets; i += 1) {\n if (params.renderBullet) {\n paginationHTML += params.renderBullet.call(swiper, i, params.bulletClass);\n } else {\n paginationHTML += `<${params.bulletElement} class=\"${params.bulletClass}\">`;\n }\n }\n\n $el.html(paginationHTML);\n swiper.pagination.bullets = $el.find(classesToSelector(params.bulletClass));\n }\n\n if (params.type === 'fraction') {\n if (params.renderFraction) {\n paginationHTML = params.renderFraction.call(swiper, params.currentClass, params.totalClass);\n } else {\n paginationHTML =\n `` + ' / ' + ``;\n }\n\n $el.html(paginationHTML);\n }\n\n if (params.type === 'progressbar') {\n if (params.renderProgressbar) {\n paginationHTML = params.renderProgressbar.call(swiper, params.progressbarFillClass);\n } else {\n paginationHTML = ``;\n }\n\n $el.html(paginationHTML);\n }\n\n if (params.type !== 'custom') {\n emit('paginationRender', swiper.pagination.$el[0]);\n }\n }\n\n function init() {\n swiper.params.pagination = createElementIfNotDefined(\n swiper,\n swiper.originalParams.pagination,\n swiper.params.pagination,\n {\n el: 'swiper-pagination',\n },\n );\n const params = swiper.params.pagination;\n if (!params.el) return;\n let $el = $(params.el);\n if ($el.length === 0) return;\n\n if (swiper.params.uniqueNavElements && typeof params.el === 'string' && $el.length > 1) {\n $el = swiper.$el.find(params.el); // check if it belongs to another nested Swiper\n\n if ($el.length > 1) {\n $el = $el.filter((el) => {\n if ($(el).parents('.swiper')[0] !== swiper.el) return false;\n return true;\n });\n }\n }\n\n if (params.type === 'bullets' && params.clickable) {\n $el.addClass(params.clickableClass);\n }\n\n $el.addClass(params.modifierClass + params.type);\n $el.addClass(params.modifierClass + swiper.params.direction);\n\n if (params.type === 'bullets' && params.dynamicBullets) {\n $el.addClass(`${params.modifierClass}${params.type}-dynamic`);\n dynamicBulletIndex = 0;\n\n if (params.dynamicMainBullets < 1) {\n params.dynamicMainBullets = 1;\n }\n }\n\n if (params.type === 'progressbar' && params.progressbarOpposite) {\n $el.addClass(params.progressbarOppositeClass);\n }\n\n if (params.clickable) {\n $el.on('click', classesToSelector(params.bulletClass), function onClick(e) {\n e.preventDefault();\n let index = $(this).index() * swiper.params.slidesPerGroup;\n if (swiper.params.loop) index += swiper.loopedSlides;\n swiper.slideTo(index);\n });\n }\n\n Object.assign(swiper.pagination, {\n $el,\n el: $el[0],\n });\n\n if (!swiper.enabled) {\n $el.addClass(params.lockClass);\n }\n }\n\n function destroy() {\n const params = swiper.params.pagination;\n if (isPaginationDisabled()) return;\n const $el = swiper.pagination.$el;\n $el.removeClass(params.hiddenClass);\n $el.removeClass(params.modifierClass + params.type);\n $el.removeClass(params.modifierClass + swiper.params.direction);\n if (swiper.pagination.bullets && swiper.pagination.bullets.removeClass)\n swiper.pagination.bullets.removeClass(params.bulletActiveClass);\n\n if (params.clickable) {\n $el.off('click', classesToSelector(params.bulletClass));\n }\n }\n\n on('init', () => {\n init();\n render();\n update();\n });\n on('activeIndexChange', () => {\n if (swiper.params.loop) {\n update();\n } else if (typeof swiper.snapIndex === 'undefined') {\n update();\n }\n });\n on('snapIndexChange', () => {\n if (!swiper.params.loop) {\n update();\n }\n });\n on('slidesLengthChange', () => {\n if (swiper.params.loop) {\n render();\n update();\n }\n });\n on('snapGridLengthChange', () => {\n if (!swiper.params.loop) {\n render();\n update();\n }\n });\n on('destroy', () => {\n destroy();\n });\n on('enable disable', () => {\n const {$el} = swiper.pagination;\n\n if ($el) {\n $el[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.pagination.lockClass);\n }\n });\n on('lock unlock', () => {\n update();\n });\n on('click', (_s, e) => {\n const targetEl = e.target;\n const {$el} = swiper.pagination;\n\n if (\n swiper.params.pagination.el &&\n swiper.params.pagination.hideOnClick &&\n $el.length > 0 &&\n !$(targetEl).hasClass(swiper.params.pagination.bulletClass)\n ) {\n if (\n swiper.navigation &&\n ((swiper.navigation.nextEl && targetEl === swiper.navigation.nextEl) ||\n (swiper.navigation.prevEl && targetEl === swiper.navigation.prevEl))\n )\n return;\n const isHidden = $el.hasClass(swiper.params.pagination.hiddenClass);\n\n if (isHidden === true) {\n emit('paginationShow');\n } else {\n emit('paginationHide');\n }\n\n $el.toggleClass(swiper.params.pagination.hiddenClass);\n }\n });\n Object.assign(swiper.pagination, {\n render,\n update,\n init,\n destroy,\n });\n }\n\n function Scrollbar({swiper, extendParams, on, emit}) {\n const document = getDocument();\n let isTouched = false;\n let timeout = null;\n let dragTimeout = null;\n let dragStartPos;\n let dragSize;\n let trackSize;\n let divider;\n extendParams({\n scrollbar: {\n el: null,\n dragSize: 'auto',\n hide: false,\n draggable: false,\n snapOnRelease: true,\n lockClass: 'swiper-scrollbar-lock',\n dragClass: 'swiper-scrollbar-drag',\n },\n });\n swiper.scrollbar = {\n el: null,\n dragEl: null,\n $el: null,\n $dragEl: null,\n };\n\n function setTranslate() {\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return;\n const {scrollbar, rtlTranslate: rtl, progress} = swiper;\n const {$dragEl, $el} = scrollbar;\n const params = swiper.params.scrollbar;\n let newSize = dragSize;\n let newPos = (trackSize - dragSize) * progress;\n\n if (rtl) {\n newPos = -newPos;\n\n if (newPos > 0) {\n newSize = dragSize - newPos;\n newPos = 0;\n } else if (-newPos + dragSize > trackSize) {\n newSize = trackSize + newPos;\n }\n } else if (newPos < 0) {\n newSize = dragSize + newPos;\n newPos = 0;\n } else if (newPos + dragSize > trackSize) {\n newSize = trackSize - newPos;\n }\n\n if (swiper.isHorizontal()) {\n $dragEl.transform(`translate3d(${newPos}px, 0, 0)`);\n $dragEl[0].style.width = `${newSize}px`;\n } else {\n $dragEl.transform(`translate3d(0px, ${newPos}px, 0)`);\n $dragEl[0].style.height = `${newSize}px`;\n }\n\n if (params.hide) {\n clearTimeout(timeout);\n $el[0].style.opacity = 1;\n timeout = setTimeout(() => {\n $el[0].style.opacity = 0;\n $el.transition(400);\n }, 1000);\n }\n }\n\n function setTransition(duration) {\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return;\n swiper.scrollbar.$dragEl.transition(duration);\n }\n\n function updateSize() {\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return;\n const {scrollbar} = swiper;\n const {$dragEl, $el} = scrollbar;\n $dragEl[0].style.width = '';\n $dragEl[0].style.height = '';\n trackSize = swiper.isHorizontal() ? $el[0].offsetWidth : $el[0].offsetHeight;\n divider =\n swiper.size /\n (swiper.virtualSize +\n swiper.params.slidesOffsetBefore -\n (swiper.params.centeredSlides ? swiper.snapGrid[0] : 0));\n\n if (swiper.params.scrollbar.dragSize === 'auto') {\n dragSize = trackSize * divider;\n } else {\n dragSize = parseInt(swiper.params.scrollbar.dragSize, 10);\n }\n\n if (swiper.isHorizontal()) {\n $dragEl[0].style.width = `${dragSize}px`;\n } else {\n $dragEl[0].style.height = `${dragSize}px`;\n }\n\n if (divider >= 1) {\n $el[0].style.display = 'none';\n } else {\n $el[0].style.display = '';\n }\n\n if (swiper.params.scrollbar.hide) {\n $el[0].style.opacity = 0;\n }\n\n if (swiper.params.watchOverflow && swiper.enabled) {\n scrollbar.$el[swiper.isLocked ? 'addClass' : 'removeClass'](swiper.params.scrollbar.lockClass);\n }\n }\n\n function getPointerPosition(e) {\n if (swiper.isHorizontal()) {\n return e.type === 'touchstart' || e.type === 'touchmove' ? e.targetTouches[0].clientX : e.clientX;\n }\n\n return e.type === 'touchstart' || e.type === 'touchmove' ? e.targetTouches[0].clientY : e.clientY;\n }\n\n function setDragPosition(e) {\n const {scrollbar, rtlTranslate: rtl} = swiper;\n const {$el} = scrollbar;\n let positionRatio;\n positionRatio =\n (getPointerPosition(e) -\n $el.offset()[swiper.isHorizontal() ? 'left' : 'top'] -\n (dragStartPos !== null ? dragStartPos : dragSize / 2)) /\n (trackSize - dragSize);\n positionRatio = Math.max(Math.min(positionRatio, 1), 0);\n\n if (rtl) {\n positionRatio = 1 - positionRatio;\n }\n\n const position = swiper.minTranslate() + (swiper.maxTranslate() - swiper.minTranslate()) * positionRatio;\n swiper.updateProgress(position);\n swiper.setTranslate(position);\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n\n function onDragStart(e) {\n const params = swiper.params.scrollbar;\n const {scrollbar, $wrapperEl} = swiper;\n const {$el, $dragEl} = scrollbar;\n isTouched = true;\n dragStartPos =\n e.target === $dragEl[0] || e.target === $dragEl\n ? getPointerPosition(e) - e.target.getBoundingClientRect()[swiper.isHorizontal() ? 'left' : 'top']\n : null;\n e.preventDefault();\n e.stopPropagation();\n $wrapperEl.transition(100);\n $dragEl.transition(100);\n setDragPosition(e);\n clearTimeout(dragTimeout);\n $el.transition(0);\n\n if (params.hide) {\n $el.css('opacity', 1);\n }\n\n if (swiper.params.cssMode) {\n swiper.$wrapperEl.css('scroll-snap-type', 'none');\n }\n\n emit('scrollbarDragStart', e);\n }\n\n function onDragMove(e) {\n const {scrollbar, $wrapperEl} = swiper;\n const {$el, $dragEl} = scrollbar;\n if (!isTouched) return;\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n setDragPosition(e);\n $wrapperEl.transition(0);\n $el.transition(0);\n $dragEl.transition(0);\n emit('scrollbarDragMove', e);\n }\n\n function onDragEnd(e) {\n const params = swiper.params.scrollbar;\n const {scrollbar, $wrapperEl} = swiper;\n const {$el} = scrollbar;\n if (!isTouched) return;\n isTouched = false;\n\n if (swiper.params.cssMode) {\n swiper.$wrapperEl.css('scroll-snap-type', '');\n $wrapperEl.transition('');\n }\n\n if (params.hide) {\n clearTimeout(dragTimeout);\n dragTimeout = nextTick(() => {\n $el.css('opacity', 0);\n $el.transition(400);\n }, 1000);\n }\n\n emit('scrollbarDragEnd', e);\n\n if (params.snapOnRelease) {\n swiper.slideToClosest();\n }\n }\n\n function events(method) {\n const {scrollbar, touchEventsTouch, touchEventsDesktop, params, support} = swiper;\n const $el = scrollbar.$el;\n const target = $el[0];\n const activeListener =\n support.passiveListener && params.passiveListeners\n ? {\n passive: false,\n capture: false,\n }\n : false;\n const passiveListener =\n support.passiveListener && params.passiveListeners\n ? {\n passive: true,\n capture: false,\n }\n : false;\n if (!target) return;\n const eventMethod = method === 'on' ? 'addEventListener' : 'removeEventListener';\n\n if (!support.touch) {\n target[eventMethod](touchEventsDesktop.start, onDragStart, activeListener);\n document[eventMethod](touchEventsDesktop.move, onDragMove, activeListener);\n document[eventMethod](touchEventsDesktop.end, onDragEnd, passiveListener);\n } else {\n target[eventMethod](touchEventsTouch.start, onDragStart, activeListener);\n target[eventMethod](touchEventsTouch.move, onDragMove, activeListener);\n target[eventMethod](touchEventsTouch.end, onDragEnd, passiveListener);\n }\n }\n\n function enableDraggable() {\n if (!swiper.params.scrollbar.el) return;\n events('on');\n }\n\n function disableDraggable() {\n if (!swiper.params.scrollbar.el) return;\n events('off');\n }\n\n function init() {\n const {scrollbar, $el: $swiperEl} = swiper;\n swiper.params.scrollbar = createElementIfNotDefined(\n swiper,\n swiper.originalParams.scrollbar,\n swiper.params.scrollbar,\n {\n el: 'swiper-scrollbar',\n },\n );\n const params = swiper.params.scrollbar;\n if (!params.el) return;\n let $el = $(params.el);\n\n if (\n swiper.params.uniqueNavElements &&\n typeof params.el === 'string' &&\n $el.length > 1 &&\n $swiperEl.find(params.el).length === 1\n ) {\n $el = $swiperEl.find(params.el);\n }\n\n let $dragEl = $el.find(`.${swiper.params.scrollbar.dragClass}`);\n\n if ($dragEl.length === 0) {\n $dragEl = $(`
    `);\n $el.append($dragEl);\n }\n\n Object.assign(scrollbar, {\n $el,\n el: $el[0],\n $dragEl,\n dragEl: $dragEl[0],\n });\n\n if (params.draggable) {\n enableDraggable();\n }\n\n if ($el) {\n $el[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.scrollbar.lockClass);\n }\n }\n\n function destroy() {\n disableDraggable();\n }\n\n on('init', () => {\n init();\n updateSize();\n setTranslate();\n });\n on('update resize observerUpdate lock unlock', () => {\n updateSize();\n });\n on('setTranslate', () => {\n setTranslate();\n });\n on('setTransition', (_s, duration) => {\n setTransition(duration);\n });\n on('enable disable', () => {\n const {$el} = swiper.scrollbar;\n\n if ($el) {\n $el[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.scrollbar.lockClass);\n }\n });\n on('destroy', () => {\n destroy();\n });\n Object.assign(swiper.scrollbar, {\n updateSize,\n setTranslate,\n init,\n destroy,\n });\n }\n\n function Parallax({swiper, extendParams, on}) {\n extendParams({\n parallax: {\n enabled: false,\n },\n });\n\n const setTransform = (el, progress) => {\n const {rtl} = swiper;\n const $el = $(el);\n const rtlFactor = rtl ? -1 : 1;\n const p = $el.attr('data-swiper-parallax') || '0';\n let x = $el.attr('data-swiper-parallax-x');\n let y = $el.attr('data-swiper-parallax-y');\n const scale = $el.attr('data-swiper-parallax-scale');\n const opacity = $el.attr('data-swiper-parallax-opacity');\n\n if (x || y) {\n x = x || '0';\n y = y || '0';\n } else if (swiper.isHorizontal()) {\n x = p;\n y = '0';\n } else {\n y = p;\n x = '0';\n }\n\n if (x.indexOf('%') >= 0) {\n x = `${parseInt(x, 10) * progress * rtlFactor}%`;\n } else {\n x = `${x * progress * rtlFactor}px`;\n }\n\n if (y.indexOf('%') >= 0) {\n y = `${parseInt(y, 10) * progress}%`;\n } else {\n y = `${y * progress}px`;\n }\n\n if (typeof opacity !== 'undefined' && opacity !== null) {\n const currentOpacity = opacity - (opacity - 1) * (1 - Math.abs(progress));\n $el[0].style.opacity = currentOpacity;\n }\n\n if (typeof scale === 'undefined' || scale === null) {\n $el.transform(`translate3d(${x}, ${y}, 0px)`);\n } else {\n const currentScale = scale - (scale - 1) * (1 - Math.abs(progress));\n $el.transform(`translate3d(${x}, ${y}, 0px) scale(${currentScale})`);\n }\n };\n\n const setTranslate = () => {\n const {$el, slides, progress, snapGrid} = swiper;\n $el\n .children(\n '[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]',\n )\n .each((el) => {\n setTransform(el, progress);\n });\n slides.each((slideEl, slideIndex) => {\n let slideProgress = slideEl.progress;\n\n if (swiper.params.slidesPerGroup > 1 && swiper.params.slidesPerView !== 'auto') {\n slideProgress += Math.ceil(slideIndex / 2) - progress * (snapGrid.length - 1);\n }\n\n slideProgress = Math.min(Math.max(slideProgress, -1), 1);\n $(slideEl)\n .find(\n '[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]',\n )\n .each((el) => {\n setTransform(el, slideProgress);\n });\n });\n };\n\n const setTransition = (duration = swiper.params.speed) => {\n const {$el} = swiper;\n $el\n .find(\n '[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]',\n )\n .each((parallaxEl) => {\n const $parallaxEl = $(parallaxEl);\n let parallaxDuration = parseInt($parallaxEl.attr('data-swiper-parallax-duration'), 10) || duration;\n if (duration === 0) parallaxDuration = 0;\n $parallaxEl.transition(parallaxDuration);\n });\n };\n\n on('beforeInit', () => {\n if (!swiper.params.parallax.enabled) return;\n swiper.params.watchSlidesProgress = true;\n swiper.originalParams.watchSlidesProgress = true;\n });\n on('init', () => {\n if (!swiper.params.parallax.enabled) return;\n setTranslate();\n });\n on('setTranslate', () => {\n if (!swiper.params.parallax.enabled) return;\n setTranslate();\n });\n on('setTransition', (_swiper, duration) => {\n if (!swiper.params.parallax.enabled) return;\n setTransition(duration);\n });\n }\n\n function Zoom({swiper, extendParams, on, emit}) {\n const window = getWindow();\n extendParams({\n zoom: {\n enabled: false,\n maxRatio: 3,\n minRatio: 1,\n toggle: true,\n containerClass: 'swiper-zoom-container',\n zoomedSlideClass: 'swiper-slide-zoomed',\n },\n });\n swiper.zoom = {\n enabled: false,\n };\n let currentScale = 1;\n let isScaling = false;\n let gesturesEnabled;\n let fakeGestureTouched;\n let fakeGestureMoved;\n const gesture = {\n $slideEl: undefined,\n slideWidth: undefined,\n slideHeight: undefined,\n $imageEl: undefined,\n $imageWrapEl: undefined,\n maxRatio: 3,\n };\n const image = {\n isTouched: undefined,\n isMoved: undefined,\n currentX: undefined,\n currentY: undefined,\n minX: undefined,\n minY: undefined,\n maxX: undefined,\n maxY: undefined,\n width: undefined,\n height: undefined,\n startX: undefined,\n startY: undefined,\n touchesStart: {},\n touchesCurrent: {},\n };\n const velocity = {\n x: undefined,\n y: undefined,\n prevPositionX: undefined,\n prevPositionY: undefined,\n prevTime: undefined,\n };\n let scale = 1;\n Object.defineProperty(swiper.zoom, 'scale', {\n get() {\n return scale;\n },\n\n set(value) {\n if (scale !== value) {\n const imageEl = gesture.$imageEl ? gesture.$imageEl[0] : undefined;\n const slideEl = gesture.$slideEl ? gesture.$slideEl[0] : undefined;\n emit('zoomChange', value, imageEl, slideEl);\n }\n\n scale = value;\n },\n });\n\n function getDistanceBetweenTouches(e) {\n if (e.targetTouches.length < 2) return 1;\n const x1 = e.targetTouches[0].pageX;\n const y1 = e.targetTouches[0].pageY;\n const x2 = e.targetTouches[1].pageX;\n const y2 = e.targetTouches[1].pageY;\n const distance = Math.sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2);\n return distance;\n } // Events\n\n function onGestureStart(e) {\n const support = swiper.support;\n const params = swiper.params.zoom;\n fakeGestureTouched = false;\n fakeGestureMoved = false;\n\n if (!support.gestures) {\n if (e.type !== 'touchstart' || (e.type === 'touchstart' && e.targetTouches.length < 2)) {\n return;\n }\n\n fakeGestureTouched = true;\n gesture.scaleStart = getDistanceBetweenTouches(e);\n }\n\n if (!gesture.$slideEl || !gesture.$slideEl.length) {\n gesture.$slideEl = $(e.target).closest(`.${swiper.params.slideClass}`);\n if (gesture.$slideEl.length === 0) gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);\n gesture.$imageEl = gesture.$slideEl\n .find(`.${params.containerClass}`)\n .eq(0)\n .find('picture, img, svg, canvas, .swiper-zoom-target')\n .eq(0);\n gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`);\n gesture.maxRatio = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n\n if (gesture.$imageWrapEl.length === 0) {\n gesture.$imageEl = undefined;\n return;\n }\n }\n\n if (gesture.$imageEl) {\n gesture.$imageEl.transition(0);\n }\n\n isScaling = true;\n }\n\n function onGestureChange(e) {\n const support = swiper.support;\n const params = swiper.params.zoom;\n const zoom = swiper.zoom;\n\n if (!support.gestures) {\n if (e.type !== 'touchmove' || (e.type === 'touchmove' && e.targetTouches.length < 2)) {\n return;\n }\n\n fakeGestureMoved = true;\n gesture.scaleMove = getDistanceBetweenTouches(e);\n }\n\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) {\n if (e.type === 'gesturechange') onGestureStart(e);\n return;\n }\n\n if (support.gestures) {\n zoom.scale = e.scale * currentScale;\n } else {\n zoom.scale = (gesture.scaleMove / gesture.scaleStart) * currentScale;\n }\n\n if (zoom.scale > gesture.maxRatio) {\n zoom.scale = gesture.maxRatio - 1 + (zoom.scale - gesture.maxRatio + 1) ** 0.5;\n }\n\n if (zoom.scale < params.minRatio) {\n zoom.scale = params.minRatio + 1 - (params.minRatio - zoom.scale + 1) ** 0.5;\n }\n\n gesture.$imageEl.transform(`translate3d(0,0,0) scale(${zoom.scale})`);\n }\n\n function onGestureEnd(e) {\n const device = swiper.device;\n const support = swiper.support;\n const params = swiper.params.zoom;\n const zoom = swiper.zoom;\n\n if (!support.gestures) {\n if (!fakeGestureTouched || !fakeGestureMoved) {\n return;\n }\n\n if (e.type !== 'touchend' || (e.type === 'touchend' && e.changedTouches.length < 2 && !device.android)) {\n return;\n }\n\n fakeGestureTouched = false;\n fakeGestureMoved = false;\n }\n\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n zoom.scale = Math.max(Math.min(zoom.scale, gesture.maxRatio), params.minRatio);\n gesture.$imageEl.transition(swiper.params.speed).transform(`translate3d(0,0,0) scale(${zoom.scale})`);\n currentScale = zoom.scale;\n isScaling = false;\n if (zoom.scale === 1) gesture.$slideEl = undefined;\n }\n\n function onTouchStart(e) {\n const device = swiper.device;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n if (image.isTouched) return;\n if (device.android && e.cancelable) e.preventDefault();\n image.isTouched = true;\n image.touchesStart.x = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX;\n image.touchesStart.y = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY;\n }\n\n function onTouchMove(e) {\n const zoom = swiper.zoom;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n swiper.allowClick = false;\n if (!image.isTouched || !gesture.$slideEl) return;\n\n if (!image.isMoved) {\n image.width = gesture.$imageEl[0].offsetWidth;\n image.height = gesture.$imageEl[0].offsetHeight;\n image.startX = getTranslate(gesture.$imageWrapEl[0], 'x') || 0;\n image.startY = getTranslate(gesture.$imageWrapEl[0], 'y') || 0;\n gesture.slideWidth = gesture.$slideEl[0].offsetWidth;\n gesture.slideHeight = gesture.$slideEl[0].offsetHeight;\n gesture.$imageWrapEl.transition(0);\n } // Define if we need image drag\n\n const scaledWidth = image.width * zoom.scale;\n const scaledHeight = image.height * zoom.scale;\n if (scaledWidth < gesture.slideWidth && scaledHeight < gesture.slideHeight) return;\n image.minX = Math.min(gesture.slideWidth / 2 - scaledWidth / 2, 0);\n image.maxX = -image.minX;\n image.minY = Math.min(gesture.slideHeight / 2 - scaledHeight / 2, 0);\n image.maxY = -image.minY;\n image.touchesCurrent.x = e.type === 'touchmove' ? e.targetTouches[0].pageX : e.pageX;\n image.touchesCurrent.y = e.type === 'touchmove' ? e.targetTouches[0].pageY : e.pageY;\n\n if (!image.isMoved && !isScaling) {\n if (\n swiper.isHorizontal() &&\n ((Math.floor(image.minX) === Math.floor(image.startX) && image.touchesCurrent.x < image.touchesStart.x) ||\n (Math.floor(image.maxX) === Math.floor(image.startX) && image.touchesCurrent.x > image.touchesStart.x))\n ) {\n image.isTouched = false;\n return;\n }\n\n if (\n !swiper.isHorizontal() &&\n ((Math.floor(image.minY) === Math.floor(image.startY) && image.touchesCurrent.y < image.touchesStart.y) ||\n (Math.floor(image.maxY) === Math.floor(image.startY) && image.touchesCurrent.y > image.touchesStart.y))\n ) {\n image.isTouched = false;\n return;\n }\n }\n\n if (e.cancelable) {\n e.preventDefault();\n }\n\n e.stopPropagation();\n image.isMoved = true;\n image.currentX = image.touchesCurrent.x - image.touchesStart.x + image.startX;\n image.currentY = image.touchesCurrent.y - image.touchesStart.y + image.startY;\n\n if (image.currentX < image.minX) {\n image.currentX = image.minX + 1 - (image.minX - image.currentX + 1) ** 0.8;\n }\n\n if (image.currentX > image.maxX) {\n image.currentX = image.maxX - 1 + (image.currentX - image.maxX + 1) ** 0.8;\n }\n\n if (image.currentY < image.minY) {\n image.currentY = image.minY + 1 - (image.minY - image.currentY + 1) ** 0.8;\n }\n\n if (image.currentY > image.maxY) {\n image.currentY = image.maxY - 1 + (image.currentY - image.maxY + 1) ** 0.8;\n } // Velocity\n\n if (!velocity.prevPositionX) velocity.prevPositionX = image.touchesCurrent.x;\n if (!velocity.prevPositionY) velocity.prevPositionY = image.touchesCurrent.y;\n if (!velocity.prevTime) velocity.prevTime = Date.now();\n velocity.x = (image.touchesCurrent.x - velocity.prevPositionX) / (Date.now() - velocity.prevTime) / 2;\n velocity.y = (image.touchesCurrent.y - velocity.prevPositionY) / (Date.now() - velocity.prevTime) / 2;\n if (Math.abs(image.touchesCurrent.x - velocity.prevPositionX) < 2) velocity.x = 0;\n if (Math.abs(image.touchesCurrent.y - velocity.prevPositionY) < 2) velocity.y = 0;\n velocity.prevPositionX = image.touchesCurrent.x;\n velocity.prevPositionY = image.touchesCurrent.y;\n velocity.prevTime = Date.now();\n gesture.$imageWrapEl.transform(`translate3d(${image.currentX}px, ${image.currentY}px,0)`);\n }\n\n function onTouchEnd() {\n const zoom = swiper.zoom;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n\n if (!image.isTouched || !image.isMoved) {\n image.isTouched = false;\n image.isMoved = false;\n return;\n }\n\n image.isTouched = false;\n image.isMoved = false;\n let momentumDurationX = 300;\n let momentumDurationY = 300;\n const momentumDistanceX = velocity.x * momentumDurationX;\n const newPositionX = image.currentX + momentumDistanceX;\n const momentumDistanceY = velocity.y * momentumDurationY;\n const newPositionY = image.currentY + momentumDistanceY; // Fix duration\n\n if (velocity.x !== 0) momentumDurationX = Math.abs((newPositionX - image.currentX) / velocity.x);\n if (velocity.y !== 0) momentumDurationY = Math.abs((newPositionY - image.currentY) / velocity.y);\n const momentumDuration = Math.max(momentumDurationX, momentumDurationY);\n image.currentX = newPositionX;\n image.currentY = newPositionY; // Define if we need image drag\n\n const scaledWidth = image.width * zoom.scale;\n const scaledHeight = image.height * zoom.scale;\n image.minX = Math.min(gesture.slideWidth / 2 - scaledWidth / 2, 0);\n image.maxX = -image.minX;\n image.minY = Math.min(gesture.slideHeight / 2 - scaledHeight / 2, 0);\n image.maxY = -image.minY;\n image.currentX = Math.max(Math.min(image.currentX, image.maxX), image.minX);\n image.currentY = Math.max(Math.min(image.currentY, image.maxY), image.minY);\n gesture.$imageWrapEl\n .transition(momentumDuration)\n .transform(`translate3d(${image.currentX}px, ${image.currentY}px,0)`);\n }\n\n function onTransitionEnd() {\n const zoom = swiper.zoom;\n\n if (gesture.$slideEl && swiper.previousIndex !== swiper.activeIndex) {\n if (gesture.$imageEl) {\n gesture.$imageEl.transform('translate3d(0,0,0) scale(1)');\n }\n\n if (gesture.$imageWrapEl) {\n gesture.$imageWrapEl.transform('translate3d(0,0,0)');\n }\n\n zoom.scale = 1;\n currentScale = 1;\n gesture.$slideEl = undefined;\n gesture.$imageEl = undefined;\n gesture.$imageWrapEl = undefined;\n }\n }\n\n function zoomIn(e) {\n const zoom = swiper.zoom;\n const params = swiper.params.zoom;\n\n if (!gesture.$slideEl) {\n if (e && e.target) {\n gesture.$slideEl = $(e.target).closest(`.${swiper.params.slideClass}`);\n }\n\n if (!gesture.$slideEl) {\n if (swiper.params.virtual && swiper.params.virtual.enabled && swiper.virtual) {\n gesture.$slideEl = swiper.$wrapperEl.children(`.${swiper.params.slideActiveClass}`);\n } else {\n gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);\n }\n }\n\n gesture.$imageEl = gesture.$slideEl\n .find(`.${params.containerClass}`)\n .eq(0)\n .find('picture, img, svg, canvas, .swiper-zoom-target')\n .eq(0);\n gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`);\n }\n\n if (\n !gesture.$imageEl ||\n gesture.$imageEl.length === 0 ||\n !gesture.$imageWrapEl ||\n gesture.$imageWrapEl.length === 0\n )\n return;\n\n if (swiper.params.cssMode) {\n swiper.wrapperEl.style.overflow = 'hidden';\n swiper.wrapperEl.style.touchAction = 'none';\n }\n\n gesture.$slideEl.addClass(`${params.zoomedSlideClass}`);\n let touchX;\n let touchY;\n let offsetX;\n let offsetY;\n let diffX;\n let diffY;\n let translateX;\n let translateY;\n let imageWidth;\n let imageHeight;\n let scaledWidth;\n let scaledHeight;\n let translateMinX;\n let translateMinY;\n let translateMaxX;\n let translateMaxY;\n let slideWidth;\n let slideHeight;\n\n if (typeof image.touchesStart.x === 'undefined' && e) {\n touchX = e.type === 'touchend' ? e.changedTouches[0].pageX : e.pageX;\n touchY = e.type === 'touchend' ? e.changedTouches[0].pageY : e.pageY;\n } else {\n touchX = image.touchesStart.x;\n touchY = image.touchesStart.y;\n }\n\n zoom.scale = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n currentScale = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n\n if (e) {\n slideWidth = gesture.$slideEl[0].offsetWidth;\n slideHeight = gesture.$slideEl[0].offsetHeight;\n offsetX = gesture.$slideEl.offset().left + window.scrollX;\n offsetY = gesture.$slideEl.offset().top + window.scrollY;\n diffX = offsetX + slideWidth / 2 - touchX;\n diffY = offsetY + slideHeight / 2 - touchY;\n imageWidth = gesture.$imageEl[0].offsetWidth;\n imageHeight = gesture.$imageEl[0].offsetHeight;\n scaledWidth = imageWidth * zoom.scale;\n scaledHeight = imageHeight * zoom.scale;\n translateMinX = Math.min(slideWidth / 2 - scaledWidth / 2, 0);\n translateMinY = Math.min(slideHeight / 2 - scaledHeight / 2, 0);\n translateMaxX = -translateMinX;\n translateMaxY = -translateMinY;\n translateX = diffX * zoom.scale;\n translateY = diffY * zoom.scale;\n\n if (translateX < translateMinX) {\n translateX = translateMinX;\n }\n\n if (translateX > translateMaxX) {\n translateX = translateMaxX;\n }\n\n if (translateY < translateMinY) {\n translateY = translateMinY;\n }\n\n if (translateY > translateMaxY) {\n translateY = translateMaxY;\n }\n } else {\n translateX = 0;\n translateY = 0;\n }\n\n gesture.$imageWrapEl.transition(300).transform(`translate3d(${translateX}px, ${translateY}px,0)`);\n gesture.$imageEl.transition(300).transform(`translate3d(0,0,0) scale(${zoom.scale})`);\n }\n\n function zoomOut() {\n const zoom = swiper.zoom;\n const params = swiper.params.zoom;\n\n if (!gesture.$slideEl) {\n if (swiper.params.virtual && swiper.params.virtual.enabled && swiper.virtual) {\n gesture.$slideEl = swiper.$wrapperEl.children(`.${swiper.params.slideActiveClass}`);\n } else {\n gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);\n }\n\n gesture.$imageEl = gesture.$slideEl\n .find(`.${params.containerClass}`)\n .eq(0)\n .find('picture, img, svg, canvas, .swiper-zoom-target')\n .eq(0);\n gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`);\n }\n\n if (\n !gesture.$imageEl ||\n gesture.$imageEl.length === 0 ||\n !gesture.$imageWrapEl ||\n gesture.$imageWrapEl.length === 0\n )\n return;\n\n if (swiper.params.cssMode) {\n swiper.wrapperEl.style.overflow = '';\n swiper.wrapperEl.style.touchAction = '';\n }\n\n zoom.scale = 1;\n currentScale = 1;\n gesture.$imageWrapEl.transition(300).transform('translate3d(0,0,0)');\n gesture.$imageEl.transition(300).transform('translate3d(0,0,0) scale(1)');\n gesture.$slideEl.removeClass(`${params.zoomedSlideClass}`);\n gesture.$slideEl = undefined;\n } // Toggle Zoom\n\n function zoomToggle(e) {\n const zoom = swiper.zoom;\n\n if (zoom.scale && zoom.scale !== 1) {\n // Zoom Out\n zoomOut();\n } else {\n // Zoom In\n zoomIn(e);\n }\n }\n\n function getListeners() {\n const support = swiper.support;\n const passiveListener =\n swiper.touchEvents.start === 'touchstart' && support.passiveListener && swiper.params.passiveListeners\n ? {\n passive: true,\n capture: false,\n }\n : false;\n const activeListenerWithCapture = support.passiveListener\n ? {\n passive: false,\n capture: true,\n }\n : true;\n return {\n passiveListener,\n activeListenerWithCapture,\n };\n }\n\n function getSlideSelector() {\n return `.${swiper.params.slideClass}`;\n }\n\n function toggleGestures(method) {\n const {passiveListener} = getListeners();\n const slideSelector = getSlideSelector();\n swiper.$wrapperEl[method]('gesturestart', slideSelector, onGestureStart, passiveListener);\n swiper.$wrapperEl[method]('gesturechange', slideSelector, onGestureChange, passiveListener);\n swiper.$wrapperEl[method]('gestureend', slideSelector, onGestureEnd, passiveListener);\n }\n\n function enableGestures() {\n if (gesturesEnabled) return;\n gesturesEnabled = true;\n toggleGestures('on');\n }\n\n function disableGestures() {\n if (!gesturesEnabled) return;\n gesturesEnabled = false;\n toggleGestures('off');\n } // Attach/Detach Events\n\n function enable() {\n const zoom = swiper.zoom;\n if (zoom.enabled) return;\n zoom.enabled = true;\n const support = swiper.support;\n const {passiveListener, activeListenerWithCapture} = getListeners();\n const slideSelector = getSlideSelector(); // Scale image\n\n if (support.gestures) {\n swiper.$wrapperEl.on(swiper.touchEvents.start, enableGestures, passiveListener);\n swiper.$wrapperEl.on(swiper.touchEvents.end, disableGestures, passiveListener);\n } else if (swiper.touchEvents.start === 'touchstart') {\n swiper.$wrapperEl.on(swiper.touchEvents.start, slideSelector, onGestureStart, passiveListener);\n swiper.$wrapperEl.on(swiper.touchEvents.move, slideSelector, onGestureChange, activeListenerWithCapture);\n swiper.$wrapperEl.on(swiper.touchEvents.end, slideSelector, onGestureEnd, passiveListener);\n\n if (swiper.touchEvents.cancel) {\n swiper.$wrapperEl.on(swiper.touchEvents.cancel, slideSelector, onGestureEnd, passiveListener);\n }\n } // Move image\n\n swiper.$wrapperEl.on(\n swiper.touchEvents.move,\n `.${swiper.params.zoom.containerClass}`,\n onTouchMove,\n activeListenerWithCapture,\n );\n }\n\n function disable() {\n const zoom = swiper.zoom;\n if (!zoom.enabled) return;\n const support = swiper.support;\n zoom.enabled = false;\n const {passiveListener, activeListenerWithCapture} = getListeners();\n const slideSelector = getSlideSelector(); // Scale image\n\n if (support.gestures) {\n swiper.$wrapperEl.off(swiper.touchEvents.start, enableGestures, passiveListener);\n swiper.$wrapperEl.off(swiper.touchEvents.end, disableGestures, passiveListener);\n } else if (swiper.touchEvents.start === 'touchstart') {\n swiper.$wrapperEl.off(swiper.touchEvents.start, slideSelector, onGestureStart, passiveListener);\n swiper.$wrapperEl.off(swiper.touchEvents.move, slideSelector, onGestureChange, activeListenerWithCapture);\n swiper.$wrapperEl.off(swiper.touchEvents.end, slideSelector, onGestureEnd, passiveListener);\n\n if (swiper.touchEvents.cancel) {\n swiper.$wrapperEl.off(swiper.touchEvents.cancel, slideSelector, onGestureEnd, passiveListener);\n }\n } // Move image\n\n swiper.$wrapperEl.off(\n swiper.touchEvents.move,\n `.${swiper.params.zoom.containerClass}`,\n onTouchMove,\n activeListenerWithCapture,\n );\n }\n\n on('init', () => {\n if (swiper.params.zoom.enabled) {\n enable();\n }\n });\n on('destroy', () => {\n disable();\n });\n on('touchStart', (_s, e) => {\n if (!swiper.zoom.enabled) return;\n onTouchStart(e);\n });\n on('touchEnd', (_s, e) => {\n if (!swiper.zoom.enabled) return;\n onTouchEnd();\n });\n on('doubleTap', (_s, e) => {\n if (!swiper.animating && swiper.params.zoom.enabled && swiper.zoom.enabled && swiper.params.zoom.toggle) {\n zoomToggle(e);\n }\n });\n on('transitionEnd', () => {\n if (swiper.zoom.enabled && swiper.params.zoom.enabled) {\n onTransitionEnd();\n }\n });\n on('slideChange', () => {\n if (swiper.zoom.enabled && swiper.params.zoom.enabled && swiper.params.cssMode) {\n onTransitionEnd();\n }\n });\n Object.assign(swiper.zoom, {\n enable,\n disable,\n in: zoomIn,\n out: zoomOut,\n toggle: zoomToggle,\n });\n }\n\n function Lazy({swiper, extendParams, on, emit}) {\n extendParams({\n lazy: {\n checkInView: false,\n enabled: false,\n loadPrevNext: false,\n loadPrevNextAmount: 1,\n loadOnTransitionStart: false,\n scrollingElement: '',\n elementClass: 'swiper-lazy',\n loadingClass: 'swiper-lazy-loading',\n loadedClass: 'swiper-lazy-loaded',\n preloaderClass: 'swiper-lazy-preloader',\n },\n });\n swiper.lazy = {};\n let scrollHandlerAttached = false;\n let initialImageLoaded = false;\n\n function loadInSlide(index, loadInDuplicate = true) {\n const params = swiper.params.lazy;\n if (typeof index === 'undefined') return;\n if (swiper.slides.length === 0) return;\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n const $slideEl = isVirtual\n ? swiper.$wrapperEl.children(`.${swiper.params.slideClass}[data-swiper-slide-index=\"${index}\"]`)\n : swiper.slides.eq(index);\n const $images = $slideEl.find(\n `.${params.elementClass}:not(.${params.loadedClass}):not(.${params.loadingClass})`,\n );\n\n if (\n $slideEl.hasClass(params.elementClass) &&\n !$slideEl.hasClass(params.loadedClass) &&\n !$slideEl.hasClass(params.loadingClass)\n ) {\n $images.push($slideEl[0]);\n }\n\n if ($images.length === 0) return;\n $images.each((imageEl) => {\n const $imageEl = $(imageEl);\n $imageEl.addClass(params.loadingClass);\n const background = $imageEl.attr('data-background');\n const src = $imageEl.attr('data-src');\n const srcset = $imageEl.attr('data-srcset');\n const sizes = $imageEl.attr('data-sizes');\n const $pictureEl = $imageEl.parent('picture');\n swiper.loadImage($imageEl[0], src || background, srcset, sizes, false, () => {\n if (\n typeof swiper === 'undefined' ||\n swiper === null ||\n !swiper ||\n (swiper && !swiper.params) ||\n swiper.destroyed\n )\n return;\n\n if (background) {\n $imageEl.css('background-image', `url(\"${background}\")`);\n $imageEl.removeAttr('data-background');\n } else {\n if (srcset) {\n $imageEl.attr('srcset', srcset);\n $imageEl.removeAttr('data-srcset');\n }\n\n if (sizes) {\n $imageEl.attr('sizes', sizes);\n $imageEl.removeAttr('data-sizes');\n }\n\n if ($pictureEl.length) {\n $pictureEl.children('source').each((sourceEl) => {\n const $source = $(sourceEl);\n\n if ($source.attr('data-srcset')) {\n $source.attr('srcset', $source.attr('data-srcset'));\n $source.removeAttr('data-srcset');\n }\n });\n }\n\n if (src) {\n $imageEl.attr('src', src);\n $imageEl.removeAttr('data-src');\n }\n }\n\n $imageEl.addClass(params.loadedClass).removeClass(params.loadingClass);\n $slideEl.find(`.${params.preloaderClass}`).remove();\n\n if (swiper.params.loop && loadInDuplicate) {\n const slideOriginalIndex = $slideEl.attr('data-swiper-slide-index');\n\n if ($slideEl.hasClass(swiper.params.slideDuplicateClass)) {\n const originalSlide = swiper.$wrapperEl.children(\n `[data-swiper-slide-index=\"${slideOriginalIndex}\"]:not(.${swiper.params.slideDuplicateClass})`,\n );\n loadInSlide(originalSlide.index(), false);\n } else {\n const duplicatedSlide = swiper.$wrapperEl.children(\n `.${swiper.params.slideDuplicateClass}[data-swiper-slide-index=\"${slideOriginalIndex}\"]`,\n );\n loadInSlide(duplicatedSlide.index(), false);\n }\n }\n\n emit('lazyImageReady', $slideEl[0], $imageEl[0]);\n\n if (swiper.params.autoHeight) {\n swiper.updateAutoHeight();\n }\n });\n emit('lazyImageLoad', $slideEl[0], $imageEl[0]);\n });\n }\n\n function load() {\n const {$wrapperEl, params: swiperParams, slides, activeIndex} = swiper;\n const isVirtual = swiper.virtual && swiperParams.virtual.enabled;\n const params = swiperParams.lazy;\n let slidesPerView = swiperParams.slidesPerView;\n\n if (slidesPerView === 'auto') {\n slidesPerView = 0;\n }\n\n function slideExist(index) {\n if (isVirtual) {\n if ($wrapperEl.children(`.${swiperParams.slideClass}[data-swiper-slide-index=\"${index}\"]`).length) {\n return true;\n }\n } else if (slides[index]) return true;\n\n return false;\n }\n\n function slideIndex(slideEl) {\n if (isVirtual) {\n return $(slideEl).attr('data-swiper-slide-index');\n }\n\n return $(slideEl).index();\n }\n\n if (!initialImageLoaded) initialImageLoaded = true;\n\n if (swiper.params.watchSlidesProgress) {\n $wrapperEl.children(`.${swiperParams.slideVisibleClass}`).each((slideEl) => {\n const index = isVirtual ? $(slideEl).attr('data-swiper-slide-index') : $(slideEl).index();\n loadInSlide(index);\n });\n } else if (slidesPerView > 1) {\n for (let i = activeIndex; i < activeIndex + slidesPerView; i += 1) {\n if (slideExist(i)) loadInSlide(i);\n }\n } else {\n loadInSlide(activeIndex);\n }\n\n if (params.loadPrevNext) {\n if (slidesPerView > 1 || (params.loadPrevNextAmount && params.loadPrevNextAmount > 1)) {\n const amount = params.loadPrevNextAmount;\n const spv = slidesPerView;\n const maxIndex = Math.min(activeIndex + spv + Math.max(amount, spv), slides.length);\n const minIndex = Math.max(activeIndex - Math.max(spv, amount), 0); // Next Slides\n\n for (let i = activeIndex + slidesPerView; i < maxIndex; i += 1) {\n if (slideExist(i)) loadInSlide(i);\n } // Prev Slides\n\n for (let i = minIndex; i < activeIndex; i += 1) {\n if (slideExist(i)) loadInSlide(i);\n }\n } else {\n const nextSlide = $wrapperEl.children(`.${swiperParams.slideNextClass}`);\n if (nextSlide.length > 0) loadInSlide(slideIndex(nextSlide));\n const prevSlide = $wrapperEl.children(`.${swiperParams.slidePrevClass}`);\n if (prevSlide.length > 0) loadInSlide(slideIndex(prevSlide));\n }\n }\n }\n\n function checkInViewOnLoad() {\n const window = getWindow();\n if (!swiper || swiper.destroyed) return;\n const $scrollElement = swiper.params.lazy.scrollingElement ? $(swiper.params.lazy.scrollingElement) : $(window);\n const isWindow = $scrollElement[0] === window;\n const scrollElementWidth = isWindow ? window.innerWidth : $scrollElement[0].offsetWidth;\n const scrollElementHeight = isWindow ? window.innerHeight : $scrollElement[0].offsetHeight;\n const swiperOffset = swiper.$el.offset();\n const {rtlTranslate: rtl} = swiper;\n let inView = false;\n if (rtl) swiperOffset.left -= swiper.$el[0].scrollLeft;\n const swiperCoord = [\n [swiperOffset.left, swiperOffset.top],\n [swiperOffset.left + swiper.width, swiperOffset.top],\n [swiperOffset.left, swiperOffset.top + swiper.height],\n [swiperOffset.left + swiper.width, swiperOffset.top + swiper.height],\n ];\n\n for (let i = 0; i < swiperCoord.length; i += 1) {\n const point = swiperCoord[i];\n\n if (point[0] >= 0 && point[0] <= scrollElementWidth && point[1] >= 0 && point[1] <= scrollElementHeight) {\n if (point[0] === 0 && point[1] === 0) continue; // eslint-disable-line\n\n inView = true;\n }\n }\n\n const passiveListener =\n swiper.touchEvents.start === 'touchstart' && swiper.support.passiveListener && swiper.params.passiveListeners\n ? {\n passive: true,\n capture: false,\n }\n : false;\n\n if (inView) {\n load();\n $scrollElement.off('scroll', checkInViewOnLoad, passiveListener);\n } else if (!scrollHandlerAttached) {\n scrollHandlerAttached = true;\n $scrollElement.on('scroll', checkInViewOnLoad, passiveListener);\n }\n }\n\n on('beforeInit', () => {\n if (swiper.params.lazy.enabled && swiper.params.preloadImages) {\n swiper.params.preloadImages = false;\n }\n });\n on('init', () => {\n if (swiper.params.lazy.enabled) {\n if (swiper.params.lazy.checkInView) {\n checkInViewOnLoad();\n } else {\n load();\n }\n }\n });\n on('scroll', () => {\n if (swiper.params.freeMode && swiper.params.freeMode.enabled && !swiper.params.freeMode.sticky) {\n load();\n }\n });\n on('scrollbarDragMove resize _freeModeNoMomentumRelease', () => {\n if (swiper.params.lazy.enabled) {\n if (swiper.params.lazy.checkInView) {\n checkInViewOnLoad();\n } else {\n load();\n }\n }\n });\n on('transitionStart', () => {\n if (swiper.params.lazy.enabled) {\n if (\n swiper.params.lazy.loadOnTransitionStart ||\n (!swiper.params.lazy.loadOnTransitionStart && !initialImageLoaded)\n ) {\n if (swiper.params.lazy.checkInView) {\n checkInViewOnLoad();\n } else {\n load();\n }\n }\n }\n });\n on('transitionEnd', () => {\n if (swiper.params.lazy.enabled && !swiper.params.lazy.loadOnTransitionStart) {\n if (swiper.params.lazy.checkInView) {\n checkInViewOnLoad();\n } else {\n load();\n }\n }\n });\n on('slideChange', () => {\n const {lazy, cssMode, watchSlidesProgress, touchReleaseOnEdges, resistanceRatio} = swiper.params;\n\n if (lazy.enabled && (cssMode || (watchSlidesProgress && (touchReleaseOnEdges || resistanceRatio === 0)))) {\n load();\n }\n });\n Object.assign(swiper.lazy, {\n load,\n loadInSlide,\n });\n }\n\n /* eslint no-bitwise: [\"error\", { \"allow\": [\">>\"] }] */\n function Controller({swiper, extendParams, on}) {\n extendParams({\n controller: {\n control: undefined,\n inverse: false,\n by: 'slide', // or 'container'\n },\n });\n swiper.controller = {\n control: undefined,\n };\n\n function LinearSpline(x, y) {\n const binarySearch = (function search() {\n let maxIndex;\n let minIndex;\n let guess;\n return (array, val) => {\n minIndex = -1;\n maxIndex = array.length;\n\n while (maxIndex - minIndex > 1) {\n guess = (maxIndex + minIndex) >> 1;\n\n if (array[guess] <= val) {\n minIndex = guess;\n } else {\n maxIndex = guess;\n }\n }\n\n return maxIndex;\n };\n })();\n\n this.x = x;\n this.y = y;\n this.lastIndex = x.length - 1; // Given an x value (x2), return the expected y2 value:\n // (x1,y1) is the known point before given value,\n // (x3,y3) is the known point after given value.\n\n let i1;\n let i3;\n\n this.interpolate = function interpolate(x2) {\n if (!x2) return 0; // Get the indexes of x1 and x3 (the array indexes before and after given x2):\n\n i3 = binarySearch(this.x, x2);\n i1 = i3 - 1; // We have our indexes i1 & i3, so we can calculate already:\n // y2 := ((x2−x1) × (y3−y1)) ÷ (x3−x1) + y1\n\n return ((x2 - this.x[i1]) * (this.y[i3] - this.y[i1])) / (this.x[i3] - this.x[i1]) + this.y[i1];\n };\n\n return this;\n } // xxx: for now i will just save one spline function to to\n\n function getInterpolateFunction(c) {\n if (!swiper.controller.spline) {\n swiper.controller.spline = swiper.params.loop\n ? new LinearSpline(swiper.slidesGrid, c.slidesGrid)\n : new LinearSpline(swiper.snapGrid, c.snapGrid);\n }\n }\n\n function setTranslate(_t, byController) {\n const controlled = swiper.controller.control;\n let multiplier;\n let controlledTranslate;\n const Swiper = swiper.constructor;\n\n function setControlledTranslate(c) {\n // this will create an Interpolate function based on the snapGrids\n // x is the Grid of the scrolled scroller and y will be the controlled scroller\n // it makes sense to create this only once and recall it for the interpolation\n // the function does a lot of value caching for performance\n const translate = swiper.rtlTranslate ? -swiper.translate : swiper.translate;\n\n if (swiper.params.controller.by === 'slide') {\n getInterpolateFunction(c); // i am not sure why the values have to be multiplicated this way, tried to invert the snapGrid\n // but it did not work out\n\n controlledTranslate = -swiper.controller.spline.interpolate(-translate);\n }\n\n if (!controlledTranslate || swiper.params.controller.by === 'container') {\n multiplier = (c.maxTranslate() - c.minTranslate()) / (swiper.maxTranslate() - swiper.minTranslate());\n controlledTranslate = (translate - swiper.minTranslate()) * multiplier + c.minTranslate();\n }\n\n if (swiper.params.controller.inverse) {\n controlledTranslate = c.maxTranslate() - controlledTranslate;\n }\n\n c.updateProgress(controlledTranslate);\n c.setTranslate(controlledTranslate, swiper);\n c.updateActiveIndex();\n c.updateSlidesClasses();\n }\n\n if (Array.isArray(controlled)) {\n for (let i = 0; i < controlled.length; i += 1) {\n if (controlled[i] !== byController && controlled[i] instanceof Swiper) {\n setControlledTranslate(controlled[i]);\n }\n }\n } else if (controlled instanceof Swiper && byController !== controlled) {\n setControlledTranslate(controlled);\n }\n }\n\n function setTransition(duration, byController) {\n const Swiper = swiper.constructor;\n const controlled = swiper.controller.control;\n let i;\n\n function setControlledTransition(c) {\n c.setTransition(duration, swiper);\n\n if (duration !== 0) {\n c.transitionStart();\n\n if (c.params.autoHeight) {\n nextTick(() => {\n c.updateAutoHeight();\n });\n }\n\n c.$wrapperEl.transitionEnd(() => {\n if (!controlled) return;\n\n if (c.params.loop && swiper.params.controller.by === 'slide') {\n c.loopFix();\n }\n\n c.transitionEnd();\n });\n }\n }\n\n if (Array.isArray(controlled)) {\n for (i = 0; i < controlled.length; i += 1) {\n if (controlled[i] !== byController && controlled[i] instanceof Swiper) {\n setControlledTransition(controlled[i]);\n }\n }\n } else if (controlled instanceof Swiper && byController !== controlled) {\n setControlledTransition(controlled);\n }\n }\n\n function removeSpline() {\n if (!swiper.controller.control) return;\n\n if (swiper.controller.spline) {\n swiper.controller.spline = undefined;\n delete swiper.controller.spline;\n }\n }\n\n on('beforeInit', () => {\n swiper.controller.control = swiper.params.controller.control;\n });\n on('update', () => {\n removeSpline();\n });\n on('resize', () => {\n removeSpline();\n });\n on('observerUpdate', () => {\n removeSpline();\n });\n on('setTranslate', (_s, translate, byController) => {\n if (!swiper.controller.control) return;\n swiper.controller.setTranslate(translate, byController);\n });\n on('setTransition', (_s, duration, byController) => {\n if (!swiper.controller.control) return;\n swiper.controller.setTransition(duration, byController);\n });\n Object.assign(swiper.controller, {\n setTranslate,\n setTransition,\n });\n }\n\n function A11y({swiper, extendParams, on}) {\n extendParams({\n a11y: {\n enabled: true,\n notificationClass: 'swiper-notification',\n prevSlideMessage: 'Previous slide',\n nextSlideMessage: 'Next slide',\n firstSlideMessage: 'This is the first slide',\n lastSlideMessage: 'This is the last slide',\n paginationBulletMessage: 'Go to slide {{index}}',\n slideLabelMessage: '{{index}} / {{slidesLength}}',\n containerMessage: null,\n containerRoleDescriptionMessage: null,\n itemRoleDescriptionMessage: null,\n slideRole: 'group',\n },\n });\n let liveRegion = null;\n\n function notify(message) {\n const notification = liveRegion;\n if (notification.length === 0) return;\n notification.html('');\n notification.html(message);\n }\n\n function getRandomNumber(size = 16) {\n const randomChar = () => Math.round(16 * Math.random()).toString(16);\n\n return 'x'.repeat(size).replace(/x/g, randomChar);\n }\n\n function makeElFocusable($el) {\n $el.attr('tabIndex', '0');\n }\n\n function makeElNotFocusable($el) {\n $el.attr('tabIndex', '-1');\n }\n\n function addElRole($el, role) {\n $el.attr('role', role);\n }\n\n function addElRoleDescription($el, description) {\n $el.attr('aria-roledescription', description);\n }\n\n function addElControls($el, controls) {\n $el.attr('aria-controls', controls);\n }\n\n function addElLabel($el, label) {\n $el.attr('aria-label', label);\n }\n\n function addElId($el, id) {\n $el.attr('id', id);\n }\n\n function addElLive($el, live) {\n $el.attr('aria-live', live);\n }\n\n function disableEl($el) {\n $el.attr('aria-disabled', true);\n }\n\n function enableEl($el) {\n $el.attr('aria-disabled', false);\n }\n\n function onEnterOrSpaceKey(e) {\n if (e.keyCode !== 13 && e.keyCode !== 32) return;\n const params = swiper.params.a11y;\n const $targetEl = $(e.target);\n\n if (swiper.navigation && swiper.navigation.$nextEl && $targetEl.is(swiper.navigation.$nextEl)) {\n if (!(swiper.isEnd && !swiper.params.loop)) {\n swiper.slideNext();\n }\n\n if (swiper.isEnd) {\n notify(params.lastSlideMessage);\n } else {\n notify(params.nextSlideMessage);\n }\n }\n\n if (swiper.navigation && swiper.navigation.$prevEl && $targetEl.is(swiper.navigation.$prevEl)) {\n if (!(swiper.isBeginning && !swiper.params.loop)) {\n swiper.slidePrev();\n }\n\n if (swiper.isBeginning) {\n notify(params.firstSlideMessage);\n } else {\n notify(params.prevSlideMessage);\n }\n }\n\n if (swiper.pagination && $targetEl.is(classesToSelector(swiper.params.pagination.bulletClass))) {\n $targetEl[0].click();\n }\n }\n\n function updateNavigation() {\n if (swiper.params.loop || swiper.params.rewind || !swiper.navigation) return;\n const {$nextEl, $prevEl} = swiper.navigation;\n\n if ($prevEl && $prevEl.length > 0) {\n if (swiper.isBeginning) {\n disableEl($prevEl);\n makeElNotFocusable($prevEl);\n } else {\n enableEl($prevEl);\n makeElFocusable($prevEl);\n }\n }\n\n if ($nextEl && $nextEl.length > 0) {\n if (swiper.isEnd) {\n disableEl($nextEl);\n makeElNotFocusable($nextEl);\n } else {\n enableEl($nextEl);\n makeElFocusable($nextEl);\n }\n }\n }\n\n function hasPagination() {\n return swiper.pagination && swiper.pagination.bullets && swiper.pagination.bullets.length;\n }\n\n function hasClickablePagination() {\n return hasPagination() && swiper.params.pagination.clickable;\n }\n\n function updatePagination() {\n const params = swiper.params.a11y;\n if (!hasPagination()) return;\n swiper.pagination.bullets.each((bulletEl) => {\n const $bulletEl = $(bulletEl);\n\n if (swiper.params.pagination.clickable) {\n makeElFocusable($bulletEl);\n\n if (!swiper.params.pagination.renderBullet) {\n addElRole($bulletEl, 'button');\n addElLabel($bulletEl, params.paginationBulletMessage.replace(/\\{\\{index\\}\\}/, $bulletEl.index() + 1));\n }\n }\n\n if ($bulletEl.is(`.${swiper.params.pagination.bulletActiveClass}`)) {\n $bulletEl.attr('aria-current', 'true');\n } else {\n $bulletEl.removeAttr('aria-current');\n }\n });\n }\n\n const initNavEl = ($el, wrapperId, message) => {\n makeElFocusable($el);\n\n if ($el[0].tagName !== 'BUTTON') {\n addElRole($el, 'button');\n $el.on('keydown', onEnterOrSpaceKey);\n }\n\n addElLabel($el, message);\n addElControls($el, wrapperId);\n };\n\n function init() {\n const params = swiper.params.a11y;\n swiper.$el.append(liveRegion); // Container\n\n const $containerEl = swiper.$el;\n\n if (params.containerRoleDescriptionMessage) {\n addElRoleDescription($containerEl, params.containerRoleDescriptionMessage);\n }\n\n if (params.containerMessage) {\n addElLabel($containerEl, params.containerMessage);\n } // Wrapper\n\n const $wrapperEl = swiper.$wrapperEl;\n const wrapperId = $wrapperEl.attr('id') || `swiper-wrapper-${getRandomNumber(16)}`;\n const live = swiper.params.autoplay && swiper.params.autoplay.enabled ? 'off' : 'polite';\n addElId($wrapperEl, wrapperId);\n addElLive($wrapperEl, live); // Slide\n\n if (params.itemRoleDescriptionMessage) {\n addElRoleDescription($(swiper.slides), params.itemRoleDescriptionMessage);\n }\n\n addElRole($(swiper.slides), params.slideRole);\n const slidesLength = swiper.params.loop\n ? swiper.slides.filter((el) => !el.classList.contains(swiper.params.slideDuplicateClass)).length\n : swiper.slides.length;\n swiper.slides.each((slideEl, index) => {\n const $slideEl = $(slideEl);\n const slideIndex = swiper.params.loop ? parseInt($slideEl.attr('data-swiper-slide-index'), 10) : index;\n const ariaLabelMessage = params.slideLabelMessage\n .replace(/\\{\\{index\\}\\}/, slideIndex + 1)\n .replace(/\\{\\{slidesLength\\}\\}/, slidesLength);\n addElLabel($slideEl, ariaLabelMessage);\n }); // Navigation\n\n let $nextEl;\n let $prevEl;\n\n if (swiper.navigation && swiper.navigation.$nextEl) {\n $nextEl = swiper.navigation.$nextEl;\n }\n\n if (swiper.navigation && swiper.navigation.$prevEl) {\n $prevEl = swiper.navigation.$prevEl;\n }\n\n if ($nextEl && $nextEl.length) {\n initNavEl($nextEl, wrapperId, params.nextSlideMessage);\n }\n\n if ($prevEl && $prevEl.length) {\n initNavEl($prevEl, wrapperId, params.prevSlideMessage);\n } // Pagination\n\n if (hasClickablePagination()) {\n swiper.pagination.$el.on(\n 'keydown',\n classesToSelector(swiper.params.pagination.bulletClass),\n onEnterOrSpaceKey,\n );\n }\n }\n\n function destroy() {\n if (liveRegion && liveRegion.length > 0) liveRegion.remove();\n let $nextEl;\n let $prevEl;\n\n if (swiper.navigation && swiper.navigation.$nextEl) {\n $nextEl = swiper.navigation.$nextEl;\n }\n\n if (swiper.navigation && swiper.navigation.$prevEl) {\n $prevEl = swiper.navigation.$prevEl;\n }\n\n if ($nextEl) {\n $nextEl.off('keydown', onEnterOrSpaceKey);\n }\n\n if ($prevEl) {\n $prevEl.off('keydown', onEnterOrSpaceKey);\n } // Pagination\n\n if (hasClickablePagination()) {\n swiper.pagination.$el.off(\n 'keydown',\n classesToSelector(swiper.params.pagination.bulletClass),\n onEnterOrSpaceKey,\n );\n }\n }\n\n on('beforeInit', () => {\n liveRegion = $(\n ``,\n );\n });\n on('afterInit', () => {\n if (!swiper.params.a11y.enabled) return;\n init();\n updateNavigation();\n });\n on('toEdge', () => {\n if (!swiper.params.a11y.enabled) return;\n updateNavigation();\n });\n on('fromEdge', () => {\n if (!swiper.params.a11y.enabled) return;\n updateNavigation();\n });\n on('paginationUpdate', () => {\n if (!swiper.params.a11y.enabled) return;\n updatePagination();\n });\n on('destroy', () => {\n if (!swiper.params.a11y.enabled) return;\n destroy();\n });\n }\n\n function History({swiper, extendParams, on}) {\n extendParams({\n history: {\n enabled: false,\n root: '',\n replaceState: false,\n key: 'slides',\n },\n });\n let initialized = false;\n let paths = {};\n\n const slugify = (text) => {\n return text\n .toString()\n .replace(/\\s+/g, '-')\n .replace(/[^\\w-]+/g, '')\n .replace(/--+/g, '-')\n .replace(/^-+/, '')\n .replace(/-+$/, '');\n };\n\n const getPathValues = (urlOverride) => {\n const window = getWindow();\n let location;\n\n if (urlOverride) {\n location = new URL(urlOverride);\n } else {\n location = window.location;\n }\n\n const pathArray = location.pathname\n .slice(1)\n .split('/')\n .filter((part) => part !== '');\n const total = pathArray.length;\n const key = pathArray[total - 2];\n const value = pathArray[total - 1];\n return {\n key,\n value,\n };\n };\n\n const setHistory = (key, index) => {\n const window = getWindow();\n if (!initialized || !swiper.params.history.enabled) return;\n let location;\n\n if (swiper.params.url) {\n location = new URL(swiper.params.url);\n } else {\n location = window.location;\n }\n\n const slide = swiper.slides.eq(index);\n let value = slugify(slide.attr('data-history'));\n\n if (swiper.params.history.root.length > 0) {\n let root = swiper.params.history.root;\n if (root[root.length - 1] === '/') root = root.slice(0, root.length - 1);\n value = `${root}/${key}/${value}`;\n } else if (!location.pathname.includes(key)) {\n value = `${key}/${value}`;\n }\n\n const currentState = window.history.state;\n\n if (currentState && currentState.value === value) {\n return;\n }\n\n if (swiper.params.history.replaceState) {\n window.history.replaceState(\n {\n value,\n },\n null,\n value,\n );\n } else {\n window.history.pushState(\n {\n value,\n },\n null,\n value,\n );\n }\n };\n\n const scrollToSlide = (speed, value, runCallbacks) => {\n if (value) {\n for (let i = 0, length = swiper.slides.length; i < length; i += 1) {\n const slide = swiper.slides.eq(i);\n const slideHistory = slugify(slide.attr('data-history'));\n\n if (slideHistory === value && !slide.hasClass(swiper.params.slideDuplicateClass)) {\n const index = slide.index();\n swiper.slideTo(index, speed, runCallbacks);\n }\n }\n } else {\n swiper.slideTo(0, speed, runCallbacks);\n }\n };\n\n const setHistoryPopState = () => {\n paths = getPathValues(swiper.params.url);\n scrollToSlide(swiper.params.speed, swiper.paths.value, false);\n };\n\n const init = () => {\n const window = getWindow();\n if (!swiper.params.history) return;\n\n if (!window.history || !window.history.pushState) {\n swiper.params.history.enabled = false;\n swiper.params.hashNavigation.enabled = true;\n return;\n }\n\n initialized = true;\n paths = getPathValues(swiper.params.url);\n if (!paths.key && !paths.value) return;\n scrollToSlide(0, paths.value, swiper.params.runCallbacksOnInit);\n\n if (!swiper.params.history.replaceState) {\n window.addEventListener('popstate', setHistoryPopState);\n }\n };\n\n const destroy = () => {\n const window = getWindow();\n\n if (!swiper.params.history.replaceState) {\n window.removeEventListener('popstate', setHistoryPopState);\n }\n };\n\n on('init', () => {\n if (swiper.params.history.enabled) {\n init();\n }\n });\n on('destroy', () => {\n if (swiper.params.history.enabled) {\n destroy();\n }\n });\n on('transitionEnd _freeModeNoMomentumRelease', () => {\n if (initialized) {\n setHistory(swiper.params.history.key, swiper.activeIndex);\n }\n });\n on('slideChange', () => {\n if (initialized && swiper.params.cssMode) {\n setHistory(swiper.params.history.key, swiper.activeIndex);\n }\n });\n }\n\n function HashNavigation({swiper, extendParams, emit, on}) {\n let initialized = false;\n const document = getDocument();\n const window = getWindow();\n extendParams({\n hashNavigation: {\n enabled: false,\n replaceState: false,\n watchState: false,\n },\n });\n\n const onHashChange = () => {\n emit('hashChange');\n const newHash = document.location.hash.replace('#', '');\n const activeSlideHash = swiper.slides.eq(swiper.activeIndex).attr('data-hash');\n\n if (newHash !== activeSlideHash) {\n const newIndex = swiper.$wrapperEl.children(`.${swiper.params.slideClass}[data-hash=\"${newHash}\"]`).index();\n if (typeof newIndex === 'undefined') return;\n swiper.slideTo(newIndex);\n }\n };\n\n const setHash = () => {\n if (!initialized || !swiper.params.hashNavigation.enabled) return;\n\n if (swiper.params.hashNavigation.replaceState && window.history && window.history.replaceState) {\n window.history.replaceState(null, null, `#${swiper.slides.eq(swiper.activeIndex).attr('data-hash')}` || '');\n emit('hashSet');\n } else {\n const slide = swiper.slides.eq(swiper.activeIndex);\n const hash = slide.attr('data-hash') || slide.attr('data-history');\n document.location.hash = hash || '';\n emit('hashSet');\n }\n };\n\n const init = () => {\n if (!swiper.params.hashNavigation.enabled || (swiper.params.history && swiper.params.history.enabled)) return;\n initialized = true;\n const hash = document.location.hash.replace('#', '');\n\n if (hash) {\n const speed = 0;\n\n for (let i = 0, length = swiper.slides.length; i < length; i += 1) {\n const slide = swiper.slides.eq(i);\n const slideHash = slide.attr('data-hash') || slide.attr('data-history');\n\n if (slideHash === hash && !slide.hasClass(swiper.params.slideDuplicateClass)) {\n const index = slide.index();\n swiper.slideTo(index, speed, swiper.params.runCallbacksOnInit, true);\n }\n }\n }\n\n if (swiper.params.hashNavigation.watchState) {\n $(window).on('hashchange', onHashChange);\n }\n };\n\n const destroy = () => {\n if (swiper.params.hashNavigation.watchState) {\n $(window).off('hashchange', onHashChange);\n }\n };\n\n on('init', () => {\n if (swiper.params.hashNavigation.enabled) {\n init();\n }\n });\n on('destroy', () => {\n if (swiper.params.hashNavigation.enabled) {\n destroy();\n }\n });\n on('transitionEnd _freeModeNoMomentumRelease', () => {\n if (initialized) {\n setHash();\n }\n });\n on('slideChange', () => {\n if (initialized && swiper.params.cssMode) {\n setHash();\n }\n });\n }\n\n /* eslint no-underscore-dangle: \"off\" */\n function Autoplay({swiper, extendParams, on, emit}) {\n let timeout;\n swiper.autoplay = {\n running: false,\n paused: false,\n };\n extendParams({\n autoplay: {\n enabled: false,\n delay: 3000,\n waitForTransition: true,\n disableOnInteraction: true,\n stopOnLastSlide: false,\n reverseDirection: false,\n pauseOnMouseEnter: false,\n },\n });\n\n function run() {\n const $activeSlideEl = swiper.slides.eq(swiper.activeIndex);\n let delay = swiper.params.autoplay.delay;\n\n if ($activeSlideEl.attr('data-swiper-autoplay')) {\n delay = $activeSlideEl.attr('data-swiper-autoplay') || swiper.params.autoplay.delay;\n }\n\n clearTimeout(timeout);\n timeout = nextTick(() => {\n let autoplayResult;\n\n if (swiper.params.autoplay.reverseDirection) {\n if (swiper.params.loop) {\n swiper.loopFix();\n autoplayResult = swiper.slidePrev(swiper.params.speed, true, true);\n emit('autoplay');\n } else if (!swiper.isBeginning) {\n autoplayResult = swiper.slidePrev(swiper.params.speed, true, true);\n emit('autoplay');\n } else if (!swiper.params.autoplay.stopOnLastSlide) {\n autoplayResult = swiper.slideTo(swiper.slides.length - 1, swiper.params.speed, true, true);\n emit('autoplay');\n } else {\n stop();\n }\n } else if (swiper.params.loop) {\n swiper.loopFix();\n autoplayResult = swiper.slideNext(swiper.params.speed, true, true);\n emit('autoplay');\n } else if (!swiper.isEnd) {\n autoplayResult = swiper.slideNext(swiper.params.speed, true, true);\n emit('autoplay');\n } else if (!swiper.params.autoplay.stopOnLastSlide) {\n autoplayResult = swiper.slideTo(0, swiper.params.speed, true, true);\n emit('autoplay');\n } else {\n stop();\n }\n\n if (swiper.params.cssMode && swiper.autoplay.running) run();\n else if (autoplayResult === false) {\n run();\n }\n }, delay);\n }\n\n function start() {\n if (typeof timeout !== 'undefined') return false;\n if (swiper.autoplay.running) return false;\n swiper.autoplay.running = true;\n emit('autoplayStart');\n run();\n return true;\n }\n\n function stop() {\n if (!swiper.autoplay.running) return false;\n if (typeof timeout === 'undefined') return false;\n\n if (timeout) {\n clearTimeout(timeout);\n timeout = undefined;\n }\n\n swiper.autoplay.running = false;\n emit('autoplayStop');\n return true;\n }\n\n function pause(speed) {\n if (!swiper.autoplay.running) return;\n if (swiper.autoplay.paused) return;\n if (timeout) clearTimeout(timeout);\n swiper.autoplay.paused = true;\n\n if (speed === 0 || !swiper.params.autoplay.waitForTransition) {\n swiper.autoplay.paused = false;\n run();\n } else {\n ['transitionend', 'webkitTransitionEnd'].forEach((event) => {\n swiper.$wrapperEl[0].addEventListener(event, onTransitionEnd);\n });\n }\n }\n\n function onVisibilityChange() {\n const document = getDocument();\n\n if (document.visibilityState === 'hidden' && swiper.autoplay.running) {\n pause();\n }\n\n if (document.visibilityState === 'visible' && swiper.autoplay.paused) {\n run();\n swiper.autoplay.paused = false;\n }\n }\n\n function onTransitionEnd(e) {\n if (!swiper || swiper.destroyed || !swiper.$wrapperEl) return;\n if (e.target !== swiper.$wrapperEl[0]) return;\n ['transitionend', 'webkitTransitionEnd'].forEach((event) => {\n swiper.$wrapperEl[0].removeEventListener(event, onTransitionEnd);\n });\n swiper.autoplay.paused = false;\n\n if (!swiper.autoplay.running) {\n stop();\n } else {\n run();\n }\n }\n\n function onMouseEnter() {\n if (swiper.params.autoplay.disableOnInteraction) {\n stop();\n } else {\n pause();\n }\n\n ['transitionend', 'webkitTransitionEnd'].forEach((event) => {\n swiper.$wrapperEl[0].removeEventListener(event, onTransitionEnd);\n });\n }\n\n function onMouseLeave() {\n if (swiper.params.autoplay.disableOnInteraction) {\n return;\n }\n\n swiper.autoplay.paused = false;\n run();\n }\n\n function attachMouseEvents() {\n if (swiper.params.autoplay.pauseOnMouseEnter) {\n swiper.$el.on('mouseenter', onMouseEnter);\n swiper.$el.on('mouseleave', onMouseLeave);\n }\n }\n\n function detachMouseEvents() {\n swiper.$el.off('mouseenter', onMouseEnter);\n swiper.$el.off('mouseleave', onMouseLeave);\n }\n\n on('init', () => {\n if (swiper.params.autoplay.enabled) {\n start();\n const document = getDocument();\n document.addEventListener('visibilitychange', onVisibilityChange);\n attachMouseEvents();\n }\n });\n on('beforeTransitionStart', (_s, speed, internal) => {\n if (swiper.autoplay.running) {\n if (internal || !swiper.params.autoplay.disableOnInteraction) {\n swiper.autoplay.pause(speed);\n } else {\n stop();\n }\n }\n });\n on('sliderFirstMove', () => {\n if (swiper.autoplay.running) {\n if (swiper.params.autoplay.disableOnInteraction) {\n stop();\n } else {\n pause();\n }\n }\n });\n on('touchEnd', () => {\n if (swiper.params.cssMode && swiper.autoplay.paused && !swiper.params.autoplay.disableOnInteraction) {\n run();\n }\n });\n on('destroy', () => {\n detachMouseEvents();\n\n if (swiper.autoplay.running) {\n stop();\n }\n\n const document = getDocument();\n document.removeEventListener('visibilitychange', onVisibilityChange);\n });\n Object.assign(swiper.autoplay, {\n pause,\n run,\n start,\n stop,\n });\n }\n\n function Thumb({swiper, extendParams, on}) {\n extendParams({\n thumbs: {\n swiper: null,\n multipleActiveThumbs: true,\n autoScrollOffset: 0,\n slideThumbActiveClass: 'swiper-slide-thumb-active',\n thumbsContainerClass: 'swiper-thumbs',\n },\n });\n let initialized = false;\n let swiperCreated = false;\n swiper.thumbs = {\n swiper: null,\n };\n\n function onThumbClick() {\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n const clickedIndex = thumbsSwiper.clickedIndex;\n const clickedSlide = thumbsSwiper.clickedSlide;\n if (clickedSlide && $(clickedSlide).hasClass(swiper.params.thumbs.slideThumbActiveClass)) return;\n if (typeof clickedIndex === 'undefined' || clickedIndex === null) return;\n let slideToIndex;\n\n if (thumbsSwiper.params.loop) {\n slideToIndex = parseInt($(thumbsSwiper.clickedSlide).attr('data-swiper-slide-index'), 10);\n } else {\n slideToIndex = clickedIndex;\n }\n\n if (swiper.params.loop) {\n let currentIndex = swiper.activeIndex;\n\n if (swiper.slides.eq(currentIndex).hasClass(swiper.params.slideDuplicateClass)) {\n swiper.loopFix(); // eslint-disable-next-line\n\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n currentIndex = swiper.activeIndex;\n }\n\n const prevIndex = swiper.slides\n .eq(currentIndex)\n .prevAll(`[data-swiper-slide-index=\"${slideToIndex}\"]`)\n .eq(0)\n .index();\n const nextIndex = swiper.slides\n .eq(currentIndex)\n .nextAll(`[data-swiper-slide-index=\"${slideToIndex}\"]`)\n .eq(0)\n .index();\n if (typeof prevIndex === 'undefined') slideToIndex = nextIndex;\n else if (typeof nextIndex === 'undefined') slideToIndex = prevIndex;\n else if (nextIndex - currentIndex < currentIndex - prevIndex) slideToIndex = nextIndex;\n else slideToIndex = prevIndex;\n }\n\n swiper.slideTo(slideToIndex);\n }\n\n function init() {\n const {thumbs: thumbsParams} = swiper.params;\n if (initialized) return false;\n initialized = true;\n const SwiperClass = swiper.constructor;\n\n if (thumbsParams.swiper instanceof SwiperClass) {\n swiper.thumbs.swiper = thumbsParams.swiper;\n Object.assign(swiper.thumbs.swiper.originalParams, {\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n });\n Object.assign(swiper.thumbs.swiper.params, {\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n });\n } else if (isObject(thumbsParams.swiper)) {\n const thumbsSwiperParams = Object.assign({}, thumbsParams.swiper);\n Object.assign(thumbsSwiperParams, {\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n });\n swiper.thumbs.swiper = new SwiperClass(thumbsSwiperParams);\n swiperCreated = true;\n }\n\n swiper.thumbs.swiper.$el.addClass(swiper.params.thumbs.thumbsContainerClass);\n swiper.thumbs.swiper.on('tap', onThumbClick);\n return true;\n }\n\n function update(initial) {\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n const slidesPerView =\n thumbsSwiper.params.slidesPerView === 'auto'\n ? thumbsSwiper.slidesPerViewDynamic()\n : thumbsSwiper.params.slidesPerView;\n const autoScrollOffset = swiper.params.thumbs.autoScrollOffset;\n const useOffset = autoScrollOffset && !thumbsSwiper.params.loop;\n\n if (swiper.realIndex !== thumbsSwiper.realIndex || useOffset) {\n let currentThumbsIndex = thumbsSwiper.activeIndex;\n let newThumbsIndex;\n let direction;\n\n if (thumbsSwiper.params.loop) {\n if (thumbsSwiper.slides.eq(currentThumbsIndex).hasClass(thumbsSwiper.params.slideDuplicateClass)) {\n thumbsSwiper.loopFix(); // eslint-disable-next-line\n\n thumbsSwiper._clientLeft = thumbsSwiper.$wrapperEl[0].clientLeft;\n currentThumbsIndex = thumbsSwiper.activeIndex;\n } // Find actual thumbs index to slide to\n\n const prevThumbsIndex = thumbsSwiper.slides\n .eq(currentThumbsIndex)\n .prevAll(`[data-swiper-slide-index=\"${swiper.realIndex}\"]`)\n .eq(0)\n .index();\n const nextThumbsIndex = thumbsSwiper.slides\n .eq(currentThumbsIndex)\n .nextAll(`[data-swiper-slide-index=\"${swiper.realIndex}\"]`)\n .eq(0)\n .index();\n\n if (typeof prevThumbsIndex === 'undefined') {\n newThumbsIndex = nextThumbsIndex;\n } else if (typeof nextThumbsIndex === 'undefined') {\n newThumbsIndex = prevThumbsIndex;\n } else if (nextThumbsIndex - currentThumbsIndex === currentThumbsIndex - prevThumbsIndex) {\n newThumbsIndex = thumbsSwiper.params.slidesPerGroup > 1 ? nextThumbsIndex : currentThumbsIndex;\n } else if (nextThumbsIndex - currentThumbsIndex < currentThumbsIndex - prevThumbsIndex) {\n newThumbsIndex = nextThumbsIndex;\n } else {\n newThumbsIndex = prevThumbsIndex;\n }\n\n direction = swiper.activeIndex > swiper.previousIndex ? 'next' : 'prev';\n } else {\n newThumbsIndex = swiper.realIndex;\n direction = newThumbsIndex > swiper.previousIndex ? 'next' : 'prev';\n }\n\n if (useOffset) {\n newThumbsIndex += direction === 'next' ? autoScrollOffset : -1 * autoScrollOffset;\n }\n\n if (thumbsSwiper.visibleSlidesIndexes && thumbsSwiper.visibleSlidesIndexes.indexOf(newThumbsIndex) < 0) {\n if (thumbsSwiper.params.centeredSlides) {\n if (newThumbsIndex > currentThumbsIndex) {\n newThumbsIndex = newThumbsIndex - Math.floor(slidesPerView / 2) + 1;\n } else {\n newThumbsIndex = newThumbsIndex + Math.floor(slidesPerView / 2) - 1;\n }\n } else if (newThumbsIndex > currentThumbsIndex && thumbsSwiper.params.slidesPerGroup === 1);\n\n thumbsSwiper.slideTo(newThumbsIndex, initial ? 0 : undefined);\n }\n } // Activate thumbs\n\n let thumbsToActivate = 1;\n const thumbActiveClass = swiper.params.thumbs.slideThumbActiveClass;\n\n if (swiper.params.slidesPerView > 1 && !swiper.params.centeredSlides) {\n thumbsToActivate = swiper.params.slidesPerView;\n }\n\n if (!swiper.params.thumbs.multipleActiveThumbs) {\n thumbsToActivate = 1;\n }\n\n thumbsToActivate = Math.floor(thumbsToActivate);\n thumbsSwiper.slides.removeClass(thumbActiveClass);\n\n if (thumbsSwiper.params.loop || (thumbsSwiper.params.virtual && thumbsSwiper.params.virtual.enabled)) {\n for (let i = 0; i < thumbsToActivate; i += 1) {\n thumbsSwiper.$wrapperEl\n .children(`[data-swiper-slide-index=\"${swiper.realIndex + i}\"]`)\n .addClass(thumbActiveClass);\n }\n } else {\n for (let i = 0; i < thumbsToActivate; i += 1) {\n thumbsSwiper.slides.eq(swiper.realIndex + i).addClass(thumbActiveClass);\n }\n }\n }\n\n on('beforeInit', () => {\n const {thumbs} = swiper.params;\n if (!thumbs || !thumbs.swiper) return;\n init();\n update(true);\n });\n on('slideChange update resize observerUpdate', () => {\n if (!swiper.thumbs.swiper) return;\n update();\n });\n on('setTransition', (_s, duration) => {\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n thumbsSwiper.setTransition(duration);\n });\n on('beforeDestroy', () => {\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n\n if (swiperCreated && thumbsSwiper) {\n thumbsSwiper.destroy();\n }\n });\n Object.assign(swiper.thumbs, {\n init,\n update,\n });\n }\n\n function freeMode({swiper, extendParams, emit, once}) {\n extendParams({\n freeMode: {\n enabled: false,\n momentum: true,\n momentumRatio: 1,\n momentumBounce: true,\n momentumBounceRatio: 1,\n momentumVelocityRatio: 1,\n sticky: false,\n minimumVelocity: 0.02,\n },\n });\n\n function onTouchMove() {\n const {touchEventsData: data, touches} = swiper; // Velocity\n\n if (data.velocities.length === 0) {\n data.velocities.push({\n position: touches[swiper.isHorizontal() ? 'startX' : 'startY'],\n time: data.touchStartTime,\n });\n }\n\n data.velocities.push({\n position: touches[swiper.isHorizontal() ? 'currentX' : 'currentY'],\n time: now(),\n });\n }\n\n function onTouchEnd({currentPos}) {\n const {params, $wrapperEl, rtlTranslate: rtl, snapGrid, touchEventsData: data} = swiper; // Time diff\n\n const touchEndTime = now();\n const timeDiff = touchEndTime - data.touchStartTime;\n\n if (currentPos < -swiper.minTranslate()) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n\n if (currentPos > -swiper.maxTranslate()) {\n if (swiper.slides.length < snapGrid.length) {\n swiper.slideTo(snapGrid.length - 1);\n } else {\n swiper.slideTo(swiper.slides.length - 1);\n }\n\n return;\n }\n\n if (params.freeMode.momentum) {\n if (data.velocities.length > 1) {\n const lastMoveEvent = data.velocities.pop();\n const velocityEvent = data.velocities.pop();\n const distance = lastMoveEvent.position - velocityEvent.position;\n const time = lastMoveEvent.time - velocityEvent.time;\n swiper.velocity = distance / time;\n swiper.velocity /= 2;\n\n if (Math.abs(swiper.velocity) < params.freeMode.minimumVelocity) {\n swiper.velocity = 0;\n } // this implies that the user stopped moving a finger then released.\n // There would be no events with distance zero, so the last event is stale.\n\n if (time > 150 || now() - lastMoveEvent.time > 300) {\n swiper.velocity = 0;\n }\n } else {\n swiper.velocity = 0;\n }\n\n swiper.velocity *= params.freeMode.momentumVelocityRatio;\n data.velocities.length = 0;\n let momentumDuration = 1000 * params.freeMode.momentumRatio;\n const momentumDistance = swiper.velocity * momentumDuration;\n let newPosition = swiper.translate + momentumDistance;\n if (rtl) newPosition = -newPosition;\n let doBounce = false;\n let afterBouncePosition;\n const bounceAmount = Math.abs(swiper.velocity) * 20 * params.freeMode.momentumBounceRatio;\n let needsLoopFix;\n\n if (newPosition < swiper.maxTranslate()) {\n if (params.freeMode.momentumBounce) {\n if (newPosition + swiper.maxTranslate() < -bounceAmount) {\n newPosition = swiper.maxTranslate() - bounceAmount;\n }\n\n afterBouncePosition = swiper.maxTranslate();\n doBounce = true;\n data.allowMomentumBounce = true;\n } else {\n newPosition = swiper.maxTranslate();\n }\n\n if (params.loop && params.centeredSlides) needsLoopFix = true;\n } else if (newPosition > swiper.minTranslate()) {\n if (params.freeMode.momentumBounce) {\n if (newPosition - swiper.minTranslate() > bounceAmount) {\n newPosition = swiper.minTranslate() + bounceAmount;\n }\n\n afterBouncePosition = swiper.minTranslate();\n doBounce = true;\n data.allowMomentumBounce = true;\n } else {\n newPosition = swiper.minTranslate();\n }\n\n if (params.loop && params.centeredSlides) needsLoopFix = true;\n } else if (params.freeMode.sticky) {\n let nextSlide;\n\n for (let j = 0; j < snapGrid.length; j += 1) {\n if (snapGrid[j] > -newPosition) {\n nextSlide = j;\n break;\n }\n }\n\n if (\n Math.abs(snapGrid[nextSlide] - newPosition) < Math.abs(snapGrid[nextSlide - 1] - newPosition) ||\n swiper.swipeDirection === 'next'\n ) {\n newPosition = snapGrid[nextSlide];\n } else {\n newPosition = snapGrid[nextSlide - 1];\n }\n\n newPosition = -newPosition;\n }\n\n if (needsLoopFix) {\n once('transitionEnd', () => {\n swiper.loopFix();\n });\n } // Fix duration\n\n if (swiper.velocity !== 0) {\n if (rtl) {\n momentumDuration = Math.abs((-newPosition - swiper.translate) / swiper.velocity);\n } else {\n momentumDuration = Math.abs((newPosition - swiper.translate) / swiper.velocity);\n }\n\n if (params.freeMode.sticky) {\n // If freeMode.sticky is active and the user ends a swipe with a slow-velocity\n // event, then durations can be 20+ seconds to slide one (or zero!) slides.\n // It's easy to see this when simulating touch with mouse events. To fix this,\n // limit single-slide swipes to the default slide duration. This also has the\n // nice side effect of matching slide speed if the user stopped moving before\n // lifting finger or mouse vs. moving slowly before lifting the finger/mouse.\n // For faster swipes, also apply limits (albeit higher ones).\n const moveDistance = Math.abs((rtl ? -newPosition : newPosition) - swiper.translate);\n const currentSlideSize = swiper.slidesSizesGrid[swiper.activeIndex];\n\n if (moveDistance < currentSlideSize) {\n momentumDuration = params.speed;\n } else if (moveDistance < 2 * currentSlideSize) {\n momentumDuration = params.speed * 1.5;\n } else {\n momentumDuration = params.speed * 2.5;\n }\n }\n } else if (params.freeMode.sticky) {\n swiper.slideToClosest();\n return;\n }\n\n if (params.freeMode.momentumBounce && doBounce) {\n swiper.updateProgress(afterBouncePosition);\n swiper.setTransition(momentumDuration);\n swiper.setTranslate(newPosition);\n swiper.transitionStart(true, swiper.swipeDirection);\n swiper.animating = true;\n $wrapperEl.transitionEnd(() => {\n if (!swiper || swiper.destroyed || !data.allowMomentumBounce) return;\n emit('momentumBounce');\n swiper.setTransition(params.speed);\n setTimeout(() => {\n swiper.setTranslate(afterBouncePosition);\n $wrapperEl.transitionEnd(() => {\n if (!swiper || swiper.destroyed) return;\n swiper.transitionEnd();\n });\n }, 0);\n });\n } else if (swiper.velocity) {\n emit('_freeModeNoMomentumRelease');\n swiper.updateProgress(newPosition);\n swiper.setTransition(momentumDuration);\n swiper.setTranslate(newPosition);\n swiper.transitionStart(true, swiper.swipeDirection);\n\n if (!swiper.animating) {\n swiper.animating = true;\n $wrapperEl.transitionEnd(() => {\n if (!swiper || swiper.destroyed) return;\n swiper.transitionEnd();\n });\n }\n } else {\n swiper.updateProgress(newPosition);\n }\n\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n } else if (params.freeMode.sticky) {\n swiper.slideToClosest();\n return;\n } else if (params.freeMode) {\n emit('_freeModeNoMomentumRelease');\n }\n\n if (!params.freeMode.momentum || timeDiff >= params.longSwipesMs) {\n swiper.updateProgress();\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n }\n\n Object.assign(swiper, {\n freeMode: {\n onTouchMove,\n onTouchEnd,\n },\n });\n }\n\n function Grid({swiper, extendParams}) {\n extendParams({\n grid: {\n rows: 1,\n fill: 'column',\n },\n });\n let slidesNumberEvenToRows;\n let slidesPerRow;\n let numFullColumns;\n\n const initSlides = (slidesLength) => {\n const {slidesPerView} = swiper.params;\n const {rows, fill} = swiper.params.grid;\n slidesPerRow = slidesNumberEvenToRows / rows;\n numFullColumns = Math.floor(slidesLength / rows);\n\n if (Math.floor(slidesLength / rows) === slidesLength / rows) {\n slidesNumberEvenToRows = slidesLength;\n } else {\n slidesNumberEvenToRows = Math.ceil(slidesLength / rows) * rows;\n }\n\n if (slidesPerView !== 'auto' && fill === 'row') {\n slidesNumberEvenToRows = Math.max(slidesNumberEvenToRows, slidesPerView * rows);\n }\n };\n\n const updateSlide = (i, slide, slidesLength, getDirectionLabel) => {\n const {slidesPerGroup, spaceBetween} = swiper.params;\n const {rows, fill} = swiper.params.grid; // Set slides order\n\n let newSlideOrderIndex;\n let column;\n let row;\n\n if (fill === 'row' && slidesPerGroup > 1) {\n const groupIndex = Math.floor(i / (slidesPerGroup * rows));\n const slideIndexInGroup = i - rows * slidesPerGroup * groupIndex;\n const columnsInGroup =\n groupIndex === 0\n ? slidesPerGroup\n : Math.min(Math.ceil((slidesLength - groupIndex * rows * slidesPerGroup) / rows), slidesPerGroup);\n row = Math.floor(slideIndexInGroup / columnsInGroup);\n column = slideIndexInGroup - row * columnsInGroup + groupIndex * slidesPerGroup;\n newSlideOrderIndex = column + (row * slidesNumberEvenToRows) / rows;\n slide.css({\n '-webkit-order': newSlideOrderIndex,\n order: newSlideOrderIndex,\n });\n } else if (fill === 'column') {\n column = Math.floor(i / rows);\n row = i - column * rows;\n\n if (column > numFullColumns || (column === numFullColumns && row === rows - 1)) {\n row += 1;\n\n if (row >= rows) {\n row = 0;\n column += 1;\n }\n }\n } else {\n row = Math.floor(i / slidesPerRow);\n column = i - row * slidesPerRow;\n }\n\n slide.css(getDirectionLabel('margin-top'), row !== 0 ? spaceBetween && `${spaceBetween}px` : '');\n };\n\n const updateWrapperSize = (slideSize, snapGrid, getDirectionLabel) => {\n const {spaceBetween, centeredSlides, roundLengths} = swiper.params;\n const {rows} = swiper.params.grid;\n swiper.virtualSize = (slideSize + spaceBetween) * slidesNumberEvenToRows;\n swiper.virtualSize = Math.ceil(swiper.virtualSize / rows) - spaceBetween;\n swiper.$wrapperEl.css({\n [getDirectionLabel('width')]: `${swiper.virtualSize + spaceBetween}px`,\n });\n\n if (centeredSlides) {\n snapGrid.splice(0, snapGrid.length);\n const newSlidesGrid = [];\n\n for (let i = 0; i < snapGrid.length; i += 1) {\n let slidesGridItem = snapGrid[i];\n if (roundLengths) slidesGridItem = Math.floor(slidesGridItem);\n if (snapGrid[i] < swiper.virtualSize + snapGrid[0]) newSlidesGrid.push(slidesGridItem);\n }\n\n snapGrid.push(...newSlidesGrid);\n }\n };\n\n swiper.grid = {\n initSlides,\n updateSlide,\n updateWrapperSize,\n };\n }\n\n function appendSlide(slides) {\n const swiper = this;\n const {$wrapperEl, params} = swiper;\n\n if (params.loop) {\n swiper.loopDestroy();\n }\n\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) $wrapperEl.append(slides[i]);\n }\n } else {\n $wrapperEl.append(slides);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n\n if (!params.observer) {\n swiper.update();\n }\n }\n\n function prependSlide(slides) {\n const swiper = this;\n const {params, $wrapperEl, activeIndex} = swiper;\n\n if (params.loop) {\n swiper.loopDestroy();\n }\n\n let newActiveIndex = activeIndex + 1;\n\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) $wrapperEl.prepend(slides[i]);\n }\n\n newActiveIndex = activeIndex + slides.length;\n } else {\n $wrapperEl.prepend(slides);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n\n if (!params.observer) {\n swiper.update();\n }\n\n swiper.slideTo(newActiveIndex, 0, false);\n }\n\n function addSlide(index, slides) {\n const swiper = this;\n const {$wrapperEl, params, activeIndex} = swiper;\n let activeIndexBuffer = activeIndex;\n\n if (params.loop) {\n activeIndexBuffer -= swiper.loopedSlides;\n swiper.loopDestroy();\n swiper.slides = $wrapperEl.children(`.${params.slideClass}`);\n }\n\n const baseLength = swiper.slides.length;\n\n if (index <= 0) {\n swiper.prependSlide(slides);\n return;\n }\n\n if (index >= baseLength) {\n swiper.appendSlide(slides);\n return;\n }\n\n let newActiveIndex = activeIndexBuffer > index ? activeIndexBuffer + 1 : activeIndexBuffer;\n const slidesBuffer = [];\n\n for (let i = baseLength - 1; i >= index; i -= 1) {\n const currentSlide = swiper.slides.eq(i);\n currentSlide.remove();\n slidesBuffer.unshift(currentSlide);\n }\n\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) $wrapperEl.append(slides[i]);\n }\n\n newActiveIndex = activeIndexBuffer > index ? activeIndexBuffer + slides.length : activeIndexBuffer;\n } else {\n $wrapperEl.append(slides);\n }\n\n for (let i = 0; i < slidesBuffer.length; i += 1) {\n $wrapperEl.append(slidesBuffer[i]);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n\n if (!params.observer) {\n swiper.update();\n }\n\n if (params.loop) {\n swiper.slideTo(newActiveIndex + swiper.loopedSlides, 0, false);\n } else {\n swiper.slideTo(newActiveIndex, 0, false);\n }\n }\n\n function removeSlide(slidesIndexes) {\n const swiper = this;\n const {params, $wrapperEl, activeIndex} = swiper;\n let activeIndexBuffer = activeIndex;\n\n if (params.loop) {\n activeIndexBuffer -= swiper.loopedSlides;\n swiper.loopDestroy();\n swiper.slides = $wrapperEl.children(`.${params.slideClass}`);\n }\n\n let newActiveIndex = activeIndexBuffer;\n let indexToRemove;\n\n if (typeof slidesIndexes === 'object' && 'length' in slidesIndexes) {\n for (let i = 0; i < slidesIndexes.length; i += 1) {\n indexToRemove = slidesIndexes[i];\n if (swiper.slides[indexToRemove]) swiper.slides.eq(indexToRemove).remove();\n if (indexToRemove < newActiveIndex) newActiveIndex -= 1;\n }\n\n newActiveIndex = Math.max(newActiveIndex, 0);\n } else {\n indexToRemove = slidesIndexes;\n if (swiper.slides[indexToRemove]) swiper.slides.eq(indexToRemove).remove();\n if (indexToRemove < newActiveIndex) newActiveIndex -= 1;\n newActiveIndex = Math.max(newActiveIndex, 0);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n\n if (!params.observer) {\n swiper.update();\n }\n\n if (params.loop) {\n swiper.slideTo(newActiveIndex + swiper.loopedSlides, 0, false);\n } else {\n swiper.slideTo(newActiveIndex, 0, false);\n }\n }\n\n function removeAllSlides() {\n const swiper = this;\n const slidesIndexes = [];\n\n for (let i = 0; i < swiper.slides.length; i += 1) {\n slidesIndexes.push(i);\n }\n\n swiper.removeSlide(slidesIndexes);\n }\n\n function Manipulation({swiper}) {\n Object.assign(swiper, {\n appendSlide: appendSlide.bind(swiper),\n prependSlide: prependSlide.bind(swiper),\n addSlide: addSlide.bind(swiper),\n removeSlide: removeSlide.bind(swiper),\n removeAllSlides: removeAllSlides.bind(swiper),\n });\n }\n\n function effectInit(params) {\n const {effect, swiper, on, setTranslate, setTransition, overwriteParams, perspective} = params;\n on('beforeInit', () => {\n if (swiper.params.effect !== effect) return;\n swiper.classNames.push(`${swiper.params.containerModifierClass}${effect}`);\n\n if (perspective && perspective()) {\n swiper.classNames.push(`${swiper.params.containerModifierClass}3d`);\n }\n\n const overwriteParamsResult = overwriteParams ? overwriteParams() : {};\n Object.assign(swiper.params, overwriteParamsResult);\n Object.assign(swiper.originalParams, overwriteParamsResult);\n });\n on('setTranslate', () => {\n if (swiper.params.effect !== effect) return;\n setTranslate();\n });\n on('setTransition', (_s, duration) => {\n if (swiper.params.effect !== effect) return;\n setTransition(duration);\n });\n }\n\n function effectTarget(effectParams, $slideEl) {\n if (effectParams.transformEl) {\n return $slideEl.find(effectParams.transformEl).css({\n 'backface-visibility': 'hidden',\n '-webkit-backface-visibility': 'hidden',\n });\n }\n\n return $slideEl;\n }\n\n function effectVirtualTransitionEnd({swiper, duration, transformEl, allSlides}) {\n const {slides, activeIndex, $wrapperEl} = swiper;\n\n if (swiper.params.virtualTranslate && duration !== 0) {\n let eventTriggered = false;\n let $transitionEndTarget;\n\n if (allSlides) {\n $transitionEndTarget = transformEl ? slides.find(transformEl) : slides;\n } else {\n $transitionEndTarget = transformEl ? slides.eq(activeIndex).find(transformEl) : slides.eq(activeIndex);\n }\n\n $transitionEndTarget.transitionEnd(() => {\n if (eventTriggered) return;\n if (!swiper || swiper.destroyed) return;\n eventTriggered = true;\n swiper.animating = false;\n const triggerEvents = ['webkitTransitionEnd', 'transitionend'];\n\n for (let i = 0; i < triggerEvents.length; i += 1) {\n $wrapperEl.trigger(triggerEvents[i]);\n }\n });\n }\n }\n\n function EffectFade({swiper, extendParams, on}) {\n extendParams({\n fadeEffect: {\n crossFade: false,\n transformEl: null,\n },\n });\n\n const setTranslate = () => {\n const {slides} = swiper;\n const params = swiper.params.fadeEffect;\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = swiper.slides.eq(i);\n const offset = $slideEl[0].swiperSlideOffset;\n let tx = -offset;\n if (!swiper.params.virtualTranslate) tx -= swiper.translate;\n let ty = 0;\n\n if (!swiper.isHorizontal()) {\n ty = tx;\n tx = 0;\n }\n\n const slideOpacity = swiper.params.fadeEffect.crossFade\n ? Math.max(1 - Math.abs($slideEl[0].progress), 0)\n : 1 + Math.min(Math.max($slideEl[0].progress, -1), 0);\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl\n .css({\n opacity: slideOpacity,\n })\n .transform(`translate3d(${tx}px, ${ty}px, 0px)`);\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.fadeEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements.transition(duration);\n effectVirtualTransitionEnd({\n swiper,\n duration,\n transformEl,\n allSlides: true,\n });\n };\n\n effectInit({\n effect: 'fade',\n swiper,\n on,\n setTranslate,\n setTransition,\n overwriteParams: () => ({\n slidesPerView: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n spaceBetween: 0,\n virtualTranslate: !swiper.params.cssMode,\n }),\n });\n }\n\n function EffectCube({swiper, extendParams, on}) {\n extendParams({\n cubeEffect: {\n slideShadows: true,\n shadow: true,\n shadowOffset: 20,\n shadowScale: 0.94,\n },\n });\n\n const setTranslate = () => {\n const {\n $el,\n $wrapperEl,\n slides,\n width: swiperWidth,\n height: swiperHeight,\n rtlTranslate: rtl,\n size: swiperSize,\n browser,\n } = swiper;\n const params = swiper.params.cubeEffect;\n const isHorizontal = swiper.isHorizontal();\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n let wrapperRotate = 0;\n let $cubeShadowEl;\n\n if (params.shadow) {\n if (isHorizontal) {\n $cubeShadowEl = $wrapperEl.find('.swiper-cube-shadow');\n\n if ($cubeShadowEl.length === 0) {\n $cubeShadowEl = $('
    ');\n $wrapperEl.append($cubeShadowEl);\n }\n\n $cubeShadowEl.css({\n height: `${swiperWidth}px`,\n });\n } else {\n $cubeShadowEl = $el.find('.swiper-cube-shadow');\n\n if ($cubeShadowEl.length === 0) {\n $cubeShadowEl = $('
    ');\n $el.append($cubeShadowEl);\n }\n }\n }\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n let slideIndex = i;\n\n if (isVirtual) {\n slideIndex = parseInt($slideEl.attr('data-swiper-slide-index'), 10);\n }\n\n let slideAngle = slideIndex * 90;\n let round = Math.floor(slideAngle / 360);\n\n if (rtl) {\n slideAngle = -slideAngle;\n round = Math.floor(-slideAngle / 360);\n }\n\n const progress = Math.max(Math.min($slideEl[0].progress, 1), -1);\n let tx = 0;\n let ty = 0;\n let tz = 0;\n\n if (slideIndex % 4 === 0) {\n tx = -round * 4 * swiperSize;\n tz = 0;\n } else if ((slideIndex - 1) % 4 === 0) {\n tx = 0;\n tz = -round * 4 * swiperSize;\n } else if ((slideIndex - 2) % 4 === 0) {\n tx = swiperSize + round * 4 * swiperSize;\n tz = swiperSize;\n } else if ((slideIndex - 3) % 4 === 0) {\n tx = -swiperSize;\n tz = 3 * swiperSize + swiperSize * 4 * round;\n }\n\n if (rtl) {\n tx = -tx;\n }\n\n if (!isHorizontal) {\n ty = tx;\n tx = 0;\n }\n\n const transform = `rotateX(${isHorizontal ? 0 : -slideAngle}deg) rotateY(${\n isHorizontal ? slideAngle : 0\n }deg) translate3d(${tx}px, ${ty}px, ${tz}px)`;\n\n if (progress <= 1 && progress > -1) {\n wrapperRotate = slideIndex * 90 + progress * 90;\n if (rtl) wrapperRotate = -slideIndex * 90 - progress * 90;\n }\n\n $slideEl.transform(transform);\n\n if (params.slideShadows) {\n // Set shadows\n let shadowBefore = isHorizontal\n ? $slideEl.find('.swiper-slide-shadow-left')\n : $slideEl.find('.swiper-slide-shadow-top');\n let shadowAfter = isHorizontal\n ? $slideEl.find('.swiper-slide-shadow-right')\n : $slideEl.find('.swiper-slide-shadow-bottom');\n\n if (shadowBefore.length === 0) {\n shadowBefore = $(`
    `);\n $slideEl.append(shadowBefore);\n }\n\n if (shadowAfter.length === 0) {\n shadowAfter = $(`
    `);\n $slideEl.append(shadowAfter);\n }\n\n if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0);\n if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0);\n }\n }\n\n $wrapperEl.css({\n '-webkit-transform-origin': `50% 50% -${swiperSize / 2}px`,\n 'transform-origin': `50% 50% -${swiperSize / 2}px`,\n });\n\n if (params.shadow) {\n if (isHorizontal) {\n $cubeShadowEl.transform(\n `translate3d(0px, ${swiperWidth / 2 + params.shadowOffset}px, ${\n -swiperWidth / 2\n }px) rotateX(90deg) rotateZ(0deg) scale(${params.shadowScale})`,\n );\n } else {\n const shadowAngle = Math.abs(wrapperRotate) - Math.floor(Math.abs(wrapperRotate) / 90) * 90;\n const multiplier =\n 1.5 - (Math.sin((shadowAngle * 2 * Math.PI) / 360) / 2 + Math.cos((shadowAngle * 2 * Math.PI) / 360) / 2);\n const scale1 = params.shadowScale;\n const scale2 = params.shadowScale / multiplier;\n const offset = params.shadowOffset;\n $cubeShadowEl.transform(\n `scale3d(${scale1}, 1, ${scale2}) translate3d(0px, ${swiperHeight / 2 + offset}px, ${\n -swiperHeight / 2 / scale2\n }px) rotateX(-90deg)`,\n );\n }\n }\n\n const zFactor = browser.isSafari || browser.isWebView ? -swiperSize / 2 : 0;\n $wrapperEl.transform(\n `translate3d(0px,0,${zFactor}px) rotateX(${swiper.isHorizontal() ? 0 : wrapperRotate}deg) rotateY(${\n swiper.isHorizontal() ? -wrapperRotate : 0\n }deg)`,\n );\n };\n\n const setTransition = (duration) => {\n const {$el, slides} = swiper;\n slides\n .transition(duration)\n .find(\n '.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left',\n )\n .transition(duration);\n\n if (swiper.params.cubeEffect.shadow && !swiper.isHorizontal()) {\n $el.find('.swiper-cube-shadow').transition(duration);\n }\n };\n\n effectInit({\n effect: 'cube',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => true,\n overwriteParams: () => ({\n slidesPerView: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n resistanceRatio: 0,\n spaceBetween: 0,\n centeredSlides: false,\n virtualTranslate: true,\n }),\n });\n }\n\n function createShadow(params, $slideEl, side) {\n const shadowClass = `swiper-slide-shadow${side ? `-${side}` : ''}`;\n const $shadowContainer = params.transformEl ? $slideEl.find(params.transformEl) : $slideEl;\n let $shadowEl = $shadowContainer.children(`.${shadowClass}`);\n\n if (!$shadowEl.length) {\n $shadowEl = $(`
    `);\n $shadowContainer.append($shadowEl);\n }\n\n return $shadowEl;\n }\n\n function EffectFlip({swiper, extendParams, on}) {\n extendParams({\n flipEffect: {\n slideShadows: true,\n limitRotation: true,\n transformEl: null,\n },\n });\n\n const setTranslate = () => {\n const {slides, rtlTranslate: rtl} = swiper;\n const params = swiper.params.flipEffect;\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n let progress = $slideEl[0].progress;\n\n if (swiper.params.flipEffect.limitRotation) {\n progress = Math.max(Math.min($slideEl[0].progress, 1), -1);\n }\n\n const offset = $slideEl[0].swiperSlideOffset;\n const rotate = -180 * progress;\n let rotateY = rotate;\n let rotateX = 0;\n let tx = swiper.params.cssMode ? -offset - swiper.translate : -offset;\n let ty = 0;\n\n if (!swiper.isHorizontal()) {\n ty = tx;\n tx = 0;\n rotateX = -rotateY;\n rotateY = 0;\n } else if (rtl) {\n rotateY = -rotateY;\n }\n\n $slideEl[0].style.zIndex = -Math.abs(Math.round(progress)) + slides.length;\n\n if (params.slideShadows) {\n // Set shadows\n let shadowBefore = swiper.isHorizontal()\n ? $slideEl.find('.swiper-slide-shadow-left')\n : $slideEl.find('.swiper-slide-shadow-top');\n let shadowAfter = swiper.isHorizontal()\n ? $slideEl.find('.swiper-slide-shadow-right')\n : $slideEl.find('.swiper-slide-shadow-bottom');\n\n if (shadowBefore.length === 0) {\n shadowBefore = createShadow(params, $slideEl, swiper.isHorizontal() ? 'left' : 'top');\n }\n\n if (shadowAfter.length === 0) {\n shadowAfter = createShadow(params, $slideEl, swiper.isHorizontal() ? 'right' : 'bottom');\n }\n\n if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0);\n if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0);\n }\n\n const transform = `translate3d(${tx}px, ${ty}px, 0px) rotateX(${rotateX}deg) rotateY(${rotateY}deg)`;\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl.transform(transform);\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.flipEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements\n .transition(duration)\n .find(\n '.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left',\n )\n .transition(duration);\n effectVirtualTransitionEnd({\n swiper,\n duration,\n transformEl,\n });\n };\n\n effectInit({\n effect: 'flip',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => true,\n overwriteParams: () => ({\n slidesPerView: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n spaceBetween: 0,\n virtualTranslate: !swiper.params.cssMode,\n }),\n });\n }\n\n function EffectCoverflow({swiper, extendParams, on}) {\n extendParams({\n coverflowEffect: {\n rotate: 50,\n stretch: 0,\n depth: 100,\n scale: 1,\n modifier: 1,\n slideShadows: true,\n transformEl: null,\n },\n });\n\n const setTranslate = () => {\n const {width: swiperWidth, height: swiperHeight, slides, slidesSizesGrid} = swiper;\n const params = swiper.params.coverflowEffect;\n const isHorizontal = swiper.isHorizontal();\n const transform = swiper.translate;\n const center = isHorizontal ? -transform + swiperWidth / 2 : -transform + swiperHeight / 2;\n const rotate = isHorizontal ? params.rotate : -params.rotate;\n const translate = params.depth; // Each slide offset from center\n\n for (let i = 0, length = slides.length; i < length; i += 1) {\n const $slideEl = slides.eq(i);\n const slideSize = slidesSizesGrid[i];\n const slideOffset = $slideEl[0].swiperSlideOffset;\n const offsetMultiplier = ((center - slideOffset - slideSize / 2) / slideSize) * params.modifier;\n let rotateY = isHorizontal ? rotate * offsetMultiplier : 0;\n let rotateX = isHorizontal ? 0 : rotate * offsetMultiplier; // var rotateZ = 0\n\n let translateZ = -translate * Math.abs(offsetMultiplier);\n let stretch = params.stretch; // Allow percentage to make a relative stretch for responsive sliders\n\n if (typeof stretch === 'string' && stretch.indexOf('%') !== -1) {\n stretch = (parseFloat(params.stretch) / 100) * slideSize;\n }\n\n let translateY = isHorizontal ? 0 : stretch * offsetMultiplier;\n let translateX = isHorizontal ? stretch * offsetMultiplier : 0;\n let scale = 1 - (1 - params.scale) * Math.abs(offsetMultiplier); // Fix for ultra small values\n\n if (Math.abs(translateX) < 0.001) translateX = 0;\n if (Math.abs(translateY) < 0.001) translateY = 0;\n if (Math.abs(translateZ) < 0.001) translateZ = 0;\n if (Math.abs(rotateY) < 0.001) rotateY = 0;\n if (Math.abs(rotateX) < 0.001) rotateX = 0;\n if (Math.abs(scale) < 0.001) scale = 0;\n const slideTransform = `translate3d(${translateX}px,${translateY}px,${translateZ}px) rotateX(${rotateX}deg) rotateY(${rotateY}deg) scale(${scale})`;\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl.transform(slideTransform);\n $slideEl[0].style.zIndex = -Math.abs(Math.round(offsetMultiplier)) + 1;\n\n if (params.slideShadows) {\n // Set shadows\n let $shadowBeforeEl = isHorizontal\n ? $slideEl.find('.swiper-slide-shadow-left')\n : $slideEl.find('.swiper-slide-shadow-top');\n let $shadowAfterEl = isHorizontal\n ? $slideEl.find('.swiper-slide-shadow-right')\n : $slideEl.find('.swiper-slide-shadow-bottom');\n\n if ($shadowBeforeEl.length === 0) {\n $shadowBeforeEl = createShadow(params, $slideEl, isHorizontal ? 'left' : 'top');\n }\n\n if ($shadowAfterEl.length === 0) {\n $shadowAfterEl = createShadow(params, $slideEl, isHorizontal ? 'right' : 'bottom');\n }\n\n if ($shadowBeforeEl.length) $shadowBeforeEl[0].style.opacity = offsetMultiplier > 0 ? offsetMultiplier : 0;\n if ($shadowAfterEl.length) $shadowAfterEl[0].style.opacity = -offsetMultiplier > 0 ? -offsetMultiplier : 0;\n }\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.coverflowEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements\n .transition(duration)\n .find(\n '.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left',\n )\n .transition(duration);\n };\n\n effectInit({\n effect: 'coverflow',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => true,\n overwriteParams: () => ({\n watchSlidesProgress: true,\n }),\n });\n }\n\n function EffectCreative({swiper, extendParams, on}) {\n extendParams({\n creativeEffect: {\n transformEl: null,\n limitProgress: 1,\n shadowPerProgress: false,\n progressMultiplier: 1,\n perspective: true,\n prev: {\n translate: [0, 0, 0],\n rotate: [0, 0, 0],\n opacity: 1,\n scale: 1,\n },\n next: {\n translate: [0, 0, 0],\n rotate: [0, 0, 0],\n opacity: 1,\n scale: 1,\n },\n },\n });\n\n const getTranslateValue = (value) => {\n if (typeof value === 'string') return value;\n return `${value}px`;\n };\n\n const setTranslate = () => {\n const {slides, $wrapperEl, slidesSizesGrid} = swiper;\n const params = swiper.params.creativeEffect;\n const {progressMultiplier: multiplier} = params;\n const isCenteredSlides = swiper.params.centeredSlides;\n\n if (isCenteredSlides) {\n const margin = slidesSizesGrid[0] / 2 - swiper.params.slidesOffsetBefore || 0;\n $wrapperEl.transform(`translateX(calc(50% - ${margin}px))`);\n }\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n const slideProgress = $slideEl[0].progress;\n const progress = Math.min(Math.max($slideEl[0].progress, -params.limitProgress), params.limitProgress);\n let originalProgress = progress;\n\n if (!isCenteredSlides) {\n originalProgress = Math.min(\n Math.max($slideEl[0].originalProgress, -params.limitProgress),\n params.limitProgress,\n );\n }\n\n const offset = $slideEl[0].swiperSlideOffset;\n const t = [swiper.params.cssMode ? -offset - swiper.translate : -offset, 0, 0];\n const r = [0, 0, 0];\n let custom = false;\n\n if (!swiper.isHorizontal()) {\n t[1] = t[0];\n t[0] = 0;\n }\n\n let data = {\n translate: [0, 0, 0],\n rotate: [0, 0, 0],\n scale: 1,\n opacity: 1,\n };\n\n if (progress < 0) {\n data = params.next;\n custom = true;\n } else if (progress > 0) {\n data = params.prev;\n custom = true;\n } // set translate\n\n t.forEach((value, index) => {\n t[index] = `calc(${value}px + (${getTranslateValue(data.translate[index])} * ${Math.abs(\n progress * multiplier,\n )}))`;\n }); // set rotates\n\n r.forEach((value, index) => {\n r[index] = data.rotate[index] * Math.abs(progress * multiplier);\n });\n $slideEl[0].style.zIndex = -Math.abs(Math.round(slideProgress)) + slides.length;\n const translateString = t.join(', ');\n const rotateString = `rotateX(${r[0]}deg) rotateY(${r[1]}deg) rotateZ(${r[2]}deg)`;\n const scaleString =\n originalProgress < 0\n ? `scale(${1 + (1 - data.scale) * originalProgress * multiplier})`\n : `scale(${1 - (1 - data.scale) * originalProgress * multiplier})`;\n const opacityString =\n originalProgress < 0\n ? 1 + (1 - data.opacity) * originalProgress * multiplier\n : 1 - (1 - data.opacity) * originalProgress * multiplier;\n const transform = `translate3d(${translateString}) ${rotateString} ${scaleString}`; // Set shadows\n\n if ((custom && data.shadow) || !custom) {\n let $shadowEl = $slideEl.children('.swiper-slide-shadow');\n\n if ($shadowEl.length === 0 && data.shadow) {\n $shadowEl = createShadow(params, $slideEl);\n }\n\n if ($shadowEl.length) {\n const shadowOpacity = params.shadowPerProgress ? progress * (1 / params.limitProgress) : progress;\n $shadowEl[0].style.opacity = Math.min(Math.max(Math.abs(shadowOpacity), 0), 1);\n }\n }\n\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl.transform(transform).css({\n opacity: opacityString,\n });\n\n if (data.origin) {\n $targetEl.css('transform-origin', data.origin);\n }\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.creativeEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements.transition(duration).find('.swiper-slide-shadow').transition(duration);\n effectVirtualTransitionEnd({\n swiper,\n duration,\n transformEl,\n allSlides: true,\n });\n };\n\n effectInit({\n effect: 'creative',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => swiper.params.creativeEffect.perspective,\n overwriteParams: () => ({\n watchSlidesProgress: true,\n virtualTranslate: !swiper.params.cssMode,\n }),\n });\n }\n\n function EffectCards({swiper, extendParams, on}) {\n extendParams({\n cardsEffect: {\n slideShadows: true,\n transformEl: null,\n },\n });\n\n const setTranslate = () => {\n const {slides, activeIndex} = swiper;\n const params = swiper.params.cardsEffect;\n const {startTranslate, isTouched} = swiper.touchEventsData;\n const currentTranslate = swiper.translate;\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n const slideProgress = $slideEl[0].progress;\n const progress = Math.min(Math.max(slideProgress, -4), 4);\n let offset = $slideEl[0].swiperSlideOffset;\n\n if (swiper.params.centeredSlides && !swiper.params.cssMode) {\n swiper.$wrapperEl.transform(`translateX(${swiper.minTranslate()}px)`);\n }\n\n if (swiper.params.centeredSlides && swiper.params.cssMode) {\n offset -= slides[0].swiperSlideOffset;\n }\n\n let tX = swiper.params.cssMode ? -offset - swiper.translate : -offset;\n let tY = 0;\n const tZ = -100 * Math.abs(progress);\n let scale = 1;\n let rotate = -2 * progress;\n let tXAdd = 8 - Math.abs(progress) * 0.75;\n const isSwipeToNext =\n (i === activeIndex || i === activeIndex - 1) &&\n progress > 0 &&\n progress < 1 &&\n (isTouched || swiper.params.cssMode) &&\n currentTranslate < startTranslate;\n const isSwipeToPrev =\n (i === activeIndex || i === activeIndex + 1) &&\n progress < 0 &&\n progress > -1 &&\n (isTouched || swiper.params.cssMode) &&\n currentTranslate > startTranslate;\n\n if (isSwipeToNext || isSwipeToPrev) {\n const subProgress = (1 - Math.abs((Math.abs(progress) - 0.5) / 0.5)) ** 0.5;\n rotate += -28 * progress * subProgress;\n scale += -0.5 * subProgress;\n tXAdd += 96 * subProgress;\n tY = `${-25 * subProgress * Math.abs(progress)}%`;\n }\n\n if (progress < 0) {\n // next\n tX = `calc(${tX}px + (${tXAdd * Math.abs(progress)}%))`;\n } else if (progress > 0) {\n // prev\n tX = `calc(${tX}px + (-${tXAdd * Math.abs(progress)}%))`;\n } else {\n tX = `${tX}px`;\n }\n\n if (!swiper.isHorizontal()) {\n const prevY = tY;\n tY = tX;\n tX = prevY;\n }\n\n const scaleString = progress < 0 ? `${1 + (1 - scale) * progress}` : `${1 - (1 - scale) * progress}`;\n const transform = `\n translate3d(${tX}, ${tY}, ${tZ}px)\n rotateZ(${rotate}deg)\n scale(${scaleString})\n `;\n\n if (params.slideShadows) {\n // Set shadows\n let $shadowEl = $slideEl.find('.swiper-slide-shadow');\n\n if ($shadowEl.length === 0) {\n $shadowEl = createShadow(params, $slideEl);\n }\n\n if ($shadowEl.length)\n $shadowEl[0].style.opacity = Math.min(Math.max((Math.abs(progress) - 0.5) / 0.5, 0), 1);\n }\n\n $slideEl[0].style.zIndex = -Math.abs(Math.round(slideProgress)) + slides.length;\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl.transform(transform);\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.cardsEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements.transition(duration).find('.swiper-slide-shadow').transition(duration);\n effectVirtualTransitionEnd({\n swiper,\n duration,\n transformEl,\n });\n };\n\n effectInit({\n effect: 'cards',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => true,\n overwriteParams: () => ({\n watchSlidesProgress: true,\n virtualTranslate: !swiper.params.cssMode,\n }),\n });\n }\n\n // Swiper Class\n const modules = [\n Virtual,\n Keyboard,\n Mousewheel,\n Navigation,\n Pagination,\n Scrollbar,\n Parallax,\n Zoom,\n Lazy,\n Controller,\n A11y,\n History,\n HashNavigation,\n Autoplay,\n Thumb,\n freeMode,\n Grid,\n Manipulation,\n EffectFade,\n EffectCube,\n EffectFlip,\n EffectCoverflow,\n EffectCreative,\n EffectCards,\n ];\n Swiper.use(modules);\n\n global.Swiper = Swiper;\n\n return Swiper;\n });\n //# sourceMappingURL=swiper-bundle.js.map\n};\n\nexport default swiper();\n"]} \ No newline at end of file diff --git a/source/img/reviews.png b/source/img/reviews.png new file mode 100644 index 0000000000000000000000000000000000000000..0e22b2148ff69e2faa281fdb0cf32185243aaa29 GIT binary patch literal 11864 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 LNkvXXu0mjf*mKO= literal 0 HcmV?d00001 diff --git a/source/index.html b/source/index.html index 43f54cbfa..e2700c5c2 100644 --- a/source/index.html +++ b/source/index.html @@ -7,7 +7,6 @@ SUPERGYM - @@ -315,7 +314,7 @@

    Тренеры

    -
    +
    [data-select].is-open ✅\n\n// выносим все в дата атрибуты\n// url до иконок пинов карты, настройки автопрокрутки слайдера, url к json и т.д.\n\n// для адаптивного JS используется matchMedia и addListener\n// const breakpoint = window.matchMedia(`(min-width:1024px)`);\n// const breakpointChecker = () => {\n// if (breakpoint.matches) {\n// } else {\n// }\n// };\n// breakpoint.addListener(breakpointChecker);\n// breakpointChecker();\n\n// используйте .closest(el)\n","export class Accordions {\n constructor() {\n this._openHeight = 0;\n this._windowWidth = window.innerWidth;\n this._documentClickHandler = this._documentClickHandler.bind(this);\n this._windowResizeHandler = this._windowResizeHandler.bind(this);\n this._init();\n }\n\n _init() {\n this.fullUpdate();\n document.addEventListener('click', this._documentClickHandler);\n window.addEventListener('resize', this._windowResizeHandler);\n }\n\n _documentClickHandler(evt) {\n const target = evt.target;\n if (!target.closest('[data-accordion=\"button\"]')) {\n return;\n }\n\n evt.preventDefault();\n const parent = target.closest('[data-accordion=\"parent\"]');\n\n if (parent.dataset.destroy && !window.matchMedia(parent.dataset.destroy).matches) {\n return;\n }\n\n const element = target.closest('[data-accordion=\"element\"]');\n if (element.classList.contains('is-active')) {\n this.closeAccordion(element);\n return;\n }\n this.openAccordion(element);\n }\n\n _windowResizeHandler() {\n if (this._windowWidth === window.innerWidth) {\n return;\n }\n this._windowWidth = window.innerWidth;\n this.updateAccordionsHeight();\n }\n\n closeAllAccordion(parent) {\n const elements = parent.querySelectorAll('[data-accordion=\"element\"]');\n elements.forEach((element) => {\n const currentParent = element.closest('[data-accordion=\"parent\"]');\n if (currentParent === parent) {\n this.closeAccordion(element);\n }\n });\n }\n\n updateAccordionsHeight(element = null) {\n if (element) {\n const content = element.querySelector('[data-accordion=\"content\"]');\n content.style.transition = 'none';\n content.style.maxHeight = `${content.scrollHeight}px`;\n setTimeout(() => {\n content.style.transition = null;\n });\n return;\n }\n\n const closeElements = document.querySelectorAll('[data-accordion=\"element\"]:not(.is-active)');\n\n closeElements.forEach((closeElement) => {\n const parent = closeElement.closest('[data-accordion=\"parent\"]');\n const content = closeElement.querySelector('[data-accordion=\"content\"]');\n if (parent.dataset.destroy && !window.matchMedia(parent.dataset.destroy).matches) {\n content.style.maxHeight = '100%';\n return;\n }\n content.style.maxHeight = null;\n });\n\n const openElements = document.querySelectorAll('[data-accordion=\"element\"].is-active');\n openElements.forEach((openElement) => {\n const content = openElement.querySelector('[data-accordion=\"content\"]');\n const parent = openElement.closest('[data-accordion=\"parent\"]');\n if (parent.dataset.destroy && !window.matchMedia(parent.dataset.destroy).matches) {\n content.style.maxHeight = '100%';\n return;\n }\n content.style.transition = 'none';\n content.style.maxHeight = `${content.scrollHeight}px`;\n setTimeout(() => {\n content.style.transition = null;\n });\n });\n }\n\n fullUpdate(parent = null, transition = false) {\n let openElements;\n if (parent) {\n openElements = parent.querySelectorAll('[data-accordion=\"element\"].is-active');\n } else {\n openElements = document.querySelectorAll('[data-accordion=\"element\"].is-active');\n }\n openElements.forEach((openElement) => {\n const innerParent = openElement.querySelector('[data-accordion=\"parent\"]');\n if (innerParent) {\n return;\n }\n this.openAccordion(openElement, transition);\n });\n this.updateAccordionsHeight();\n }\n\n openAccordion(element, transition = true) {\n const parentElement = element.closest('[data-accordion=\"parent\"]');\n const contentElement = element.querySelector('[data-accordion=\"content\"]');\n this._openHeight += contentElement.scrollHeight;\n\n if (parentElement.hasAttribute('data-single')) {\n this.closeAllAccordion(parentElement);\n }\n\n element.classList.add('is-active');\n if (transition) {\n contentElement.style.maxHeight = `${this._openHeight}px`;\n } else {\n contentElement.style.transition = 'none';\n contentElement.style.maxHeight = `${this._openHeight}px`;\n setTimeout(() => {\n contentElement.style.transition = null;\n });\n }\n\n if (parentElement.closest('[data-accordion=\"element\"]')) {\n this.openAccordion(parentElement.closest('[data-accordion=\"element\"]'), transition);\n return;\n }\n\n this._openHeight = 0;\n }\n\n closeAccordion(element, transition = true) {\n const contentElement = element.querySelector('[data-accordion=\"content\"]');\n if (!contentElement) {\n return;\n }\n element.classList.remove('is-active');\n if (transition) {\n contentElement.style.maxHeight = '0';\n } else {\n contentElement.style.transition = 'none';\n contentElement.style.maxHeight = '0';\n setTimeout(() => {\n contentElement.style.transition = null;\n });\n }\n }\n}\n","import {Accordions} from './accordions';\nlet accordions;\n\nconst initAccordions = () => {\n accordions = new Accordions();\n // Используйте в разработке экспортируемую переменную accordions, window сделан для бэкэнда\n window.accordions = accordions;\n};\n\nexport {initAccordions, accordions};\n","\nconst baseSuccessCallback = (event) => {\n event.preventDefault();\n // В данном колбеке бэкендер, либо разработчик при необходимости будет писать запрос на отправку формы на сервер и обрабатывать возможные ошибки или успешную отправку формы на сервер\n};\n\nconst baseErrorCallback = (event) => {\n event.preventDefault();\n // Данный коллбек используется при необходимости выполнить какое-либо действие помимо показа ошибок при попытке отправить неккорректные данные, он не связан с запросами на сервер\n};\n\nexport const callbacks = {\n base: {\n // Сбросс формы\n reset: true,\n // Таймаут сброса формы\n resetTimeout: 500,\n successCallback: baseSuccessCallback,\n errorCallback: baseErrorCallback,\n },\n};\n","import {Validator} from './validator';\nimport {callbacks} from './callback';\nimport {initPhoneInput} from './init-phone-input';\n\nexport class Form {\n constructor() {\n this._validator = new Validator();\n this._initPhoneInput = initPhoneInput;\n this._callbacks = callbacks;\n }\n\n _resetSelect(select) {\n const nativeSelect = select.querySelector('select');\n const activeIndex = nativeSelect.options.selectedIndex;\n const selectedOption = nativeSelect.options[activeIndex];\n const buttonText = select.querySelector('.custom-select__text');\n const selectItems = select.querySelectorAll('.custom-select__item');\n buttonText.textContent = selectedOption.textContent;\n selectItems.forEach((item, index) => {\n if (index === activeIndex - 1) {\n item.setAttribute('aria-selected', 'true');\n return;\n }\n item.setAttribute('aria-selected', 'false');\n });\n if (!nativeSelect.value) {\n select.classList.remove('not-empty');\n select.classList.remove('is-valid');\n }\n }\n\n _resetSelects(form) {\n const selects = form.querySelectorAll('[data-select]');\n selects.forEach((select) => {\n this._resetSelect(select);\n });\n }\n\n reset(form) {\n form.reset();\n form.querySelectorAll('.is-invalid').forEach((item) => item.classList.remove('is-invalid'));\n form.querySelectorAll('.is-valid').forEach((item) => item.classList.remove('is-valid'));\n form.querySelectorAll('.input-message').forEach((item) => item.remove());\n setTimeout(() => {\n this._resetSelects(form);\n });\n }\n\n initPhoneInput(parent) {\n this._initPhoneInput(parent);\n }\n\n validateForm(form) {\n return this._validator.validateForm(form);\n }\n\n validateFormElement(item) {\n return this._validator.validateFormElement(item);\n }\n\n _onFormSubmit(event, callback = null) {\n if (this.validateForm(event.target) && callback) {\n this._callbacks[callback].successCallback(event);\n if (this._callbacks[callback].reset) {\n setTimeout(() => {\n this.reset(event.target);\n }, this._callbacks[callback].resetTimeout ? this._callbacks[callback].resetTimeout : 500);\n }\n return;\n }\n if (!this.validateForm(event.target) && callback) {\n this._callbacks[callback].errorCallback(event);\n return;\n }\n }\n\n _onFormInput(item) {\n this.validateFormElement(item);\n }\n\n _initValidate(parent) {\n const form = parent.querySelector('form');\n if (!form) {\n return;\n }\n\n const phoneParents = form.querySelectorAll('[data-validate-type=\"phone\"]');\n phoneParents.forEach((item) => this._initPhoneInput(item));\n\n const callback = parent.dataset.callback;\n form.noValidate = true;\n\n form.addEventListener('submit', (event) => {\n event.preventDefault();\n this._onFormSubmit(event, callback);\n });\n\n form.addEventListener('input', (event) => {\n this._onFormInput(event.target);\n });\n\n form.addEventListener('reset', (event) => {\n this.reset(event.target);\n });\n }\n\n init() {\n this._validateParent = document.querySelectorAll('[data-form-validate]');\n if (!this._validateParent.length) {\n return;\n }\n this._validateParent.forEach((parent) => this._initValidate(parent));\n }\n}\n","const baseCountryCode = '+7';\nconst baseMatrix = ' (___) ___ __ __';\nconst phoneLength = baseCountryCode.length + baseMatrix.length;\n\nconst onPhoneInputInput = (e) => {\n const matrix = `${baseCountryCode}${baseMatrix}`;\n const def = matrix.replace(/\\D/g, '');\n let i = 0;\n let val = e.target.value.replace(/\\D/g, '');\n if (def.length >= val.length) {\n val = def;\n }\n e.target.value = matrix.replace(/./g, (a) => {\n if (/[_\\d]/.test(a) && i < val.length) {\n return val.charAt(i++);\n } else if (i >= val.length) {\n return '';\n } else {\n return a;\n }\n });\n};\n\nconst onPhoneInputFocus = ({target}) => {\n if (!target.value) {\n target.value = baseCountryCode;\n }\n target.addEventListener('input', onPhoneInputInput);\n target.addEventListener('blur', onPhoneInputBlur);\n target.addEventListener('keydown', onPhoneInputKeydown);\n target.addEventListener('paste', onPhoneInputPaste);\n target.addEventListener('click', onPhoneInputClick);\n};\n\nconst onPhoneInputClick = (e) => {\n if (e.target.selectionStart < 4) {\n e.preventDefault();\n e.target.setSelectionRange(3, 3);\n }\n};\n\nconst onPhoneInputPaste = (e) => {\n e.target.setSelectionRange(0, 0);\n if (!e.target.selectionStart) {\n setTimeout(() => {\n if (e.target.value.startsWith('+7')) {\n return;\n }\n if (e.target.value.startsWith('+8')) {\n e.target.value = `+7 ${e.target.value.slice(3)}`;\n return;\n }\n e.target.value = '';\n });\n }\n};\n\nconst onPhoneInputKeydown = (e) => {\n if (e.target.selectionStart < 4 && (e.keyCode === 37 || e.keyCode === 13)) {\n e.preventDefault();\n e.target.setSelectionRange(3, 3);\n }\n};\n\nconst onPhoneInputBlur = ({target}) => {\n if (target.value === baseCountryCode) {\n const parent = target.closest('[data-validate-type=\"phone\"]');\n target.value = '';\n if (!parent.hasAttribute('data-required')) {\n parent.classList.remove('is-valid');\n parent.classList.remove('is-invalid');\n const parentMessage = parent.querySelector('.input-message');\n if (parentMessage) {\n parentMessage.remove();\n }\n }\n parent.classList.remove('not-empty');\n target.removeEventListener('input', onPhoneInputInput);\n target.removeEventListener('blur', onPhoneInputBlur);\n target.removeEventListener('keydown', onPhoneInputKeydown);\n target.removeEventListener('paste', onPhoneInputPaste);\n target.removeEventListener('click', onPhoneInputClick);\n }\n};\n\nexport const initPhoneInput = (parent) => {\n const input = parent.querySelector('input');\n parent.dataset.phoneLength = phoneLength;\n input.addEventListener('focus', onPhoneInputFocus);\n};\n","export const matrixReplace = (item, matrix, RegEx) => {\n if (!matrix) {\n // eslint-disable-next-line no-console\n console.error('При валидации по матрице обязательно указывать формат матрицы: data-matrix=\"\"');\n item.value = '';\n return;\n }\n\n if (!RegEx) {\n // eslint-disable-next-line no-console\n console.error('При валидации по матрице обязательно указывать формат ограничений: data-matrix-limitations=\"\"');\n item.value = '';\n return;\n }\n\n const def = matrix.replace(RegEx, '');\n let val = item.value.replace(RegEx, '');\n let i = 0;\n\n if (def.length >= val.length) {\n val = def;\n }\n\n item.value = matrix.replace(/./g, (a) => {\n if (/[_\\^]/.test(a) && i < val.length) {\n return val.charAt(i++);\n } else if (i >= val.length) {\n return '';\n } else {\n return a;\n }\n });\n};\n","const setLimitationError = (limitation) => {\n // eslint-disable-next-line no-console\n console.error(`Переданный формат ограничения(data-limitation=\"${limitation}\") - не поддерживается. Проверьте корректность введённых значений.`);\n};\n\nexport const getLimitationsRegEx = (limitation) => {\n switch (limitation) {\n case 'digit':\n return /[^\\d]/g;\n case 'name':\n return /[^a-zA-Zа-яёА-ЯЁ\\-\\s]/g;\n case 'letters':\n return /[^a-zA-Zа-яёА-ЯЁ\\s]/g;\n case 'letters-and-digit':\n return /[^a-zA-Zа-яёА-ЯЁ\\s\\d]/g;\n case 'cyrillic':\n return /[^а-яёА-ЯЁ\\s]/g;\n case 'latin':\n return /[^a-zA-Z\\s]/g;\n default:\n return setLimitationError(limitation);\n }\n};\n\nexport const getMatrixLimitationsRegEx = (matrix) => {\n switch (matrix) {\n case 'digit':\n return /[^\\d]/g;\n case 'name':\n return /[^\\а-яё\\А-ЯЁ\\a-z\\A-Z\\-]]/g;\n case 'letters':\n return /[^\\а-яё\\А-ЯЁ\\a-z\\A-Z]/g;\n case 'letters-and-digit':\n return /[^\\а-яё\\А-ЯЁ\\a-z\\A-Z\\d]/g;\n case 'cyrillic':\n return /[^\\а-яё\\А-ЯЁ]/g;\n case 'latin':\n return /[^\\a-z\\A-Z]/g;\n default:\n return false;\n }\n};\n\nexport const getMailRegEx = () => /[a-zA-Zа-яёА-ЯЁ0-9]{1}([a-zA-Zа-яёА-ЯЁ0-9\\-_\\.]{1,})?@[a-zA-Zа-яёА-ЯЁ0-9\\-]{1}([a-zA-Zа-яёА-ЯЁ0-9.\\-]{1,})?[a-zA-Zа-яёА-ЯЁ0-9\\-]{1}\\.[a-zA-Zа-яёА-ЯЁ]{2,6}/;\n","export class Message {\n constructor() {\n this._baseErrorText = 'Это поле является обязательным';\n }\n\n _messageTemplate(message, state) {\n const cssClass = state === 'valid' ? 'is-valid' : 'is-invalid';\n return `${message}`;\n }\n\n removeMessage(parent) {\n const parentMessage = parent.querySelector('.input-message');\n if (parentMessage) {\n parentMessage.remove();\n }\n }\n\n renderMessage(parent, message, state) {\n this.removeMessage(parent);\n parent.insertAdjacentHTML('beforeend', this._messageTemplate(message, state));\n }\n}\n","import {getLimitationsRegEx, getMatrixLimitationsRegEx, getMailRegEx} from './regular-expression';\nimport {matrixReplace} from './matrix';\nimport {Message} from './render-message';\n\nexport class Validator {\n constructor() {\n this._getLimitationsRegEx = getLimitationsRegEx;\n this._getMatrixLimitationsRegEx = getMatrixLimitationsRegEx;\n this._getMailRegEx = getMailRegEx;\n this._matrixReplace = matrixReplace;\n this._message = new Message();\n }\n\n _renderMessage(trigger, parent, input) {\n if (!parent.hasAttribute('data-required') && !input.value) {\n return;\n }\n if (!trigger) {\n parent.classList.add('is-invalid');\n if (parent.hasAttribute('data-message-base') && !input.value) {\n this._message.renderMessage(parent, parent.dataset.messageBase, 'invalid');\n } else if (parent.hasAttribute('data-message-extra') && input.value) {\n this._message.renderMessage(parent, parent.dataset.messageExtra, 'invalid');\n } else if (!parent.hasAttribute('data-message-extra') && parent.hasAttribute('data-message-base') && input.value) {\n this._message.renderMessage(parent, parent.dataset.messageBase, 'invalid');\n } else {\n this._message.removeMessage(parent);\n }\n } else {\n if (parent.hasAttribute('data-message-success')) {\n this._message.renderMessage(parent, parent.dataset.messageSuccess, 'valid');\n } else {\n this._message.removeMessage(parent);\n }\n }\n }\n\n _setItemValidState(parent, input) {\n if (!parent.hasAttribute('data-required') && !input.value) {\n return;\n }\n parent.classList.add('is-valid');\n parent.classList.remove('is-invalid');\n input.setAttribute('aria-invalid', 'false');\n this._message.removeMessage(parent);\n }\n\n _setItemInvalidState(parent, input) {\n if (!parent.hasAttribute('data-required') && !input.value) {\n return;\n }\n parent.classList.remove('is-valid');\n input.setAttribute('aria-invalid', 'true');\n }\n\n _simpleLimitation(item, limitation) {\n item.value = item.value.replace(this._getLimitationsRegEx(limitation), '');\n }\n\n _matrixLimitation(item, matrix, limitation) {\n this._matrixReplace(item, matrix, limitation);\n }\n\n _validateTextInput(parent, input) {\n let flag = true;\n if (input.value.length >= (+input.getAttribute('minlength') || 1)) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validateMatrixInput(parent, input) {\n let flag = true;\n if (input.value.length === input.closest('[data-matrix]').dataset.matrix.length) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validateEmailInput(parent, input) {\n let flag = true;\n if (new RegExp(this._getMailRegEx(), '').test(input.value)) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validatePhoneInput(parent, input) {\n let flag = true;\n if (input.value.length >= +parent.dataset.phoneLength) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validateCheckbox(parent, input) {\n let flag = true;\n if (input.checked) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _findSelectedOption(options) {\n let flag = false;\n options.forEach((option) => {\n if (option.value && option.selected) {\n flag = true;\n }\n });\n return flag;\n }\n\n _validateSelect(parent, input) {\n const options = input.querySelectorAll('option');\n const customSelectText = parent.querySelector('.custom-select__text');\n input.setAttribute('aria-invalid', 'false');\n let flag = true;\n if (this._findSelectedOption(options)) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n parent.classList.remove('not-empty');\n customSelectText.innerHTML = '';\n flag = false;\n }\n return flag;\n }\n\n _returnCheckedElements(inputs) {\n let flag = false;\n inputs.forEach((input) => {\n if (input.checked) {\n flag = true;\n }\n });\n return flag;\n }\n\n _removeGroupAria(inputs) {\n inputs.forEach((input) => {\n if (!input.checked) {\n input.removeAttribute('aria-required');\n input.removeAttribute('aria-invalid');\n } else {\n input.setAttribute('aria-required', true);\n input.setAttribute('aria-invalid', false);\n }\n });\n }\n\n _setGroupAria(inputs) {\n inputs.forEach((input) => {\n input.setAttribute('aria-required', true);\n input.setAttribute('aria-invalid', true);\n });\n }\n\n _validateToggleGroup(parent) {\n const formElements = parent.querySelectorAll('input');\n let flag = true;\n if (this._returnCheckedElements(formElements)) {\n this._removeGroupAria(formElements);\n parent.classList.remove('is-invalid');\n parent.classList.add('is-valid');\n this._message.removeMessage(parent);\n } else {\n this._setGroupAria(formElements);\n parent.classList.remove('is-valid');\n flag = false;\n }\n return flag;\n }\n\n _customExample(parent, input) {\n let flag = true;\n if (!input.value.length) {\n parent.dataset.messageBase = 'Поле обязательно к заполнению';\n this._setItemInvalidState(parent, input);\n flag = false;\n } else if (input.value.length < input.minLength) {\n parent.dataset.messageBase = `Осталось ввести ещё ${input.minLength - input.value.length} символов`;\n this._setItemInvalidState(parent, input);\n flag = false;\n } else if (input.value.length > input.minLength) {\n parent.dataset.messageBase = `Вы ввели ${input.value.length - input.minLength} лишних символов`;\n this._setItemInvalidState(parent, input);\n flag = false;\n } else {\n parent.dataset.messageSuccess = 'Поле заполнено корректно';\n this._setItemValidState(parent, input);\n flag = true;\n }\n return flag;\n }\n\n _validateFile(parent, input) {\n let flag = true;\n const sizeTest = parent.dataset.maxSize && input.files[0] ? input.files[0].size < +parent.dataset.maxSize : true;\n if (input.value && sizeTest) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validateInput(type, parent, input) {\n switch (type) {\n case 'text':\n return this._validateTextInput(parent, input);\n case 'matrix':\n return this._validateMatrixInput(parent, input);\n case 'email':\n return this._validateEmailInput(parent, input);\n case 'phone':\n return this._validatePhoneInput(parent, input);\n case 'checkbox':\n return this._validateCheckbox(parent, input);\n case 'select':\n return this._validateSelect(parent, input);\n case 'toggle-group':\n return this._validateToggleGroup(parent, input);\n case 'file':\n return this._validateFile(parent, input);\n case 'custom-example':\n return this._customExample(parent, input);\n default:\n return false;\n }\n }\n\n validateFormElement(formElement, fullValidate = false) {\n const parent = formElement.closest('[data-validate-type]');\n if (!parent) {\n return;\n }\n\n if (!parent.hasAttribute('data-required')) {\n const removeElement = parent.querySelector('input') || parent.querySelector('select') || parent.querySelector('textarea');\n\n if (!removeElement.value) {\n parent.classList.remove('is-valid');\n parent.classList.remove('is-invalid');\n }\n }\n\n const onInputValidate = parent.hasAttribute('data-on-input-validate');\n\n if (parent.hasAttribute('data-limitation')) {\n this._simpleLimitation(formElement, parent.dataset.limitation);\n }\n\n if (parent.dataset.validateType === 'matrix') {\n this._matrixLimitation(formElement, parent.dataset.matrix, this._getMatrixLimitationsRegEx(parent.dataset.matrixLimitation));\n }\n\n const isValid = this._validateInput(parent.dataset.validateType, parent, formElement);\n\n if (onInputValidate || fullValidate) {\n this._renderMessage(isValid, parent, formElement);\n }\n }\n\n _fullValidate(items) {\n let result = true;\n items.forEach((item) => {\n const formElement = item.querySelector('input') || item.querySelector('select') || item.querySelector('textarea');\n this.validateFormElement(formElement, true);\n if (item.classList.contains('is-invalid')) {\n result = false;\n }\n });\n return result;\n }\n\n validateForm(form) {\n const validateItems = form.querySelectorAll('[data-validate-type]');\n const result = this._fullValidate(validateItems);\n return result;\n }\n}\n","import {Modals} from './modals';\n\nlet modals;\n\n// Здесь реализован пример открытия модалки через колбэк закрытия\n// const openModalInCloseCallback = (name, context = this) => {\n// context._enableScrolling = false;\n// context._setSettings('default');\n// modals.open(name);\n// };\n\n// closeCallback() {\n// openModalInCloseCallback('modal-5');\n// },\n\nconst settings = {\n 'default': {\n preventDefault: true,\n stopPlay: true,\n lockFocus: true,\n startFocus: true,\n focusBack: true,\n eventTimeout: 400,\n openCallback: false,\n closeCallback: false,\n },\n};\n\nconst initModals = () => {\n const modalElements = document.querySelectorAll('.modal');\n modalElements.forEach((el) => {\n setTimeout(() => {\n el.classList.remove('modal--preload');\n }, 100);\n });\n modals = new Modals(settings);\n // Используйте в разработке экспортируемую переменную modals, window сделан для бэкэнда\n window.modals = modals;\n};\n\nexport {modals, initModals};\n","import {ScrollLock} from '../../utils/scroll-lock';\nimport {FocusLock} from '../../utils/focus-lock';\n\nexport class Modals {\n constructor(settings = {}) {\n this._scrollLock = new ScrollLock();\n this._focusLock = new FocusLock();\n\n this._modalOpenElements = document.querySelectorAll('[data-open-modal]');\n this._openedModalElement = null;\n this._modalName = null;\n this._enableScrolling = true;\n this._settingKey = 'default';\n\n this._settings = settings;\n this._preventDefault = this._settings[this._settingKey].preventDefault;\n this._stopPlay = this._settings[this._settingKey].stopPlay;\n this._lockFocus = this._settings[this._settingKey].lockFocus;\n this._startFocus = this._settings[this._settingKey].startFocus;\n this._focusBack = this._settings[this._settingKey].focusBack;\n this._eventTimeout = this._settings[this._settingKey].eventTimeout;\n this._openCallback = this._settings[this._settingKey].openCallback;\n this._closeCallback = this._settings[this._settingKey].closeCallback;\n\n this._documentKeydownHandler = this._documentKeydownHandler.bind(this);\n this._documentClickHandler = this._documentClickHandler.bind(this);\n this._modalClickHandler = this._modalClickHandler.bind(this);\n\n this._init();\n }\n\n _init() {\n if (this._modalOpenElements.length) {\n document.addEventListener('click', this._documentClickHandler);\n }\n }\n\n _setSettings(settingKey = this._settingKey) {\n if (!this._settings[settingKey]) {\n return;\n }\n\n this._preventDefault =\n typeof this._settings[settingKey].preventDefault === 'boolean'\n ? this._settings[settingKey].preventDefault\n : this._settings[this._settingKey].preventDefault;\n this._stopPlay =\n typeof this._settings[settingKey].stopPlay === 'boolean'\n ? this._settings[settingKey].stopPlay\n : this._settings[this._settingKey].stopPlay;\n this._lockFocus =\n typeof this._settings[settingKey].lockFocus === 'boolean'\n ? this._settings[settingKey].lockFocus\n : this._settings[this._settingKey].lockFocus;\n this._startFocus =\n typeof this._settings[settingKey].startFocus === 'boolean'\n ? this._settings[settingKey].startFocus\n : this._settings[this._settingKey].startFocus;\n this._focusBack =\n typeof this._settings[settingKey].lockFocus === 'boolean'\n ? this._settings[settingKey].focusBack\n : this._settings[this._settingKey].focusBack;\n this._eventTimeout =\n typeof this._settings[settingKey].eventTimeout === 'number'\n ? this._settings[settingKey].eventTimeout\n : this._settings[this._settingKey].eventTimeout;\n this._openCallback = this._settings[settingKey].openCallback || this._settings[this._settingKey].openCallback;\n this._closeCallback = this._settings[settingKey].closeCallback || this._settings[this._settingKey].closeCallback;\n }\n\n _documentClickHandler(evt) {\n const target = evt.target;\n\n if (!target.closest('[data-open-modal]')) {\n return;\n }\n\n evt.preventDefault();\n\n this._modalName = target.closest('[data-open-modal]').dataset.openModal;\n\n if (!this._modalName) {\n return;\n }\n\n this.open();\n }\n\n _documentKeydownHandler(evt) {\n const isEscKey = evt.key === 'Escape' || evt.key === 'Esc';\n\n if (isEscKey) {\n evt.preventDefault();\n this.close(document.querySelector('.modal.is-active').dataset.modal);\n }\n }\n\n _modalClickHandler(evt) {\n const target = evt.target;\n\n if (!target.closest('[data-close-modal]')) {\n return;\n }\n\n this.close(target.closest('[data-modal]').dataset.modal);\n }\n\n _addListeners(modal) {\n modal.addEventListener('click', this._modalClickHandler);\n document.addEventListener('keydown', this._documentKeydownHandler);\n }\n\n _removeListeners(modal) {\n modal.removeEventListener('click', this._modalClickHandler);\n document.removeEventListener('keydown', this._documentKeydownHandler);\n }\n\n _stopInteractive(modal) {\n if (this._stopPlay) {\n modal.querySelectorAll('video, audio').forEach((el) => el.pause());\n modal.querySelectorAll('[data-iframe]').forEach((el) => {\n el.querySelector('iframe').contentWindow.postMessage('{\"event\": \"command\", \"func\": \"pauseVideo\", \"args\": \"\"}', '*');\n });\n }\n }\n\n _autoPlay(modal) {\n modal.querySelectorAll('[data-iframe]').forEach((el) => {\n const autoPlay = el.closest('[data-auto-play]');\n if (autoPlay) {\n el.querySelector('iframe').contentWindow.postMessage('{\"event\":\"command\",\"func\":\"playVideo\",\"args\":\"\"}', '*');\n }\n });\n }\n\n open(modalName = this._modalName) {\n const modal = document.querySelector(`[data-modal=\"${modalName}\"]`);\n\n if (!modal || modal.classList.contains('is-active')) {\n return;\n }\n\n document.removeEventListener('click', this._documentClickHandler);\n\n this._openedModalElement = document.querySelector('.modal.is-active');\n\n if (this._openedModalElement) {\n this._enableScrolling = false;\n this.close(this._openedModalElement.dataset.modal);\n }\n\n this._setSettings(modalName);\n modal.classList.add('is-active');\n\n if (!this._openedModalElement) {\n this._scrollLock.disableScrolling();\n }\n\n if (this._openCallback) {\n this._openCallback();\n }\n\n if (this._lockFocus) {\n this._focusLock.lock('.modal.is-active', this._startFocus);\n }\n\n setTimeout(() => {\n this._addListeners(modal);\n this._autoPlay(modal);\n document.addEventListener('click', this._documentClickHandler);\n }, this._eventTimeout);\n }\n\n close(modalName = this._modalName) {\n const modal = document.querySelector(`[data-modal=\"${modalName}\"]`);\n document.removeEventListener('click', this._documentClickHandler);\n\n if (!modal || !modal.classList.contains('is-active')) {\n return;\n }\n\n if (this._lockFocus) {\n this._focusLock.unlock(this._focusBack);\n }\n\n modal.classList.remove('is-active');\n this._removeListeners(modal);\n this._stopInteractive(modal);\n\n if (this._closeCallback) {\n this._closeCallback();\n }\n\n if (this._enableScrolling) {\n setTimeout(() => {\n this._scrollLock.enableScrolling();\n }, this._eventTimeout);\n }\n\n setTimeout(() => {\n document.addEventListener('click', this._documentClickHandler);\n }, this._eventTimeout);\n\n this._setSettings('default');\n this._enableScrolling = true;\n }\n}\n","import {Tabs} from './tabs';\n\nlet tabs;\n\nconst initTabs = () => {\n tabs = new Tabs();\n // Используйте в разработке экспортируемую переменную tabs, window сделан для бэкэнда\n window.tabs = tabs;\n};\n\nexport {initTabs, tabs};\n","export class Tabs {\n constructor() {\n this._windowWidth = window.innerWidth;\n this._documentClickHandler = this._documentClickHandler.bind(this);\n this._init();\n }\n\n _init() {\n this._initAllTabs();\n document.addEventListener('click', this._documentClickHandler);\n }\n\n _resizeObserver() {\n return new ResizeObserver((entries) => {\n for (let entry of entries) {\n if (entry.target.classList.contains('is-active')) {\n this._updateTabHeight();\n }\n }\n });\n }\n\n _documentClickHandler(evt) {\n const target = evt.target;\n if (!target.closest('[data-tabs=\"control\"]')) {\n return;\n }\n evt.preventDefault();\n const control = target.closest('[data-tabs=\"control\"]');\n this.openTab(control);\n }\n\n _initAllTabs() {\n const tabs = document.querySelectorAll('[data-tabs=\"parent\"]');\n const forLoadTabs = document.querySelectorAll('[data-tabs=\"element\"].for-load');\n tabs.forEach((tab) => {\n this._initTab(tab);\n });\n forLoadTabs.forEach((tab) => {\n tab.classList.remove('for-load');\n });\n }\n\n _removeAllActiveClasses(tabControlElements, tabElements) {\n tabElements.forEach((tab) => {\n tab.classList.remove('is-active');\n });\n\n tabControlElements.forEach((element, index) => {\n element.classList.remove('is-active');\n element.setAttribute('data-index', index);\n });\n }\n\n _setTabStartState(tab, dataHeight, tabElements, tabContentElement, tabControlElements, dataDelay) {\n const activeIndex = this._returnActiveIndex(tabControlElements);\n const blockHeight = dataHeight === 'max' ? this._returnMaxHeight(tabElements) : tabElements[activeIndex].offsetHeight;\n this._removeAllActiveClasses(tabControlElements, tabElements);\n tab.classList.add('no-transition');\n tabControlElements[activeIndex].classList.add('is-active');\n tabElements[activeIndex].classList.add('is-active');\n if (dataHeight !== 'unset') {\n tabContentElement.style.height = `${blockHeight}px`;\n }\n setTimeout(() => {\n if (dataDelay) {\n tab.classList.remove('no-transition');\n }\n }, dataDelay);\n }\n\n _returnActiveIndex(tabControlElements) {\n let activeIndex = 0;\n let flag = true;\n tabControlElements.forEach((control, index) => {\n if (control.classList.contains('is-active') && flag) {\n activeIndex = index;\n flag = false;\n }\n });\n return activeIndex;\n }\n\n _returnMaxHeight(tabElements) {\n let height = [];\n tabElements.forEach((element) => {\n height.push(element.offsetHeight);\n });\n height.sort((a, b) => a - b);\n return height[height.length - 1];\n }\n\n _returnScopeList(nodeList, parent) {\n const array = [];\n nodeList.forEach((element) => {\n const elementParent = element.closest('[data-tabs=\"parent\"]');\n if (elementParent === parent) {\n array.push(element);\n }\n });\n\n return array;\n }\n\n _returnScopeChild(nodeList, parent) {\n let currentChild;\n nodeList.forEach((element) => {\n const elementParent = element.closest('[data-tabs=\"parent\"]');\n if (elementParent === parent) {\n currentChild = element;\n }\n });\n\n return currentChild;\n }\n\n _updateTabHeight() {\n const activeElements = document.querySelectorAll('[data-tabs=\"element\"].is-active');\n activeElements.forEach((element) => {\n let transition = false;\n const parent = element.closest('[data-tabs=\"parent\"]');\n if (parent.closest('[data-tabs=\"element\"]')) {\n transition = true;\n }\n this._setTabElementHeight(element, transition);\n });\n }\n\n _setTabElementHeight(element, transition) {\n const parentElement = element.closest('[data-tabs=\"parent\"]');\n const dataHeight = parentElement.dataset.height;\n const contentElement = this._returnScopeChild(parentElement.querySelectorAll('[data-tabs=\"content\"]'), parentElement);\n const tabElements = this._returnScopeList(parentElement.querySelectorAll('[data-tabs=\"element\"]'), parentElement);\n\n if (!transition) {\n parentElement.classList.add('no-transition');\n }\n\n if (dataHeight === 'max') {\n contentElement.style.height = `${this._returnMaxHeight(tabElements)}px`;\n } else if (dataHeight === 'unset') {\n contentElement.style.height = null;\n } else {\n contentElement.style.height = `${this._returnScopeChild(parentElement.querySelectorAll('[data-tabs=\"element\"].is-active'), parentElement).offsetHeight}px`;\n }\n\n setTimeout(() => parentElement.classList.remove('no-transition'));\n }\n\n _initTab(tab) {\n const dataHeight = tab.dataset.height;\n const dataDelay = tab.dataset.delay ? tab.dataset.delay : 0;\n const tabContentElement = tab.querySelector('[data-tabs=\"content\"]');\n const tabControlElements = this._returnScopeList(tab.querySelectorAll('[data-tabs=\"control\"]'), tab);\n const tabElements = this._returnScopeList(tab.querySelectorAll('[data-tabs=\"element\"]'), tab);\n this._setTabStartState(tab, dataHeight, tabElements, tabContentElement, tabControlElements, dataDelay);\n if (dataHeight !== 'unset') {\n tabElements.forEach((element) => {\n this._resizeObserver().observe(element);\n });\n }\n setTimeout(() => {\n tab.classList.remove('no-transition-global');\n });\n }\n\n reInit() {\n this._initAllTabs();\n }\n\n openTab(control) {\n const currentIndex = control.dataset.index;\n const parentElement = control.closest('[data-tabs=\"parent\"]');\n\n if (control.classList.contains('is-active') || parentElement.classList.contains('no-action')) {\n return;\n }\n\n const dataDelay = parentElement.dataset.delay ? parentElement.dataset.delay : 0;\n const dataHeight = parentElement.dataset.height;\n const contentElement = parentElement.querySelector('[data-tabs=\"content\"]');\n const tabElements = this._returnScopeList(parentElement.querySelectorAll('[data-tabs=\"element\"]'), parentElement);\n\n const activeControl = this._returnScopeChild(parentElement.querySelectorAll('[data-tabs=\"control\"].is-active'), parentElement);\n const activeElement = this._returnScopeChild(parentElement.querySelectorAll('[data-tabs=\"element\"].is-active'), parentElement);\n const currentHeight = contentElement.offsetHeight;\n const newHeight = tabElements[currentIndex].offsetHeight;\n\n parentElement.classList.add('no-action');\n document.activeElement.blur();\n\n if (activeControl) {\n activeControl.classList.remove('is-active');\n }\n\n if (activeElement) {\n activeElement.classList.remove('is-active');\n }\n\n if (currentHeight > newHeight) {\n setTimeout(() => {\n if (dataHeight !== 'max' && dataHeight !== 'unset') {\n contentElement.style.height = newHeight + 'px';\n }\n control.classList.add('is-active');\n tabElements[currentIndex].classList.add('is-active');\n parentElement.classList.remove('no-action');\n }, dataDelay);\n } else {\n if (dataHeight !== 'max' && dataHeight !== 'unset') {\n contentElement.style.height = newHeight + 'px';\n }\n setTimeout(() => {\n control.classList.add('is-active');\n tabElements[currentIndex].classList.add('is-active');\n parentElement.classList.remove('no-action');\n }, dataDelay);\n }\n }\n}\n","const SELECTORS = [\n 'a[href]',\n 'area[href]',\n 'input:not([disabled]):not([type=\"hidden\"]):not([aria-hidden])',\n 'select:not([disabled]):not([aria-hidden])',\n 'textarea:not([disabled]):not([aria-hidden])',\n 'button:not([disabled]):not([aria-hidden])',\n 'iframe',\n 'object',\n 'embed',\n '[contenteditable]',\n '[tabindex]:not([tabindex^=\"-\"])'\n];\n\nexport class FocusLock {\n constructor() {\n this._lockedSelector = null;\n this._focusableElements = null;\n this._endElement = null;\n this._selectors = SELECTORS;\n\n this._documentKeydownHandler = this._documentKeydownHandler.bind(this);\n }\n\n _documentKeydownHandler(evt) {\n const activeElement = document.activeElement;\n if (evt.key === 'Tab') {\n if (!this._focusableElements.length) {\n evt.preventDefault();\n activeElement.blur();\n return;\n }\n if (this._focusableElements.length === 1) {\n evt.preventDefault();\n this._focusableElements[0].focus();\n return;\n }\n if (this._focusableElements.length > 1 && !activeElement.closest(this._lockedSelector)) {\n evt.preventDefault();\n this._focusableElements[0].focus();\n return;\n }\n }\n if (evt.key === 'Tab' && !evt.shiftKey && activeElement === this._focusableElements[this._focusableElements.length - 1]) {\n evt.preventDefault();\n this._focusableElements[0].focus();\n }\n if (evt.key === 'Tab' && evt.shiftKey && activeElement === this._focusableElements[0]) {\n evt.preventDefault();\n this._focusableElements[this._focusableElements.length - 1].focus();\n }\n }\n\n lock(lockedSelector, startFocus = true) {\n this.unlock();\n this._lockedSelector = lockedSelector;\n const lockedElement = document.querySelector(this._lockedSelector);\n if (!lockedElement) {\n return;\n }\n this._focusableElements = lockedElement.querySelectorAll(this._selectors);\n this._endElement = document.activeElement;\n const startElement = lockedElement.querySelector('[data-focus]') || this._focusableElements[0];\n if (this._endElement) {\n this._endElement.blur();\n }\n if (startElement && startFocus) {\n startElement.focus();\n }\n document.addEventListener('keydown', this._documentKeydownHandler);\n }\n\n unlock(returnFocus = true) {\n if (this._endElement && returnFocus) {\n this._endElement.focus();\n }\n this._lockedSelector = null;\n this._focusableElements = null;\n this._endElement = null;\n document.removeEventListener('keydown', this._documentKeydownHandler);\n }\n}\n\nwindow.focusLock = new FocusLock();\n","export const iosChecker = () => {\n return [\n 'iPad Simulator',\n 'iPhone Simulator',\n 'iPod Simulator',\n 'iPad',\n 'iPhone',\n 'iPod'\n ].includes(navigator.platform)\n // iPad on iOS 13 detection\n || (navigator.userAgent.includes('Mac') && 'ontouchend' in document);\n};\n","import {iosChecker} from './ios-checker';\n\nconst iosVhFix = () => {\n if (!(!!window.MSInputMethodContext && !!document.documentMode)) {\n if (iosChecker()) {\n let vh = window.innerHeight * 0.01;\n document.documentElement.style.setProperty('--vh', `${vh}px`);\n\n window.addEventListener('resize', function () {\n vh = window.innerHeight * 0.01;\n document.documentElement.style.setProperty('--vh', `${vh}px`);\n });\n }\n }\n};\n\nexport {iosVhFix};\n","import {iosChecker} from './ios-checker';\n\nexport class ScrollLock {\n constructor() {\n this._iosChecker = iosChecker;\n this._lockClass = this._iosChecker() ? 'scroll-lock-ios' : 'scroll-lock';\n this._scrollTop = null;\n this._fixedBlockElements = document.querySelectorAll('[data-fix-block]');\n }\n\n _getScrollbarWidth() {\n return window.innerWidth - document.documentElement.clientWidth;\n }\n\n _getBodyScrollTop() {\n return (\n self.pageYOffset ||\n (document.documentElement && document.documentElement.ScrollTop) ||\n (document.body && document.body.scrollTop)\n );\n }\n\n disableScrolling() {\n this._scrollTop = document.body.dataset.scroll = document.body.dataset.scroll ? document.body.dataset.scroll : this._getBodyScrollTop();\n if (this._getScrollbarWidth()) {\n document.body.style.paddingRight = `${this._getScrollbarWidth()}px`;\n this._fixedBlockElements.forEach((block) => {\n block.style.paddingRight = `${this._getScrollbarWidth()}px`;\n });\n }\n document.body.style.top = `-${this._scrollTop}px`;\n document.body.classList.add(this._lockClass);\n }\n\n enableScrolling() {\n document.body.classList.remove(this._lockClass);\n window.scrollTo(0, +document.body.dataset.scroll);\n document.body.style.paddingRight = null;\n document.body.style.top = null;\n this._fixedBlockElements.forEach((block) => {\n block.style.paddingRight = null;\n });\n document.body.removeAttribute('data-scroll');\n this._scrollTop = null;\n }\n}\n\nwindow.scrollLock = new ScrollLock();\n"," const swiper = () => {\n /**\n * Swiper 7.4.1\n * Most modern mobile touch slider and framework with hardware accelerated transitions\n * https://swiperjs.com\n *\n * Copyright 2014-2021 Vladimir Kharlampidi\n *\n * Released under the MIT License\n *\n * Released on: December 24, 2021\n */\n\n (function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n ? (module.exports = factory())\n : typeof define === 'function' && define.amd\n ? define(factory)\n : ((global = typeof globalThis !== 'undefined' ? globalThis : global || self), (global.Swiper = factory()));\n })(this, function () {\n\n 'use strict';\n\n /**\n * SSR Window 4.0.2\n * Better handling for window object in SSR environment\n * https://github.com/nolimits4web/ssr-window\n *\n * Copyright 2021, Vladimir Kharlampidi\n *\n * Licensed under MIT\n *\n * Released on: December 13, 2021\n */\n\n /* eslint-disable no-param-reassign */\n function isObject$1(obj) {\n return obj !== null && typeof obj === 'object' && 'constructor' in obj && obj.constructor === Object;\n }\n\n function extend$1(target = {}, src = {}) {\n Object.keys(src).forEach((key) => {\n if (typeof target[key] === 'undefined') target[key] = src[key];\n else if (isObject$1(src[key]) && isObject$1(target[key]) && Object.keys(src[key]).length > 0) {\n extend$1(target[key], src[key]);\n }\n });\n }\n\n const ssrDocument = {\n body: {},\n\n addEventListener() {},\n\n removeEventListener() {},\n\n activeElement: {\n blur() {},\n\n nodeName: '',\n },\n\n querySelector() {\n return null;\n },\n\n querySelectorAll() {\n return [];\n },\n\n getElementById() {\n return null;\n },\n\n createEvent() {\n return {\n initEvent() {},\n };\n },\n\n createElement() {\n return {\n children: [],\n childNodes: [],\n style: {},\n\n setAttribute() {},\n\n getElementsByTagName() {\n return [];\n },\n };\n },\n\n createElementNS() {\n return {};\n },\n\n importNode() {\n return null;\n },\n\n location: {\n hash: '',\n host: '',\n hostname: '',\n href: '',\n origin: '',\n pathname: '',\n protocol: '',\n search: '',\n },\n };\n\n function getDocument() {\n const doc = typeof document !== 'undefined' ? document : {};\n extend$1(doc, ssrDocument);\n return doc;\n }\n\n const ssrWindow = {\n document: ssrDocument,\n navigator: {\n userAgent: '',\n },\n location: {\n hash: '',\n host: '',\n hostname: '',\n href: '',\n origin: '',\n pathname: '',\n protocol: '',\n search: '',\n },\n history: {\n replaceState() {},\n\n pushState() {},\n\n go() {},\n\n back() {},\n },\n CustomEvent: function CustomEvent() {\n return this;\n },\n\n addEventListener() {},\n\n removeEventListener() {},\n\n getComputedStyle() {\n return {\n getPropertyValue() {\n return '';\n },\n };\n },\n\n Image() {},\n\n Date() {},\n\n screen: {},\n\n setTimeout() {},\n\n clearTimeout() {},\n\n matchMedia() {\n return {};\n },\n\n requestAnimationFrame(callback) {\n if (typeof setTimeout === 'undefined') {\n callback();\n return null;\n }\n\n return setTimeout(callback, 0);\n },\n\n cancelAnimationFrame(id) {\n if (typeof setTimeout === 'undefined') {\n return;\n }\n\n clearTimeout(id);\n },\n };\n\n function getWindow() {\n const win = typeof window !== 'undefined' ? window : {};\n extend$1(win, ssrWindow);\n return win;\n }\n\n /**\n * Dom7 4.0.2\n * Minimalistic JavaScript library for DOM manipulation, with a jQuery-compatible API\n * https://framework7.io/docs/dom7.html\n *\n * Copyright 2021, Vladimir Kharlampidi\n *\n * Licensed under MIT\n *\n * Released on: December 13, 2021\n */\n /* eslint-disable no-proto */\n\n function makeReactive(obj) {\n const proto = obj.__proto__;\n Object.defineProperty(obj, '__proto__', {\n get() {\n return proto;\n },\n\n set(value) {\n proto.__proto__ = value;\n },\n });\n }\n\n class Dom7 extends Array {\n constructor(items) {\n super(...(items || []));\n makeReactive(this);\n }\n }\n\n function arrayFlat(arr = []) {\n const res = [];\n arr.forEach((el) => {\n if (Array.isArray(el)) {\n res.push(...arrayFlat(el));\n } else {\n res.push(el);\n }\n });\n return res;\n }\n\n function arrayFilter(arr, callback) {\n return Array.prototype.filter.call(arr, callback);\n }\n\n function arrayUnique(arr) {\n const uniqueArray = [];\n\n for (let i = 0; i < arr.length; i += 1) {\n if (uniqueArray.indexOf(arr[i]) === -1) uniqueArray.push(arr[i]);\n }\n\n return uniqueArray;\n }\n\n function qsa(selector, context) {\n if (typeof selector !== 'string') {\n return [selector];\n }\n\n const a = [];\n const res = context.querySelectorAll(selector);\n\n for (let i = 0; i < res.length; i += 1) {\n a.push(res[i]);\n }\n\n return a;\n }\n\n function $(selector, context) {\n const window = getWindow();\n const document = getDocument();\n let arr = [];\n\n if (!context && selector instanceof Dom7) {\n return selector;\n }\n\n if (!selector) {\n return new Dom7(arr);\n }\n\n if (typeof selector === 'string') {\n const html = selector.trim();\n\n if (html.indexOf('<') >= 0 && html.indexOf('>') >= 0) {\n let toCreate = 'div';\n if (html.indexOf(' c.split(' ')));\n this.forEach((el) => {\n el.classList.add(...classNames);\n });\n return this;\n }\n\n function removeClass(...classes) {\n const classNames = arrayFlat(classes.map((c) => c.split(' ')));\n this.forEach((el) => {\n el.classList.remove(...classNames);\n });\n return this;\n }\n\n function toggleClass(...classes) {\n const classNames = arrayFlat(classes.map((c) => c.split(' ')));\n this.forEach((el) => {\n classNames.forEach((className) => {\n el.classList.toggle(className);\n });\n });\n }\n\n function hasClass(...classes) {\n const classNames = arrayFlat(classes.map((c) => c.split(' ')));\n return (\n arrayFilter(this, (el) => {\n return classNames.filter((className) => el.classList.contains(className)).length > 0;\n }).length > 0\n );\n }\n\n function attr(attrs, value) {\n if (arguments.length === 1 && typeof attrs === 'string') {\n // Get attr\n if (this[0]) return this[0].getAttribute(attrs);\n return undefined;\n } // Set attrs\n\n for (let i = 0; i < this.length; i += 1) {\n if (arguments.length === 2) {\n // String\n this[i].setAttribute(attrs, value);\n } else {\n // Object\n for (const attrName in attrs) {\n this[i][attrName] = attrs[attrName];\n this[i].setAttribute(attrName, attrs[attrName]);\n }\n }\n }\n\n return this;\n }\n\n function removeAttr(attr) {\n for (let i = 0; i < this.length; i += 1) {\n this[i].removeAttribute(attr);\n }\n\n return this;\n }\n\n function transform(transform) {\n for (let i = 0; i < this.length; i += 1) {\n this[i].style.transform = transform;\n }\n\n return this;\n }\n\n function transition$1(duration) {\n for (let i = 0; i < this.length; i += 1) {\n this[i].style.transitionDuration = typeof duration !== 'string' ? `${duration}ms` : duration;\n }\n\n return this;\n }\n\n function on(...args) {\n let [eventType, targetSelector, listener, capture] = args;\n\n if (typeof args[1] === 'function') {\n [eventType, listener, capture] = args;\n targetSelector = undefined;\n }\n\n if (!capture) capture = false;\n\n function handleLiveEvent(e) {\n const target = e.target;\n if (!target) return;\n const eventData = e.target.dom7EventData || [];\n\n if (eventData.indexOf(e) < 0) {\n eventData.unshift(e);\n }\n\n if ($(target).is(targetSelector)) listener.apply(target, eventData);\n else {\n const parents = $(target).parents(); // eslint-disable-line\n\n for (let k = 0; k < parents.length; k += 1) {\n if ($(parents[k]).is(targetSelector)) listener.apply(parents[k], eventData);\n }\n }\n }\n\n function handleEvent(e) {\n const eventData = e && e.target ? e.target.dom7EventData || [] : [];\n\n if (eventData.indexOf(e) < 0) {\n eventData.unshift(e);\n }\n\n listener.apply(this, eventData);\n }\n\n const events = eventType.split(' ');\n let j;\n\n for (let i = 0; i < this.length; i += 1) {\n const el = this[i];\n\n if (!targetSelector) {\n for (j = 0; j < events.length; j += 1) {\n const event = events[j];\n if (!el.dom7Listeners) el.dom7Listeners = {};\n if (!el.dom7Listeners[event]) el.dom7Listeners[event] = [];\n el.dom7Listeners[event].push({\n listener,\n proxyListener: handleEvent,\n });\n el.addEventListener(event, handleEvent, capture);\n }\n } else {\n // Live events\n for (j = 0; j < events.length; j += 1) {\n const event = events[j];\n if (!el.dom7LiveListeners) el.dom7LiveListeners = {};\n if (!el.dom7LiveListeners[event]) el.dom7LiveListeners[event] = [];\n el.dom7LiveListeners[event].push({\n listener,\n proxyListener: handleLiveEvent,\n });\n el.addEventListener(event, handleLiveEvent, capture);\n }\n }\n }\n\n return this;\n }\n\n function off(...args) {\n let [eventType, targetSelector, listener, capture] = args;\n\n if (typeof args[1] === 'function') {\n [eventType, listener, capture] = args;\n targetSelector = undefined;\n }\n\n if (!capture) capture = false;\n const events = eventType.split(' ');\n\n for (let i = 0; i < events.length; i += 1) {\n const event = events[i];\n\n for (let j = 0; j < this.length; j += 1) {\n const el = this[j];\n let handlers;\n\n if (!targetSelector && el.dom7Listeners) {\n handlers = el.dom7Listeners[event];\n } else if (targetSelector && el.dom7LiveListeners) {\n handlers = el.dom7LiveListeners[event];\n }\n\n if (handlers && handlers.length) {\n for (let k = handlers.length - 1; k >= 0; k -= 1) {\n const handler = handlers[k];\n\n if (listener && handler.listener === listener) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n } else if (\n listener &&\n handler.listener &&\n handler.listener.dom7proxy &&\n handler.listener.dom7proxy === listener\n ) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n } else if (!listener) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n }\n }\n }\n }\n }\n\n return this;\n }\n\n function trigger(...args) {\n const window = getWindow();\n const events = args[0].split(' ');\n const eventData = args[1];\n\n for (let i = 0; i < events.length; i += 1) {\n const event = events[i];\n\n for (let j = 0; j < this.length; j += 1) {\n const el = this[j];\n\n if (window.CustomEvent) {\n const evt = new window.CustomEvent(event, {\n detail: eventData,\n bubbles: true,\n cancelable: true,\n });\n el.dom7EventData = args.filter((data, dataIndex) => dataIndex > 0);\n el.dispatchEvent(evt);\n el.dom7EventData = [];\n delete el.dom7EventData;\n }\n }\n }\n\n return this;\n }\n\n function transitionEnd$1(callback) {\n const dom = this;\n\n function fireCallBack(e) {\n if (e.target !== this) return;\n callback.call(this, e);\n dom.off('transitionend', fireCallBack);\n }\n\n if (callback) {\n dom.on('transitionend', fireCallBack);\n }\n\n return this;\n }\n\n function outerWidth(includeMargins) {\n if (this.length > 0) {\n if (includeMargins) {\n const styles = this.styles();\n return (\n this[0].offsetWidth +\n parseFloat(styles.getPropertyValue('margin-right')) +\n parseFloat(styles.getPropertyValue('margin-left'))\n );\n }\n\n return this[0].offsetWidth;\n }\n\n return null;\n }\n\n function outerHeight(includeMargins) {\n if (this.length > 0) {\n if (includeMargins) {\n const styles = this.styles();\n return (\n this[0].offsetHeight +\n parseFloat(styles.getPropertyValue('margin-top')) +\n parseFloat(styles.getPropertyValue('margin-bottom'))\n );\n }\n\n return this[0].offsetHeight;\n }\n\n return null;\n }\n\n function offset() {\n if (this.length > 0) {\n const window = getWindow();\n const document = getDocument();\n const el = this[0];\n const box = el.getBoundingClientRect();\n const body = document.body;\n const clientTop = el.clientTop || body.clientTop || 0;\n const clientLeft = el.clientLeft || body.clientLeft || 0;\n const scrollTop = el === window ? window.scrollY : el.scrollTop;\n const scrollLeft = el === window ? window.scrollX : el.scrollLeft;\n return {\n top: box.top + scrollTop - clientTop,\n left: box.left + scrollLeft - clientLeft,\n };\n }\n\n return null;\n }\n\n function styles() {\n const window = getWindow();\n if (this[0]) return window.getComputedStyle(this[0], null);\n return {};\n }\n\n function css(props, value) {\n const window = getWindow();\n let i;\n\n if (arguments.length === 1) {\n if (typeof props === 'string') {\n // .css('width')\n if (this[0]) return window.getComputedStyle(this[0], null).getPropertyValue(props);\n } else {\n // .css({ width: '100px' })\n for (i = 0; i < this.length; i += 1) {\n for (const prop in props) {\n this[i].style[prop] = props[prop];\n }\n }\n\n return this;\n }\n }\n\n if (arguments.length === 2 && typeof props === 'string') {\n // .css('width', '100px')\n for (i = 0; i < this.length; i += 1) {\n this[i].style[props] = value;\n }\n\n return this;\n }\n\n return this;\n }\n\n function each(callback) {\n if (!callback) return this;\n this.forEach((el, index) => {\n callback.apply(el, [el, index]);\n });\n return this;\n }\n\n function filter(callback) {\n const result = arrayFilter(this, callback);\n return $(result);\n }\n\n function html(html) {\n if (typeof html === 'undefined') {\n return this[0] ? this[0].innerHTML : null;\n }\n\n for (let i = 0; i < this.length; i += 1) {\n this[i].innerHTML = html;\n }\n\n return this;\n }\n\n function text(text) {\n if (typeof text === 'undefined') {\n return this[0] ? this[0].textContent.trim() : null;\n }\n\n for (let i = 0; i < this.length; i += 1) {\n this[i].textContent = text;\n }\n\n return this;\n }\n\n function is(selector) {\n const window = getWindow();\n const document = getDocument();\n const el = this[0];\n let compareWith;\n let i;\n if (!el || typeof selector === 'undefined') return false;\n\n if (typeof selector === 'string') {\n if (el.matches) return el.matches(selector);\n if (el.webkitMatchesSelector) return el.webkitMatchesSelector(selector);\n if (el.msMatchesSelector) return el.msMatchesSelector(selector);\n compareWith = $(selector);\n\n for (i = 0; i < compareWith.length; i += 1) {\n if (compareWith[i] === el) return true;\n }\n\n return false;\n }\n\n if (selector === document) {\n return el === document;\n }\n\n if (selector === window) {\n return el === window;\n }\n\n if (selector.nodeType || selector instanceof Dom7) {\n compareWith = selector.nodeType ? [selector] : selector;\n\n for (i = 0; i < compareWith.length; i += 1) {\n if (compareWith[i] === el) return true;\n }\n\n return false;\n }\n\n return false;\n }\n\n function index() {\n let child = this[0];\n let i;\n\n if (child) {\n i = 0; // eslint-disable-next-line\n\n while ((child = child.previousSibling) !== null) {\n if (child.nodeType === 1) i += 1;\n }\n\n return i;\n }\n\n return undefined;\n }\n\n function eq(index) {\n if (typeof index === 'undefined') return this;\n const length = this.length;\n\n if (index > length - 1) {\n return $([]);\n }\n\n if (index < 0) {\n const returnIndex = length + index;\n if (returnIndex < 0) return $([]);\n return $([this[returnIndex]]);\n }\n\n return $([this[index]]);\n }\n\n function append(...els) {\n let newChild;\n const document = getDocument();\n\n for (let k = 0; k < els.length; k += 1) {\n newChild = els[k];\n\n for (let i = 0; i < this.length; i += 1) {\n if (typeof newChild === 'string') {\n const tempDiv = document.createElement('div');\n tempDiv.innerHTML = newChild;\n\n while (tempDiv.firstChild) {\n this[i].appendChild(tempDiv.firstChild);\n }\n } else if (newChild instanceof Dom7) {\n for (let j = 0; j < newChild.length; j += 1) {\n this[i].appendChild(newChild[j]);\n }\n } else {\n this[i].appendChild(newChild);\n }\n }\n }\n\n return this;\n }\n\n function prepend(newChild) {\n const document = getDocument();\n let i;\n let j;\n\n for (i = 0; i < this.length; i += 1) {\n if (typeof newChild === 'string') {\n const tempDiv = document.createElement('div');\n tempDiv.innerHTML = newChild;\n\n for (j = tempDiv.childNodes.length - 1; j >= 0; j -= 1) {\n this[i].insertBefore(tempDiv.childNodes[j], this[i].childNodes[0]);\n }\n } else if (newChild instanceof Dom7) {\n for (j = 0; j < newChild.length; j += 1) {\n this[i].insertBefore(newChild[j], this[i].childNodes[0]);\n }\n } else {\n this[i].insertBefore(newChild, this[i].childNodes[0]);\n }\n }\n\n return this;\n }\n\n function next(selector) {\n if (this.length > 0) {\n if (selector) {\n if (this[0].nextElementSibling && $(this[0].nextElementSibling).is(selector)) {\n return $([this[0].nextElementSibling]);\n }\n\n return $([]);\n }\n\n if (this[0].nextElementSibling) return $([this[0].nextElementSibling]);\n return $([]);\n }\n\n return $([]);\n }\n\n function nextAll(selector) {\n const nextEls = [];\n let el = this[0];\n if (!el) return $([]);\n\n while (el.nextElementSibling) {\n const next = el.nextElementSibling; // eslint-disable-line\n\n if (selector) {\n if ($(next).is(selector)) nextEls.push(next);\n } else nextEls.push(next);\n\n el = next;\n }\n\n return $(nextEls);\n }\n\n function prev(selector) {\n if (this.length > 0) {\n const el = this[0];\n\n if (selector) {\n if (el.previousElementSibling && $(el.previousElementSibling).is(selector)) {\n return $([el.previousElementSibling]);\n }\n\n return $([]);\n }\n\n if (el.previousElementSibling) return $([el.previousElementSibling]);\n return $([]);\n }\n\n return $([]);\n }\n\n function prevAll(selector) {\n const prevEls = [];\n let el = this[0];\n if (!el) return $([]);\n\n while (el.previousElementSibling) {\n const prev = el.previousElementSibling; // eslint-disable-line\n\n if (selector) {\n if ($(prev).is(selector)) prevEls.push(prev);\n } else prevEls.push(prev);\n\n el = prev;\n }\n\n return $(prevEls);\n }\n\n function parent(selector) {\n const parents = []; // eslint-disable-line\n\n for (let i = 0; i < this.length; i += 1) {\n if (this[i].parentNode !== null) {\n if (selector) {\n if ($(this[i].parentNode).is(selector)) parents.push(this[i].parentNode);\n } else {\n parents.push(this[i].parentNode);\n }\n }\n }\n\n return $(parents);\n }\n\n function parents(selector) {\n const parents = []; // eslint-disable-line\n\n for (let i = 0; i < this.length; i += 1) {\n let parent = this[i].parentNode; // eslint-disable-line\n\n while (parent) {\n if (selector) {\n if ($(parent).is(selector)) parents.push(parent);\n } else {\n parents.push(parent);\n }\n\n parent = parent.parentNode;\n }\n }\n\n return $(parents);\n }\n\n function closest(selector) {\n let closest = this; // eslint-disable-line\n\n if (typeof selector === 'undefined') {\n return $([]);\n }\n\n if (!closest.is(selector)) {\n closest = closest.parents(selector).eq(0);\n }\n\n return closest;\n }\n\n function find(selector) {\n const foundElements = [];\n\n for (let i = 0; i < this.length; i += 1) {\n const found = this[i].querySelectorAll(selector);\n\n for (let j = 0; j < found.length; j += 1) {\n foundElements.push(found[j]);\n }\n }\n\n return $(foundElements);\n }\n\n function children(selector) {\n const children = []; // eslint-disable-line\n\n for (let i = 0; i < this.length; i += 1) {\n const childNodes = this[i].children;\n\n for (let j = 0; j < childNodes.length; j += 1) {\n if (!selector || $(childNodes[j]).is(selector)) {\n children.push(childNodes[j]);\n }\n }\n }\n\n return $(children);\n }\n\n function remove() {\n for (let i = 0; i < this.length; i += 1) {\n if (this[i].parentNode) this[i].parentNode.removeChild(this[i]);\n }\n\n return this;\n }\n\n const Methods = {\n addClass,\n removeClass,\n hasClass,\n toggleClass,\n attr,\n removeAttr,\n transform,\n transition: transition$1,\n on,\n off,\n trigger,\n transitionEnd: transitionEnd$1,\n outerWidth,\n outerHeight,\n styles,\n offset,\n css,\n each,\n html,\n text,\n is,\n index,\n eq,\n append,\n prepend,\n next,\n nextAll,\n prev,\n prevAll,\n parent,\n parents,\n closest,\n find,\n children,\n filter,\n remove,\n };\n Object.keys(Methods).forEach((methodName) => {\n Object.defineProperty($.fn, methodName, {\n value: Methods[methodName],\n writable: true,\n });\n });\n\n function deleteProps(obj) {\n const object = obj;\n Object.keys(object).forEach((key) => {\n try {\n object[key] = null;\n } catch (e) {\n // no getter for object\n }\n\n try {\n delete object[key];\n } catch (e) {\n // something got wrong\n }\n });\n }\n\n function nextTick(callback, delay = 0) {\n return setTimeout(callback, delay);\n }\n\n function now() {\n return Date.now();\n }\n\n function getComputedStyle$1(el) {\n const window = getWindow();\n let style;\n\n if (window.getComputedStyle) {\n style = window.getComputedStyle(el, null);\n }\n\n if (!style && el.currentStyle) {\n style = el.currentStyle;\n }\n\n if (!style) {\n style = el.style;\n }\n\n return style;\n }\n\n function getTranslate(el, axis = 'x') {\n const window = getWindow();\n let matrix;\n let curTransform;\n let transformMatrix;\n const curStyle = getComputedStyle$1(el);\n\n if (window.WebKitCSSMatrix) {\n curTransform = curStyle.transform || curStyle.webkitTransform;\n\n if (curTransform.split(',').length > 6) {\n curTransform = curTransform\n .split(', ')\n .map((a) => a.replace(',', '.'))\n .join(', ');\n } // Some old versions of Webkit choke when 'none' is passed; pass\n // empty string instead in this case\n\n transformMatrix = new window.WebKitCSSMatrix(curTransform === 'none' ? '' : curTransform);\n } else {\n transformMatrix =\n curStyle.MozTransform ||\n curStyle.OTransform ||\n curStyle.MsTransform ||\n curStyle.msTransform ||\n curStyle.transform ||\n curStyle.getPropertyValue('transform').replace('translate(', 'matrix(1, 0, 0, 1,');\n matrix = transformMatrix.toString().split(',');\n }\n\n if (axis === 'x') {\n // Latest Chrome and webkits Fix\n if (window.WebKitCSSMatrix) curTransform = transformMatrix.m41; // Crazy IE10 Matrix\n else if (matrix.length === 16) curTransform = parseFloat(matrix[12]); // Normal Browsers\n else curTransform = parseFloat(matrix[4]);\n }\n\n if (axis === 'y') {\n // Latest Chrome and webkits Fix\n if (window.WebKitCSSMatrix) curTransform = transformMatrix.m42; // Crazy IE10 Matrix\n else if (matrix.length === 16) curTransform = parseFloat(matrix[13]); // Normal Browsers\n else curTransform = parseFloat(matrix[5]);\n }\n\n return curTransform || 0;\n }\n\n function isObject(o) {\n return (\n typeof o === 'object' &&\n o !== null &&\n o.constructor &&\n Object.prototype.toString.call(o).slice(8, -1) === 'Object'\n );\n }\n\n function isNode(node) {\n // eslint-disable-next-line\n if (typeof window !== 'undefined' && typeof window.HTMLElement !== 'undefined') {\n return node instanceof HTMLElement;\n }\n\n return node && (node.nodeType === 1 || node.nodeType === 11);\n }\n\n function extend(...args) {\n const to = Object(args[0]);\n const noExtend = ['__proto__', 'constructor', 'prototype'];\n\n for (let i = 1; i < args.length; i += 1) {\n const nextSource = args[i];\n\n if (nextSource !== undefined && nextSource !== null && !isNode(nextSource)) {\n const keysArray = Object.keys(Object(nextSource)).filter((key) => noExtend.indexOf(key) < 0);\n\n for (let nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex += 1) {\n const nextKey = keysArray[nextIndex];\n const desc = Object.getOwnPropertyDescriptor(nextSource, nextKey);\n\n if (desc !== undefined && desc.enumerable) {\n if (isObject(to[nextKey]) && isObject(nextSource[nextKey])) {\n if (nextSource[nextKey].__swiper__) {\n to[nextKey] = nextSource[nextKey];\n } else {\n extend(to[nextKey], nextSource[nextKey]);\n }\n } else if (!isObject(to[nextKey]) && isObject(nextSource[nextKey])) {\n to[nextKey] = {};\n\n if (nextSource[nextKey].__swiper__) {\n to[nextKey] = nextSource[nextKey];\n } else {\n extend(to[nextKey], nextSource[nextKey]);\n }\n } else {\n to[nextKey] = nextSource[nextKey];\n }\n }\n }\n }\n }\n\n return to;\n }\n\n function setCSSProperty(el, varName, varValue) {\n el.style.setProperty(varName, varValue);\n }\n\n function animateCSSModeScroll({swiper, targetPosition, side}) {\n const window = getWindow();\n const startPosition = -swiper.translate;\n let startTime = null;\n let time;\n const duration = swiper.params.speed;\n swiper.wrapperEl.style.scrollSnapType = 'none';\n window.cancelAnimationFrame(swiper.cssModeFrameID);\n const dir = targetPosition > startPosition ? 'next' : 'prev';\n\n const isOutOfBound = (current, target) => {\n return (dir === 'next' && current >= target) || (dir === 'prev' && current <= target);\n };\n\n const animate = () => {\n time = new Date().getTime();\n\n if (startTime === null) {\n startTime = time;\n }\n\n const progress = Math.max(Math.min((time - startTime) / duration, 1), 0);\n const easeProgress = 0.5 - Math.cos(progress * Math.PI) / 2;\n let currentPosition = startPosition + easeProgress * (targetPosition - startPosition);\n\n if (isOutOfBound(currentPosition, targetPosition)) {\n currentPosition = targetPosition;\n }\n\n swiper.wrapperEl.scrollTo({\n [side]: currentPosition,\n });\n\n if (isOutOfBound(currentPosition, targetPosition)) {\n swiper.wrapperEl.style.overflow = 'hidden';\n swiper.wrapperEl.style.scrollSnapType = '';\n setTimeout(() => {\n swiper.wrapperEl.style.overflow = '';\n swiper.wrapperEl.scrollTo({\n [side]: currentPosition,\n });\n });\n window.cancelAnimationFrame(swiper.cssModeFrameID);\n return;\n }\n\n swiper.cssModeFrameID = window.requestAnimationFrame(animate);\n };\n\n animate();\n }\n\n let support;\n\n function calcSupport() {\n const window = getWindow();\n const document = getDocument();\n return {\n smoothScroll: document.documentElement && 'scrollBehavior' in document.documentElement.style,\n touch: !!('ontouchstart' in window || (window.DocumentTouch && document instanceof window.DocumentTouch)),\n passiveListener: (function checkPassiveListener() {\n let supportsPassive = false;\n\n try {\n const opts = Object.defineProperty({}, 'passive', {\n // eslint-disable-next-line\n get() {\n supportsPassive = true;\n },\n });\n window.addEventListener('testPassiveListener', null, opts);\n } catch (e) {\n // No support\n }\n\n return supportsPassive;\n })(),\n gestures: (function checkGestures() {\n return 'ongesturestart' in window;\n })(),\n };\n }\n\n function getSupport() {\n if (!support) {\n support = calcSupport();\n }\n\n return support;\n }\n\n let deviceCached;\n\n function calcDevice({userAgent} = {}) {\n const support = getSupport();\n const window = getWindow();\n const platform = window.navigator.platform;\n const ua = userAgent || window.navigator.userAgent;\n const device = {\n ios: false,\n android: false,\n };\n const screenWidth = window.screen.width;\n const screenHeight = window.screen.height;\n const android = ua.match(/(Android);?[\\s\\/]+([\\d.]+)?/); // eslint-disable-line\n\n let ipad = ua.match(/(iPad).*OS\\s([\\d_]+)/);\n const ipod = ua.match(/(iPod)(.*OS\\s([\\d_]+))?/);\n const iphone = !ipad && ua.match(/(iPhone\\sOS|iOS)\\s([\\d_]+)/);\n const windows = platform === 'Win32';\n let macos = platform === 'MacIntel'; // iPadOs 13 fix\n\n const iPadScreens = [\n '1024x1366',\n '1366x1024',\n '834x1194',\n '1194x834',\n '834x1112',\n '1112x834',\n '768x1024',\n '1024x768',\n '820x1180',\n '1180x820',\n '810x1080',\n '1080x810',\n ];\n\n if (!ipad && macos && support.touch && iPadScreens.indexOf(`${screenWidth}x${screenHeight}`) >= 0) {\n ipad = ua.match(/(Version)\\/([\\d.]+)/);\n if (!ipad) ipad = [0, 1, '13_0_0'];\n macos = false;\n } // Android\n\n if (android && !windows) {\n device.os = 'android';\n device.android = true;\n }\n\n if (ipad || iphone || ipod) {\n device.os = 'ios';\n device.ios = true;\n } // Export object\n\n return device;\n }\n\n function getDevice(overrides = {}) {\n if (!deviceCached) {\n deviceCached = calcDevice(overrides);\n }\n\n return deviceCached;\n }\n\n let browser;\n\n function calcBrowser() {\n const window = getWindow();\n\n function isSafari() {\n const ua = window.navigator.userAgent.toLowerCase();\n return ua.indexOf('safari') >= 0 && ua.indexOf('chrome') < 0 && ua.indexOf('android') < 0;\n }\n\n return {\n isSafari: isSafari(),\n isWebView: /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(window.navigator.userAgent),\n };\n }\n\n function getBrowser() {\n if (!browser) {\n browser = calcBrowser();\n }\n\n return browser;\n }\n\n function Resize({swiper, on, emit}) {\n const window = getWindow();\n let observer = null;\n\n const resizeHandler = () => {\n if (!swiper || swiper.destroyed || !swiper.initialized) return;\n emit('beforeResize');\n emit('resize');\n };\n\n const createObserver = () => {\n if (!swiper || swiper.destroyed || !swiper.initialized) return;\n observer = new ResizeObserver((entries) => {\n const {width, height} = swiper;\n let newWidth = width;\n let newHeight = height;\n entries.forEach(({contentBoxSize, contentRect, target}) => {\n if (target && target !== swiper.el) return;\n newWidth = contentRect ? contentRect.width : (contentBoxSize[0] || contentBoxSize).inlineSize;\n newHeight = contentRect ? contentRect.height : (contentBoxSize[0] || contentBoxSize).blockSize;\n });\n\n if (newWidth !== width || newHeight !== height) {\n resizeHandler();\n }\n });\n observer.observe(swiper.el);\n };\n\n const removeObserver = () => {\n if (observer && observer.unobserve && swiper.el) {\n observer.unobserve(swiper.el);\n observer = null;\n }\n };\n\n const orientationChangeHandler = () => {\n if (!swiper || swiper.destroyed || !swiper.initialized) return;\n emit('orientationchange');\n };\n\n on('init', () => {\n if (swiper.params.resizeObserver && typeof window.ResizeObserver !== 'undefined') {\n createObserver();\n return;\n }\n\n window.addEventListener('resize', resizeHandler);\n window.addEventListener('orientationchange', orientationChangeHandler);\n });\n on('destroy', () => {\n removeObserver();\n window.removeEventListener('resize', resizeHandler);\n window.removeEventListener('orientationchange', orientationChangeHandler);\n });\n }\n\n function Observer({swiper, extendParams, on, emit}) {\n const observers = [];\n const window = getWindow();\n\n const attach = (target, options = {}) => {\n const ObserverFunc = window.MutationObserver || window.WebkitMutationObserver;\n const observer = new ObserverFunc((mutations) => {\n // The observerUpdate event should only be triggered\n // once despite the number of mutations. Additional\n // triggers are redundant and are very costly\n if (mutations.length === 1) {\n emit('observerUpdate', mutations[0]);\n return;\n }\n\n const observerUpdate = function observerUpdate() {\n emit('observerUpdate', mutations[0]);\n };\n\n if (window.requestAnimationFrame) {\n window.requestAnimationFrame(observerUpdate);\n } else {\n window.setTimeout(observerUpdate, 0);\n }\n });\n observer.observe(target, {\n attributes: typeof options.attributes === 'undefined' ? true : options.attributes,\n childList: typeof options.childList === 'undefined' ? true : options.childList,\n characterData: typeof options.characterData === 'undefined' ? true : options.characterData,\n });\n observers.push(observer);\n };\n\n const init = () => {\n if (!swiper.params.observer) return;\n\n if (swiper.params.observeParents) {\n const containerParents = swiper.$el.parents();\n\n for (let i = 0; i < containerParents.length; i += 1) {\n attach(containerParents[i]);\n }\n } // Observe container\n\n attach(swiper.$el[0], {\n childList: swiper.params.observeSlideChildren,\n }); // Observe wrapper\n\n attach(swiper.$wrapperEl[0], {\n attributes: false,\n });\n };\n\n const destroy = () => {\n observers.forEach((observer) => {\n observer.disconnect();\n });\n observers.splice(0, observers.length);\n };\n\n extendParams({\n observer: false,\n observeParents: false,\n observeSlideChildren: false,\n });\n on('init', init);\n on('destroy', destroy);\n }\n\n /* eslint-disable no-underscore-dangle */\n var eventsEmitter = {\n on(events, handler, priority) {\n const self = this;\n if (typeof handler !== 'function') return self;\n const method = priority ? 'unshift' : 'push';\n events.split(' ').forEach((event) => {\n if (!self.eventsListeners[event]) self.eventsListeners[event] = [];\n self.eventsListeners[event][method](handler);\n });\n return self;\n },\n\n once(events, handler, priority) {\n const self = this;\n if (typeof handler !== 'function') return self;\n\n function onceHandler(...args) {\n self.off(events, onceHandler);\n\n if (onceHandler.__emitterProxy) {\n delete onceHandler.__emitterProxy;\n }\n\n handler.apply(self, args);\n }\n\n onceHandler.__emitterProxy = handler;\n return self.on(events, onceHandler, priority);\n },\n\n onAny(handler, priority) {\n const self = this;\n if (typeof handler !== 'function') return self;\n const method = priority ? 'unshift' : 'push';\n\n if (self.eventsAnyListeners.indexOf(handler) < 0) {\n self.eventsAnyListeners[method](handler);\n }\n\n return self;\n },\n\n offAny(handler) {\n const self = this;\n if (!self.eventsAnyListeners) return self;\n const index = self.eventsAnyListeners.indexOf(handler);\n\n if (index >= 0) {\n self.eventsAnyListeners.splice(index, 1);\n }\n\n return self;\n },\n\n off(events, handler) {\n const self = this;\n if (!self.eventsListeners) return self;\n events.split(' ').forEach((event) => {\n if (typeof handler === 'undefined') {\n self.eventsListeners[event] = [];\n } else if (self.eventsListeners[event]) {\n self.eventsListeners[event].forEach((eventHandler, index) => {\n if (\n eventHandler === handler ||\n (eventHandler.__emitterProxy && eventHandler.__emitterProxy === handler)\n ) {\n self.eventsListeners[event].splice(index, 1);\n }\n });\n }\n });\n return self;\n },\n\n emit(...args) {\n const self = this;\n if (!self.eventsListeners) return self;\n let events;\n let data;\n let context;\n\n if (typeof args[0] === 'string' || Array.isArray(args[0])) {\n events = args[0];\n data = args.slice(1, args.length);\n context = self;\n } else {\n events = args[0].events;\n data = args[0].data;\n context = args[0].context || self;\n }\n\n data.unshift(context);\n const eventsArray = Array.isArray(events) ? events : events.split(' ');\n eventsArray.forEach((event) => {\n if (self.eventsAnyListeners && self.eventsAnyListeners.length) {\n self.eventsAnyListeners.forEach((eventHandler) => {\n eventHandler.apply(context, [event, ...data]);\n });\n }\n\n if (self.eventsListeners && self.eventsListeners[event]) {\n self.eventsListeners[event].forEach((eventHandler) => {\n eventHandler.apply(context, data);\n });\n }\n });\n return self;\n },\n };\n\n function updateSize() {\n const swiper = this;\n let width;\n let height;\n const $el = swiper.$el;\n\n if (typeof swiper.params.width !== 'undefined' && swiper.params.width !== null) {\n width = swiper.params.width;\n } else {\n width = $el[0].clientWidth;\n }\n\n if (typeof swiper.params.height !== 'undefined' && swiper.params.height !== null) {\n height = swiper.params.height;\n } else {\n height = $el[0].clientHeight;\n }\n\n if ((width === 0 && swiper.isHorizontal()) || (height === 0 && swiper.isVertical())) {\n return;\n } // Subtract paddings\n\n width = width - parseInt($el.css('padding-left') || 0, 10) - parseInt($el.css('padding-right') || 0, 10);\n height = height - parseInt($el.css('padding-top') || 0, 10) - parseInt($el.css('padding-bottom') || 0, 10);\n if (Number.isNaN(width)) width = 0;\n if (Number.isNaN(height)) height = 0;\n Object.assign(swiper, {\n width,\n height,\n size: swiper.isHorizontal() ? width : height,\n });\n }\n\n function updateSlides() {\n const swiper = this;\n\n function getDirectionLabel(property) {\n if (swiper.isHorizontal()) {\n return property;\n } // prettier-ignore\n\n return {\n width: 'height',\n 'margin-top': 'margin-left',\n 'margin-bottom ': 'margin-right',\n 'margin-left': 'margin-top',\n 'margin-right': 'margin-bottom',\n 'padding-left': 'padding-top',\n 'padding-right': 'padding-bottom',\n marginRight: 'marginBottom',\n }[property];\n }\n\n function getDirectionPropertyValue(node, label) {\n return parseFloat(node.getPropertyValue(getDirectionLabel(label)) || 0);\n }\n\n const params = swiper.params;\n const {$wrapperEl, size: swiperSize, rtlTranslate: rtl, wrongRTL} = swiper;\n const isVirtual = swiper.virtual && params.virtual.enabled;\n const previousSlidesLength = isVirtual ? swiper.virtual.slides.length : swiper.slides.length;\n const slides = $wrapperEl.children(`.${swiper.params.slideClass}`);\n const slidesLength = isVirtual ? swiper.virtual.slides.length : slides.length;\n let snapGrid = [];\n const slidesGrid = [];\n const slidesSizesGrid = [];\n let offsetBefore = params.slidesOffsetBefore;\n\n if (typeof offsetBefore === 'function') {\n offsetBefore = params.slidesOffsetBefore.call(swiper);\n }\n\n let offsetAfter = params.slidesOffsetAfter;\n\n if (typeof offsetAfter === 'function') {\n offsetAfter = params.slidesOffsetAfter.call(swiper);\n }\n\n const previousSnapGridLength = swiper.snapGrid.length;\n const previousSlidesGridLength = swiper.slidesGrid.length;\n let spaceBetween = params.spaceBetween;\n let slidePosition = -offsetBefore;\n let prevSlideSize = 0;\n let index = 0;\n\n if (typeof swiperSize === 'undefined') {\n return;\n }\n\n if (typeof spaceBetween === 'string' && spaceBetween.indexOf('%') >= 0) {\n spaceBetween = (parseFloat(spaceBetween.replace('%', '')) / 100) * swiperSize;\n }\n\n swiper.virtualSize = -spaceBetween; // reset margins\n\n if (rtl)\n slides.css({\n marginLeft: '',\n marginBottom: '',\n marginTop: '',\n });\n else\n slides.css({\n marginRight: '',\n marginBottom: '',\n marginTop: '',\n }); // reset cssMode offsets\n\n if (params.centeredSlides && params.cssMode) {\n setCSSProperty(swiper.wrapperEl, '--swiper-centered-offset-before', '');\n setCSSProperty(swiper.wrapperEl, '--swiper-centered-offset-after', '');\n }\n\n const gridEnabled = params.grid && params.grid.rows > 1 && swiper.grid;\n\n if (gridEnabled) {\n swiper.grid.initSlides(slidesLength);\n } // Calc slides\n\n let slideSize;\n const shouldResetSlideSize =\n params.slidesPerView === 'auto' &&\n params.breakpoints &&\n Object.keys(params.breakpoints).filter((key) => {\n return typeof params.breakpoints[key].slidesPerView !== 'undefined';\n }).length > 0;\n\n for (let i = 0; i < slidesLength; i += 1) {\n slideSize = 0;\n const slide = slides.eq(i);\n\n if (gridEnabled) {\n swiper.grid.updateSlide(i, slide, slidesLength, getDirectionLabel);\n }\n\n if (slide.css('display') === 'none') continue; // eslint-disable-line\n\n if (params.slidesPerView === 'auto') {\n if (shouldResetSlideSize) {\n slides[i].style[getDirectionLabel('width')] = ``;\n }\n\n const slideStyles = getComputedStyle(slide[0]);\n const currentTransform = slide[0].style.transform;\n const currentWebKitTransform = slide[0].style.webkitTransform;\n\n if (currentTransform) {\n slide[0].style.transform = 'none';\n }\n\n if (currentWebKitTransform) {\n slide[0].style.webkitTransform = 'none';\n }\n\n if (params.roundLengths) {\n slideSize = swiper.isHorizontal() ? slide.outerWidth(true) : slide.outerHeight(true);\n } else {\n // eslint-disable-next-line\n const width = getDirectionPropertyValue(slideStyles, 'width');\n const paddingLeft = getDirectionPropertyValue(slideStyles, 'padding-left');\n const paddingRight = getDirectionPropertyValue(slideStyles, 'padding-right');\n const marginLeft = getDirectionPropertyValue(slideStyles, 'margin-left');\n const marginRight = getDirectionPropertyValue(slideStyles, 'margin-right');\n const boxSizing = slideStyles.getPropertyValue('box-sizing');\n\n if (boxSizing && boxSizing === 'border-box') {\n slideSize = width + marginLeft + marginRight;\n } else {\n const {clientWidth, offsetWidth} = slide[0];\n slideSize = width + paddingLeft + paddingRight + marginLeft + marginRight + (offsetWidth - clientWidth);\n }\n }\n\n if (currentTransform) {\n slide[0].style.transform = currentTransform;\n }\n\n if (currentWebKitTransform) {\n slide[0].style.webkitTransform = currentWebKitTransform;\n }\n\n if (params.roundLengths) slideSize = Math.floor(slideSize);\n } else {\n slideSize = (swiperSize - (params.slidesPerView - 1) * spaceBetween) / params.slidesPerView;\n if (params.roundLengths) slideSize = Math.floor(slideSize);\n\n if (slides[i]) {\n slides[i].style[getDirectionLabel('width')] = `${slideSize}px`;\n }\n }\n\n if (slides[i]) {\n slides[i].swiperSlideSize = slideSize;\n }\n\n slidesSizesGrid.push(slideSize);\n\n if (params.centeredSlides) {\n slidePosition = slidePosition + slideSize / 2 + prevSlideSize / 2 + spaceBetween;\n if (prevSlideSize === 0 && i !== 0) slidePosition = slidePosition - swiperSize / 2 - spaceBetween;\n if (i === 0) slidePosition = slidePosition - swiperSize / 2 - spaceBetween;\n if (Math.abs(slidePosition) < 1 / 1000) slidePosition = 0;\n if (params.roundLengths) slidePosition = Math.floor(slidePosition);\n if (index % params.slidesPerGroup === 0) snapGrid.push(slidePosition);\n slidesGrid.push(slidePosition);\n } else {\n if (params.roundLengths) slidePosition = Math.floor(slidePosition);\n if ((index - Math.min(swiper.params.slidesPerGroupSkip, index)) % swiper.params.slidesPerGroup === 0)\n snapGrid.push(slidePosition);\n slidesGrid.push(slidePosition);\n slidePosition = slidePosition + slideSize + spaceBetween;\n }\n\n swiper.virtualSize += slideSize + spaceBetween;\n prevSlideSize = slideSize;\n index += 1;\n }\n\n swiper.virtualSize = Math.max(swiper.virtualSize, swiperSize) + offsetAfter;\n\n if (rtl && wrongRTL && (params.effect === 'slide' || params.effect === 'coverflow')) {\n $wrapperEl.css({\n width: `${swiper.virtualSize + params.spaceBetween}px`,\n });\n }\n\n if (params.setWrapperSize) {\n $wrapperEl.css({\n [getDirectionLabel('width')]: `${swiper.virtualSize + params.spaceBetween}px`,\n });\n }\n\n if (gridEnabled) {\n swiper.grid.updateWrapperSize(slideSize, snapGrid, getDirectionLabel);\n } // Remove last grid elements depending on width\n\n if (!params.centeredSlides) {\n const newSlidesGrid = [];\n\n for (let i = 0; i < snapGrid.length; i += 1) {\n let slidesGridItem = snapGrid[i];\n if (params.roundLengths) slidesGridItem = Math.floor(slidesGridItem);\n\n if (snapGrid[i] <= swiper.virtualSize - swiperSize) {\n newSlidesGrid.push(slidesGridItem);\n }\n }\n\n snapGrid = newSlidesGrid;\n\n if (Math.floor(swiper.virtualSize - swiperSize) - Math.floor(snapGrid[snapGrid.length - 1]) > 1) {\n snapGrid.push(swiper.virtualSize - swiperSize);\n }\n }\n\n if (snapGrid.length === 0) snapGrid = [0];\n\n if (params.spaceBetween !== 0) {\n const key = swiper.isHorizontal() && rtl ? 'marginLeft' : getDirectionLabel('marginRight');\n slides\n .filter((_, slideIndex) => {\n if (!params.cssMode) return true;\n\n if (slideIndex === slides.length - 1) {\n return false;\n }\n\n return true;\n })\n .css({\n [key]: `${spaceBetween}px`,\n });\n }\n\n if (params.centeredSlides && params.centeredSlidesBounds) {\n let allSlidesSize = 0;\n slidesSizesGrid.forEach((slideSizeValue) => {\n allSlidesSize += slideSizeValue + (params.spaceBetween ? params.spaceBetween : 0);\n });\n allSlidesSize -= params.spaceBetween;\n const maxSnap = allSlidesSize - swiperSize;\n snapGrid = snapGrid.map((snap) => {\n if (snap < 0) return -offsetBefore;\n if (snap > maxSnap) return maxSnap + offsetAfter;\n return snap;\n });\n }\n\n if (params.centerInsufficientSlides) {\n let allSlidesSize = 0;\n slidesSizesGrid.forEach((slideSizeValue) => {\n allSlidesSize += slideSizeValue + (params.spaceBetween ? params.spaceBetween : 0);\n });\n allSlidesSize -= params.spaceBetween;\n\n if (allSlidesSize < swiperSize) {\n const allSlidesOffset = (swiperSize - allSlidesSize) / 2;\n snapGrid.forEach((snap, snapIndex) => {\n snapGrid[snapIndex] = snap - allSlidesOffset;\n });\n slidesGrid.forEach((snap, snapIndex) => {\n slidesGrid[snapIndex] = snap + allSlidesOffset;\n });\n }\n }\n\n Object.assign(swiper, {\n slides,\n snapGrid,\n slidesGrid,\n slidesSizesGrid,\n });\n\n if (params.centeredSlides && params.cssMode && !params.centeredSlidesBounds) {\n setCSSProperty(swiper.wrapperEl, '--swiper-centered-offset-before', `${-snapGrid[0]}px`);\n setCSSProperty(\n swiper.wrapperEl,\n '--swiper-centered-offset-after',\n `${swiper.size / 2 - slidesSizesGrid[slidesSizesGrid.length - 1] / 2}px`,\n );\n const addToSnapGrid = -swiper.snapGrid[0];\n const addToSlidesGrid = -swiper.slidesGrid[0];\n swiper.snapGrid = swiper.snapGrid.map((v) => v + addToSnapGrid);\n swiper.slidesGrid = swiper.slidesGrid.map((v) => v + addToSlidesGrid);\n }\n\n if (slidesLength !== previousSlidesLength) {\n swiper.emit('slidesLengthChange');\n }\n\n if (snapGrid.length !== previousSnapGridLength) {\n if (swiper.params.watchOverflow) swiper.checkOverflow();\n swiper.emit('snapGridLengthChange');\n }\n\n if (slidesGrid.length !== previousSlidesGridLength) {\n swiper.emit('slidesGridLengthChange');\n }\n\n if (params.watchSlidesProgress) {\n swiper.updateSlidesOffset();\n }\n }\n\n function updateAutoHeight(speed) {\n const swiper = this;\n const activeSlides = [];\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n let newHeight = 0;\n let i;\n\n if (typeof speed === 'number') {\n swiper.setTransition(speed);\n } else if (speed === true) {\n swiper.setTransition(swiper.params.speed);\n }\n\n const getSlideByIndex = (index) => {\n if (isVirtual) {\n return swiper.slides.filter((el) => parseInt(el.getAttribute('data-swiper-slide-index'), 10) === index)[0];\n }\n\n return swiper.slides.eq(index)[0];\n }; // Find slides currently in view\n\n if (swiper.params.slidesPerView !== 'auto' && swiper.params.slidesPerView > 1) {\n if (swiper.params.centeredSlides) {\n swiper.visibleSlides.each((slide) => {\n activeSlides.push(slide);\n });\n } else {\n for (i = 0; i < Math.ceil(swiper.params.slidesPerView); i += 1) {\n const index = swiper.activeIndex + i;\n if (index > swiper.slides.length && !isVirtual) break;\n activeSlides.push(getSlideByIndex(index));\n }\n }\n } else {\n activeSlides.push(getSlideByIndex(swiper.activeIndex));\n } // Find new height from highest slide in view\n\n for (i = 0; i < activeSlides.length; i += 1) {\n if (typeof activeSlides[i] !== 'undefined') {\n const height = activeSlides[i].offsetHeight;\n newHeight = height > newHeight ? height : newHeight;\n }\n } // Update Height\n\n if (newHeight || newHeight === 0) swiper.$wrapperEl.css('height', `${newHeight}px`);\n }\n\n function updateSlidesOffset() {\n const swiper = this;\n const slides = swiper.slides;\n\n for (let i = 0; i < slides.length; i += 1) {\n slides[i].swiperSlideOffset = swiper.isHorizontal() ? slides[i].offsetLeft : slides[i].offsetTop;\n }\n }\n\n function updateSlidesProgress(translate = (this && this.translate) || 0) {\n const swiper = this;\n const params = swiper.params;\n const {slides, rtlTranslate: rtl, snapGrid} = swiper;\n if (slides.length === 0) return;\n if (typeof slides[0].swiperSlideOffset === 'undefined') swiper.updateSlidesOffset();\n let offsetCenter = -translate;\n if (rtl) offsetCenter = translate; // Visible Slides\n\n slides.removeClass(params.slideVisibleClass);\n swiper.visibleSlidesIndexes = [];\n swiper.visibleSlides = [];\n\n for (let i = 0; i < slides.length; i += 1) {\n const slide = slides[i];\n let slideOffset = slide.swiperSlideOffset;\n\n if (params.cssMode && params.centeredSlides) {\n slideOffset -= slides[0].swiperSlideOffset;\n }\n\n const slideProgress =\n (offsetCenter + (params.centeredSlides ? swiper.minTranslate() : 0) - slideOffset) /\n (slide.swiperSlideSize + params.spaceBetween);\n const originalSlideProgress =\n (offsetCenter - snapGrid[0] + (params.centeredSlides ? swiper.minTranslate() : 0) - slideOffset) /\n (slide.swiperSlideSize + params.spaceBetween);\n const slideBefore = -(offsetCenter - slideOffset);\n const slideAfter = slideBefore + swiper.slidesSizesGrid[i];\n const isVisible =\n (slideBefore >= 0 && slideBefore < swiper.size - 1) ||\n (slideAfter > 1 && slideAfter <= swiper.size) ||\n (slideBefore <= 0 && slideAfter >= swiper.size);\n\n if (isVisible) {\n swiper.visibleSlides.push(slide);\n swiper.visibleSlidesIndexes.push(i);\n slides.eq(i).addClass(params.slideVisibleClass);\n }\n\n slide.progress = rtl ? -slideProgress : slideProgress;\n slide.originalProgress = rtl ? -originalSlideProgress : originalSlideProgress;\n }\n\n swiper.visibleSlides = $(swiper.visibleSlides);\n }\n\n function updateProgress(translate) {\n const swiper = this;\n\n if (typeof translate === 'undefined') {\n const multiplier = swiper.rtlTranslate ? -1 : 1; // eslint-disable-next-line\n\n translate = (swiper && swiper.translate && swiper.translate * multiplier) || 0;\n }\n\n const params = swiper.params;\n const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n let {progress, isBeginning, isEnd} = swiper;\n const wasBeginning = isBeginning;\n const wasEnd = isEnd;\n\n if (translatesDiff === 0) {\n progress = 0;\n isBeginning = true;\n isEnd = true;\n } else {\n progress = (translate - swiper.minTranslate()) / translatesDiff;\n isBeginning = progress <= 0;\n isEnd = progress >= 1;\n }\n\n Object.assign(swiper, {\n progress,\n isBeginning,\n isEnd,\n });\n if (params.watchSlidesProgress || (params.centeredSlides && params.autoHeight))\n swiper.updateSlidesProgress(translate);\n\n if (isBeginning && !wasBeginning) {\n swiper.emit('reachBeginning toEdge');\n }\n\n if (isEnd && !wasEnd) {\n swiper.emit('reachEnd toEdge');\n }\n\n if ((wasBeginning && !isBeginning) || (wasEnd && !isEnd)) {\n swiper.emit('fromEdge');\n }\n\n swiper.emit('progress', progress);\n }\n\n function updateSlidesClasses() {\n const swiper = this;\n const {slides, params, $wrapperEl, activeIndex, realIndex} = swiper;\n const isVirtual = swiper.virtual && params.virtual.enabled;\n slides.removeClass(\n `${params.slideActiveClass} ${params.slideNextClass} ${params.slidePrevClass} ${params.slideDuplicateActiveClass} ${params.slideDuplicateNextClass} ${params.slideDuplicatePrevClass}`,\n );\n let activeSlide;\n\n if (isVirtual) {\n activeSlide = swiper.$wrapperEl.find(`.${params.slideClass}[data-swiper-slide-index=\"${activeIndex}\"]`);\n } else {\n activeSlide = slides.eq(activeIndex);\n } // Active classes\n\n activeSlide.addClass(params.slideActiveClass);\n\n if (params.loop) {\n // Duplicate to all looped slides\n if (activeSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children(\n `.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index=\"${realIndex}\"]`,\n )\n .addClass(params.slideDuplicateActiveClass);\n } else {\n $wrapperEl\n .children(`.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index=\"${realIndex}\"]`)\n .addClass(params.slideDuplicateActiveClass);\n }\n } // Next Slide\n\n let nextSlide = activeSlide.nextAll(`.${params.slideClass}`).eq(0).addClass(params.slideNextClass);\n\n if (params.loop && nextSlide.length === 0) {\n nextSlide = slides.eq(0);\n nextSlide.addClass(params.slideNextClass);\n } // Prev Slide\n\n let prevSlide = activeSlide.prevAll(`.${params.slideClass}`).eq(0).addClass(params.slidePrevClass);\n\n if (params.loop && prevSlide.length === 0) {\n prevSlide = slides.eq(-1);\n prevSlide.addClass(params.slidePrevClass);\n }\n\n if (params.loop) {\n // Duplicate to all looped slides\n if (nextSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children(\n `.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index=\"${nextSlide.attr(\n 'data-swiper-slide-index',\n )}\"]`,\n )\n .addClass(params.slideDuplicateNextClass);\n } else {\n $wrapperEl\n .children(\n `.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index=\"${nextSlide.attr(\n 'data-swiper-slide-index',\n )}\"]`,\n )\n .addClass(params.slideDuplicateNextClass);\n }\n\n if (prevSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children(\n `.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index=\"${prevSlide.attr(\n 'data-swiper-slide-index',\n )}\"]`,\n )\n .addClass(params.slideDuplicatePrevClass);\n } else {\n $wrapperEl\n .children(\n `.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index=\"${prevSlide.attr(\n 'data-swiper-slide-index',\n )}\"]`,\n )\n .addClass(params.slideDuplicatePrevClass);\n }\n }\n\n swiper.emitSlidesClasses();\n }\n\n function updateActiveIndex(newActiveIndex) {\n const swiper = this;\n const translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate;\n const {\n slidesGrid,\n snapGrid,\n params,\n activeIndex: previousIndex,\n realIndex: previousRealIndex,\n snapIndex: previousSnapIndex,\n } = swiper;\n let activeIndex = newActiveIndex;\n let snapIndex;\n\n if (typeof activeIndex === 'undefined') {\n for (let i = 0; i < slidesGrid.length; i += 1) {\n if (typeof slidesGrid[i + 1] !== 'undefined') {\n if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1] - (slidesGrid[i + 1] - slidesGrid[i]) / 2) {\n activeIndex = i;\n } else if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1]) {\n activeIndex = i + 1;\n }\n } else if (translate >= slidesGrid[i]) {\n activeIndex = i;\n }\n } // Normalize slideIndex\n\n if (params.normalizeSlideIndex) {\n if (activeIndex < 0 || typeof activeIndex === 'undefined') activeIndex = 0;\n }\n }\n\n if (snapGrid.indexOf(translate) >= 0) {\n snapIndex = snapGrid.indexOf(translate);\n } else {\n const skip = Math.min(params.slidesPerGroupSkip, activeIndex);\n snapIndex = skip + Math.floor((activeIndex - skip) / params.slidesPerGroup);\n }\n\n if (snapIndex >= snapGrid.length) snapIndex = snapGrid.length - 1;\n\n if (activeIndex === previousIndex) {\n if (snapIndex !== previousSnapIndex) {\n swiper.snapIndex = snapIndex;\n swiper.emit('snapIndexChange');\n }\n\n return;\n } // Get real index\n\n const realIndex = parseInt(swiper.slides.eq(activeIndex).attr('data-swiper-slide-index') || activeIndex, 10);\n Object.assign(swiper, {\n snapIndex,\n realIndex,\n previousIndex,\n activeIndex,\n });\n swiper.emit('activeIndexChange');\n swiper.emit('snapIndexChange');\n\n if (previousRealIndex !== realIndex) {\n swiper.emit('realIndexChange');\n }\n\n if (swiper.initialized || swiper.params.runCallbacksOnInit) {\n swiper.emit('slideChange');\n }\n }\n\n function updateClickedSlide(e) {\n const swiper = this;\n const params = swiper.params;\n const slide = $(e).closest(`.${params.slideClass}`)[0];\n let slideFound = false;\n let slideIndex;\n\n if (slide) {\n for (let i = 0; i < swiper.slides.length; i += 1) {\n if (swiper.slides[i] === slide) {\n slideFound = true;\n slideIndex = i;\n break;\n }\n }\n }\n\n if (slide && slideFound) {\n swiper.clickedSlide = slide;\n\n if (swiper.virtual && swiper.params.virtual.enabled) {\n swiper.clickedIndex = parseInt($(slide).attr('data-swiper-slide-index'), 10);\n } else {\n swiper.clickedIndex = slideIndex;\n }\n } else {\n swiper.clickedSlide = undefined;\n swiper.clickedIndex = undefined;\n return;\n }\n\n if (\n params.slideToClickedSlide &&\n swiper.clickedIndex !== undefined &&\n swiper.clickedIndex !== swiper.activeIndex\n ) {\n swiper.slideToClickedSlide();\n }\n }\n\n var update = {\n updateSize,\n updateSlides,\n updateAutoHeight,\n updateSlidesOffset,\n updateSlidesProgress,\n updateProgress,\n updateSlidesClasses,\n updateActiveIndex,\n updateClickedSlide,\n };\n\n function getSwiperTranslate(axis = this.isHorizontal() ? 'x' : 'y') {\n const swiper = this;\n const {params, rtlTranslate: rtl, translate, $wrapperEl} = swiper;\n\n if (params.virtualTranslate) {\n return rtl ? -translate : translate;\n }\n\n if (params.cssMode) {\n return translate;\n }\n\n let currentTranslate = getTranslate($wrapperEl[0], axis);\n if (rtl) currentTranslate = -currentTranslate;\n return currentTranslate || 0;\n }\n\n function setTranslate(translate, byController) {\n const swiper = this;\n const {rtlTranslate: rtl, params, $wrapperEl, wrapperEl, progress} = swiper;\n let x = 0;\n let y = 0;\n const z = 0;\n\n if (swiper.isHorizontal()) {\n x = rtl ? -translate : translate;\n } else {\n y = translate;\n }\n\n if (params.roundLengths) {\n x = Math.floor(x);\n y = Math.floor(y);\n }\n\n if (params.cssMode) {\n wrapperEl[swiper.isHorizontal() ? 'scrollLeft' : 'scrollTop'] = swiper.isHorizontal() ? -x : -y;\n } else if (!params.virtualTranslate) {\n $wrapperEl.transform(`translate3d(${x}px, ${y}px, ${z}px)`);\n }\n\n swiper.previousTranslate = swiper.translate;\n swiper.translate = swiper.isHorizontal() ? x : y; // Check if we need to update progress\n\n let newProgress;\n const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n\n if (translatesDiff === 0) {\n newProgress = 0;\n } else {\n newProgress = (translate - swiper.minTranslate()) / translatesDiff;\n }\n\n if (newProgress !== progress) {\n swiper.updateProgress(translate);\n }\n\n swiper.emit('setTranslate', swiper.translate, byController);\n }\n\n function minTranslate() {\n return -this.snapGrid[0];\n }\n\n function maxTranslate() {\n return -this.snapGrid[this.snapGrid.length - 1];\n }\n\n function translateTo(\n translate = 0,\n speed = this.params.speed,\n runCallbacks = true,\n translateBounds = true,\n internal,\n ) {\n const swiper = this;\n const {params, wrapperEl} = swiper;\n\n if (swiper.animating && params.preventInteractionOnTransition) {\n return false;\n }\n\n const minTranslate = swiper.minTranslate();\n const maxTranslate = swiper.maxTranslate();\n let newTranslate;\n if (translateBounds && translate > minTranslate) newTranslate = minTranslate;\n else if (translateBounds && translate < maxTranslate) newTranslate = maxTranslate;\n else newTranslate = translate; // Update progress\n\n swiper.updateProgress(newTranslate);\n\n if (params.cssMode) {\n const isH = swiper.isHorizontal();\n\n if (speed === 0) {\n wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = -newTranslate;\n } else {\n if (!swiper.support.smoothScroll) {\n animateCSSModeScroll({\n swiper,\n targetPosition: -newTranslate,\n side: isH ? 'left' : 'top',\n });\n return true;\n }\n\n wrapperEl.scrollTo({\n [isH ? 'left' : 'top']: -newTranslate,\n behavior: 'smooth',\n });\n }\n\n return true;\n }\n\n if (speed === 0) {\n swiper.setTransition(0);\n swiper.setTranslate(newTranslate);\n\n if (runCallbacks) {\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.emit('transitionEnd');\n }\n } else {\n swiper.setTransition(speed);\n swiper.setTranslate(newTranslate);\n\n if (runCallbacks) {\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.emit('transitionStart');\n }\n\n if (!swiper.animating) {\n swiper.animating = true;\n\n if (!swiper.onTranslateToWrapperTransitionEnd) {\n swiper.onTranslateToWrapperTransitionEnd = function transitionEnd(e) {\n if (!swiper || swiper.destroyed) return;\n if (e.target !== this) return;\n swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.onTranslateToWrapperTransitionEnd);\n swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.onTranslateToWrapperTransitionEnd);\n swiper.onTranslateToWrapperTransitionEnd = null;\n delete swiper.onTranslateToWrapperTransitionEnd;\n\n if (runCallbacks) {\n swiper.emit('transitionEnd');\n }\n };\n }\n\n swiper.$wrapperEl[0].addEventListener('transitionend', swiper.onTranslateToWrapperTransitionEnd);\n swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.onTranslateToWrapperTransitionEnd);\n }\n }\n\n return true;\n }\n\n var translate = {\n getTranslate: getSwiperTranslate,\n setTranslate,\n minTranslate,\n maxTranslate,\n translateTo,\n };\n\n function setTransition(duration, byController) {\n const swiper = this;\n\n if (!swiper.params.cssMode) {\n swiper.$wrapperEl.transition(duration);\n }\n\n swiper.emit('setTransition', duration, byController);\n }\n\n function transitionEmit({swiper, runCallbacks, direction, step}) {\n const {activeIndex, previousIndex} = swiper;\n let dir = direction;\n\n if (!dir) {\n if (activeIndex > previousIndex) dir = 'next';\n else if (activeIndex < previousIndex) dir = 'prev';\n else dir = 'reset';\n }\n\n swiper.emit(`transition${step}`);\n\n if (runCallbacks && activeIndex !== previousIndex) {\n if (dir === 'reset') {\n swiper.emit(`slideResetTransition${step}`);\n return;\n }\n\n swiper.emit(`slideChangeTransition${step}`);\n\n if (dir === 'next') {\n swiper.emit(`slideNextTransition${step}`);\n } else {\n swiper.emit(`slidePrevTransition${step}`);\n }\n }\n }\n\n function transitionStart(runCallbacks = true, direction) {\n const swiper = this;\n const {params} = swiper;\n if (params.cssMode) return;\n\n if (params.autoHeight) {\n swiper.updateAutoHeight();\n }\n\n transitionEmit({\n swiper,\n runCallbacks,\n direction,\n step: 'Start',\n });\n }\n\n function transitionEnd(runCallbacks = true, direction) {\n const swiper = this;\n const {params} = swiper;\n swiper.animating = false;\n if (params.cssMode) return;\n swiper.setTransition(0);\n transitionEmit({\n swiper,\n runCallbacks,\n direction,\n step: 'End',\n });\n }\n\n var transition = {\n setTransition,\n transitionStart,\n transitionEnd,\n };\n\n function slideTo(index = 0, speed = this.params.speed, runCallbacks = true, internal, initial) {\n if (typeof index !== 'number' && typeof index !== 'string') {\n throw new Error(\n `The 'index' argument cannot have type other than 'number' or 'string'. [${typeof index}] given.`,\n );\n }\n\n if (typeof index === 'string') {\n /**\n * The `index` argument converted from `string` to `number`.\n * @type {number}\n */\n const indexAsNumber = parseInt(index, 10);\n /**\n * Determines whether the `index` argument is a valid `number`\n * after being converted from the `string` type.\n * @type {boolean}\n */\n\n const isValidNumber = isFinite(indexAsNumber);\n\n if (!isValidNumber) {\n throw new Error(`The passed-in 'index' (string) couldn't be converted to 'number'. [${index}] given.`);\n } // Knowing that the converted `index` is a valid number,\n // we can update the original argument's value.\n\n index = indexAsNumber;\n }\n\n const swiper = this;\n let slideIndex = index;\n if (slideIndex < 0) slideIndex = 0;\n const {params, snapGrid, slidesGrid, previousIndex, activeIndex, rtlTranslate: rtl, wrapperEl, enabled} = swiper;\n\n if ((swiper.animating && params.preventInteractionOnTransition) || (!enabled && !internal && !initial)) {\n return false;\n }\n\n const skip = Math.min(swiper.params.slidesPerGroupSkip, slideIndex);\n let snapIndex = skip + Math.floor((slideIndex - skip) / swiper.params.slidesPerGroup);\n if (snapIndex >= snapGrid.length) snapIndex = snapGrid.length - 1;\n\n if ((activeIndex || params.initialSlide || 0) === (previousIndex || 0) && runCallbacks) {\n swiper.emit('beforeSlideChangeStart');\n }\n\n const translate = -snapGrid[snapIndex]; // Update progress\n\n swiper.updateProgress(translate); // Normalize slideIndex\n\n if (params.normalizeSlideIndex) {\n for (let i = 0; i < slidesGrid.length; i += 1) {\n const normalizedTranslate = -Math.floor(translate * 100);\n const normalizedGrid = Math.floor(slidesGrid[i] * 100);\n const normalizedGridNext = Math.floor(slidesGrid[i + 1] * 100);\n\n if (typeof slidesGrid[i + 1] !== 'undefined') {\n if (\n normalizedTranslate >= normalizedGrid &&\n normalizedTranslate < normalizedGridNext - (normalizedGridNext - normalizedGrid) / 2\n ) {\n slideIndex = i;\n } else if (normalizedTranslate >= normalizedGrid && normalizedTranslate < normalizedGridNext) {\n slideIndex = i + 1;\n }\n } else if (normalizedTranslate >= normalizedGrid) {\n slideIndex = i;\n }\n }\n } // Directions locks\n\n if (swiper.initialized && slideIndex !== activeIndex) {\n if (!swiper.allowSlideNext && translate < swiper.translate && translate < swiper.minTranslate()) {\n return false;\n }\n\n if (!swiper.allowSlidePrev && translate > swiper.translate && translate > swiper.maxTranslate()) {\n if ((activeIndex || 0) !== slideIndex) return false;\n }\n }\n\n let direction;\n if (slideIndex > activeIndex) direction = 'next';\n else if (slideIndex < activeIndex) direction = 'prev';\n else direction = 'reset'; // Update Index\n\n if ((rtl && -translate === swiper.translate) || (!rtl && translate === swiper.translate)) {\n swiper.updateActiveIndex(slideIndex); // Update Height\n\n if (params.autoHeight) {\n swiper.updateAutoHeight();\n }\n\n swiper.updateSlidesClasses();\n\n if (params.effect !== 'slide') {\n swiper.setTranslate(translate);\n }\n\n if (direction !== 'reset') {\n swiper.transitionStart(runCallbacks, direction);\n swiper.transitionEnd(runCallbacks, direction);\n }\n\n return false;\n }\n\n if (params.cssMode) {\n const isH = swiper.isHorizontal();\n const t = rtl ? translate : -translate;\n\n if (speed === 0) {\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n\n if (isVirtual) {\n swiper.wrapperEl.style.scrollSnapType = 'none';\n swiper._immediateVirtual = true;\n }\n\n wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = t;\n\n if (isVirtual) {\n requestAnimationFrame(() => {\n swiper.wrapperEl.style.scrollSnapType = '';\n swiper._swiperImmediateVirtual = false;\n });\n }\n } else {\n if (!swiper.support.smoothScroll) {\n animateCSSModeScroll({\n swiper,\n targetPosition: t,\n side: isH ? 'left' : 'top',\n });\n return true;\n }\n\n wrapperEl.scrollTo({\n [isH ? 'left' : 'top']: t,\n behavior: 'smooth',\n });\n }\n\n return true;\n }\n\n swiper.setTransition(speed);\n swiper.setTranslate(translate);\n swiper.updateActiveIndex(slideIndex);\n swiper.updateSlidesClasses();\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.transitionStart(runCallbacks, direction);\n\n if (speed === 0) {\n swiper.transitionEnd(runCallbacks, direction);\n } else if (!swiper.animating) {\n swiper.animating = true;\n\n if (!swiper.onSlideToWrapperTransitionEnd) {\n swiper.onSlideToWrapperTransitionEnd = function transitionEnd(e) {\n if (!swiper || swiper.destroyed) return;\n if (e.target !== this) return;\n swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd);\n swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd);\n swiper.onSlideToWrapperTransitionEnd = null;\n delete swiper.onSlideToWrapperTransitionEnd;\n swiper.transitionEnd(runCallbacks, direction);\n };\n }\n\n swiper.$wrapperEl[0].addEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd);\n swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd);\n }\n\n return true;\n }\n\n function slideToLoop(index = 0, speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n let newIndex = index;\n\n if (swiper.params.loop) {\n newIndex += swiper.loopedSlides;\n }\n\n return swiper.slideTo(newIndex, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slideNext(speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n const {animating, enabled, params} = swiper;\n if (!enabled) return swiper;\n let perGroup = params.slidesPerGroup;\n\n if (params.slidesPerView === 'auto' && params.slidesPerGroup === 1 && params.slidesPerGroupAuto) {\n perGroup = Math.max(swiper.slidesPerViewDynamic('current', true), 1);\n }\n\n const increment = swiper.activeIndex < params.slidesPerGroupSkip ? 1 : perGroup;\n\n if (params.loop) {\n if (animating && params.loopPreventsSlide) return false;\n swiper.loopFix(); // eslint-disable-next-line\n\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n }\n\n if (params.rewind && swiper.isEnd) {\n return swiper.slideTo(0, speed, runCallbacks, internal);\n }\n\n return swiper.slideTo(swiper.activeIndex + increment, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slidePrev(speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n const {params, animating, snapGrid, slidesGrid, rtlTranslate, enabled} = swiper;\n if (!enabled) return swiper;\n\n if (params.loop) {\n if (animating && params.loopPreventsSlide) return false;\n swiper.loopFix(); // eslint-disable-next-line\n\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n }\n\n const translate = rtlTranslate ? swiper.translate : -swiper.translate;\n\n function normalize(val) {\n if (val < 0) return -Math.floor(Math.abs(val));\n return Math.floor(val);\n }\n\n const normalizedTranslate = normalize(translate);\n const normalizedSnapGrid = snapGrid.map((val) => normalize(val));\n let prevSnap = snapGrid[normalizedSnapGrid.indexOf(normalizedTranslate) - 1];\n\n if (typeof prevSnap === 'undefined' && params.cssMode) {\n let prevSnapIndex;\n snapGrid.forEach((snap, snapIndex) => {\n if (normalizedTranslate >= snap) {\n // prevSnap = snap;\n prevSnapIndex = snapIndex;\n }\n });\n\n if (typeof prevSnapIndex !== 'undefined') {\n prevSnap = snapGrid[prevSnapIndex > 0 ? prevSnapIndex - 1 : prevSnapIndex];\n }\n }\n\n let prevIndex = 0;\n\n if (typeof prevSnap !== 'undefined') {\n prevIndex = slidesGrid.indexOf(prevSnap);\n if (prevIndex < 0) prevIndex = swiper.activeIndex - 1;\n\n if (params.slidesPerView === 'auto' && params.slidesPerGroup === 1 && params.slidesPerGroupAuto) {\n prevIndex = prevIndex - swiper.slidesPerViewDynamic('previous', true) + 1;\n prevIndex = Math.max(prevIndex, 0);\n }\n }\n\n if (params.rewind && swiper.isBeginning) {\n return swiper.slideTo(swiper.slides.length - 1, speed, runCallbacks, internal);\n }\n\n return swiper.slideTo(prevIndex, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slideReset(speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n return swiper.slideTo(swiper.activeIndex, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slideToClosest(speed = this.params.speed, runCallbacks = true, internal, threshold = 0.5) {\n const swiper = this;\n let index = swiper.activeIndex;\n const skip = Math.min(swiper.params.slidesPerGroupSkip, index);\n const snapIndex = skip + Math.floor((index - skip) / swiper.params.slidesPerGroup);\n const translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate;\n\n if (translate >= swiper.snapGrid[snapIndex]) {\n // The current translate is on or after the current snap index, so the choice\n // is between the current index and the one after it.\n const currentSnap = swiper.snapGrid[snapIndex];\n const nextSnap = swiper.snapGrid[snapIndex + 1];\n\n if (translate - currentSnap > (nextSnap - currentSnap) * threshold) {\n index += swiper.params.slidesPerGroup;\n }\n } else {\n // The current translate is before the current snap index, so the choice\n // is between the current index and the one before it.\n const prevSnap = swiper.snapGrid[snapIndex - 1];\n const currentSnap = swiper.snapGrid[snapIndex];\n\n if (translate - prevSnap <= (currentSnap - prevSnap) * threshold) {\n index -= swiper.params.slidesPerGroup;\n }\n }\n\n index = Math.max(index, 0);\n index = Math.min(index, swiper.slidesGrid.length - 1);\n return swiper.slideTo(index, speed, runCallbacks, internal);\n }\n\n function slideToClickedSlide() {\n const swiper = this;\n const {params, $wrapperEl} = swiper;\n const slidesPerView = params.slidesPerView === 'auto' ? swiper.slidesPerViewDynamic() : params.slidesPerView;\n let slideToIndex = swiper.clickedIndex;\n let realIndex;\n\n if (params.loop) {\n if (swiper.animating) return;\n realIndex = parseInt($(swiper.clickedSlide).attr('data-swiper-slide-index'), 10);\n\n if (params.centeredSlides) {\n if (\n slideToIndex < swiper.loopedSlides - slidesPerView / 2 ||\n slideToIndex > swiper.slides.length - swiper.loopedSlides + slidesPerView / 2\n ) {\n swiper.loopFix();\n slideToIndex = $wrapperEl\n .children(\n `.${params.slideClass}[data-swiper-slide-index=\"${realIndex}\"]:not(.${params.slideDuplicateClass})`,\n )\n .eq(0)\n .index();\n nextTick(() => {\n swiper.slideTo(slideToIndex);\n });\n } else {\n swiper.slideTo(slideToIndex);\n }\n } else if (slideToIndex > swiper.slides.length - slidesPerView) {\n swiper.loopFix();\n slideToIndex = $wrapperEl\n .children(\n `.${params.slideClass}[data-swiper-slide-index=\"${realIndex}\"]:not(.${params.slideDuplicateClass})`,\n )\n .eq(0)\n .index();\n nextTick(() => {\n swiper.slideTo(slideToIndex);\n });\n } else {\n swiper.slideTo(slideToIndex);\n }\n } else {\n swiper.slideTo(slideToIndex);\n }\n }\n\n var slide = {\n slideTo,\n slideToLoop,\n slideNext,\n slidePrev,\n slideReset,\n slideToClosest,\n slideToClickedSlide,\n };\n\n function loopCreate() {\n const swiper = this;\n const document = getDocument();\n const {params, $wrapperEl} = swiper; // Remove duplicated slides\n\n const $selector = $wrapperEl.children().length > 0 ? $($wrapperEl.children()[0].parentNode) : $wrapperEl;\n $selector.children(`.${params.slideClass}.${params.slideDuplicateClass}`).remove();\n let slides = $selector.children(`.${params.slideClass}`);\n\n if (params.loopFillGroupWithBlank) {\n const blankSlidesNum = params.slidesPerGroup - (slides.length % params.slidesPerGroup);\n\n if (blankSlidesNum !== params.slidesPerGroup) {\n for (let i = 0; i < blankSlidesNum; i += 1) {\n const blankNode = $(document.createElement('div')).addClass(\n `${params.slideClass} ${params.slideBlankClass}`,\n );\n $selector.append(blankNode);\n }\n\n slides = $selector.children(`.${params.slideClass}`);\n }\n }\n\n if (params.slidesPerView === 'auto' && !params.loopedSlides) params.loopedSlides = slides.length;\n swiper.loopedSlides = Math.ceil(parseFloat(params.loopedSlides || params.slidesPerView, 10));\n swiper.loopedSlides += params.loopAdditionalSlides;\n\n if (swiper.loopedSlides > slides.length) {\n swiper.loopedSlides = slides.length;\n }\n\n const prependSlides = [];\n const appendSlides = [];\n slides.each((el, index) => {\n const slide = $(el);\n\n if (index < swiper.loopedSlides) {\n appendSlides.push(el);\n }\n\n if (index < slides.length && index >= slides.length - swiper.loopedSlides) {\n prependSlides.push(el);\n }\n\n slide.attr('data-swiper-slide-index', index);\n });\n\n for (let i = 0; i < appendSlides.length; i += 1) {\n $selector.append($(appendSlides[i].cloneNode(true)).addClass(params.slideDuplicateClass));\n }\n\n for (let i = prependSlides.length - 1; i >= 0; i -= 1) {\n $selector.prepend($(prependSlides[i].cloneNode(true)).addClass(params.slideDuplicateClass));\n }\n }\n\n function loopFix() {\n const swiper = this;\n swiper.emit('beforeLoopFix');\n const {activeIndex, slides, loopedSlides, allowSlidePrev, allowSlideNext, snapGrid, rtlTranslate: rtl} = swiper;\n let newIndex;\n swiper.allowSlidePrev = true;\n swiper.allowSlideNext = true;\n const snapTranslate = -snapGrid[activeIndex];\n const diff = snapTranslate - swiper.getTranslate(); // Fix For Negative Oversliding\n\n if (activeIndex < loopedSlides) {\n newIndex = slides.length - loopedSlides * 3 + activeIndex;\n newIndex += loopedSlides;\n const slideChanged = swiper.slideTo(newIndex, 0, false, true);\n\n if (slideChanged && diff !== 0) {\n swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff);\n }\n } else if (activeIndex >= slides.length - loopedSlides) {\n // Fix For Positive Oversliding\n newIndex = -slides.length + activeIndex + loopedSlides;\n newIndex += loopedSlides;\n const slideChanged = swiper.slideTo(newIndex, 0, false, true);\n\n if (slideChanged && diff !== 0) {\n swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff);\n }\n }\n\n swiper.allowSlidePrev = allowSlidePrev;\n swiper.allowSlideNext = allowSlideNext;\n swiper.emit('loopFix');\n }\n\n function loopDestroy() {\n const swiper = this;\n const {$wrapperEl, params, slides} = swiper;\n $wrapperEl\n .children(`.${params.slideClass}.${params.slideDuplicateClass},.${params.slideClass}.${params.slideBlankClass}`)\n .remove();\n slides.removeAttr('data-swiper-slide-index');\n }\n\n var loop = {\n loopCreate,\n loopFix,\n loopDestroy,\n };\n\n function setGrabCursor(moving) {\n const swiper = this;\n if (\n swiper.support.touch ||\n !swiper.params.simulateTouch ||\n (swiper.params.watchOverflow && swiper.isLocked) ||\n swiper.params.cssMode\n )\n return;\n const el = swiper.params.touchEventsTarget === 'container' ? swiper.el : swiper.wrapperEl;\n el.style.cursor = 'move';\n el.style.cursor = moving ? '-webkit-grabbing' : '-webkit-grab';\n el.style.cursor = moving ? '-moz-grabbin' : '-moz-grab';\n el.style.cursor = moving ? 'grabbing' : 'grab';\n }\n\n function unsetGrabCursor() {\n const swiper = this;\n\n if (swiper.support.touch || (swiper.params.watchOverflow && swiper.isLocked) || swiper.params.cssMode) {\n return;\n }\n\n swiper[swiper.params.touchEventsTarget === 'container' ? 'el' : 'wrapperEl'].style.cursor = '';\n }\n\n var grabCursor = {\n setGrabCursor,\n unsetGrabCursor,\n };\n\n function closestElement(selector, base = this) {\n function __closestFrom(el) {\n if (!el || el === getDocument() || el === getWindow()) return null;\n if (el.assignedSlot) el = el.assignedSlot;\n const found = el.closest(selector);\n return found || __closestFrom(el.getRootNode().host);\n }\n\n return __closestFrom(base);\n }\n\n function onTouchStart(event) {\n const swiper = this;\n const document = getDocument();\n const window = getWindow();\n const data = swiper.touchEventsData;\n const {params, touches, enabled} = swiper;\n if (!enabled) return;\n\n if (swiper.animating && params.preventInteractionOnTransition) {\n return;\n }\n\n if (!swiper.animating && params.cssMode && params.loop) {\n swiper.loopFix();\n }\n\n let e = event;\n if (e.originalEvent) e = e.originalEvent;\n let $targetEl = $(e.target);\n\n if (params.touchEventsTarget === 'wrapper') {\n if (!$targetEl.closest(swiper.wrapperEl).length) return;\n }\n\n data.isTouchEvent = e.type === 'touchstart';\n if (!data.isTouchEvent && 'which' in e && e.which === 3) return;\n if (!data.isTouchEvent && 'button' in e && e.button > 0) return;\n if (data.isTouched && data.isMoved) return; // change target el for shadow root component\n\n const swipingClassHasValue = !!params.noSwipingClass && params.noSwipingClass !== '';\n\n if (swipingClassHasValue && e.target && e.target.shadowRoot && event.path && event.path[0]) {\n $targetEl = $(event.path[0]);\n }\n\n const noSwipingSelector = params.noSwipingSelector ? params.noSwipingSelector : `.${params.noSwipingClass}`;\n const isTargetShadow = !!(e.target && e.target.shadowRoot); // use closestElement for shadow root element to get the actual closest for nested shadow root element\n\n if (\n params.noSwiping &&\n (isTargetShadow ? closestElement(noSwipingSelector, e.target) : $targetEl.closest(noSwipingSelector)[0])\n ) {\n swiper.allowClick = true;\n return;\n }\n\n if (params.swipeHandler) {\n if (!$targetEl.closest(params.swipeHandler)[0]) return;\n }\n\n touches.currentX = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX;\n touches.currentY = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY;\n const startX = touches.currentX;\n const startY = touches.currentY; // Do NOT start if iOS edge swipe is detected. Otherwise iOS app cannot swipe-to-go-back anymore\n\n const edgeSwipeDetection = params.edgeSwipeDetection || params.iOSEdgeSwipeDetection;\n const edgeSwipeThreshold = params.edgeSwipeThreshold || params.iOSEdgeSwipeThreshold;\n\n if (edgeSwipeDetection && (startX <= edgeSwipeThreshold || startX >= window.innerWidth - edgeSwipeThreshold)) {\n if (edgeSwipeDetection === 'prevent') {\n event.preventDefault();\n } else {\n return;\n }\n }\n\n Object.assign(data, {\n isTouched: true,\n isMoved: false,\n allowTouchCallbacks: true,\n isScrolling: undefined,\n startMoving: undefined,\n });\n touches.startX = startX;\n touches.startY = startY;\n data.touchStartTime = now();\n swiper.allowClick = true;\n swiper.updateSize();\n swiper.swipeDirection = undefined;\n if (params.threshold > 0) data.allowThresholdMove = false;\n\n if (e.type !== 'touchstart') {\n let preventDefault = true;\n if ($targetEl.is(data.focusableElements)) preventDefault = false;\n\n if (\n document.activeElement &&\n $(document.activeElement).is(data.focusableElements) &&\n document.activeElement !== $targetEl[0]\n ) {\n document.activeElement.blur();\n }\n\n const shouldPreventDefault = preventDefault && swiper.allowTouchMove && params.touchStartPreventDefault;\n\n if ((params.touchStartForcePreventDefault || shouldPreventDefault) && !$targetEl[0].isContentEditable) {\n e.preventDefault();\n }\n }\n\n swiper.emit('touchStart', e);\n }\n\n function onTouchMove(event) {\n const document = getDocument();\n const swiper = this;\n const data = swiper.touchEventsData;\n const {params, touches, rtlTranslate: rtl, enabled} = swiper;\n if (!enabled) return;\n let e = event;\n if (e.originalEvent) e = e.originalEvent;\n\n if (!data.isTouched) {\n if (data.startMoving && data.isScrolling) {\n swiper.emit('touchMoveOpposite', e);\n }\n\n return;\n }\n\n if (data.isTouchEvent && e.type !== 'touchmove') return;\n const targetTouch = e.type === 'touchmove' && e.targetTouches && (e.targetTouches[0] || e.changedTouches[0]);\n const pageX = e.type === 'touchmove' ? targetTouch.pageX : e.pageX;\n const pageY = e.type === 'touchmove' ? targetTouch.pageY : e.pageY;\n\n if (e.preventedByNestedSwiper) {\n touches.startX = pageX;\n touches.startY = pageY;\n return;\n }\n\n if (!swiper.allowTouchMove) {\n // isMoved = true;\n swiper.allowClick = false;\n\n if (data.isTouched) {\n Object.assign(touches, {\n startX: pageX,\n startY: pageY,\n currentX: pageX,\n currentY: pageY,\n });\n data.touchStartTime = now();\n }\n\n return;\n }\n\n if (data.isTouchEvent && params.touchReleaseOnEdges && !params.loop) {\n if (swiper.isVertical()) {\n // Vertical\n if (\n (pageY < touches.startY && swiper.translate <= swiper.maxTranslate()) ||\n (pageY > touches.startY && swiper.translate >= swiper.minTranslate())\n ) {\n data.isTouched = false;\n data.isMoved = false;\n return;\n }\n } else if (\n (pageX < touches.startX && swiper.translate <= swiper.maxTranslate()) ||\n (pageX > touches.startX && swiper.translate >= swiper.minTranslate())\n ) {\n return;\n }\n }\n\n if (data.isTouchEvent && document.activeElement) {\n if (e.target === document.activeElement && $(e.target).is(data.focusableElements)) {\n data.isMoved = true;\n swiper.allowClick = false;\n return;\n }\n }\n\n if (data.allowTouchCallbacks) {\n swiper.emit('touchMove', e);\n }\n\n if (e.targetTouches && e.targetTouches.length > 1) return;\n touches.currentX = pageX;\n touches.currentY = pageY;\n const diffX = touches.currentX - touches.startX;\n const diffY = touches.currentY - touches.startY;\n if (swiper.params.threshold && Math.sqrt(diffX ** 2 + diffY ** 2) < swiper.params.threshold) return;\n\n if (typeof data.isScrolling === 'undefined') {\n let touchAngle;\n\n if (\n (swiper.isHorizontal() && touches.currentY === touches.startY) ||\n (swiper.isVertical() && touches.currentX === touches.startX)\n ) {\n data.isScrolling = false;\n } else {\n // eslint-disable-next-line\n if (diffX * diffX + diffY * diffY >= 25) {\n touchAngle = (Math.atan2(Math.abs(diffY), Math.abs(diffX)) * 180) / Math.PI;\n data.isScrolling = swiper.isHorizontal()\n ? touchAngle > params.touchAngle\n : 90 - touchAngle > params.touchAngle;\n }\n }\n }\n\n if (data.isScrolling) {\n swiper.emit('touchMoveOpposite', e);\n }\n\n if (typeof data.startMoving === 'undefined') {\n if (touches.currentX !== touches.startX || touches.currentY !== touches.startY) {\n data.startMoving = true;\n }\n }\n\n if (data.isScrolling) {\n data.isTouched = false;\n return;\n }\n\n if (!data.startMoving) {\n return;\n }\n\n swiper.allowClick = false;\n\n if (!params.cssMode && e.cancelable) {\n e.preventDefault();\n }\n\n if (params.touchMoveStopPropagation && !params.nested) {\n e.stopPropagation();\n }\n\n if (!data.isMoved) {\n if (params.loop && !params.cssMode) {\n swiper.loopFix();\n }\n\n data.startTranslate = swiper.getTranslate();\n swiper.setTransition(0);\n\n if (swiper.animating) {\n swiper.$wrapperEl.trigger('webkitTransitionEnd transitionend');\n }\n\n data.allowMomentumBounce = false; // Grab Cursor\n\n if (params.grabCursor && (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)) {\n swiper.setGrabCursor(true);\n }\n\n swiper.emit('sliderFirstMove', e);\n }\n\n swiper.emit('sliderMove', e);\n data.isMoved = true;\n let diff = swiper.isHorizontal() ? diffX : diffY;\n touches.diff = diff;\n diff *= params.touchRatio;\n if (rtl) diff = -diff;\n swiper.swipeDirection = diff > 0 ? 'prev' : 'next';\n data.currentTranslate = diff + data.startTranslate;\n let disableParentSwiper = true;\n let resistanceRatio = params.resistanceRatio;\n\n if (params.touchReleaseOnEdges) {\n resistanceRatio = 0;\n }\n\n if (diff > 0 && data.currentTranslate > swiper.minTranslate()) {\n disableParentSwiper = false;\n if (params.resistance)\n data.currentTranslate =\n swiper.minTranslate() - 1 + (-swiper.minTranslate() + data.startTranslate + diff) ** resistanceRatio;\n } else if (diff < 0 && data.currentTranslate < swiper.maxTranslate()) {\n disableParentSwiper = false;\n if (params.resistance)\n data.currentTranslate =\n swiper.maxTranslate() + 1 - (swiper.maxTranslate() - data.startTranslate - diff) ** resistanceRatio;\n }\n\n if (disableParentSwiper) {\n e.preventedByNestedSwiper = true;\n } // Directions locks\n\n if (!swiper.allowSlideNext && swiper.swipeDirection === 'next' && data.currentTranslate < data.startTranslate) {\n data.currentTranslate = data.startTranslate;\n }\n\n if (!swiper.allowSlidePrev && swiper.swipeDirection === 'prev' && data.currentTranslate > data.startTranslate) {\n data.currentTranslate = data.startTranslate;\n }\n\n if (!swiper.allowSlidePrev && !swiper.allowSlideNext) {\n data.currentTranslate = data.startTranslate;\n } // Threshold\n\n if (params.threshold > 0) {\n if (Math.abs(diff) > params.threshold || data.allowThresholdMove) {\n if (!data.allowThresholdMove) {\n data.allowThresholdMove = true;\n touches.startX = touches.currentX;\n touches.startY = touches.currentY;\n data.currentTranslate = data.startTranslate;\n touches.diff = swiper.isHorizontal()\n ? touches.currentX - touches.startX\n : touches.currentY - touches.startY;\n return;\n }\n } else {\n data.currentTranslate = data.startTranslate;\n return;\n }\n }\n\n if (!params.followFinger || params.cssMode) return; // Update active index in free mode\n\n if ((params.freeMode && params.freeMode.enabled && swiper.freeMode) || params.watchSlidesProgress) {\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n\n if (swiper.params.freeMode && params.freeMode.enabled && swiper.freeMode) {\n swiper.freeMode.onTouchMove();\n } // Update progress\n\n swiper.updateProgress(data.currentTranslate); // Update translate\n\n swiper.setTranslate(data.currentTranslate);\n }\n\n function onTouchEnd(event) {\n const swiper = this;\n const data = swiper.touchEventsData;\n const {params, touches, rtlTranslate: rtl, slidesGrid, enabled} = swiper;\n if (!enabled) return;\n let e = event;\n if (e.originalEvent) e = e.originalEvent;\n\n if (data.allowTouchCallbacks) {\n swiper.emit('touchEnd', e);\n }\n\n data.allowTouchCallbacks = false;\n\n if (!data.isTouched) {\n if (data.isMoved && params.grabCursor) {\n swiper.setGrabCursor(false);\n }\n\n data.isMoved = false;\n data.startMoving = false;\n return;\n } // Return Grab Cursor\n\n if (\n params.grabCursor &&\n data.isMoved &&\n data.isTouched &&\n (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)\n ) {\n swiper.setGrabCursor(false);\n } // Time diff\n\n const touchEndTime = now();\n const timeDiff = touchEndTime - data.touchStartTime; // Tap, doubleTap, Click\n\n if (swiper.allowClick) {\n const pathTree = e.path || (e.composedPath && e.composedPath());\n swiper.updateClickedSlide((pathTree && pathTree[0]) || e.target);\n swiper.emit('tap click', e);\n\n if (timeDiff < 300 && touchEndTime - data.lastClickTime < 300) {\n swiper.emit('doubleTap doubleClick', e);\n }\n }\n\n data.lastClickTime = now();\n nextTick(() => {\n if (!swiper.destroyed) swiper.allowClick = true;\n });\n\n if (\n !data.isTouched ||\n !data.isMoved ||\n !swiper.swipeDirection ||\n touches.diff === 0 ||\n data.currentTranslate === data.startTranslate\n ) {\n data.isTouched = false;\n data.isMoved = false;\n data.startMoving = false;\n return;\n }\n\n data.isTouched = false;\n data.isMoved = false;\n data.startMoving = false;\n let currentPos;\n\n if (params.followFinger) {\n currentPos = rtl ? swiper.translate : -swiper.translate;\n } else {\n currentPos = -data.currentTranslate;\n }\n\n if (params.cssMode) {\n return;\n }\n\n if (swiper.params.freeMode && params.freeMode.enabled) {\n swiper.freeMode.onTouchEnd({\n currentPos,\n });\n return;\n } // Find current slide\n\n let stopIndex = 0;\n let groupSize = swiper.slidesSizesGrid[0];\n\n for (let i = 0; i < slidesGrid.length; i += i < params.slidesPerGroupSkip ? 1 : params.slidesPerGroup) {\n const increment = i < params.slidesPerGroupSkip - 1 ? 1 : params.slidesPerGroup;\n\n if (typeof slidesGrid[i + increment] !== 'undefined') {\n if (currentPos >= slidesGrid[i] && currentPos < slidesGrid[i + increment]) {\n stopIndex = i;\n groupSize = slidesGrid[i + increment] - slidesGrid[i];\n }\n } else if (currentPos >= slidesGrid[i]) {\n stopIndex = i;\n groupSize = slidesGrid[slidesGrid.length - 1] - slidesGrid[slidesGrid.length - 2];\n }\n } // Find current slide size\n\n const ratio = (currentPos - slidesGrid[stopIndex]) / groupSize;\n const increment = stopIndex < params.slidesPerGroupSkip - 1 ? 1 : params.slidesPerGroup;\n\n if (timeDiff > params.longSwipesMs) {\n // Long touches\n if (!params.longSwipes) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n\n if (swiper.swipeDirection === 'next') {\n if (ratio >= params.longSwipesRatio) swiper.slideTo(stopIndex + increment);\n else swiper.slideTo(stopIndex);\n }\n\n if (swiper.swipeDirection === 'prev') {\n if (ratio > 1 - params.longSwipesRatio) swiper.slideTo(stopIndex + increment);\n else swiper.slideTo(stopIndex);\n }\n } else {\n // Short swipes\n if (!params.shortSwipes) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n\n const isNavButtonTarget =\n swiper.navigation && (e.target === swiper.navigation.nextEl || e.target === swiper.navigation.prevEl);\n\n if (!isNavButtonTarget) {\n if (swiper.swipeDirection === 'next') {\n swiper.slideTo(stopIndex + increment);\n }\n\n if (swiper.swipeDirection === 'prev') {\n swiper.slideTo(stopIndex);\n }\n } else if (e.target === swiper.navigation.nextEl) {\n swiper.slideTo(stopIndex + increment);\n } else {\n swiper.slideTo(stopIndex);\n }\n }\n }\n\n function onResize() {\n const swiper = this;\n const {params, el} = swiper;\n if (el && el.offsetWidth === 0) return; // Breakpoints\n\n if (params.breakpoints) {\n swiper.setBreakpoint();\n } // Save locks\n\n const {allowSlideNext, allowSlidePrev, snapGrid} = swiper; // Disable locks on resize\n\n swiper.allowSlideNext = true;\n swiper.allowSlidePrev = true;\n swiper.updateSize();\n swiper.updateSlides();\n swiper.updateSlidesClasses();\n\n if (\n (params.slidesPerView === 'auto' || params.slidesPerView > 1) &&\n swiper.isEnd &&\n !swiper.isBeginning &&\n !swiper.params.centeredSlides\n ) {\n swiper.slideTo(swiper.slides.length - 1, 0, false, true);\n } else {\n swiper.slideTo(swiper.activeIndex, 0, false, true);\n }\n\n if (swiper.autoplay && swiper.autoplay.running && swiper.autoplay.paused) {\n swiper.autoplay.run();\n } // Return locks after resize\n\n swiper.allowSlidePrev = allowSlidePrev;\n swiper.allowSlideNext = allowSlideNext;\n\n if (swiper.params.watchOverflow && snapGrid !== swiper.snapGrid) {\n swiper.checkOverflow();\n }\n }\n\n function onClick(e) {\n const swiper = this;\n if (!swiper.enabled) return;\n\n if (!swiper.allowClick) {\n if (swiper.params.preventClicks) e.preventDefault();\n\n if (swiper.params.preventClicksPropagation && swiper.animating) {\n e.stopPropagation();\n e.stopImmediatePropagation();\n }\n }\n }\n\n function onScroll() {\n const swiper = this;\n const {wrapperEl, rtlTranslate, enabled} = swiper;\n if (!enabled) return;\n swiper.previousTranslate = swiper.translate;\n\n if (swiper.isHorizontal()) {\n swiper.translate = -wrapperEl.scrollLeft;\n } else {\n swiper.translate = -wrapperEl.scrollTop;\n } // eslint-disable-next-line\n\n if (swiper.translate === -0) swiper.translate = 0;\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n let newProgress;\n const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n\n if (translatesDiff === 0) {\n newProgress = 0;\n } else {\n newProgress = (swiper.translate - swiper.minTranslate()) / translatesDiff;\n }\n\n if (newProgress !== swiper.progress) {\n swiper.updateProgress(rtlTranslate ? -swiper.translate : swiper.translate);\n }\n\n swiper.emit('setTranslate', swiper.translate, false);\n }\n\n let dummyEventAttached = false;\n\n function dummyEventListener() {}\n\n const events = (swiper, method) => {\n const document = getDocument();\n const {params, touchEvents, el, wrapperEl, device, support} = swiper;\n const capture = !!params.nested;\n const domMethod = method === 'on' ? 'addEventListener' : 'removeEventListener';\n const swiperMethod = method; // Touch Events\n\n if (!support.touch) {\n el[domMethod](touchEvents.start, swiper.onTouchStart, false);\n document[domMethod](touchEvents.move, swiper.onTouchMove, capture);\n document[domMethod](touchEvents.end, swiper.onTouchEnd, false);\n } else {\n const passiveListener =\n touchEvents.start === 'touchstart' && support.passiveListener && params.passiveListeners\n ? {\n passive: true,\n capture: false,\n }\n : false;\n el[domMethod](touchEvents.start, swiper.onTouchStart, passiveListener);\n el[domMethod](\n touchEvents.move,\n swiper.onTouchMove,\n support.passiveListener\n ? {\n passive: false,\n capture,\n }\n : capture,\n );\n el[domMethod](touchEvents.end, swiper.onTouchEnd, passiveListener);\n\n if (touchEvents.cancel) {\n el[domMethod](touchEvents.cancel, swiper.onTouchEnd, passiveListener);\n }\n } // Prevent Links Clicks\n\n if (params.preventClicks || params.preventClicksPropagation) {\n el[domMethod]('click', swiper.onClick, true);\n }\n\n if (params.cssMode) {\n wrapperEl[domMethod]('scroll', swiper.onScroll);\n } // Resize handler\n\n if (params.updateOnWindowResize) {\n swiper[swiperMethod](\n device.ios || device.android ? 'resize orientationchange observerUpdate' : 'resize observerUpdate',\n onResize,\n true,\n );\n } else {\n swiper[swiperMethod]('observerUpdate', onResize, true);\n }\n };\n\n function attachEvents() {\n const swiper = this;\n const document = getDocument();\n const {params, support} = swiper;\n swiper.onTouchStart = onTouchStart.bind(swiper);\n swiper.onTouchMove = onTouchMove.bind(swiper);\n swiper.onTouchEnd = onTouchEnd.bind(swiper);\n\n if (params.cssMode) {\n swiper.onScroll = onScroll.bind(swiper);\n }\n\n swiper.onClick = onClick.bind(swiper);\n\n if (support.touch && !dummyEventAttached) {\n document.addEventListener('touchstart', dummyEventListener);\n dummyEventAttached = true;\n }\n\n events(swiper, 'on');\n }\n\n function detachEvents() {\n const swiper = this;\n events(swiper, 'off');\n }\n\n var events$1 = {\n attachEvents,\n detachEvents,\n };\n\n const isGridEnabled = (swiper, params) => {\n return swiper.grid && params.grid && params.grid.rows > 1;\n };\n\n function setBreakpoint() {\n const swiper = this;\n const {activeIndex, initialized, loopedSlides = 0, params, $el} = swiper;\n const breakpoints = params.breakpoints;\n if (!breakpoints || (breakpoints && Object.keys(breakpoints).length === 0)) return; // Get breakpoint for window width and update parameters\n\n const breakpoint = swiper.getBreakpoint(breakpoints, swiper.params.breakpointsBase, swiper.el);\n if (!breakpoint || swiper.currentBreakpoint === breakpoint) return;\n const breakpointOnlyParams = breakpoint in breakpoints ? breakpoints[breakpoint] : undefined;\n const breakpointParams = breakpointOnlyParams || swiper.originalParams;\n const wasMultiRow = isGridEnabled(swiper, params);\n const isMultiRow = isGridEnabled(swiper, breakpointParams);\n const wasEnabled = params.enabled;\n\n if (wasMultiRow && !isMultiRow) {\n $el.removeClass(`${params.containerModifierClass}grid ${params.containerModifierClass}grid-column`);\n swiper.emitContainerClasses();\n } else if (!wasMultiRow && isMultiRow) {\n $el.addClass(`${params.containerModifierClass}grid`);\n\n if (\n (breakpointParams.grid.fill && breakpointParams.grid.fill === 'column') ||\n (!breakpointParams.grid.fill && params.grid.fill === 'column')\n ) {\n $el.addClass(`${params.containerModifierClass}grid-column`);\n }\n\n swiper.emitContainerClasses();\n }\n\n const directionChanged = breakpointParams.direction && breakpointParams.direction !== params.direction;\n const needsReLoop = params.loop && (breakpointParams.slidesPerView !== params.slidesPerView || directionChanged);\n\n if (directionChanged && initialized) {\n swiper.changeDirection();\n }\n\n extend(swiper.params, breakpointParams);\n const isEnabled = swiper.params.enabled;\n Object.assign(swiper, {\n allowTouchMove: swiper.params.allowTouchMove,\n allowSlideNext: swiper.params.allowSlideNext,\n allowSlidePrev: swiper.params.allowSlidePrev,\n });\n\n if (wasEnabled && !isEnabled) {\n swiper.disable();\n } else if (!wasEnabled && isEnabled) {\n swiper.enable();\n }\n\n swiper.currentBreakpoint = breakpoint;\n swiper.emit('_beforeBreakpoint', breakpointParams);\n\n if (needsReLoop && initialized) {\n swiper.loopDestroy();\n swiper.loopCreate();\n swiper.updateSlides();\n swiper.slideTo(activeIndex - loopedSlides + swiper.loopedSlides, 0, false);\n }\n\n swiper.emit('breakpoint', breakpointParams);\n }\n\n function getBreakpoint(breakpoints, base = 'window', containerEl) {\n if (!breakpoints || (base === 'container' && !containerEl)) return undefined;\n let breakpoint = false;\n const window = getWindow();\n const currentHeight = base === 'window' ? window.innerHeight : containerEl.clientHeight;\n const points = Object.keys(breakpoints).map((point) => {\n if (typeof point === 'string' && point.indexOf('@') === 0) {\n const minRatio = parseFloat(point.substr(1));\n const value = currentHeight * minRatio;\n return {\n value,\n point,\n };\n }\n\n return {\n value: point,\n point,\n };\n });\n points.sort((a, b) => parseInt(a.value, 10) - parseInt(b.value, 10));\n\n for (let i = 0; i < points.length; i += 1) {\n const {point, value} = points[i];\n\n if (base === 'window') {\n if (window.matchMedia(`(min-width: ${value}px)`).matches) {\n breakpoint = point;\n }\n } else if (value <= containerEl.clientWidth) {\n breakpoint = point;\n }\n }\n\n return breakpoint || 'max';\n }\n\n var breakpoints = {\n setBreakpoint,\n getBreakpoint,\n };\n\n function prepareClasses(entries, prefix) {\n const resultClasses = [];\n entries.forEach((item) => {\n if (typeof item === 'object') {\n Object.keys(item).forEach((classNames) => {\n if (item[classNames]) {\n resultClasses.push(prefix + classNames);\n }\n });\n } else if (typeof item === 'string') {\n resultClasses.push(prefix + item);\n }\n });\n return resultClasses;\n }\n\n function addClasses() {\n const swiper = this;\n const {\n classNames,\n params,\n rtl,\n $el,\n device,\n support\n } = swiper; // prettier-ignore\n\n const suffixes = prepareClasses(\n [\n 'initialized',\n params.direction,\n {\n 'pointer-events': !support.touch,\n },\n {\n 'free-mode': swiper.params.freeMode && params.freeMode.enabled,\n },\n {\n autoheight: params.autoHeight,\n },\n {\n rtl: rtl,\n },\n {\n grid: params.grid && params.grid.rows > 1,\n },\n {\n 'grid-column': params.grid && params.grid.rows > 1 && params.grid.fill === 'column',\n },\n {\n android: device.android,\n },\n {\n ios: device.ios,\n },\n {\n 'css-mode': params.cssMode,\n },\n {\n centered: params.cssMode && params.centeredSlides,\n },\n ],\n params.containerModifierClass,\n );\n classNames.push(...suffixes);\n $el.addClass([...classNames].join(' '));\n swiper.emitContainerClasses();\n }\n\n function removeClasses() {\n const swiper = this;\n const {$el, classNames} = swiper;\n $el.removeClass(classNames.join(' '));\n swiper.emitContainerClasses();\n }\n\n var classes = {\n addClasses,\n removeClasses,\n };\n\n function loadImage(imageEl, src, srcset, sizes, checkForComplete, callback) {\n const window = getWindow();\n let image;\n\n function onReady() {\n if (callback) callback();\n }\n\n const isPicture = $(imageEl).parent('picture')[0];\n\n if (!isPicture && (!imageEl.complete || !checkForComplete)) {\n if (src) {\n image = new window.Image();\n image.onload = onReady;\n image.onerror = onReady;\n\n if (sizes) {\n image.sizes = sizes;\n }\n\n if (srcset) {\n image.srcset = srcset;\n }\n\n if (src) {\n image.src = src;\n }\n } else {\n onReady();\n }\n } else {\n // image already loaded...\n onReady();\n }\n }\n\n function preloadImages() {\n const swiper = this;\n swiper.imagesToLoad = swiper.$el.find('img');\n\n function onReady() {\n if (typeof swiper === 'undefined' || swiper === null || !swiper || swiper.destroyed) return;\n if (swiper.imagesLoaded !== undefined) swiper.imagesLoaded += 1;\n\n if (swiper.imagesLoaded === swiper.imagesToLoad.length) {\n if (swiper.params.updateOnImagesReady) swiper.update();\n swiper.emit('imagesReady');\n }\n }\n\n for (let i = 0; i < swiper.imagesToLoad.length; i += 1) {\n const imageEl = swiper.imagesToLoad[i];\n swiper.loadImage(\n imageEl,\n imageEl.currentSrc || imageEl.getAttribute('src'),\n imageEl.srcset || imageEl.getAttribute('srcset'),\n imageEl.sizes || imageEl.getAttribute('sizes'),\n true,\n onReady,\n );\n }\n }\n\n var images = {\n loadImage,\n preloadImages,\n };\n\n function checkOverflow() {\n const swiper = this;\n const {isLocked: wasLocked, params} = swiper;\n const {slidesOffsetBefore} = params;\n\n if (slidesOffsetBefore) {\n const lastSlideIndex = swiper.slides.length - 1;\n const lastSlideRightEdge =\n swiper.slidesGrid[lastSlideIndex] + swiper.slidesSizesGrid[lastSlideIndex] + slidesOffsetBefore * 2;\n swiper.isLocked = swiper.size > lastSlideRightEdge;\n } else {\n swiper.isLocked = swiper.snapGrid.length === 1;\n }\n\n if (params.allowSlideNext === true) {\n swiper.allowSlideNext = !swiper.isLocked;\n }\n\n if (params.allowSlidePrev === true) {\n swiper.allowSlidePrev = !swiper.isLocked;\n }\n\n if (wasLocked && wasLocked !== swiper.isLocked) {\n swiper.isEnd = false;\n }\n\n if (wasLocked !== swiper.isLocked) {\n swiper.emit(swiper.isLocked ? 'lock' : 'unlock');\n }\n }\n\n var checkOverflow$1 = {\n checkOverflow,\n };\n\n var defaults = {\n init: true,\n direction: 'horizontal',\n touchEventsTarget: 'wrapper',\n initialSlide: 0,\n speed: 300,\n cssMode: false,\n updateOnWindowResize: true,\n resizeObserver: true,\n nested: false,\n createElements: false,\n enabled: true,\n focusableElements: 'input, select, option, textarea, button, video, label',\n // Overrides\n width: null,\n height: null,\n //\n preventInteractionOnTransition: false,\n // ssr\n userAgent: null,\n url: null,\n // To support iOS's swipe-to-go-back gesture (when being used in-app).\n edgeSwipeDetection: false,\n edgeSwipeThreshold: 20,\n // Autoheight\n autoHeight: false,\n // Set wrapper width\n setWrapperSize: false,\n // Virtual Translate\n virtualTranslate: false,\n // Effects\n effect: 'slide',\n // 'slide' or 'fade' or 'cube' or 'coverflow' or 'flip'\n // Breakpoints\n breakpoints: undefined,\n breakpointsBase: 'window',\n // Slides grid\n spaceBetween: 0,\n slidesPerView: 1,\n slidesPerGroup: 1,\n slidesPerGroupSkip: 0,\n slidesPerGroupAuto: false,\n centeredSlides: false,\n centeredSlidesBounds: false,\n slidesOffsetBefore: 0,\n // in px\n slidesOffsetAfter: 0,\n // in px\n normalizeSlideIndex: true,\n centerInsufficientSlides: false,\n // Disable swiper and hide navigation when container not overflow\n watchOverflow: true,\n // Round length\n roundLengths: false,\n // Touches\n touchRatio: 1,\n touchAngle: 45,\n simulateTouch: true,\n shortSwipes: true,\n longSwipes: true,\n longSwipesRatio: 0.5,\n longSwipesMs: 300,\n followFinger: true,\n allowTouchMove: true,\n threshold: 0,\n touchMoveStopPropagation: false,\n touchStartPreventDefault: true,\n touchStartForcePreventDefault: false,\n touchReleaseOnEdges: false,\n // Unique Navigation Elements\n uniqueNavElements: true,\n // Resistance\n resistance: true,\n resistanceRatio: 0.85,\n // Progress\n watchSlidesProgress: false,\n // Cursor\n grabCursor: false,\n // Clicks\n preventClicks: true,\n preventClicksPropagation: true,\n slideToClickedSlide: false,\n // Images\n preloadImages: true,\n updateOnImagesReady: true,\n // loop\n loop: false,\n loopAdditionalSlides: 0,\n loopedSlides: null,\n loopFillGroupWithBlank: false,\n loopPreventsSlide: true,\n // rewind\n rewind: false,\n // Swiping/no swiping\n allowSlidePrev: true,\n allowSlideNext: true,\n swipeHandler: null,\n // '.swipe-handler',\n noSwiping: true,\n noSwipingClass: 'swiper-no-swiping',\n noSwipingSelector: null,\n // Passive Listeners\n passiveListeners: true,\n // NS\n containerModifierClass: 'swiper-',\n // NEW\n slideClass: 'swiper-slide',\n slideBlankClass: 'swiper-slide-invisible-blank',\n slideActiveClass: 'swiper-slide-active',\n slideDuplicateActiveClass: 'swiper-slide-duplicate-active',\n slideVisibleClass: 'swiper-slide-visible',\n slideDuplicateClass: 'swiper-slide-duplicate',\n slideNextClass: 'swiper-slide-next',\n slideDuplicateNextClass: 'swiper-slide-duplicate-next',\n slidePrevClass: 'swiper-slide-prev',\n slideDuplicatePrevClass: 'swiper-slide-duplicate-prev',\n wrapperClass: 'swiper-wrapper',\n // Callbacks\n runCallbacksOnInit: true,\n // Internals\n _emitClasses: false,\n };\n\n function moduleExtendParams(params, allModulesParams) {\n return function extendParams(obj = {}) {\n const moduleParamName = Object.keys(obj)[0];\n const moduleParams = obj[moduleParamName];\n\n if (typeof moduleParams !== 'object' || moduleParams === null) {\n extend(allModulesParams, obj);\n return;\n }\n\n if (\n ['navigation', 'pagination', 'scrollbar'].indexOf(moduleParamName) >= 0 &&\n params[moduleParamName] === true\n ) {\n params[moduleParamName] = {\n auto: true,\n };\n }\n\n if (!(moduleParamName in params && 'enabled' in moduleParams)) {\n extend(allModulesParams, obj);\n return;\n }\n\n if (params[moduleParamName] === true) {\n params[moduleParamName] = {\n enabled: true,\n };\n }\n\n if (typeof params[moduleParamName] === 'object' && !('enabled' in params[moduleParamName])) {\n params[moduleParamName].enabled = true;\n }\n\n if (!params[moduleParamName])\n params[moduleParamName] = {\n enabled: false,\n };\n extend(allModulesParams, obj);\n };\n }\n\n /* eslint no-param-reassign: \"off\" */\n const prototypes = {\n eventsEmitter,\n update,\n translate,\n transition,\n slide,\n loop,\n grabCursor,\n events: events$1,\n breakpoints,\n checkOverflow: checkOverflow$1,\n classes,\n images,\n };\n const extendedDefaults = {};\n\n class Swiper {\n constructor(...args) {\n let el;\n let params;\n\n if (\n args.length === 1 &&\n args[0].constructor &&\n Object.prototype.toString.call(args[0]).slice(8, -1) === 'Object'\n ) {\n params = args[0];\n } else {\n [el, params] = args;\n }\n\n if (!params) params = {};\n params = extend({}, params);\n if (el && !params.el) params.el = el;\n\n if (params.el && $(params.el).length > 1) {\n const swipers = [];\n $(params.el).each((containerEl) => {\n const newParams = extend({}, params, {\n el: containerEl,\n });\n swipers.push(new Swiper(newParams));\n });\n return swipers;\n } // Swiper Instance\n\n const swiper = this;\n swiper.__swiper__ = true;\n swiper.support = getSupport();\n swiper.device = getDevice({\n userAgent: params.userAgent,\n });\n swiper.browser = getBrowser();\n swiper.eventsListeners = {};\n swiper.eventsAnyListeners = [];\n swiper.modules = [...swiper.__modules__];\n\n if (params.modules && Array.isArray(params.modules)) {\n swiper.modules.push(...params.modules);\n }\n\n const allModulesParams = {};\n swiper.modules.forEach((mod) => {\n mod({\n swiper,\n extendParams: moduleExtendParams(params, allModulesParams),\n on: swiper.on.bind(swiper),\n once: swiper.once.bind(swiper),\n off: swiper.off.bind(swiper),\n emit: swiper.emit.bind(swiper),\n });\n }); // Extend defaults with modules params\n\n const swiperParams = extend({}, defaults, allModulesParams); // Extend defaults with passed params\n\n swiper.params = extend({}, swiperParams, extendedDefaults, params);\n swiper.originalParams = extend({}, swiper.params);\n swiper.passedParams = extend({}, params); // add event listeners\n\n if (swiper.params && swiper.params.on) {\n Object.keys(swiper.params.on).forEach((eventName) => {\n swiper.on(eventName, swiper.params.on[eventName]);\n });\n }\n\n if (swiper.params && swiper.params.onAny) {\n swiper.onAny(swiper.params.onAny);\n } // Save Dom lib\n\n swiper.$ = $; // Extend Swiper\n\n Object.assign(swiper, {\n enabled: swiper.params.enabled,\n el,\n // Classes\n classNames: [],\n // Slides\n slides: $(),\n slidesGrid: [],\n snapGrid: [],\n slidesSizesGrid: [],\n\n // isDirection\n isHorizontal() {\n return swiper.params.direction === 'horizontal';\n },\n\n isVertical() {\n return swiper.params.direction === 'vertical';\n },\n\n // Indexes\n activeIndex: 0,\n realIndex: 0,\n //\n isBeginning: true,\n isEnd: false,\n // Props\n translate: 0,\n previousTranslate: 0,\n progress: 0,\n velocity: 0,\n animating: false,\n // Locks\n allowSlideNext: swiper.params.allowSlideNext,\n allowSlidePrev: swiper.params.allowSlidePrev,\n // Touch Events\n touchEvents: (function touchEvents() {\n const touch = ['touchstart', 'touchmove', 'touchend', 'touchcancel'];\n const desktop = ['pointerdown', 'pointermove', 'pointerup'];\n swiper.touchEventsTouch = {\n start: touch[0],\n move: touch[1],\n end: touch[2],\n cancel: touch[3],\n };\n swiper.touchEventsDesktop = {\n start: desktop[0],\n move: desktop[1],\n end: desktop[2],\n };\n return swiper.support.touch || !swiper.params.simulateTouch\n ? swiper.touchEventsTouch\n : swiper.touchEventsDesktop;\n })(),\n touchEventsData: {\n isTouched: undefined,\n isMoved: undefined,\n allowTouchCallbacks: undefined,\n touchStartTime: undefined,\n isScrolling: undefined,\n currentTranslate: undefined,\n startTranslate: undefined,\n allowThresholdMove: undefined,\n // Form elements to match\n focusableElements: swiper.params.focusableElements,\n // Last click time\n lastClickTime: now(),\n clickTimeout: undefined,\n // Velocities\n velocities: [],\n allowMomentumBounce: undefined,\n isTouchEvent: undefined,\n startMoving: undefined,\n },\n // Clicks\n allowClick: true,\n // Touches\n allowTouchMove: swiper.params.allowTouchMove,\n touches: {\n startX: 0,\n startY: 0,\n currentX: 0,\n currentY: 0,\n diff: 0,\n },\n // Images\n imagesToLoad: [],\n imagesLoaded: 0,\n });\n swiper.emit('_swiper'); // Init\n\n if (swiper.params.init) {\n swiper.init();\n } // Return app instance\n\n return swiper;\n }\n\n enable() {\n const swiper = this;\n if (swiper.enabled) return;\n swiper.enabled = true;\n\n if (swiper.params.grabCursor) {\n swiper.setGrabCursor();\n }\n\n swiper.emit('enable');\n }\n\n disable() {\n const swiper = this;\n if (!swiper.enabled) return;\n swiper.enabled = false;\n\n if (swiper.params.grabCursor) {\n swiper.unsetGrabCursor();\n }\n\n swiper.emit('disable');\n }\n\n setProgress(progress, speed) {\n const swiper = this;\n progress = Math.min(Math.max(progress, 0), 1);\n const min = swiper.minTranslate();\n const max = swiper.maxTranslate();\n const current = (max - min) * progress + min;\n swiper.translateTo(current, typeof speed === 'undefined' ? 0 : speed);\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n\n emitContainerClasses() {\n const swiper = this;\n if (!swiper.params._emitClasses || !swiper.el) return;\n const cls = swiper.el.className.split(' ').filter((className) => {\n return className.indexOf('swiper') === 0 || className.indexOf(swiper.params.containerModifierClass) === 0;\n });\n swiper.emit('_containerClasses', cls.join(' '));\n }\n\n getSlideClasses(slideEl) {\n const swiper = this;\n return slideEl.className\n .split(' ')\n .filter((className) => {\n return className.indexOf('swiper-slide') === 0 || className.indexOf(swiper.params.slideClass) === 0;\n })\n .join(' ');\n }\n\n emitSlidesClasses() {\n const swiper = this;\n if (!swiper.params._emitClasses || !swiper.el) return;\n const updates = [];\n swiper.slides.each((slideEl) => {\n const classNames = swiper.getSlideClasses(slideEl);\n updates.push({\n slideEl,\n classNames,\n });\n swiper.emit('_slideClass', slideEl, classNames);\n });\n swiper.emit('_slideClasses', updates);\n }\n\n slidesPerViewDynamic(view = 'current', exact = false) {\n const swiper = this;\n const {params, slides, slidesGrid, slidesSizesGrid, size: swiperSize, activeIndex} = swiper;\n let spv = 1;\n\n if (params.centeredSlides) {\n let slideSize = slides[activeIndex].swiperSlideSize;\n let breakLoop;\n\n for (let i = activeIndex + 1; i < slides.length; i += 1) {\n if (slides[i] && !breakLoop) {\n slideSize += slides[i].swiperSlideSize;\n spv += 1;\n if (slideSize > swiperSize) breakLoop = true;\n }\n }\n\n for (let i = activeIndex - 1; i >= 0; i -= 1) {\n if (slides[i] && !breakLoop) {\n slideSize += slides[i].swiperSlideSize;\n spv += 1;\n if (slideSize > swiperSize) breakLoop = true;\n }\n }\n } else {\n // eslint-disable-next-line\n if (view === 'current') {\n for (let i = activeIndex + 1; i < slides.length; i += 1) {\n const slideInView = exact\n ? slidesGrid[i] + slidesSizesGrid[i] - slidesGrid[activeIndex] < swiperSize\n : slidesGrid[i] - slidesGrid[activeIndex] < swiperSize;\n\n if (slideInView) {\n spv += 1;\n }\n }\n } else {\n // previous\n for (let i = activeIndex - 1; i >= 0; i -= 1) {\n const slideInView = slidesGrid[activeIndex] - slidesGrid[i] < swiperSize;\n\n if (slideInView) {\n spv += 1;\n }\n }\n }\n }\n\n return spv;\n }\n\n update() {\n const swiper = this;\n if (!swiper || swiper.destroyed) return;\n const {snapGrid, params} = swiper; // Breakpoints\n\n if (params.breakpoints) {\n swiper.setBreakpoint();\n }\n\n swiper.updateSize();\n swiper.updateSlides();\n swiper.updateProgress();\n swiper.updateSlidesClasses();\n\n function setTranslate() {\n const translateValue = swiper.rtlTranslate ? swiper.translate * -1 : swiper.translate;\n const newTranslate = Math.min(Math.max(translateValue, swiper.maxTranslate()), swiper.minTranslate());\n swiper.setTranslate(newTranslate);\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n\n let translated;\n\n if (swiper.params.freeMode && swiper.params.freeMode.enabled) {\n setTranslate();\n\n if (swiper.params.autoHeight) {\n swiper.updateAutoHeight();\n }\n } else {\n if (\n (swiper.params.slidesPerView === 'auto' || swiper.params.slidesPerView > 1) &&\n swiper.isEnd &&\n !swiper.params.centeredSlides\n ) {\n translated = swiper.slideTo(swiper.slides.length - 1, 0, false, true);\n } else {\n translated = swiper.slideTo(swiper.activeIndex, 0, false, true);\n }\n\n if (!translated) {\n setTranslate();\n }\n }\n\n if (params.watchOverflow && snapGrid !== swiper.snapGrid) {\n swiper.checkOverflow();\n }\n\n swiper.emit('update');\n }\n\n changeDirection(newDirection, needUpdate = true) {\n const swiper = this;\n const currentDirection = swiper.params.direction;\n\n if (!newDirection) {\n // eslint-disable-next-line\n newDirection = currentDirection === 'horizontal' ? 'vertical' : 'horizontal';\n }\n\n if (newDirection === currentDirection || (newDirection !== 'horizontal' && newDirection !== 'vertical')) {\n return swiper;\n }\n\n swiper.$el\n .removeClass(`${swiper.params.containerModifierClass}${currentDirection}`)\n .addClass(`${swiper.params.containerModifierClass}${newDirection}`);\n swiper.emitContainerClasses();\n swiper.params.direction = newDirection;\n swiper.slides.each((slideEl) => {\n if (newDirection === 'vertical') {\n slideEl.style.width = '';\n } else {\n slideEl.style.height = '';\n }\n });\n swiper.emit('changeDirection');\n if (needUpdate) swiper.update();\n return swiper;\n }\n\n mount(el) {\n const swiper = this;\n if (swiper.mounted) return true; // Find el\n\n const $el = $(el || swiper.params.el);\n el = $el[0];\n\n if (!el) {\n return false;\n }\n\n el.swiper = swiper;\n\n const getWrapperSelector = () => {\n return `.${(swiper.params.wrapperClass || '').trim().split(' ').join('.')}`;\n };\n\n const getWrapper = () => {\n if (el && el.shadowRoot && el.shadowRoot.querySelector) {\n const res = $(el.shadowRoot.querySelector(getWrapperSelector())); // Children needs to return slot items\n\n res.children = (options) => $el.children(options);\n\n return res;\n }\n\n return $el.children(getWrapperSelector());\n }; // Find Wrapper\n\n let $wrapperEl = getWrapper();\n\n if ($wrapperEl.length === 0 && swiper.params.createElements) {\n const document = getDocument();\n const wrapper = document.createElement('div');\n $wrapperEl = $(wrapper);\n wrapper.className = swiper.params.wrapperClass;\n $el.append(wrapper);\n $el.children(`.${swiper.params.slideClass}`).each((slideEl) => {\n $wrapperEl.append(slideEl);\n });\n }\n\n Object.assign(swiper, {\n $el,\n el,\n $wrapperEl,\n wrapperEl: $wrapperEl[0],\n mounted: true,\n // RTL\n rtl: el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl',\n rtlTranslate:\n swiper.params.direction === 'horizontal' &&\n (el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl'),\n wrongRTL: $wrapperEl.css('display') === '-webkit-box',\n });\n return true;\n }\n\n init(el) {\n const swiper = this;\n if (swiper.initialized) return swiper;\n const mounted = swiper.mount(el);\n if (mounted === false) return swiper;\n swiper.emit('beforeInit'); // Set breakpoint\n\n if (swiper.params.breakpoints) {\n swiper.setBreakpoint();\n } // Add Classes\n\n swiper.addClasses(); // Create loop\n\n if (swiper.params.loop) {\n swiper.loopCreate();\n } // Update size\n\n swiper.updateSize(); // Update slides\n\n swiper.updateSlides();\n\n if (swiper.params.watchOverflow) {\n swiper.checkOverflow();\n } // Set Grab Cursor\n\n if (swiper.params.grabCursor && swiper.enabled) {\n swiper.setGrabCursor();\n }\n\n if (swiper.params.preloadImages) {\n swiper.preloadImages();\n } // Slide To Initial Slide\n\n if (swiper.params.loop) {\n swiper.slideTo(\n swiper.params.initialSlide + swiper.loopedSlides,\n 0,\n swiper.params.runCallbacksOnInit,\n false,\n true,\n );\n } else {\n swiper.slideTo(swiper.params.initialSlide, 0, swiper.params.runCallbacksOnInit, false, true);\n } // Attach events\n\n swiper.attachEvents(); // Init Flag\n\n swiper.initialized = true; // Emit\n\n swiper.emit('init');\n swiper.emit('afterInit');\n return swiper;\n }\n\n destroy(deleteInstance = true, cleanStyles = true) {\n const swiper = this;\n const {params, $el, $wrapperEl, slides} = swiper;\n\n if (typeof swiper.params === 'undefined' || swiper.destroyed) {\n return null;\n }\n\n swiper.emit('beforeDestroy'); // Init Flag\n\n swiper.initialized = false; // Detach events\n\n swiper.detachEvents(); // Destroy loop\n\n if (params.loop) {\n swiper.loopDestroy();\n } // Cleanup styles\n\n if (cleanStyles) {\n swiper.removeClasses();\n $el.removeAttr('style');\n $wrapperEl.removeAttr('style');\n\n if (slides && slides.length) {\n slides\n .removeClass(\n [params.slideVisibleClass, params.slideActiveClass, params.slideNextClass, params.slidePrevClass].join(\n ' ',\n ),\n )\n .removeAttr('style')\n .removeAttr('data-swiper-slide-index');\n }\n }\n\n swiper.emit('destroy'); // Detach emitter events\n\n Object.keys(swiper.eventsListeners).forEach((eventName) => {\n swiper.off(eventName);\n });\n\n if (deleteInstance !== false) {\n swiper.$el[0].swiper = null;\n deleteProps(swiper);\n }\n\n swiper.destroyed = true;\n return null;\n }\n\n static extendDefaults(newDefaults) {\n extend(extendedDefaults, newDefaults);\n }\n\n static get extendedDefaults() {\n return extendedDefaults;\n }\n\n static get defaults() {\n return defaults;\n }\n\n static installModule(mod) {\n if (!Swiper.prototype.__modules__) Swiper.prototype.__modules__ = [];\n const modules = Swiper.prototype.__modules__;\n\n if (typeof mod === 'function' && modules.indexOf(mod) < 0) {\n modules.push(mod);\n }\n }\n\n static use(module) {\n if (Array.isArray(module)) {\n module.forEach((m) => Swiper.installModule(m));\n return Swiper;\n }\n\n Swiper.installModule(module);\n return Swiper;\n }\n }\n\n Object.keys(prototypes).forEach((prototypeGroup) => {\n Object.keys(prototypes[prototypeGroup]).forEach((protoMethod) => {\n Swiper.prototype[protoMethod] = prototypes[prototypeGroup][protoMethod];\n });\n });\n Swiper.use([Resize, Observer]);\n\n function Virtual({swiper, extendParams, on}) {\n extendParams({\n virtual: {\n enabled: false,\n slides: [],\n cache: true,\n renderSlide: null,\n renderExternal: null,\n renderExternalUpdate: true,\n addSlidesBefore: 0,\n addSlidesAfter: 0,\n },\n });\n let cssModeTimeout;\n swiper.virtual = {\n cache: {},\n from: undefined,\n to: undefined,\n slides: [],\n offset: 0,\n slidesGrid: [],\n };\n\n function renderSlide(slide, index) {\n const params = swiper.params.virtual;\n\n if (params.cache && swiper.virtual.cache[index]) {\n return swiper.virtual.cache[index];\n }\n\n const $slideEl = params.renderSlide\n ? $(params.renderSlide.call(swiper, slide, index))\n : $(`
    ${slide}
    `);\n if (!$slideEl.attr('data-swiper-slide-index')) $slideEl.attr('data-swiper-slide-index', index);\n if (params.cache) swiper.virtual.cache[index] = $slideEl;\n return $slideEl;\n }\n\n function update(force) {\n const {slidesPerView, slidesPerGroup, centeredSlides} = swiper.params;\n const {addSlidesBefore, addSlidesAfter} = swiper.params.virtual;\n const {\n from: previousFrom,\n to: previousTo,\n slides,\n slidesGrid: previousSlidesGrid,\n offset: previousOffset,\n } = swiper.virtual;\n\n if (!swiper.params.cssMode) {\n swiper.updateActiveIndex();\n }\n\n const activeIndex = swiper.activeIndex || 0;\n let offsetProp;\n if (swiper.rtlTranslate) offsetProp = 'right';\n else offsetProp = swiper.isHorizontal() ? 'left' : 'top';\n let slidesAfter;\n let slidesBefore;\n\n if (centeredSlides) {\n slidesAfter = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesAfter;\n slidesBefore = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesBefore;\n } else {\n slidesAfter = slidesPerView + (slidesPerGroup - 1) + addSlidesAfter;\n slidesBefore = slidesPerGroup + addSlidesBefore;\n }\n\n const from = Math.max((activeIndex || 0) - slidesBefore, 0);\n const to = Math.min((activeIndex || 0) + slidesAfter, slides.length - 1);\n const offset = (swiper.slidesGrid[from] || 0) - (swiper.slidesGrid[0] || 0);\n Object.assign(swiper.virtual, {\n from,\n to,\n offset,\n slidesGrid: swiper.slidesGrid,\n });\n\n function onRendered() {\n swiper.updateSlides();\n swiper.updateProgress();\n swiper.updateSlidesClasses();\n\n if (swiper.lazy && swiper.params.lazy.enabled) {\n swiper.lazy.load();\n }\n }\n\n if (previousFrom === from && previousTo === to && !force) {\n if (swiper.slidesGrid !== previousSlidesGrid && offset !== previousOffset) {\n swiper.slides.css(offsetProp, `${offset}px`);\n }\n\n swiper.updateProgress();\n return;\n }\n\n if (swiper.params.virtual.renderExternal) {\n swiper.params.virtual.renderExternal.call(swiper, {\n offset,\n from,\n to,\n slides: (function getSlides() {\n const slidesToRender = [];\n\n for (let i = from; i <= to; i += 1) {\n slidesToRender.push(slides[i]);\n }\n\n return slidesToRender;\n })(),\n });\n\n if (swiper.params.virtual.renderExternalUpdate) {\n onRendered();\n }\n\n return;\n }\n\n const prependIndexes = [];\n const appendIndexes = [];\n\n if (force) {\n swiper.$wrapperEl.find(`.${swiper.params.slideClass}`).remove();\n } else {\n for (let i = previousFrom; i <= previousTo; i += 1) {\n if (i < from || i > to) {\n swiper.$wrapperEl.find(`.${swiper.params.slideClass}[data-swiper-slide-index=\"${i}\"]`).remove();\n }\n }\n }\n\n for (let i = 0; i < slides.length; i += 1) {\n if (i >= from && i <= to) {\n if (typeof previousTo === 'undefined' || force) {\n appendIndexes.push(i);\n } else {\n if (i > previousTo) appendIndexes.push(i);\n if (i < previousFrom) prependIndexes.push(i);\n }\n }\n }\n\n appendIndexes.forEach((index) => {\n swiper.$wrapperEl.append(renderSlide(slides[index], index));\n });\n prependIndexes\n .sort((a, b) => b - a)\n .forEach((index) => {\n swiper.$wrapperEl.prepend(renderSlide(slides[index], index));\n });\n swiper.$wrapperEl.children('.swiper-slide').css(offsetProp, `${offset}px`);\n onRendered();\n }\n\n function appendSlide(slides) {\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) swiper.virtual.slides.push(slides[i]);\n }\n } else {\n swiper.virtual.slides.push(slides);\n }\n\n update(true);\n }\n\n function prependSlide(slides) {\n const activeIndex = swiper.activeIndex;\n let newActiveIndex = activeIndex + 1;\n let numberOfNewSlides = 1;\n\n if (Array.isArray(slides)) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) swiper.virtual.slides.unshift(slides[i]);\n }\n\n newActiveIndex = activeIndex + slides.length;\n numberOfNewSlides = slides.length;\n } else {\n swiper.virtual.slides.unshift(slides);\n }\n\n if (swiper.params.virtual.cache) {\n const cache = swiper.virtual.cache;\n const newCache = {};\n Object.keys(cache).forEach((cachedIndex) => {\n const $cachedEl = cache[cachedIndex];\n const cachedElIndex = $cachedEl.attr('data-swiper-slide-index');\n\n if (cachedElIndex) {\n $cachedEl.attr('data-swiper-slide-index', parseInt(cachedElIndex, 10) + numberOfNewSlides);\n }\n\n newCache[parseInt(cachedIndex, 10) + numberOfNewSlides] = $cachedEl;\n });\n swiper.virtual.cache = newCache;\n }\n\n update(true);\n swiper.slideTo(newActiveIndex, 0);\n }\n\n function removeSlide(slidesIndexes) {\n if (typeof slidesIndexes === 'undefined' || slidesIndexes === null) return;\n let activeIndex = swiper.activeIndex;\n\n if (Array.isArray(slidesIndexes)) {\n for (let i = slidesIndexes.length - 1; i >= 0; i -= 1) {\n swiper.virtual.slides.splice(slidesIndexes[i], 1);\n\n if (swiper.params.virtual.cache) {\n delete swiper.virtual.cache[slidesIndexes[i]];\n }\n\n if (slidesIndexes[i] < activeIndex) activeIndex -= 1;\n activeIndex = Math.max(activeIndex, 0);\n }\n } else {\n swiper.virtual.slides.splice(slidesIndexes, 1);\n\n if (swiper.params.virtual.cache) {\n delete swiper.virtual.cache[slidesIndexes];\n }\n\n if (slidesIndexes < activeIndex) activeIndex -= 1;\n activeIndex = Math.max(activeIndex, 0);\n }\n\n update(true);\n swiper.slideTo(activeIndex, 0);\n }\n\n function removeAllSlides() {\n swiper.virtual.slides = [];\n\n if (swiper.params.virtual.cache) {\n swiper.virtual.cache = {};\n }\n\n update(true);\n swiper.slideTo(0, 0);\n }\n\n on('beforeInit', () => {\n if (!swiper.params.virtual.enabled) return;\n swiper.virtual.slides = swiper.params.virtual.slides;\n swiper.classNames.push(`${swiper.params.containerModifierClass}virtual`);\n swiper.params.watchSlidesProgress = true;\n swiper.originalParams.watchSlidesProgress = true;\n\n if (!swiper.params.initialSlide) {\n update();\n }\n });\n on('setTranslate', () => {\n if (!swiper.params.virtual.enabled) return;\n\n if (swiper.params.cssMode && !swiper._immediateVirtual) {\n clearTimeout(cssModeTimeout);\n cssModeTimeout = setTimeout(() => {\n update();\n }, 100);\n } else {\n update();\n }\n });\n on('init update resize', () => {\n if (!swiper.params.virtual.enabled) return;\n\n if (swiper.params.cssMode) {\n setCSSProperty(swiper.wrapperEl, '--swiper-virtual-size', `${swiper.virtualSize}px`);\n }\n });\n Object.assign(swiper.virtual, {\n appendSlide,\n prependSlide,\n removeSlide,\n removeAllSlides,\n update,\n });\n }\n\n /* eslint-disable consistent-return */\n function Keyboard({swiper, extendParams, on, emit}) {\n const document = getDocument();\n const window = getWindow();\n swiper.keyboard = {\n enabled: false,\n };\n extendParams({\n keyboard: {\n enabled: false,\n onlyInViewport: true,\n pageUpDown: true,\n },\n });\n\n function handle(event) {\n if (!swiper.enabled) return;\n const {rtlTranslate: rtl} = swiper;\n let e = event;\n if (e.originalEvent) e = e.originalEvent; // jquery fix\n\n const kc = e.keyCode || e.charCode;\n const pageUpDown = swiper.params.keyboard.pageUpDown;\n const isPageUp = pageUpDown && kc === 33;\n const isPageDown = pageUpDown && kc === 34;\n const isArrowLeft = kc === 37;\n const isArrowRight = kc === 39;\n const isArrowUp = kc === 38;\n const isArrowDown = kc === 40; // Directions locks\n\n if (\n !swiper.allowSlideNext &&\n ((swiper.isHorizontal() && isArrowRight) || (swiper.isVertical() && isArrowDown) || isPageDown)\n ) {\n return false;\n }\n\n if (\n !swiper.allowSlidePrev &&\n ((swiper.isHorizontal() && isArrowLeft) || (swiper.isVertical() && isArrowUp) || isPageUp)\n ) {\n return false;\n }\n\n if (e.shiftKey || e.altKey || e.ctrlKey || e.metaKey) {\n return undefined;\n }\n\n if (\n document.activeElement &&\n document.activeElement.nodeName &&\n (document.activeElement.nodeName.toLowerCase() === 'input' ||\n document.activeElement.nodeName.toLowerCase() === 'textarea')\n ) {\n return undefined;\n }\n\n if (\n swiper.params.keyboard.onlyInViewport &&\n (isPageUp || isPageDown || isArrowLeft || isArrowRight || isArrowUp || isArrowDown)\n ) {\n let inView = false; // Check that swiper should be inside of visible area of window\n\n if (\n swiper.$el.parents(`.${swiper.params.slideClass}`).length > 0 &&\n swiper.$el.parents(`.${swiper.params.slideActiveClass}`).length === 0\n ) {\n return undefined;\n }\n\n const $el = swiper.$el;\n const swiperWidth = $el[0].clientWidth;\n const swiperHeight = $el[0].clientHeight;\n const windowWidth = window.innerWidth;\n const windowHeight = window.innerHeight;\n const swiperOffset = swiper.$el.offset();\n if (rtl) swiperOffset.left -= swiper.$el[0].scrollLeft;\n const swiperCoord = [\n [swiperOffset.left, swiperOffset.top],\n [swiperOffset.left + swiperWidth, swiperOffset.top],\n [swiperOffset.left, swiperOffset.top + swiperHeight],\n [swiperOffset.left + swiperWidth, swiperOffset.top + swiperHeight],\n ];\n\n for (let i = 0; i < swiperCoord.length; i += 1) {\n const point = swiperCoord[i];\n\n if (point[0] >= 0 && point[0] <= windowWidth && point[1] >= 0 && point[1] <= windowHeight) {\n if (point[0] === 0 && point[1] === 0) continue; // eslint-disable-line\n\n inView = true;\n }\n }\n\n if (!inView) return undefined;\n }\n\n if (swiper.isHorizontal()) {\n if (isPageUp || isPageDown || isArrowLeft || isArrowRight) {\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n }\n\n if (((isPageDown || isArrowRight) && !rtl) || ((isPageUp || isArrowLeft) && rtl)) swiper.slideNext();\n if (((isPageUp || isArrowLeft) && !rtl) || ((isPageDown || isArrowRight) && rtl)) swiper.slidePrev();\n } else {\n if (isPageUp || isPageDown || isArrowUp || isArrowDown) {\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n }\n\n if (isPageDown || isArrowDown) swiper.slideNext();\n if (isPageUp || isArrowUp) swiper.slidePrev();\n }\n\n emit('keyPress', kc);\n return undefined;\n }\n\n function enable() {\n if (swiper.keyboard.enabled) return;\n $(document).on('keydown', handle);\n swiper.keyboard.enabled = true;\n }\n\n function disable() {\n if (!swiper.keyboard.enabled) return;\n $(document).off('keydown', handle);\n swiper.keyboard.enabled = false;\n }\n\n on('init', () => {\n if (swiper.params.keyboard.enabled) {\n enable();\n }\n });\n on('destroy', () => {\n if (swiper.keyboard.enabled) {\n disable();\n }\n });\n Object.assign(swiper.keyboard, {\n enable,\n disable,\n });\n }\n\n /* eslint-disable consistent-return */\n function Mousewheel({swiper, extendParams, on, emit}) {\n const window = getWindow();\n extendParams({\n mousewheel: {\n enabled: false,\n releaseOnEdges: false,\n invert: false,\n forceToAxis: false,\n sensitivity: 1,\n eventsTarget: 'container',\n thresholdDelta: null,\n thresholdTime: null,\n },\n });\n swiper.mousewheel = {\n enabled: false,\n };\n let timeout;\n let lastScrollTime = now();\n let lastEventBeforeSnap;\n const recentWheelEvents = [];\n\n function normalize(e) {\n // Reasonable defaults\n const PIXEL_STEP = 10;\n const LINE_HEIGHT = 40;\n const PAGE_HEIGHT = 800;\n let sX = 0;\n let sY = 0; // spinX, spinY\n\n let pX = 0;\n let pY = 0; // pixelX, pixelY\n // Legacy\n\n if ('detail' in e) {\n sY = e.detail;\n }\n\n if ('wheelDelta' in e) {\n sY = -e.wheelDelta / 120;\n }\n\n if ('wheelDeltaY' in e) {\n sY = -e.wheelDeltaY / 120;\n }\n\n if ('wheelDeltaX' in e) {\n sX = -e.wheelDeltaX / 120;\n } // side scrolling on FF with DOMMouseScroll\n\n if ('axis' in e && e.axis === e.HORIZONTAL_AXIS) {\n sX = sY;\n sY = 0;\n }\n\n pX = sX * PIXEL_STEP;\n pY = sY * PIXEL_STEP;\n\n if ('deltaY' in e) {\n pY = e.deltaY;\n }\n\n if ('deltaX' in e) {\n pX = e.deltaX;\n }\n\n if (e.shiftKey && !pX) {\n // if user scrolls with shift he wants horizontal scroll\n pX = pY;\n pY = 0;\n }\n\n if ((pX || pY) && e.deltaMode) {\n if (e.deltaMode === 1) {\n // delta in LINE units\n pX *= LINE_HEIGHT;\n pY *= LINE_HEIGHT;\n } else {\n // delta in PAGE units\n pX *= PAGE_HEIGHT;\n pY *= PAGE_HEIGHT;\n }\n } // Fall-back if spin cannot be determined\n\n if (pX && !sX) {\n sX = pX < 1 ? -1 : 1;\n }\n\n if (pY && !sY) {\n sY = pY < 1 ? -1 : 1;\n }\n\n return {\n spinX: sX,\n spinY: sY,\n pixelX: pX,\n pixelY: pY,\n };\n }\n\n function handleMouseEnter() {\n if (!swiper.enabled) return;\n swiper.mouseEntered = true;\n }\n\n function handleMouseLeave() {\n if (!swiper.enabled) return;\n swiper.mouseEntered = false;\n }\n\n function animateSlider(newEvent) {\n if (swiper.params.mousewheel.thresholdDelta && newEvent.delta < swiper.params.mousewheel.thresholdDelta) {\n // Prevent if delta of wheel scroll delta is below configured threshold\n return false;\n }\n\n if (swiper.params.mousewheel.thresholdTime && now() - lastScrollTime < swiper.params.mousewheel.thresholdTime) {\n // Prevent if time between scrolls is below configured threshold\n return false;\n } // If the movement is NOT big enough and\n // if the last time the user scrolled was too close to the current one (avoid continuously triggering the slider):\n // Don't go any further (avoid insignificant scroll movement).\n\n if (newEvent.delta >= 6 && now() - lastScrollTime < 60) {\n // Return false as a default\n return true;\n } // If user is scrolling towards the end:\n // If the slider hasn't hit the latest slide or\n // if the slider is a loop and\n // if the slider isn't moving right now:\n // Go to next slide and\n // emit a scroll event.\n // Else (the user is scrolling towards the beginning) and\n // if the slider hasn't hit the first slide or\n // if the slider is a loop and\n // if the slider isn't moving right now:\n // Go to prev slide and\n // emit a scroll event.\n\n if (newEvent.direction < 0) {\n if ((!swiper.isEnd || swiper.params.loop) && !swiper.animating) {\n swiper.slideNext();\n emit('scroll', newEvent.raw);\n }\n } else if ((!swiper.isBeginning || swiper.params.loop) && !swiper.animating) {\n swiper.slidePrev();\n emit('scroll', newEvent.raw);\n } // If you got here is because an animation has been triggered so store the current time\n\n lastScrollTime = new window.Date().getTime(); // Return false as a default\n\n return false;\n }\n\n function releaseScroll(newEvent) {\n const params = swiper.params.mousewheel;\n\n if (newEvent.direction < 0) {\n if (swiper.isEnd && !swiper.params.loop && params.releaseOnEdges) {\n // Return true to animate scroll on edges\n return true;\n }\n } else if (swiper.isBeginning && !swiper.params.loop && params.releaseOnEdges) {\n // Return true to animate scroll on edges\n return true;\n }\n\n return false;\n }\n\n function handle(event) {\n let e = event;\n let disableParentSwiper = true;\n if (!swiper.enabled) return;\n const params = swiper.params.mousewheel;\n\n if (swiper.params.cssMode) {\n e.preventDefault();\n }\n\n let target = swiper.$el;\n\n if (swiper.params.mousewheel.eventsTarget !== 'container') {\n target = $(swiper.params.mousewheel.eventsTarget);\n }\n\n if (!swiper.mouseEntered && !target[0].contains(e.target) && !params.releaseOnEdges) return true;\n if (e.originalEvent) e = e.originalEvent; // jquery fix\n\n let delta = 0;\n const rtlFactor = swiper.rtlTranslate ? -1 : 1;\n const data = normalize(e);\n\n if (params.forceToAxis) {\n if (swiper.isHorizontal()) {\n if (Math.abs(data.pixelX) > Math.abs(data.pixelY)) delta = -data.pixelX * rtlFactor;\n else return true;\n } else if (Math.abs(data.pixelY) > Math.abs(data.pixelX)) delta = -data.pixelY;\n else return true;\n } else {\n delta = Math.abs(data.pixelX) > Math.abs(data.pixelY) ? -data.pixelX * rtlFactor : -data.pixelY;\n }\n\n if (delta === 0) return true;\n if (params.invert) delta = -delta; // Get the scroll positions\n\n let positions = swiper.getTranslate() + delta * params.sensitivity;\n if (positions >= swiper.minTranslate()) positions = swiper.minTranslate();\n if (positions <= swiper.maxTranslate()) positions = swiper.maxTranslate(); // When loop is true:\n // the disableParentSwiper will be true.\n // When loop is false:\n // if the scroll positions is not on edge,\n // then the disableParentSwiper will be true.\n // if the scroll on edge positions,\n // then the disableParentSwiper will be false.\n\n disableParentSwiper = swiper.params.loop\n ? true\n : !(positions === swiper.minTranslate() || positions === swiper.maxTranslate());\n if (disableParentSwiper && swiper.params.nested) e.stopPropagation();\n\n if (!swiper.params.freeMode || !swiper.params.freeMode.enabled) {\n // Register the new event in a variable which stores the relevant data\n const newEvent = {\n time: now(),\n delta: Math.abs(delta),\n direction: Math.sign(delta),\n raw: event,\n }; // Keep the most recent events\n\n if (recentWheelEvents.length >= 2) {\n recentWheelEvents.shift(); // only store the last N events\n }\n\n const prevEvent = recentWheelEvents.length ? recentWheelEvents[recentWheelEvents.length - 1] : undefined;\n recentWheelEvents.push(newEvent); // If there is at least one previous recorded event:\n // If direction has changed or\n // if the scroll is quicker than the previous one:\n // Animate the slider.\n // Else (this is the first time the wheel is moved):\n // Animate the slider.\n\n if (prevEvent) {\n if (\n newEvent.direction !== prevEvent.direction ||\n newEvent.delta > prevEvent.delta ||\n newEvent.time > prevEvent.time + 150\n ) {\n animateSlider(newEvent);\n }\n } else {\n animateSlider(newEvent);\n } // If it's time to release the scroll:\n // Return now so you don't hit the preventDefault.\n\n if (releaseScroll(newEvent)) {\n return true;\n }\n } else {\n // Freemode or scrollContainer:\n // If we recently snapped after a momentum scroll, then ignore wheel events\n // to give time for the deceleration to finish. Stop ignoring after 500 msecs\n // or if it's a new scroll (larger delta or inverse sign as last event before\n // an end-of-momentum snap).\n const newEvent = {\n time: now(),\n delta: Math.abs(delta),\n direction: Math.sign(delta),\n };\n const ignoreWheelEvents =\n lastEventBeforeSnap &&\n newEvent.time < lastEventBeforeSnap.time + 500 &&\n newEvent.delta <= lastEventBeforeSnap.delta &&\n newEvent.direction === lastEventBeforeSnap.direction;\n\n if (!ignoreWheelEvents) {\n lastEventBeforeSnap = undefined;\n\n if (swiper.params.loop) {\n swiper.loopFix();\n }\n\n let position = swiper.getTranslate() + delta * params.sensitivity;\n const wasBeginning = swiper.isBeginning;\n const wasEnd = swiper.isEnd;\n if (position >= swiper.minTranslate()) position = swiper.minTranslate();\n if (position <= swiper.maxTranslate()) position = swiper.maxTranslate();\n swiper.setTransition(0);\n swiper.setTranslate(position);\n swiper.updateProgress();\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n\n if ((!wasBeginning && swiper.isBeginning) || (!wasEnd && swiper.isEnd)) {\n swiper.updateSlidesClasses();\n }\n\n if (swiper.params.freeMode.sticky) {\n // When wheel scrolling starts with sticky (aka snap) enabled, then detect\n // the end of a momentum scroll by storing recent (N=15?) wheel events.\n // 1. do all N events have decreasing or same (absolute value) delta?\n // 2. did all N events arrive in the last M (M=500?) msecs?\n // 3. does the earliest event have an (absolute value) delta that's\n // at least P (P=1?) larger than the most recent event's delta?\n // 4. does the latest event have a delta that's smaller than Q (Q=6?) pixels?\n // If 1-4 are \"yes\" then we're near the end of a momentum scroll deceleration.\n // Snap immediately and ignore remaining wheel events in this scroll.\n // See comment above for \"remaining wheel events in this scroll\" determination.\n // If 1-4 aren't satisfied, then wait to snap until 500ms after the last event.\n clearTimeout(timeout);\n timeout = undefined;\n\n if (recentWheelEvents.length >= 15) {\n recentWheelEvents.shift(); // only store the last N events\n }\n\n const prevEvent = recentWheelEvents.length ? recentWheelEvents[recentWheelEvents.length - 1] : undefined;\n const firstEvent = recentWheelEvents[0];\n recentWheelEvents.push(newEvent);\n\n if (prevEvent && (newEvent.delta > prevEvent.delta || newEvent.direction !== prevEvent.direction)) {\n // Increasing or reverse-sign delta means the user started scrolling again. Clear the wheel event log.\n recentWheelEvents.splice(0);\n } else if (\n recentWheelEvents.length >= 15 &&\n newEvent.time - firstEvent.time < 500 &&\n firstEvent.delta - newEvent.delta >= 1 &&\n newEvent.delta <= 6\n ) {\n // We're at the end of the deceleration of a momentum scroll, so there's no need\n // to wait for more events. Snap ASAP on the next tick.\n // Also, because there's some remaining momentum we'll bias the snap in the\n // direction of the ongoing scroll because it's better UX for the scroll to snap\n // in the same direction as the scroll instead of reversing to snap. Therefore,\n // if it's already scrolled more than 20% in the current direction, keep going.\n const snapToThreshold = delta > 0 ? 0.8 : 0.2;\n lastEventBeforeSnap = newEvent;\n recentWheelEvents.splice(0);\n timeout = nextTick(() => {\n swiper.slideToClosest(swiper.params.speed, true, undefined, snapToThreshold);\n }, 0); // no delay; move on next tick\n }\n\n if (!timeout) {\n // if we get here, then we haven't detected the end of a momentum scroll, so\n // we'll consider a scroll \"complete\" when there haven't been any wheel events\n // for 500ms.\n timeout = nextTick(() => {\n const snapToThreshold = 0.5;\n lastEventBeforeSnap = newEvent;\n recentWheelEvents.splice(0);\n swiper.slideToClosest(swiper.params.speed, true, undefined, snapToThreshold);\n }, 500);\n }\n } // Emit event\n\n if (!ignoreWheelEvents) emit('scroll', e); // Stop autoplay\n\n if (swiper.params.autoplay && swiper.params.autoplayDisableOnInteraction) swiper.autoplay.stop(); // Return page scroll on edge positions\n\n if (position === swiper.minTranslate() || position === swiper.maxTranslate()) return true;\n }\n }\n\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n return false;\n }\n\n function events(method) {\n let target = swiper.$el;\n\n if (swiper.params.mousewheel.eventsTarget !== 'container') {\n target = $(swiper.params.mousewheel.eventsTarget);\n }\n\n target[method]('mouseenter', handleMouseEnter);\n target[method]('mouseleave', handleMouseLeave);\n target[method]('wheel', handle);\n }\n\n function enable() {\n if (swiper.params.cssMode) {\n swiper.wrapperEl.removeEventListener('wheel', handle);\n return true;\n }\n\n if (swiper.mousewheel.enabled) return false;\n events('on');\n swiper.mousewheel.enabled = true;\n return true;\n }\n\n function disable() {\n if (swiper.params.cssMode) {\n swiper.wrapperEl.addEventListener(event, handle);\n return true;\n }\n\n if (!swiper.mousewheel.enabled) return false;\n events('off');\n swiper.mousewheel.enabled = false;\n return true;\n }\n\n on('init', () => {\n if (!swiper.params.mousewheel.enabled && swiper.params.cssMode) {\n disable();\n }\n\n if (swiper.params.mousewheel.enabled) enable();\n });\n on('destroy', () => {\n if (swiper.params.cssMode) {\n enable();\n }\n\n if (swiper.mousewheel.enabled) disable();\n });\n Object.assign(swiper.mousewheel, {\n enable,\n disable,\n });\n }\n\n function createElementIfNotDefined(swiper, originalParams, params, checkProps) {\n const document = getDocument();\n\n if (swiper.params.createElements) {\n Object.keys(checkProps).forEach((key) => {\n if (!params[key] && params.auto === true) {\n let element = swiper.$el.children(`.${checkProps[key]}`)[0];\n\n if (!element) {\n element = document.createElement('div');\n element.className = checkProps[key];\n swiper.$el.append(element);\n }\n\n params[key] = element;\n originalParams[key] = element;\n }\n });\n }\n\n return params;\n }\n\n function Navigation({swiper, extendParams, on, emit}) {\n extendParams({\n navigation: {\n nextEl: null,\n prevEl: null,\n hideOnClick: false,\n disabledClass: 'swiper-button-disabled',\n hiddenClass: 'swiper-button-hidden',\n lockClass: 'swiper-button-lock',\n },\n });\n swiper.navigation = {\n nextEl: null,\n $nextEl: null,\n prevEl: null,\n $prevEl: null,\n };\n\n function getEl(el) {\n let $el;\n\n if (el) {\n $el = $(el);\n\n if (\n swiper.params.uniqueNavElements &&\n typeof el === 'string' &&\n $el.length > 1 &&\n swiper.$el.find(el).length === 1\n ) {\n $el = swiper.$el.find(el);\n }\n }\n\n return $el;\n }\n\n function toggleEl($el, disabled) {\n const params = swiper.params.navigation;\n\n if ($el && $el.length > 0) {\n $el[disabled ? 'addClass' : 'removeClass'](params.disabledClass);\n if ($el[0] && $el[0].tagName === 'BUTTON') $el[0].disabled = disabled;\n\n if (swiper.params.watchOverflow && swiper.enabled) {\n $el[swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);\n }\n }\n }\n\n function update() {\n // Update Navigation Buttons\n if (swiper.params.loop) return;\n const {$nextEl, $prevEl} = swiper.navigation;\n toggleEl($prevEl, swiper.isBeginning && !swiper.params.rewind);\n toggleEl($nextEl, swiper.isEnd && !swiper.params.rewind);\n }\n\n function onPrevClick(e) {\n e.preventDefault();\n if (swiper.isBeginning && !swiper.params.loop && !swiper.params.rewind) return;\n swiper.slidePrev();\n }\n\n function onNextClick(e) {\n e.preventDefault();\n if (swiper.isEnd && !swiper.params.loop && !swiper.params.rewind) return;\n swiper.slideNext();\n }\n\n function init() {\n const params = swiper.params.navigation;\n swiper.params.navigation = createElementIfNotDefined(\n swiper,\n swiper.originalParams.navigation,\n swiper.params.navigation,\n {\n nextEl: 'swiper-button-next',\n prevEl: 'swiper-button-prev',\n },\n );\n if (!(params.nextEl || params.prevEl)) return;\n const $nextEl = getEl(params.nextEl);\n const $prevEl = getEl(params.prevEl);\n\n if ($nextEl && $nextEl.length > 0) {\n $nextEl.on('click', onNextClick);\n }\n\n if ($prevEl && $prevEl.length > 0) {\n $prevEl.on('click', onPrevClick);\n }\n\n Object.assign(swiper.navigation, {\n $nextEl,\n nextEl: $nextEl && $nextEl[0],\n $prevEl,\n prevEl: $prevEl && $prevEl[0],\n });\n\n if (!swiper.enabled) {\n if ($nextEl) $nextEl.addClass(params.lockClass);\n if ($prevEl) $prevEl.addClass(params.lockClass);\n }\n }\n\n function destroy() {\n const {$nextEl, $prevEl} = swiper.navigation;\n\n if ($nextEl && $nextEl.length) {\n $nextEl.off('click', onNextClick);\n $nextEl.removeClass(swiper.params.navigation.disabledClass);\n }\n\n if ($prevEl && $prevEl.length) {\n $prevEl.off('click', onPrevClick);\n $prevEl.removeClass(swiper.params.navigation.disabledClass);\n }\n }\n\n on('init', () => {\n init();\n update();\n });\n on('toEdge fromEdge lock unlock', () => {\n update();\n });\n on('destroy', () => {\n destroy();\n });\n on('enable disable', () => {\n const {$nextEl, $prevEl} = swiper.navigation;\n\n if ($nextEl) {\n $nextEl[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.navigation.lockClass);\n }\n\n if ($prevEl) {\n $prevEl[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.navigation.lockClass);\n }\n });\n on('click', (_s, e) => {\n const {$nextEl, $prevEl} = swiper.navigation;\n const targetEl = e.target;\n\n if (swiper.params.navigation.hideOnClick && !$(targetEl).is($prevEl) && !$(targetEl).is($nextEl)) {\n if (\n swiper.pagination &&\n swiper.params.pagination &&\n swiper.params.pagination.clickable &&\n (swiper.pagination.el === targetEl || swiper.pagination.el.contains(targetEl))\n )\n return;\n let isHidden;\n\n if ($nextEl) {\n isHidden = $nextEl.hasClass(swiper.params.navigation.hiddenClass);\n } else if ($prevEl) {\n isHidden = $prevEl.hasClass(swiper.params.navigation.hiddenClass);\n }\n\n if (isHidden === true) {\n emit('navigationShow');\n } else {\n emit('navigationHide');\n }\n\n if ($nextEl) {\n $nextEl.toggleClass(swiper.params.navigation.hiddenClass);\n }\n\n if ($prevEl) {\n $prevEl.toggleClass(swiper.params.navigation.hiddenClass);\n }\n }\n });\n Object.assign(swiper.navigation, {\n update,\n init,\n destroy,\n });\n }\n\n function classesToSelector(classes = '') {\n return `.${classes\n .trim()\n .replace(/([\\.:!\\/])/g, '\\\\$1') // eslint-disable-line\n .replace(/ /g, '.')}`;\n }\n\n function Pagination({swiper, extendParams, on, emit}) {\n const pfx = 'swiper-pagination';\n extendParams({\n pagination: {\n el: null,\n bulletElement: 'span',\n clickable: false,\n hideOnClick: false,\n renderBullet: null,\n renderProgressbar: null,\n renderFraction: null,\n renderCustom: null,\n progressbarOpposite: false,\n type: 'bullets',\n // 'bullets' or 'progressbar' or 'fraction' or 'custom'\n dynamicBullets: false,\n dynamicMainBullets: 1,\n formatFractionCurrent: (number) => number,\n formatFractionTotal: (number) => number,\n bulletClass: `${pfx}-bullet`,\n bulletActiveClass: `${pfx}-bullet-active`,\n modifierClass: `${pfx}-`,\n currentClass: `${pfx}-current`,\n totalClass: `${pfx}-total`,\n hiddenClass: `${pfx}-hidden`,\n progressbarFillClass: `${pfx}-progressbar-fill`,\n progressbarOppositeClass: `${pfx}-progressbar-opposite`,\n clickableClass: `${pfx}-clickable`,\n lockClass: `${pfx}-lock`,\n horizontalClass: `${pfx}-horizontal`,\n verticalClass: `${pfx}-vertical`,\n },\n });\n swiper.pagination = {\n el: null,\n $el: null,\n bullets: [],\n };\n let bulletSize;\n let dynamicBulletIndex = 0;\n\n function isPaginationDisabled() {\n return (\n !swiper.params.pagination.el ||\n !swiper.pagination.el ||\n !swiper.pagination.$el ||\n swiper.pagination.$el.length === 0\n );\n }\n\n function setSideBullets($bulletEl, position) {\n const {bulletActiveClass} = swiper.params.pagination;\n $bulletEl[position]()\n .addClass(`${bulletActiveClass}-${position}`)\n [position]()\n .addClass(`${bulletActiveClass}-${position}-${position}`);\n }\n\n function update() {\n // Render || Update Pagination bullets/items\n const rtl = swiper.rtl;\n const params = swiper.params.pagination;\n if (isPaginationDisabled()) return;\n const slidesLength =\n swiper.virtual && swiper.params.virtual.enabled ? swiper.virtual.slides.length : swiper.slides.length;\n const $el = swiper.pagination.$el; // Current/Total\n\n let current;\n const total = swiper.params.loop\n ? Math.ceil((slidesLength - swiper.loopedSlides * 2) / swiper.params.slidesPerGroup)\n : swiper.snapGrid.length;\n\n if (swiper.params.loop) {\n current = Math.ceil((swiper.activeIndex - swiper.loopedSlides) / swiper.params.slidesPerGroup);\n\n if (current > slidesLength - 1 - swiper.loopedSlides * 2) {\n current -= slidesLength - swiper.loopedSlides * 2;\n }\n\n if (current > total - 1) current -= total;\n if (current < 0 && swiper.params.paginationType !== 'bullets') current = total + current;\n } else if (typeof swiper.snapIndex !== 'undefined') {\n current = swiper.snapIndex;\n } else {\n current = swiper.activeIndex || 0;\n } // Types\n\n if (params.type === 'bullets' && swiper.pagination.bullets && swiper.pagination.bullets.length > 0) {\n const bullets = swiper.pagination.bullets;\n let firstIndex;\n let lastIndex;\n let midIndex;\n\n if (params.dynamicBullets) {\n bulletSize = bullets.eq(0)[swiper.isHorizontal() ? 'outerWidth' : 'outerHeight'](true);\n $el.css(swiper.isHorizontal() ? 'width' : 'height', `${bulletSize * (params.dynamicMainBullets + 4)}px`);\n\n if (params.dynamicMainBullets > 1 && swiper.previousIndex !== undefined) {\n dynamicBulletIndex += current - (swiper.previousIndex - swiper.loopedSlides || 0);\n\n if (dynamicBulletIndex > params.dynamicMainBullets - 1) {\n dynamicBulletIndex = params.dynamicMainBullets - 1;\n } else if (dynamicBulletIndex < 0) {\n dynamicBulletIndex = 0;\n }\n }\n\n firstIndex = Math.max(current - dynamicBulletIndex, 0);\n lastIndex = firstIndex + (Math.min(bullets.length, params.dynamicMainBullets) - 1);\n midIndex = (lastIndex + firstIndex) / 2;\n }\n\n bullets.removeClass(\n ['', '-next', '-next-next', '-prev', '-prev-prev', '-main']\n .map((suffix) => `${params.bulletActiveClass}${suffix}`)\n .join(' '),\n );\n\n if ($el.length > 1) {\n bullets.each((bullet) => {\n const $bullet = $(bullet);\n const bulletIndex = $bullet.index();\n\n if (bulletIndex === current) {\n $bullet.addClass(params.bulletActiveClass);\n }\n\n if (params.dynamicBullets) {\n if (bulletIndex >= firstIndex && bulletIndex <= lastIndex) {\n $bullet.addClass(`${params.bulletActiveClass}-main`);\n }\n\n if (bulletIndex === firstIndex) {\n setSideBullets($bullet, 'prev');\n }\n\n if (bulletIndex === lastIndex) {\n setSideBullets($bullet, 'next');\n }\n }\n });\n } else {\n const $bullet = bullets.eq(current);\n const bulletIndex = $bullet.index();\n $bullet.addClass(params.bulletActiveClass);\n\n if (params.dynamicBullets) {\n const $firstDisplayedBullet = bullets.eq(firstIndex);\n const $lastDisplayedBullet = bullets.eq(lastIndex);\n\n for (let i = firstIndex; i <= lastIndex; i += 1) {\n bullets.eq(i).addClass(`${params.bulletActiveClass}-main`);\n }\n\n if (swiper.params.loop) {\n if (bulletIndex >= bullets.length) {\n for (let i = params.dynamicMainBullets; i >= 0; i -= 1) {\n bullets.eq(bullets.length - i).addClass(`${params.bulletActiveClass}-main`);\n }\n\n bullets\n .eq(bullets.length - params.dynamicMainBullets - 1)\n .addClass(`${params.bulletActiveClass}-prev`);\n } else {\n setSideBullets($firstDisplayedBullet, 'prev');\n setSideBullets($lastDisplayedBullet, 'next');\n }\n } else {\n setSideBullets($firstDisplayedBullet, 'prev');\n setSideBullets($lastDisplayedBullet, 'next');\n }\n }\n }\n\n if (params.dynamicBullets) {\n const dynamicBulletsLength = Math.min(bullets.length, params.dynamicMainBullets + 4);\n const bulletsOffset = (bulletSize * dynamicBulletsLength - bulletSize) / 2 - midIndex * bulletSize;\n const offsetProp = rtl ? 'right' : 'left';\n bullets.css(swiper.isHorizontal() ? offsetProp : 'top', `${bulletsOffset}px`);\n }\n }\n\n if (params.type === 'fraction') {\n $el.find(classesToSelector(params.currentClass)).text(params.formatFractionCurrent(current + 1));\n $el.find(classesToSelector(params.totalClass)).text(params.formatFractionTotal(total));\n }\n\n if (params.type === 'progressbar') {\n let progressbarDirection;\n\n if (params.progressbarOpposite) {\n progressbarDirection = swiper.isHorizontal() ? 'vertical' : 'horizontal';\n } else {\n progressbarDirection = swiper.isHorizontal() ? 'horizontal' : 'vertical';\n }\n\n const scale = (current + 1) / total;\n let scaleX = 1;\n let scaleY = 1;\n\n if (progressbarDirection === 'horizontal') {\n scaleX = scale;\n } else {\n scaleY = scale;\n }\n\n $el\n .find(classesToSelector(params.progressbarFillClass))\n .transform(`translate3d(0,0,0) scaleX(${scaleX}) scaleY(${scaleY})`)\n .transition(swiper.params.speed);\n }\n\n if (params.type === 'custom' && params.renderCustom) {\n $el.html(params.renderCustom(swiper, current + 1, total));\n emit('paginationRender', $el[0]);\n } else {\n emit('paginationUpdate', $el[0]);\n }\n\n if (swiper.params.watchOverflow && swiper.enabled) {\n $el[swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);\n }\n }\n\n function render() {\n // Render Container\n const params = swiper.params.pagination;\n if (isPaginationDisabled()) return;\n const slidesLength =\n swiper.virtual && swiper.params.virtual.enabled ? swiper.virtual.slides.length : swiper.slides.length;\n const $el = swiper.pagination.$el;\n let paginationHTML = '';\n\n if (params.type === 'bullets') {\n let numberOfBullets = swiper.params.loop\n ? Math.ceil((slidesLength - swiper.loopedSlides * 2) / swiper.params.slidesPerGroup)\n : swiper.snapGrid.length;\n\n if (\n swiper.params.freeMode &&\n swiper.params.freeMode.enabled &&\n !swiper.params.loop &&\n numberOfBullets > slidesLength\n ) {\n numberOfBullets = slidesLength;\n }\n\n for (let i = 0; i < numberOfBullets; i += 1) {\n if (params.renderBullet) {\n paginationHTML += params.renderBullet.call(swiper, i, params.bulletClass);\n } else {\n paginationHTML += `<${params.bulletElement} class=\"${params.bulletClass}\">`;\n }\n }\n\n $el.html(paginationHTML);\n swiper.pagination.bullets = $el.find(classesToSelector(params.bulletClass));\n }\n\n if (params.type === 'fraction') {\n if (params.renderFraction) {\n paginationHTML = params.renderFraction.call(swiper, params.currentClass, params.totalClass);\n } else {\n paginationHTML =\n `` + ' / ' + ``;\n }\n\n $el.html(paginationHTML);\n }\n\n if (params.type === 'progressbar') {\n if (params.renderProgressbar) {\n paginationHTML = params.renderProgressbar.call(swiper, params.progressbarFillClass);\n } else {\n paginationHTML = ``;\n }\n\n $el.html(paginationHTML);\n }\n\n if (params.type !== 'custom') {\n emit('paginationRender', swiper.pagination.$el[0]);\n }\n }\n\n function init() {\n swiper.params.pagination = createElementIfNotDefined(\n swiper,\n swiper.originalParams.pagination,\n swiper.params.pagination,\n {\n el: 'swiper-pagination',\n },\n );\n const params = swiper.params.pagination;\n if (!params.el) return;\n let $el = $(params.el);\n if ($el.length === 0) return;\n\n if (swiper.params.uniqueNavElements && typeof params.el === 'string' && $el.length > 1) {\n $el = swiper.$el.find(params.el); // check if it belongs to another nested Swiper\n\n if ($el.length > 1) {\n $el = $el.filter((el) => {\n if ($(el).parents('.swiper')[0] !== swiper.el) return false;\n return true;\n });\n }\n }\n\n if (params.type === 'bullets' && params.clickable) {\n $el.addClass(params.clickableClass);\n }\n\n $el.addClass(params.modifierClass + params.type);\n $el.addClass(params.modifierClass + swiper.params.direction);\n\n if (params.type === 'bullets' && params.dynamicBullets) {\n $el.addClass(`${params.modifierClass}${params.type}-dynamic`);\n dynamicBulletIndex = 0;\n\n if (params.dynamicMainBullets < 1) {\n params.dynamicMainBullets = 1;\n }\n }\n\n if (params.type === 'progressbar' && params.progressbarOpposite) {\n $el.addClass(params.progressbarOppositeClass);\n }\n\n if (params.clickable) {\n $el.on('click', classesToSelector(params.bulletClass), function onClick(e) {\n e.preventDefault();\n let index = $(this).index() * swiper.params.slidesPerGroup;\n if (swiper.params.loop) index += swiper.loopedSlides;\n swiper.slideTo(index);\n });\n }\n\n Object.assign(swiper.pagination, {\n $el,\n el: $el[0],\n });\n\n if (!swiper.enabled) {\n $el.addClass(params.lockClass);\n }\n }\n\n function destroy() {\n const params = swiper.params.pagination;\n if (isPaginationDisabled()) return;\n const $el = swiper.pagination.$el;\n $el.removeClass(params.hiddenClass);\n $el.removeClass(params.modifierClass + params.type);\n $el.removeClass(params.modifierClass + swiper.params.direction);\n if (swiper.pagination.bullets && swiper.pagination.bullets.removeClass)\n swiper.pagination.bullets.removeClass(params.bulletActiveClass);\n\n if (params.clickable) {\n $el.off('click', classesToSelector(params.bulletClass));\n }\n }\n\n on('init', () => {\n init();\n render();\n update();\n });\n on('activeIndexChange', () => {\n if (swiper.params.loop) {\n update();\n } else if (typeof swiper.snapIndex === 'undefined') {\n update();\n }\n });\n on('snapIndexChange', () => {\n if (!swiper.params.loop) {\n update();\n }\n });\n on('slidesLengthChange', () => {\n if (swiper.params.loop) {\n render();\n update();\n }\n });\n on('snapGridLengthChange', () => {\n if (!swiper.params.loop) {\n render();\n update();\n }\n });\n on('destroy', () => {\n destroy();\n });\n on('enable disable', () => {\n const {$el} = swiper.pagination;\n\n if ($el) {\n $el[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.pagination.lockClass);\n }\n });\n on('lock unlock', () => {\n update();\n });\n on('click', (_s, e) => {\n const targetEl = e.target;\n const {$el} = swiper.pagination;\n\n if (\n swiper.params.pagination.el &&\n swiper.params.pagination.hideOnClick &&\n $el.length > 0 &&\n !$(targetEl).hasClass(swiper.params.pagination.bulletClass)\n ) {\n if (\n swiper.navigation &&\n ((swiper.navigation.nextEl && targetEl === swiper.navigation.nextEl) ||\n (swiper.navigation.prevEl && targetEl === swiper.navigation.prevEl))\n )\n return;\n const isHidden = $el.hasClass(swiper.params.pagination.hiddenClass);\n\n if (isHidden === true) {\n emit('paginationShow');\n } else {\n emit('paginationHide');\n }\n\n $el.toggleClass(swiper.params.pagination.hiddenClass);\n }\n });\n Object.assign(swiper.pagination, {\n render,\n update,\n init,\n destroy,\n });\n }\n\n function Scrollbar({swiper, extendParams, on, emit}) {\n const document = getDocument();\n let isTouched = false;\n let timeout = null;\n let dragTimeout = null;\n let dragStartPos;\n let dragSize;\n let trackSize;\n let divider;\n extendParams({\n scrollbar: {\n el: null,\n dragSize: 'auto',\n hide: false,\n draggable: false,\n snapOnRelease: true,\n lockClass: 'swiper-scrollbar-lock',\n dragClass: 'swiper-scrollbar-drag',\n },\n });\n swiper.scrollbar = {\n el: null,\n dragEl: null,\n $el: null,\n $dragEl: null,\n };\n\n function setTranslate() {\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return;\n const {scrollbar, rtlTranslate: rtl, progress} = swiper;\n const {$dragEl, $el} = scrollbar;\n const params = swiper.params.scrollbar;\n let newSize = dragSize;\n let newPos = (trackSize - dragSize) * progress;\n\n if (rtl) {\n newPos = -newPos;\n\n if (newPos > 0) {\n newSize = dragSize - newPos;\n newPos = 0;\n } else if (-newPos + dragSize > trackSize) {\n newSize = trackSize + newPos;\n }\n } else if (newPos < 0) {\n newSize = dragSize + newPos;\n newPos = 0;\n } else if (newPos + dragSize > trackSize) {\n newSize = trackSize - newPos;\n }\n\n if (swiper.isHorizontal()) {\n $dragEl.transform(`translate3d(${newPos}px, 0, 0)`);\n $dragEl[0].style.width = `${newSize}px`;\n } else {\n $dragEl.transform(`translate3d(0px, ${newPos}px, 0)`);\n $dragEl[0].style.height = `${newSize}px`;\n }\n\n if (params.hide) {\n clearTimeout(timeout);\n $el[0].style.opacity = 1;\n timeout = setTimeout(() => {\n $el[0].style.opacity = 0;\n $el.transition(400);\n }, 1000);\n }\n }\n\n function setTransition(duration) {\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return;\n swiper.scrollbar.$dragEl.transition(duration);\n }\n\n function updateSize() {\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return;\n const {scrollbar} = swiper;\n const {$dragEl, $el} = scrollbar;\n $dragEl[0].style.width = '';\n $dragEl[0].style.height = '';\n trackSize = swiper.isHorizontal() ? $el[0].offsetWidth : $el[0].offsetHeight;\n divider =\n swiper.size /\n (swiper.virtualSize +\n swiper.params.slidesOffsetBefore -\n (swiper.params.centeredSlides ? swiper.snapGrid[0] : 0));\n\n if (swiper.params.scrollbar.dragSize === 'auto') {\n dragSize = trackSize * divider;\n } else {\n dragSize = parseInt(swiper.params.scrollbar.dragSize, 10);\n }\n\n if (swiper.isHorizontal()) {\n $dragEl[0].style.width = `${dragSize}px`;\n } else {\n $dragEl[0].style.height = `${dragSize}px`;\n }\n\n if (divider >= 1) {\n $el[0].style.display = 'none';\n } else {\n $el[0].style.display = '';\n }\n\n if (swiper.params.scrollbar.hide) {\n $el[0].style.opacity = 0;\n }\n\n if (swiper.params.watchOverflow && swiper.enabled) {\n scrollbar.$el[swiper.isLocked ? 'addClass' : 'removeClass'](swiper.params.scrollbar.lockClass);\n }\n }\n\n function getPointerPosition(e) {\n if (swiper.isHorizontal()) {\n return e.type === 'touchstart' || e.type === 'touchmove' ? e.targetTouches[0].clientX : e.clientX;\n }\n\n return e.type === 'touchstart' || e.type === 'touchmove' ? e.targetTouches[0].clientY : e.clientY;\n }\n\n function setDragPosition(e) {\n const {scrollbar, rtlTranslate: rtl} = swiper;\n const {$el} = scrollbar;\n let positionRatio;\n positionRatio =\n (getPointerPosition(e) -\n $el.offset()[swiper.isHorizontal() ? 'left' : 'top'] -\n (dragStartPos !== null ? dragStartPos : dragSize / 2)) /\n (trackSize - dragSize);\n positionRatio = Math.max(Math.min(positionRatio, 1), 0);\n\n if (rtl) {\n positionRatio = 1 - positionRatio;\n }\n\n const position = swiper.minTranslate() + (swiper.maxTranslate() - swiper.minTranslate()) * positionRatio;\n swiper.updateProgress(position);\n swiper.setTranslate(position);\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n\n function onDragStart(e) {\n const params = swiper.params.scrollbar;\n const {scrollbar, $wrapperEl} = swiper;\n const {$el, $dragEl} = scrollbar;\n isTouched = true;\n dragStartPos =\n e.target === $dragEl[0] || e.target === $dragEl\n ? getPointerPosition(e) - e.target.getBoundingClientRect()[swiper.isHorizontal() ? 'left' : 'top']\n : null;\n e.preventDefault();\n e.stopPropagation();\n $wrapperEl.transition(100);\n $dragEl.transition(100);\n setDragPosition(e);\n clearTimeout(dragTimeout);\n $el.transition(0);\n\n if (params.hide) {\n $el.css('opacity', 1);\n }\n\n if (swiper.params.cssMode) {\n swiper.$wrapperEl.css('scroll-snap-type', 'none');\n }\n\n emit('scrollbarDragStart', e);\n }\n\n function onDragMove(e) {\n const {scrollbar, $wrapperEl} = swiper;\n const {$el, $dragEl} = scrollbar;\n if (!isTouched) return;\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n setDragPosition(e);\n $wrapperEl.transition(0);\n $el.transition(0);\n $dragEl.transition(0);\n emit('scrollbarDragMove', e);\n }\n\n function onDragEnd(e) {\n const params = swiper.params.scrollbar;\n const {scrollbar, $wrapperEl} = swiper;\n const {$el} = scrollbar;\n if (!isTouched) return;\n isTouched = false;\n\n if (swiper.params.cssMode) {\n swiper.$wrapperEl.css('scroll-snap-type', '');\n $wrapperEl.transition('');\n }\n\n if (params.hide) {\n clearTimeout(dragTimeout);\n dragTimeout = nextTick(() => {\n $el.css('opacity', 0);\n $el.transition(400);\n }, 1000);\n }\n\n emit('scrollbarDragEnd', e);\n\n if (params.snapOnRelease) {\n swiper.slideToClosest();\n }\n }\n\n function events(method) {\n const {scrollbar, touchEventsTouch, touchEventsDesktop, params, support} = swiper;\n const $el = scrollbar.$el;\n const target = $el[0];\n const activeListener =\n support.passiveListener && params.passiveListeners\n ? {\n passive: false,\n capture: false,\n }\n : false;\n const passiveListener =\n support.passiveListener && params.passiveListeners\n ? {\n passive: true,\n capture: false,\n }\n : false;\n if (!target) return;\n const eventMethod = method === 'on' ? 'addEventListener' : 'removeEventListener';\n\n if (!support.touch) {\n target[eventMethod](touchEventsDesktop.start, onDragStart, activeListener);\n document[eventMethod](touchEventsDesktop.move, onDragMove, activeListener);\n document[eventMethod](touchEventsDesktop.end, onDragEnd, passiveListener);\n } else {\n target[eventMethod](touchEventsTouch.start, onDragStart, activeListener);\n target[eventMethod](touchEventsTouch.move, onDragMove, activeListener);\n target[eventMethod](touchEventsTouch.end, onDragEnd, passiveListener);\n }\n }\n\n function enableDraggable() {\n if (!swiper.params.scrollbar.el) return;\n events('on');\n }\n\n function disableDraggable() {\n if (!swiper.params.scrollbar.el) return;\n events('off');\n }\n\n function init() {\n const {scrollbar, $el: $swiperEl} = swiper;\n swiper.params.scrollbar = createElementIfNotDefined(\n swiper,\n swiper.originalParams.scrollbar,\n swiper.params.scrollbar,\n {\n el: 'swiper-scrollbar',\n },\n );\n const params = swiper.params.scrollbar;\n if (!params.el) return;\n let $el = $(params.el);\n\n if (\n swiper.params.uniqueNavElements &&\n typeof params.el === 'string' &&\n $el.length > 1 &&\n $swiperEl.find(params.el).length === 1\n ) {\n $el = $swiperEl.find(params.el);\n }\n\n let $dragEl = $el.find(`.${swiper.params.scrollbar.dragClass}`);\n\n if ($dragEl.length === 0) {\n $dragEl = $(`
    `);\n $el.append($dragEl);\n }\n\n Object.assign(scrollbar, {\n $el,\n el: $el[0],\n $dragEl,\n dragEl: $dragEl[0],\n });\n\n if (params.draggable) {\n enableDraggable();\n }\n\n if ($el) {\n $el[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.scrollbar.lockClass);\n }\n }\n\n function destroy() {\n disableDraggable();\n }\n\n on('init', () => {\n init();\n updateSize();\n setTranslate();\n });\n on('update resize observerUpdate lock unlock', () => {\n updateSize();\n });\n on('setTranslate', () => {\n setTranslate();\n });\n on('setTransition', (_s, duration) => {\n setTransition(duration);\n });\n on('enable disable', () => {\n const {$el} = swiper.scrollbar;\n\n if ($el) {\n $el[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.scrollbar.lockClass);\n }\n });\n on('destroy', () => {\n destroy();\n });\n Object.assign(swiper.scrollbar, {\n updateSize,\n setTranslate,\n init,\n destroy,\n });\n }\n\n function Parallax({swiper, extendParams, on}) {\n extendParams({\n parallax: {\n enabled: false,\n },\n });\n\n const setTransform = (el, progress) => {\n const {rtl} = swiper;\n const $el = $(el);\n const rtlFactor = rtl ? -1 : 1;\n const p = $el.attr('data-swiper-parallax') || '0';\n let x = $el.attr('data-swiper-parallax-x');\n let y = $el.attr('data-swiper-parallax-y');\n const scale = $el.attr('data-swiper-parallax-scale');\n const opacity = $el.attr('data-swiper-parallax-opacity');\n\n if (x || y) {\n x = x || '0';\n y = y || '0';\n } else if (swiper.isHorizontal()) {\n x = p;\n y = '0';\n } else {\n y = p;\n x = '0';\n }\n\n if (x.indexOf('%') >= 0) {\n x = `${parseInt(x, 10) * progress * rtlFactor}%`;\n } else {\n x = `${x * progress * rtlFactor}px`;\n }\n\n if (y.indexOf('%') >= 0) {\n y = `${parseInt(y, 10) * progress}%`;\n } else {\n y = `${y * progress}px`;\n }\n\n if (typeof opacity !== 'undefined' && opacity !== null) {\n const currentOpacity = opacity - (opacity - 1) * (1 - Math.abs(progress));\n $el[0].style.opacity = currentOpacity;\n }\n\n if (typeof scale === 'undefined' || scale === null) {\n $el.transform(`translate3d(${x}, ${y}, 0px)`);\n } else {\n const currentScale = scale - (scale - 1) * (1 - Math.abs(progress));\n $el.transform(`translate3d(${x}, ${y}, 0px) scale(${currentScale})`);\n }\n };\n\n const setTranslate = () => {\n const {$el, slides, progress, snapGrid} = swiper;\n $el\n .children(\n '[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]',\n )\n .each((el) => {\n setTransform(el, progress);\n });\n slides.each((slideEl, slideIndex) => {\n let slideProgress = slideEl.progress;\n\n if (swiper.params.slidesPerGroup > 1 && swiper.params.slidesPerView !== 'auto') {\n slideProgress += Math.ceil(slideIndex / 2) - progress * (snapGrid.length - 1);\n }\n\n slideProgress = Math.min(Math.max(slideProgress, -1), 1);\n $(slideEl)\n .find(\n '[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]',\n )\n .each((el) => {\n setTransform(el, slideProgress);\n });\n });\n };\n\n const setTransition = (duration = swiper.params.speed) => {\n const {$el} = swiper;\n $el\n .find(\n '[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]',\n )\n .each((parallaxEl) => {\n const $parallaxEl = $(parallaxEl);\n let parallaxDuration = parseInt($parallaxEl.attr('data-swiper-parallax-duration'), 10) || duration;\n if (duration === 0) parallaxDuration = 0;\n $parallaxEl.transition(parallaxDuration);\n });\n };\n\n on('beforeInit', () => {\n if (!swiper.params.parallax.enabled) return;\n swiper.params.watchSlidesProgress = true;\n swiper.originalParams.watchSlidesProgress = true;\n });\n on('init', () => {\n if (!swiper.params.parallax.enabled) return;\n setTranslate();\n });\n on('setTranslate', () => {\n if (!swiper.params.parallax.enabled) return;\n setTranslate();\n });\n on('setTransition', (_swiper, duration) => {\n if (!swiper.params.parallax.enabled) return;\n setTransition(duration);\n });\n }\n\n function Zoom({swiper, extendParams, on, emit}) {\n const window = getWindow();\n extendParams({\n zoom: {\n enabled: false,\n maxRatio: 3,\n minRatio: 1,\n toggle: true,\n containerClass: 'swiper-zoom-container',\n zoomedSlideClass: 'swiper-slide-zoomed',\n },\n });\n swiper.zoom = {\n enabled: false,\n };\n let currentScale = 1;\n let isScaling = false;\n let gesturesEnabled;\n let fakeGestureTouched;\n let fakeGestureMoved;\n const gesture = {\n $slideEl: undefined,\n slideWidth: undefined,\n slideHeight: undefined,\n $imageEl: undefined,\n $imageWrapEl: undefined,\n maxRatio: 3,\n };\n const image = {\n isTouched: undefined,\n isMoved: undefined,\n currentX: undefined,\n currentY: undefined,\n minX: undefined,\n minY: undefined,\n maxX: undefined,\n maxY: undefined,\n width: undefined,\n height: undefined,\n startX: undefined,\n startY: undefined,\n touchesStart: {},\n touchesCurrent: {},\n };\n const velocity = {\n x: undefined,\n y: undefined,\n prevPositionX: undefined,\n prevPositionY: undefined,\n prevTime: undefined,\n };\n let scale = 1;\n Object.defineProperty(swiper.zoom, 'scale', {\n get() {\n return scale;\n },\n\n set(value) {\n if (scale !== value) {\n const imageEl = gesture.$imageEl ? gesture.$imageEl[0] : undefined;\n const slideEl = gesture.$slideEl ? gesture.$slideEl[0] : undefined;\n emit('zoomChange', value, imageEl, slideEl);\n }\n\n scale = value;\n },\n });\n\n function getDistanceBetweenTouches(e) {\n if (e.targetTouches.length < 2) return 1;\n const x1 = e.targetTouches[0].pageX;\n const y1 = e.targetTouches[0].pageY;\n const x2 = e.targetTouches[1].pageX;\n const y2 = e.targetTouches[1].pageY;\n const distance = Math.sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2);\n return distance;\n } // Events\n\n function onGestureStart(e) {\n const support = swiper.support;\n const params = swiper.params.zoom;\n fakeGestureTouched = false;\n fakeGestureMoved = false;\n\n if (!support.gestures) {\n if (e.type !== 'touchstart' || (e.type === 'touchstart' && e.targetTouches.length < 2)) {\n return;\n }\n\n fakeGestureTouched = true;\n gesture.scaleStart = getDistanceBetweenTouches(e);\n }\n\n if (!gesture.$slideEl || !gesture.$slideEl.length) {\n gesture.$slideEl = $(e.target).closest(`.${swiper.params.slideClass}`);\n if (gesture.$slideEl.length === 0) gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);\n gesture.$imageEl = gesture.$slideEl\n .find(`.${params.containerClass}`)\n .eq(0)\n .find('picture, img, svg, canvas, .swiper-zoom-target')\n .eq(0);\n gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`);\n gesture.maxRatio = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n\n if (gesture.$imageWrapEl.length === 0) {\n gesture.$imageEl = undefined;\n return;\n }\n }\n\n if (gesture.$imageEl) {\n gesture.$imageEl.transition(0);\n }\n\n isScaling = true;\n }\n\n function onGestureChange(e) {\n const support = swiper.support;\n const params = swiper.params.zoom;\n const zoom = swiper.zoom;\n\n if (!support.gestures) {\n if (e.type !== 'touchmove' || (e.type === 'touchmove' && e.targetTouches.length < 2)) {\n return;\n }\n\n fakeGestureMoved = true;\n gesture.scaleMove = getDistanceBetweenTouches(e);\n }\n\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) {\n if (e.type === 'gesturechange') onGestureStart(e);\n return;\n }\n\n if (support.gestures) {\n zoom.scale = e.scale * currentScale;\n } else {\n zoom.scale = (gesture.scaleMove / gesture.scaleStart) * currentScale;\n }\n\n if (zoom.scale > gesture.maxRatio) {\n zoom.scale = gesture.maxRatio - 1 + (zoom.scale - gesture.maxRatio + 1) ** 0.5;\n }\n\n if (zoom.scale < params.minRatio) {\n zoom.scale = params.minRatio + 1 - (params.minRatio - zoom.scale + 1) ** 0.5;\n }\n\n gesture.$imageEl.transform(`translate3d(0,0,0) scale(${zoom.scale})`);\n }\n\n function onGestureEnd(e) {\n const device = swiper.device;\n const support = swiper.support;\n const params = swiper.params.zoom;\n const zoom = swiper.zoom;\n\n if (!support.gestures) {\n if (!fakeGestureTouched || !fakeGestureMoved) {\n return;\n }\n\n if (e.type !== 'touchend' || (e.type === 'touchend' && e.changedTouches.length < 2 && !device.android)) {\n return;\n }\n\n fakeGestureTouched = false;\n fakeGestureMoved = false;\n }\n\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n zoom.scale = Math.max(Math.min(zoom.scale, gesture.maxRatio), params.minRatio);\n gesture.$imageEl.transition(swiper.params.speed).transform(`translate3d(0,0,0) scale(${zoom.scale})`);\n currentScale = zoom.scale;\n isScaling = false;\n if (zoom.scale === 1) gesture.$slideEl = undefined;\n }\n\n function onTouchStart(e) {\n const device = swiper.device;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n if (image.isTouched) return;\n if (device.android && e.cancelable) e.preventDefault();\n image.isTouched = true;\n image.touchesStart.x = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX;\n image.touchesStart.y = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY;\n }\n\n function onTouchMove(e) {\n const zoom = swiper.zoom;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n swiper.allowClick = false;\n if (!image.isTouched || !gesture.$slideEl) return;\n\n if (!image.isMoved) {\n image.width = gesture.$imageEl[0].offsetWidth;\n image.height = gesture.$imageEl[0].offsetHeight;\n image.startX = getTranslate(gesture.$imageWrapEl[0], 'x') || 0;\n image.startY = getTranslate(gesture.$imageWrapEl[0], 'y') || 0;\n gesture.slideWidth = gesture.$slideEl[0].offsetWidth;\n gesture.slideHeight = gesture.$slideEl[0].offsetHeight;\n gesture.$imageWrapEl.transition(0);\n } // Define if we need image drag\n\n const scaledWidth = image.width * zoom.scale;\n const scaledHeight = image.height * zoom.scale;\n if (scaledWidth < gesture.slideWidth && scaledHeight < gesture.slideHeight) return;\n image.minX = Math.min(gesture.slideWidth / 2 - scaledWidth / 2, 0);\n image.maxX = -image.minX;\n image.minY = Math.min(gesture.slideHeight / 2 - scaledHeight / 2, 0);\n image.maxY = -image.minY;\n image.touchesCurrent.x = e.type === 'touchmove' ? e.targetTouches[0].pageX : e.pageX;\n image.touchesCurrent.y = e.type === 'touchmove' ? e.targetTouches[0].pageY : e.pageY;\n\n if (!image.isMoved && !isScaling) {\n if (\n swiper.isHorizontal() &&\n ((Math.floor(image.minX) === Math.floor(image.startX) && image.touchesCurrent.x < image.touchesStart.x) ||\n (Math.floor(image.maxX) === Math.floor(image.startX) && image.touchesCurrent.x > image.touchesStart.x))\n ) {\n image.isTouched = false;\n return;\n }\n\n if (\n !swiper.isHorizontal() &&\n ((Math.floor(image.minY) === Math.floor(image.startY) && image.touchesCurrent.y < image.touchesStart.y) ||\n (Math.floor(image.maxY) === Math.floor(image.startY) && image.touchesCurrent.y > image.touchesStart.y))\n ) {\n image.isTouched = false;\n return;\n }\n }\n\n if (e.cancelable) {\n e.preventDefault();\n }\n\n e.stopPropagation();\n image.isMoved = true;\n image.currentX = image.touchesCurrent.x - image.touchesStart.x + image.startX;\n image.currentY = image.touchesCurrent.y - image.touchesStart.y + image.startY;\n\n if (image.currentX < image.minX) {\n image.currentX = image.minX + 1 - (image.minX - image.currentX + 1) ** 0.8;\n }\n\n if (image.currentX > image.maxX) {\n image.currentX = image.maxX - 1 + (image.currentX - image.maxX + 1) ** 0.8;\n }\n\n if (image.currentY < image.minY) {\n image.currentY = image.minY + 1 - (image.minY - image.currentY + 1) ** 0.8;\n }\n\n if (image.currentY > image.maxY) {\n image.currentY = image.maxY - 1 + (image.currentY - image.maxY + 1) ** 0.8;\n } // Velocity\n\n if (!velocity.prevPositionX) velocity.prevPositionX = image.touchesCurrent.x;\n if (!velocity.prevPositionY) velocity.prevPositionY = image.touchesCurrent.y;\n if (!velocity.prevTime) velocity.prevTime = Date.now();\n velocity.x = (image.touchesCurrent.x - velocity.prevPositionX) / (Date.now() - velocity.prevTime) / 2;\n velocity.y = (image.touchesCurrent.y - velocity.prevPositionY) / (Date.now() - velocity.prevTime) / 2;\n if (Math.abs(image.touchesCurrent.x - velocity.prevPositionX) < 2) velocity.x = 0;\n if (Math.abs(image.touchesCurrent.y - velocity.prevPositionY) < 2) velocity.y = 0;\n velocity.prevPositionX = image.touchesCurrent.x;\n velocity.prevPositionY = image.touchesCurrent.y;\n velocity.prevTime = Date.now();\n gesture.$imageWrapEl.transform(`translate3d(${image.currentX}px, ${image.currentY}px,0)`);\n }\n\n function onTouchEnd() {\n const zoom = swiper.zoom;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n\n if (!image.isTouched || !image.isMoved) {\n image.isTouched = false;\n image.isMoved = false;\n return;\n }\n\n image.isTouched = false;\n image.isMoved = false;\n let momentumDurationX = 300;\n let momentumDurationY = 300;\n const momentumDistanceX = velocity.x * momentumDurationX;\n const newPositionX = image.currentX + momentumDistanceX;\n const momentumDistanceY = velocity.y * momentumDurationY;\n const newPositionY = image.currentY + momentumDistanceY; // Fix duration\n\n if (velocity.x !== 0) momentumDurationX = Math.abs((newPositionX - image.currentX) / velocity.x);\n if (velocity.y !== 0) momentumDurationY = Math.abs((newPositionY - image.currentY) / velocity.y);\n const momentumDuration = Math.max(momentumDurationX, momentumDurationY);\n image.currentX = newPositionX;\n image.currentY = newPositionY; // Define if we need image drag\n\n const scaledWidth = image.width * zoom.scale;\n const scaledHeight = image.height * zoom.scale;\n image.minX = Math.min(gesture.slideWidth / 2 - scaledWidth / 2, 0);\n image.maxX = -image.minX;\n image.minY = Math.min(gesture.slideHeight / 2 - scaledHeight / 2, 0);\n image.maxY = -image.minY;\n image.currentX = Math.max(Math.min(image.currentX, image.maxX), image.minX);\n image.currentY = Math.max(Math.min(image.currentY, image.maxY), image.minY);\n gesture.$imageWrapEl\n .transition(momentumDuration)\n .transform(`translate3d(${image.currentX}px, ${image.currentY}px,0)`);\n }\n\n function onTransitionEnd() {\n const zoom = swiper.zoom;\n\n if (gesture.$slideEl && swiper.previousIndex !== swiper.activeIndex) {\n if (gesture.$imageEl) {\n gesture.$imageEl.transform('translate3d(0,0,0) scale(1)');\n }\n\n if (gesture.$imageWrapEl) {\n gesture.$imageWrapEl.transform('translate3d(0,0,0)');\n }\n\n zoom.scale = 1;\n currentScale = 1;\n gesture.$slideEl = undefined;\n gesture.$imageEl = undefined;\n gesture.$imageWrapEl = undefined;\n }\n }\n\n function zoomIn(e) {\n const zoom = swiper.zoom;\n const params = swiper.params.zoom;\n\n if (!gesture.$slideEl) {\n if (e && e.target) {\n gesture.$slideEl = $(e.target).closest(`.${swiper.params.slideClass}`);\n }\n\n if (!gesture.$slideEl) {\n if (swiper.params.virtual && swiper.params.virtual.enabled && swiper.virtual) {\n gesture.$slideEl = swiper.$wrapperEl.children(`.${swiper.params.slideActiveClass}`);\n } else {\n gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);\n }\n }\n\n gesture.$imageEl = gesture.$slideEl\n .find(`.${params.containerClass}`)\n .eq(0)\n .find('picture, img, svg, canvas, .swiper-zoom-target')\n .eq(0);\n gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`);\n }\n\n if (\n !gesture.$imageEl ||\n gesture.$imageEl.length === 0 ||\n !gesture.$imageWrapEl ||\n gesture.$imageWrapEl.length === 0\n )\n return;\n\n if (swiper.params.cssMode) {\n swiper.wrapperEl.style.overflow = 'hidden';\n swiper.wrapperEl.style.touchAction = 'none';\n }\n\n gesture.$slideEl.addClass(`${params.zoomedSlideClass}`);\n let touchX;\n let touchY;\n let offsetX;\n let offsetY;\n let diffX;\n let diffY;\n let translateX;\n let translateY;\n let imageWidth;\n let imageHeight;\n let scaledWidth;\n let scaledHeight;\n let translateMinX;\n let translateMinY;\n let translateMaxX;\n let translateMaxY;\n let slideWidth;\n let slideHeight;\n\n if (typeof image.touchesStart.x === 'undefined' && e) {\n touchX = e.type === 'touchend' ? e.changedTouches[0].pageX : e.pageX;\n touchY = e.type === 'touchend' ? e.changedTouches[0].pageY : e.pageY;\n } else {\n touchX = image.touchesStart.x;\n touchY = image.touchesStart.y;\n }\n\n zoom.scale = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n currentScale = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n\n if (e) {\n slideWidth = gesture.$slideEl[0].offsetWidth;\n slideHeight = gesture.$slideEl[0].offsetHeight;\n offsetX = gesture.$slideEl.offset().left + window.scrollX;\n offsetY = gesture.$slideEl.offset().top + window.scrollY;\n diffX = offsetX + slideWidth / 2 - touchX;\n diffY = offsetY + slideHeight / 2 - touchY;\n imageWidth = gesture.$imageEl[0].offsetWidth;\n imageHeight = gesture.$imageEl[0].offsetHeight;\n scaledWidth = imageWidth * zoom.scale;\n scaledHeight = imageHeight * zoom.scale;\n translateMinX = Math.min(slideWidth / 2 - scaledWidth / 2, 0);\n translateMinY = Math.min(slideHeight / 2 - scaledHeight / 2, 0);\n translateMaxX = -translateMinX;\n translateMaxY = -translateMinY;\n translateX = diffX * zoom.scale;\n translateY = diffY * zoom.scale;\n\n if (translateX < translateMinX) {\n translateX = translateMinX;\n }\n\n if (translateX > translateMaxX) {\n translateX = translateMaxX;\n }\n\n if (translateY < translateMinY) {\n translateY = translateMinY;\n }\n\n if (translateY > translateMaxY) {\n translateY = translateMaxY;\n }\n } else {\n translateX = 0;\n translateY = 0;\n }\n\n gesture.$imageWrapEl.transition(300).transform(`translate3d(${translateX}px, ${translateY}px,0)`);\n gesture.$imageEl.transition(300).transform(`translate3d(0,0,0) scale(${zoom.scale})`);\n }\n\n function zoomOut() {\n const zoom = swiper.zoom;\n const params = swiper.params.zoom;\n\n if (!gesture.$slideEl) {\n if (swiper.params.virtual && swiper.params.virtual.enabled && swiper.virtual) {\n gesture.$slideEl = swiper.$wrapperEl.children(`.${swiper.params.slideActiveClass}`);\n } else {\n gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);\n }\n\n gesture.$imageEl = gesture.$slideEl\n .find(`.${params.containerClass}`)\n .eq(0)\n .find('picture, img, svg, canvas, .swiper-zoom-target')\n .eq(0);\n gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`);\n }\n\n if (\n !gesture.$imageEl ||\n gesture.$imageEl.length === 0 ||\n !gesture.$imageWrapEl ||\n gesture.$imageWrapEl.length === 0\n )\n return;\n\n if (swiper.params.cssMode) {\n swiper.wrapperEl.style.overflow = '';\n swiper.wrapperEl.style.touchAction = '';\n }\n\n zoom.scale = 1;\n currentScale = 1;\n gesture.$imageWrapEl.transition(300).transform('translate3d(0,0,0)');\n gesture.$imageEl.transition(300).transform('translate3d(0,0,0) scale(1)');\n gesture.$slideEl.removeClass(`${params.zoomedSlideClass}`);\n gesture.$slideEl = undefined;\n } // Toggle Zoom\n\n function zoomToggle(e) {\n const zoom = swiper.zoom;\n\n if (zoom.scale && zoom.scale !== 1) {\n // Zoom Out\n zoomOut();\n } else {\n // Zoom In\n zoomIn(e);\n }\n }\n\n function getListeners() {\n const support = swiper.support;\n const passiveListener =\n swiper.touchEvents.start === 'touchstart' && support.passiveListener && swiper.params.passiveListeners\n ? {\n passive: true,\n capture: false,\n }\n : false;\n const activeListenerWithCapture = support.passiveListener\n ? {\n passive: false,\n capture: true,\n }\n : true;\n return {\n passiveListener,\n activeListenerWithCapture,\n };\n }\n\n function getSlideSelector() {\n return `.${swiper.params.slideClass}`;\n }\n\n function toggleGestures(method) {\n const {passiveListener} = getListeners();\n const slideSelector = getSlideSelector();\n swiper.$wrapperEl[method]('gesturestart', slideSelector, onGestureStart, passiveListener);\n swiper.$wrapperEl[method]('gesturechange', slideSelector, onGestureChange, passiveListener);\n swiper.$wrapperEl[method]('gestureend', slideSelector, onGestureEnd, passiveListener);\n }\n\n function enableGestures() {\n if (gesturesEnabled) return;\n gesturesEnabled = true;\n toggleGestures('on');\n }\n\n function disableGestures() {\n if (!gesturesEnabled) return;\n gesturesEnabled = false;\n toggleGestures('off');\n } // Attach/Detach Events\n\n function enable() {\n const zoom = swiper.zoom;\n if (zoom.enabled) return;\n zoom.enabled = true;\n const support = swiper.support;\n const {passiveListener, activeListenerWithCapture} = getListeners();\n const slideSelector = getSlideSelector(); // Scale image\n\n if (support.gestures) {\n swiper.$wrapperEl.on(swiper.touchEvents.start, enableGestures, passiveListener);\n swiper.$wrapperEl.on(swiper.touchEvents.end, disableGestures, passiveListener);\n } else if (swiper.touchEvents.start === 'touchstart') {\n swiper.$wrapperEl.on(swiper.touchEvents.start, slideSelector, onGestureStart, passiveListener);\n swiper.$wrapperEl.on(swiper.touchEvents.move, slideSelector, onGestureChange, activeListenerWithCapture);\n swiper.$wrapperEl.on(swiper.touchEvents.end, slideSelector, onGestureEnd, passiveListener);\n\n if (swiper.touchEvents.cancel) {\n swiper.$wrapperEl.on(swiper.touchEvents.cancel, slideSelector, onGestureEnd, passiveListener);\n }\n } // Move image\n\n swiper.$wrapperEl.on(\n swiper.touchEvents.move,\n `.${swiper.params.zoom.containerClass}`,\n onTouchMove,\n activeListenerWithCapture,\n );\n }\n\n function disable() {\n const zoom = swiper.zoom;\n if (!zoom.enabled) return;\n const support = swiper.support;\n zoom.enabled = false;\n const {passiveListener, activeListenerWithCapture} = getListeners();\n const slideSelector = getSlideSelector(); // Scale image\n\n if (support.gestures) {\n swiper.$wrapperEl.off(swiper.touchEvents.start, enableGestures, passiveListener);\n swiper.$wrapperEl.off(swiper.touchEvents.end, disableGestures, passiveListener);\n } else if (swiper.touchEvents.start === 'touchstart') {\n swiper.$wrapperEl.off(swiper.touchEvents.start, slideSelector, onGestureStart, passiveListener);\n swiper.$wrapperEl.off(swiper.touchEvents.move, slideSelector, onGestureChange, activeListenerWithCapture);\n swiper.$wrapperEl.off(swiper.touchEvents.end, slideSelector, onGestureEnd, passiveListener);\n\n if (swiper.touchEvents.cancel) {\n swiper.$wrapperEl.off(swiper.touchEvents.cancel, slideSelector, onGestureEnd, passiveListener);\n }\n } // Move image\n\n swiper.$wrapperEl.off(\n swiper.touchEvents.move,\n `.${swiper.params.zoom.containerClass}`,\n onTouchMove,\n activeListenerWithCapture,\n );\n }\n\n on('init', () => {\n if (swiper.params.zoom.enabled) {\n enable();\n }\n });\n on('destroy', () => {\n disable();\n });\n on('touchStart', (_s, e) => {\n if (!swiper.zoom.enabled) return;\n onTouchStart(e);\n });\n on('touchEnd', (_s, e) => {\n if (!swiper.zoom.enabled) return;\n onTouchEnd();\n });\n on('doubleTap', (_s, e) => {\n if (!swiper.animating && swiper.params.zoom.enabled && swiper.zoom.enabled && swiper.params.zoom.toggle) {\n zoomToggle(e);\n }\n });\n on('transitionEnd', () => {\n if (swiper.zoom.enabled && swiper.params.zoom.enabled) {\n onTransitionEnd();\n }\n });\n on('slideChange', () => {\n if (swiper.zoom.enabled && swiper.params.zoom.enabled && swiper.params.cssMode) {\n onTransitionEnd();\n }\n });\n Object.assign(swiper.zoom, {\n enable,\n disable,\n in: zoomIn,\n out: zoomOut,\n toggle: zoomToggle,\n });\n }\n\n function Lazy({swiper, extendParams, on, emit}) {\n extendParams({\n lazy: {\n checkInView: false,\n enabled: false,\n loadPrevNext: false,\n loadPrevNextAmount: 1,\n loadOnTransitionStart: false,\n scrollingElement: '',\n elementClass: 'swiper-lazy',\n loadingClass: 'swiper-lazy-loading',\n loadedClass: 'swiper-lazy-loaded',\n preloaderClass: 'swiper-lazy-preloader',\n },\n });\n swiper.lazy = {};\n let scrollHandlerAttached = false;\n let initialImageLoaded = false;\n\n function loadInSlide(index, loadInDuplicate = true) {\n const params = swiper.params.lazy;\n if (typeof index === 'undefined') return;\n if (swiper.slides.length === 0) return;\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n const $slideEl = isVirtual\n ? swiper.$wrapperEl.children(`.${swiper.params.slideClass}[data-swiper-slide-index=\"${index}\"]`)\n : swiper.slides.eq(index);\n const $images = $slideEl.find(\n `.${params.elementClass}:not(.${params.loadedClass}):not(.${params.loadingClass})`,\n );\n\n if (\n $slideEl.hasClass(params.elementClass) &&\n !$slideEl.hasClass(params.loadedClass) &&\n !$slideEl.hasClass(params.loadingClass)\n ) {\n $images.push($slideEl[0]);\n }\n\n if ($images.length === 0) return;\n $images.each((imageEl) => {\n const $imageEl = $(imageEl);\n $imageEl.addClass(params.loadingClass);\n const background = $imageEl.attr('data-background');\n const src = $imageEl.attr('data-src');\n const srcset = $imageEl.attr('data-srcset');\n const sizes = $imageEl.attr('data-sizes');\n const $pictureEl = $imageEl.parent('picture');\n swiper.loadImage($imageEl[0], src || background, srcset, sizes, false, () => {\n if (\n typeof swiper === 'undefined' ||\n swiper === null ||\n !swiper ||\n (swiper && !swiper.params) ||\n swiper.destroyed\n )\n return;\n\n if (background) {\n $imageEl.css('background-image', `url(\"${background}\")`);\n $imageEl.removeAttr('data-background');\n } else {\n if (srcset) {\n $imageEl.attr('srcset', srcset);\n $imageEl.removeAttr('data-srcset');\n }\n\n if (sizes) {\n $imageEl.attr('sizes', sizes);\n $imageEl.removeAttr('data-sizes');\n }\n\n if ($pictureEl.length) {\n $pictureEl.children('source').each((sourceEl) => {\n const $source = $(sourceEl);\n\n if ($source.attr('data-srcset')) {\n $source.attr('srcset', $source.attr('data-srcset'));\n $source.removeAttr('data-srcset');\n }\n });\n }\n\n if (src) {\n $imageEl.attr('src', src);\n $imageEl.removeAttr('data-src');\n }\n }\n\n $imageEl.addClass(params.loadedClass).removeClass(params.loadingClass);\n $slideEl.find(`.${params.preloaderClass}`).remove();\n\n if (swiper.params.loop && loadInDuplicate) {\n const slideOriginalIndex = $slideEl.attr('data-swiper-slide-index');\n\n if ($slideEl.hasClass(swiper.params.slideDuplicateClass)) {\n const originalSlide = swiper.$wrapperEl.children(\n `[data-swiper-slide-index=\"${slideOriginalIndex}\"]:not(.${swiper.params.slideDuplicateClass})`,\n );\n loadInSlide(originalSlide.index(), false);\n } else {\n const duplicatedSlide = swiper.$wrapperEl.children(\n `.${swiper.params.slideDuplicateClass}[data-swiper-slide-index=\"${slideOriginalIndex}\"]`,\n );\n loadInSlide(duplicatedSlide.index(), false);\n }\n }\n\n emit('lazyImageReady', $slideEl[0], $imageEl[0]);\n\n if (swiper.params.autoHeight) {\n swiper.updateAutoHeight();\n }\n });\n emit('lazyImageLoad', $slideEl[0], $imageEl[0]);\n });\n }\n\n function load() {\n const {$wrapperEl, params: swiperParams, slides, activeIndex} = swiper;\n const isVirtual = swiper.virtual && swiperParams.virtual.enabled;\n const params = swiperParams.lazy;\n let slidesPerView = swiperParams.slidesPerView;\n\n if (slidesPerView === 'auto') {\n slidesPerView = 0;\n }\n\n function slideExist(index) {\n if (isVirtual) {\n if ($wrapperEl.children(`.${swiperParams.slideClass}[data-swiper-slide-index=\"${index}\"]`).length) {\n return true;\n }\n } else if (slides[index]) return true;\n\n return false;\n }\n\n function slideIndex(slideEl) {\n if (isVirtual) {\n return $(slideEl).attr('data-swiper-slide-index');\n }\n\n return $(slideEl).index();\n }\n\n if (!initialImageLoaded) initialImageLoaded = true;\n\n if (swiper.params.watchSlidesProgress) {\n $wrapperEl.children(`.${swiperParams.slideVisibleClass}`).each((slideEl) => {\n const index = isVirtual ? $(slideEl).attr('data-swiper-slide-index') : $(slideEl).index();\n loadInSlide(index);\n });\n } else if (slidesPerView > 1) {\n for (let i = activeIndex; i < activeIndex + slidesPerView; i += 1) {\n if (slideExist(i)) loadInSlide(i);\n }\n } else {\n loadInSlide(activeIndex);\n }\n\n if (params.loadPrevNext) {\n if (slidesPerView > 1 || (params.loadPrevNextAmount && params.loadPrevNextAmount > 1)) {\n const amount = params.loadPrevNextAmount;\n const spv = slidesPerView;\n const maxIndex = Math.min(activeIndex + spv + Math.max(amount, spv), slides.length);\n const minIndex = Math.max(activeIndex - Math.max(spv, amount), 0); // Next Slides\n\n for (let i = activeIndex + slidesPerView; i < maxIndex; i += 1) {\n if (slideExist(i)) loadInSlide(i);\n } // Prev Slides\n\n for (let i = minIndex; i < activeIndex; i += 1) {\n if (slideExist(i)) loadInSlide(i);\n }\n } else {\n const nextSlide = $wrapperEl.children(`.${swiperParams.slideNextClass}`);\n if (nextSlide.length > 0) loadInSlide(slideIndex(nextSlide));\n const prevSlide = $wrapperEl.children(`.${swiperParams.slidePrevClass}`);\n if (prevSlide.length > 0) loadInSlide(slideIndex(prevSlide));\n }\n }\n }\n\n function checkInViewOnLoad() {\n const window = getWindow();\n if (!swiper || swiper.destroyed) return;\n const $scrollElement = swiper.params.lazy.scrollingElement ? $(swiper.params.lazy.scrollingElement) : $(window);\n const isWindow = $scrollElement[0] === window;\n const scrollElementWidth = isWindow ? window.innerWidth : $scrollElement[0].offsetWidth;\n const scrollElementHeight = isWindow ? window.innerHeight : $scrollElement[0].offsetHeight;\n const swiperOffset = swiper.$el.offset();\n const {rtlTranslate: rtl} = swiper;\n let inView = false;\n if (rtl) swiperOffset.left -= swiper.$el[0].scrollLeft;\n const swiperCoord = [\n [swiperOffset.left, swiperOffset.top],\n [swiperOffset.left + swiper.width, swiperOffset.top],\n [swiperOffset.left, swiperOffset.top + swiper.height],\n [swiperOffset.left + swiper.width, swiperOffset.top + swiper.height],\n ];\n\n for (let i = 0; i < swiperCoord.length; i += 1) {\n const point = swiperCoord[i];\n\n if (point[0] >= 0 && point[0] <= scrollElementWidth && point[1] >= 0 && point[1] <= scrollElementHeight) {\n if (point[0] === 0 && point[1] === 0) continue; // eslint-disable-line\n\n inView = true;\n }\n }\n\n const passiveListener =\n swiper.touchEvents.start === 'touchstart' && swiper.support.passiveListener && swiper.params.passiveListeners\n ? {\n passive: true,\n capture: false,\n }\n : false;\n\n if (inView) {\n load();\n $scrollElement.off('scroll', checkInViewOnLoad, passiveListener);\n } else if (!scrollHandlerAttached) {\n scrollHandlerAttached = true;\n $scrollElement.on('scroll', checkInViewOnLoad, passiveListener);\n }\n }\n\n on('beforeInit', () => {\n if (swiper.params.lazy.enabled && swiper.params.preloadImages) {\n swiper.params.preloadImages = false;\n }\n });\n on('init', () => {\n if (swiper.params.lazy.enabled) {\n if (swiper.params.lazy.checkInView) {\n checkInViewOnLoad();\n } else {\n load();\n }\n }\n });\n on('scroll', () => {\n if (swiper.params.freeMode && swiper.params.freeMode.enabled && !swiper.params.freeMode.sticky) {\n load();\n }\n });\n on('scrollbarDragMove resize _freeModeNoMomentumRelease', () => {\n if (swiper.params.lazy.enabled) {\n if (swiper.params.lazy.checkInView) {\n checkInViewOnLoad();\n } else {\n load();\n }\n }\n });\n on('transitionStart', () => {\n if (swiper.params.lazy.enabled) {\n if (\n swiper.params.lazy.loadOnTransitionStart ||\n (!swiper.params.lazy.loadOnTransitionStart && !initialImageLoaded)\n ) {\n if (swiper.params.lazy.checkInView) {\n checkInViewOnLoad();\n } else {\n load();\n }\n }\n }\n });\n on('transitionEnd', () => {\n if (swiper.params.lazy.enabled && !swiper.params.lazy.loadOnTransitionStart) {\n if (swiper.params.lazy.checkInView) {\n checkInViewOnLoad();\n } else {\n load();\n }\n }\n });\n on('slideChange', () => {\n const {lazy, cssMode, watchSlidesProgress, touchReleaseOnEdges, resistanceRatio} = swiper.params;\n\n if (lazy.enabled && (cssMode || (watchSlidesProgress && (touchReleaseOnEdges || resistanceRatio === 0)))) {\n load();\n }\n });\n Object.assign(swiper.lazy, {\n load,\n loadInSlide,\n });\n }\n\n /* eslint no-bitwise: [\"error\", { \"allow\": [\">>\"] }] */\n function Controller({swiper, extendParams, on}) {\n extendParams({\n controller: {\n control: undefined,\n inverse: false,\n by: 'slide', // or 'container'\n },\n });\n swiper.controller = {\n control: undefined,\n };\n\n function LinearSpline(x, y) {\n const binarySearch = (function search() {\n let maxIndex;\n let minIndex;\n let guess;\n return (array, val) => {\n minIndex = -1;\n maxIndex = array.length;\n\n while (maxIndex - minIndex > 1) {\n guess = (maxIndex + minIndex) >> 1;\n\n if (array[guess] <= val) {\n minIndex = guess;\n } else {\n maxIndex = guess;\n }\n }\n\n return maxIndex;\n };\n })();\n\n this.x = x;\n this.y = y;\n this.lastIndex = x.length - 1; // Given an x value (x2), return the expected y2 value:\n // (x1,y1) is the known point before given value,\n // (x3,y3) is the known point after given value.\n\n let i1;\n let i3;\n\n this.interpolate = function interpolate(x2) {\n if (!x2) return 0; // Get the indexes of x1 and x3 (the array indexes before and after given x2):\n\n i3 = binarySearch(this.x, x2);\n i1 = i3 - 1; // We have our indexes i1 & i3, so we can calculate already:\n // y2 := ((x2−x1) × (y3−y1)) ÷ (x3−x1) + y1\n\n return ((x2 - this.x[i1]) * (this.y[i3] - this.y[i1])) / (this.x[i3] - this.x[i1]) + this.y[i1];\n };\n\n return this;\n } // xxx: for now i will just save one spline function to to\n\n function getInterpolateFunction(c) {\n if (!swiper.controller.spline) {\n swiper.controller.spline = swiper.params.loop\n ? new LinearSpline(swiper.slidesGrid, c.slidesGrid)\n : new LinearSpline(swiper.snapGrid, c.snapGrid);\n }\n }\n\n function setTranslate(_t, byController) {\n const controlled = swiper.controller.control;\n let multiplier;\n let controlledTranslate;\n const Swiper = swiper.constructor;\n\n function setControlledTranslate(c) {\n // this will create an Interpolate function based on the snapGrids\n // x is the Grid of the scrolled scroller and y will be the controlled scroller\n // it makes sense to create this only once and recall it for the interpolation\n // the function does a lot of value caching for performance\n const translate = swiper.rtlTranslate ? -swiper.translate : swiper.translate;\n\n if (swiper.params.controller.by === 'slide') {\n getInterpolateFunction(c); // i am not sure why the values have to be multiplicated this way, tried to invert the snapGrid\n // but it did not work out\n\n controlledTranslate = -swiper.controller.spline.interpolate(-translate);\n }\n\n if (!controlledTranslate || swiper.params.controller.by === 'container') {\n multiplier = (c.maxTranslate() - c.minTranslate()) / (swiper.maxTranslate() - swiper.minTranslate());\n controlledTranslate = (translate - swiper.minTranslate()) * multiplier + c.minTranslate();\n }\n\n if (swiper.params.controller.inverse) {\n controlledTranslate = c.maxTranslate() - controlledTranslate;\n }\n\n c.updateProgress(controlledTranslate);\n c.setTranslate(controlledTranslate, swiper);\n c.updateActiveIndex();\n c.updateSlidesClasses();\n }\n\n if (Array.isArray(controlled)) {\n for (let i = 0; i < controlled.length; i += 1) {\n if (controlled[i] !== byController && controlled[i] instanceof Swiper) {\n setControlledTranslate(controlled[i]);\n }\n }\n } else if (controlled instanceof Swiper && byController !== controlled) {\n setControlledTranslate(controlled);\n }\n }\n\n function setTransition(duration, byController) {\n const Swiper = swiper.constructor;\n const controlled = swiper.controller.control;\n let i;\n\n function setControlledTransition(c) {\n c.setTransition(duration, swiper);\n\n if (duration !== 0) {\n c.transitionStart();\n\n if (c.params.autoHeight) {\n nextTick(() => {\n c.updateAutoHeight();\n });\n }\n\n c.$wrapperEl.transitionEnd(() => {\n if (!controlled) return;\n\n if (c.params.loop && swiper.params.controller.by === 'slide') {\n c.loopFix();\n }\n\n c.transitionEnd();\n });\n }\n }\n\n if (Array.isArray(controlled)) {\n for (i = 0; i < controlled.length; i += 1) {\n if (controlled[i] !== byController && controlled[i] instanceof Swiper) {\n setControlledTransition(controlled[i]);\n }\n }\n } else if (controlled instanceof Swiper && byController !== controlled) {\n setControlledTransition(controlled);\n }\n }\n\n function removeSpline() {\n if (!swiper.controller.control) return;\n\n if (swiper.controller.spline) {\n swiper.controller.spline = undefined;\n delete swiper.controller.spline;\n }\n }\n\n on('beforeInit', () => {\n swiper.controller.control = swiper.params.controller.control;\n });\n on('update', () => {\n removeSpline();\n });\n on('resize', () => {\n removeSpline();\n });\n on('observerUpdate', () => {\n removeSpline();\n });\n on('setTranslate', (_s, translate, byController) => {\n if (!swiper.controller.control) return;\n swiper.controller.setTranslate(translate, byController);\n });\n on('setTransition', (_s, duration, byController) => {\n if (!swiper.controller.control) return;\n swiper.controller.setTransition(duration, byController);\n });\n Object.assign(swiper.controller, {\n setTranslate,\n setTransition,\n });\n }\n\n function A11y({swiper, extendParams, on}) {\n extendParams({\n a11y: {\n enabled: true,\n notificationClass: 'swiper-notification',\n prevSlideMessage: 'Previous slide',\n nextSlideMessage: 'Next slide',\n firstSlideMessage: 'This is the first slide',\n lastSlideMessage: 'This is the last slide',\n paginationBulletMessage: 'Go to slide {{index}}',\n slideLabelMessage: '{{index}} / {{slidesLength}}',\n containerMessage: null,\n containerRoleDescriptionMessage: null,\n itemRoleDescriptionMessage: null,\n slideRole: 'group',\n },\n });\n let liveRegion = null;\n\n function notify(message) {\n const notification = liveRegion;\n if (notification.length === 0) return;\n notification.html('');\n notification.html(message);\n }\n\n function getRandomNumber(size = 16) {\n const randomChar = () => Math.round(16 * Math.random()).toString(16);\n\n return 'x'.repeat(size).replace(/x/g, randomChar);\n }\n\n function makeElFocusable($el) {\n $el.attr('tabIndex', '0');\n }\n\n function makeElNotFocusable($el) {\n $el.attr('tabIndex', '-1');\n }\n\n function addElRole($el, role) {\n $el.attr('role', role);\n }\n\n function addElRoleDescription($el, description) {\n $el.attr('aria-roledescription', description);\n }\n\n function addElControls($el, controls) {\n $el.attr('aria-controls', controls);\n }\n\n function addElLabel($el, label) {\n $el.attr('aria-label', label);\n }\n\n function addElId($el, id) {\n $el.attr('id', id);\n }\n\n function addElLive($el, live) {\n $el.attr('aria-live', live);\n }\n\n function disableEl($el) {\n $el.attr('aria-disabled', true);\n }\n\n function enableEl($el) {\n $el.attr('aria-disabled', false);\n }\n\n function onEnterOrSpaceKey(e) {\n if (e.keyCode !== 13 && e.keyCode !== 32) return;\n const params = swiper.params.a11y;\n const $targetEl = $(e.target);\n\n if (swiper.navigation && swiper.navigation.$nextEl && $targetEl.is(swiper.navigation.$nextEl)) {\n if (!(swiper.isEnd && !swiper.params.loop)) {\n swiper.slideNext();\n }\n\n if (swiper.isEnd) {\n notify(params.lastSlideMessage);\n } else {\n notify(params.nextSlideMessage);\n }\n }\n\n if (swiper.navigation && swiper.navigation.$prevEl && $targetEl.is(swiper.navigation.$prevEl)) {\n if (!(swiper.isBeginning && !swiper.params.loop)) {\n swiper.slidePrev();\n }\n\n if (swiper.isBeginning) {\n notify(params.firstSlideMessage);\n } else {\n notify(params.prevSlideMessage);\n }\n }\n\n if (swiper.pagination && $targetEl.is(classesToSelector(swiper.params.pagination.bulletClass))) {\n $targetEl[0].click();\n }\n }\n\n function updateNavigation() {\n if (swiper.params.loop || swiper.params.rewind || !swiper.navigation) return;\n const {$nextEl, $prevEl} = swiper.navigation;\n\n if ($prevEl && $prevEl.length > 0) {\n if (swiper.isBeginning) {\n disableEl($prevEl);\n makeElNotFocusable($prevEl);\n } else {\n enableEl($prevEl);\n makeElFocusable($prevEl);\n }\n }\n\n if ($nextEl && $nextEl.length > 0) {\n if (swiper.isEnd) {\n disableEl($nextEl);\n makeElNotFocusable($nextEl);\n } else {\n enableEl($nextEl);\n makeElFocusable($nextEl);\n }\n }\n }\n\n function hasPagination() {\n return swiper.pagination && swiper.pagination.bullets && swiper.pagination.bullets.length;\n }\n\n function hasClickablePagination() {\n return hasPagination() && swiper.params.pagination.clickable;\n }\n\n function updatePagination() {\n const params = swiper.params.a11y;\n if (!hasPagination()) return;\n swiper.pagination.bullets.each((bulletEl) => {\n const $bulletEl = $(bulletEl);\n\n if (swiper.params.pagination.clickable) {\n makeElFocusable($bulletEl);\n\n if (!swiper.params.pagination.renderBullet) {\n addElRole($bulletEl, 'button');\n addElLabel($bulletEl, params.paginationBulletMessage.replace(/\\{\\{index\\}\\}/, $bulletEl.index() + 1));\n }\n }\n\n if ($bulletEl.is(`.${swiper.params.pagination.bulletActiveClass}`)) {\n $bulletEl.attr('aria-current', 'true');\n } else {\n $bulletEl.removeAttr('aria-current');\n }\n });\n }\n\n const initNavEl = ($el, wrapperId, message) => {\n makeElFocusable($el);\n\n if ($el[0].tagName !== 'BUTTON') {\n addElRole($el, 'button');\n $el.on('keydown', onEnterOrSpaceKey);\n }\n\n addElLabel($el, message);\n addElControls($el, wrapperId);\n };\n\n function init() {\n const params = swiper.params.a11y;\n swiper.$el.append(liveRegion); // Container\n\n const $containerEl = swiper.$el;\n\n if (params.containerRoleDescriptionMessage) {\n addElRoleDescription($containerEl, params.containerRoleDescriptionMessage);\n }\n\n if (params.containerMessage) {\n addElLabel($containerEl, params.containerMessage);\n } // Wrapper\n\n const $wrapperEl = swiper.$wrapperEl;\n const wrapperId = $wrapperEl.attr('id') || `swiper-wrapper-${getRandomNumber(16)}`;\n const live = swiper.params.autoplay && swiper.params.autoplay.enabled ? 'off' : 'polite';\n addElId($wrapperEl, wrapperId);\n addElLive($wrapperEl, live); // Slide\n\n if (params.itemRoleDescriptionMessage) {\n addElRoleDescription($(swiper.slides), params.itemRoleDescriptionMessage);\n }\n\n addElRole($(swiper.slides), params.slideRole);\n const slidesLength = swiper.params.loop\n ? swiper.slides.filter((el) => !el.classList.contains(swiper.params.slideDuplicateClass)).length\n : swiper.slides.length;\n swiper.slides.each((slideEl, index) => {\n const $slideEl = $(slideEl);\n const slideIndex = swiper.params.loop ? parseInt($slideEl.attr('data-swiper-slide-index'), 10) : index;\n const ariaLabelMessage = params.slideLabelMessage\n .replace(/\\{\\{index\\}\\}/, slideIndex + 1)\n .replace(/\\{\\{slidesLength\\}\\}/, slidesLength);\n addElLabel($slideEl, ariaLabelMessage);\n }); // Navigation\n\n let $nextEl;\n let $prevEl;\n\n if (swiper.navigation && swiper.navigation.$nextEl) {\n $nextEl = swiper.navigation.$nextEl;\n }\n\n if (swiper.navigation && swiper.navigation.$prevEl) {\n $prevEl = swiper.navigation.$prevEl;\n }\n\n if ($nextEl && $nextEl.length) {\n initNavEl($nextEl, wrapperId, params.nextSlideMessage);\n }\n\n if ($prevEl && $prevEl.length) {\n initNavEl($prevEl, wrapperId, params.prevSlideMessage);\n } // Pagination\n\n if (hasClickablePagination()) {\n swiper.pagination.$el.on(\n 'keydown',\n classesToSelector(swiper.params.pagination.bulletClass),\n onEnterOrSpaceKey,\n );\n }\n }\n\n function destroy() {\n if (liveRegion && liveRegion.length > 0) liveRegion.remove();\n let $nextEl;\n let $prevEl;\n\n if (swiper.navigation && swiper.navigation.$nextEl) {\n $nextEl = swiper.navigation.$nextEl;\n }\n\n if (swiper.navigation && swiper.navigation.$prevEl) {\n $prevEl = swiper.navigation.$prevEl;\n }\n\n if ($nextEl) {\n $nextEl.off('keydown', onEnterOrSpaceKey);\n }\n\n if ($prevEl) {\n $prevEl.off('keydown', onEnterOrSpaceKey);\n } // Pagination\n\n if (hasClickablePagination()) {\n swiper.pagination.$el.off(\n 'keydown',\n classesToSelector(swiper.params.pagination.bulletClass),\n onEnterOrSpaceKey,\n );\n }\n }\n\n on('beforeInit', () => {\n liveRegion = $(\n ``,\n );\n });\n on('afterInit', () => {\n if (!swiper.params.a11y.enabled) return;\n init();\n updateNavigation();\n });\n on('toEdge', () => {\n if (!swiper.params.a11y.enabled) return;\n updateNavigation();\n });\n on('fromEdge', () => {\n if (!swiper.params.a11y.enabled) return;\n updateNavigation();\n });\n on('paginationUpdate', () => {\n if (!swiper.params.a11y.enabled) return;\n updatePagination();\n });\n on('destroy', () => {\n if (!swiper.params.a11y.enabled) return;\n destroy();\n });\n }\n\n function History({swiper, extendParams, on}) {\n extendParams({\n history: {\n enabled: false,\n root: '',\n replaceState: false,\n key: 'slides',\n },\n });\n let initialized = false;\n let paths = {};\n\n const slugify = (text) => {\n return text\n .toString()\n .replace(/\\s+/g, '-')\n .replace(/[^\\w-]+/g, '')\n .replace(/--+/g, '-')\n .replace(/^-+/, '')\n .replace(/-+$/, '');\n };\n\n const getPathValues = (urlOverride) => {\n const window = getWindow();\n let location;\n\n if (urlOverride) {\n location = new URL(urlOverride);\n } else {\n location = window.location;\n }\n\n const pathArray = location.pathname\n .slice(1)\n .split('/')\n .filter((part) => part !== '');\n const total = pathArray.length;\n const key = pathArray[total - 2];\n const value = pathArray[total - 1];\n return {\n key,\n value,\n };\n };\n\n const setHistory = (key, index) => {\n const window = getWindow();\n if (!initialized || !swiper.params.history.enabled) return;\n let location;\n\n if (swiper.params.url) {\n location = new URL(swiper.params.url);\n } else {\n location = window.location;\n }\n\n const slide = swiper.slides.eq(index);\n let value = slugify(slide.attr('data-history'));\n\n if (swiper.params.history.root.length > 0) {\n let root = swiper.params.history.root;\n if (root[root.length - 1] === '/') root = root.slice(0, root.length - 1);\n value = `${root}/${key}/${value}`;\n } else if (!location.pathname.includes(key)) {\n value = `${key}/${value}`;\n }\n\n const currentState = window.history.state;\n\n if (currentState && currentState.value === value) {\n return;\n }\n\n if (swiper.params.history.replaceState) {\n window.history.replaceState(\n {\n value,\n },\n null,\n value,\n );\n } else {\n window.history.pushState(\n {\n value,\n },\n null,\n value,\n );\n }\n };\n\n const scrollToSlide = (speed, value, runCallbacks) => {\n if (value) {\n for (let i = 0, length = swiper.slides.length; i < length; i += 1) {\n const slide = swiper.slides.eq(i);\n const slideHistory = slugify(slide.attr('data-history'));\n\n if (slideHistory === value && !slide.hasClass(swiper.params.slideDuplicateClass)) {\n const index = slide.index();\n swiper.slideTo(index, speed, runCallbacks);\n }\n }\n } else {\n swiper.slideTo(0, speed, runCallbacks);\n }\n };\n\n const setHistoryPopState = () => {\n paths = getPathValues(swiper.params.url);\n scrollToSlide(swiper.params.speed, swiper.paths.value, false);\n };\n\n const init = () => {\n const window = getWindow();\n if (!swiper.params.history) return;\n\n if (!window.history || !window.history.pushState) {\n swiper.params.history.enabled = false;\n swiper.params.hashNavigation.enabled = true;\n return;\n }\n\n initialized = true;\n paths = getPathValues(swiper.params.url);\n if (!paths.key && !paths.value) return;\n scrollToSlide(0, paths.value, swiper.params.runCallbacksOnInit);\n\n if (!swiper.params.history.replaceState) {\n window.addEventListener('popstate', setHistoryPopState);\n }\n };\n\n const destroy = () => {\n const window = getWindow();\n\n if (!swiper.params.history.replaceState) {\n window.removeEventListener('popstate', setHistoryPopState);\n }\n };\n\n on('init', () => {\n if (swiper.params.history.enabled) {\n init();\n }\n });\n on('destroy', () => {\n if (swiper.params.history.enabled) {\n destroy();\n }\n });\n on('transitionEnd _freeModeNoMomentumRelease', () => {\n if (initialized) {\n setHistory(swiper.params.history.key, swiper.activeIndex);\n }\n });\n on('slideChange', () => {\n if (initialized && swiper.params.cssMode) {\n setHistory(swiper.params.history.key, swiper.activeIndex);\n }\n });\n }\n\n function HashNavigation({swiper, extendParams, emit, on}) {\n let initialized = false;\n const document = getDocument();\n const window = getWindow();\n extendParams({\n hashNavigation: {\n enabled: false,\n replaceState: false,\n watchState: false,\n },\n });\n\n const onHashChange = () => {\n emit('hashChange');\n const newHash = document.location.hash.replace('#', '');\n const activeSlideHash = swiper.slides.eq(swiper.activeIndex).attr('data-hash');\n\n if (newHash !== activeSlideHash) {\n const newIndex = swiper.$wrapperEl.children(`.${swiper.params.slideClass}[data-hash=\"${newHash}\"]`).index();\n if (typeof newIndex === 'undefined') return;\n swiper.slideTo(newIndex);\n }\n };\n\n const setHash = () => {\n if (!initialized || !swiper.params.hashNavigation.enabled) return;\n\n if (swiper.params.hashNavigation.replaceState && window.history && window.history.replaceState) {\n window.history.replaceState(null, null, `#${swiper.slides.eq(swiper.activeIndex).attr('data-hash')}` || '');\n emit('hashSet');\n } else {\n const slide = swiper.slides.eq(swiper.activeIndex);\n const hash = slide.attr('data-hash') || slide.attr('data-history');\n document.location.hash = hash || '';\n emit('hashSet');\n }\n };\n\n const init = () => {\n if (!swiper.params.hashNavigation.enabled || (swiper.params.history && swiper.params.history.enabled)) return;\n initialized = true;\n const hash = document.location.hash.replace('#', '');\n\n if (hash) {\n const speed = 0;\n\n for (let i = 0, length = swiper.slides.length; i < length; i += 1) {\n const slide = swiper.slides.eq(i);\n const slideHash = slide.attr('data-hash') || slide.attr('data-history');\n\n if (slideHash === hash && !slide.hasClass(swiper.params.slideDuplicateClass)) {\n const index = slide.index();\n swiper.slideTo(index, speed, swiper.params.runCallbacksOnInit, true);\n }\n }\n }\n\n if (swiper.params.hashNavigation.watchState) {\n $(window).on('hashchange', onHashChange);\n }\n };\n\n const destroy = () => {\n if (swiper.params.hashNavigation.watchState) {\n $(window).off('hashchange', onHashChange);\n }\n };\n\n on('init', () => {\n if (swiper.params.hashNavigation.enabled) {\n init();\n }\n });\n on('destroy', () => {\n if (swiper.params.hashNavigation.enabled) {\n destroy();\n }\n });\n on('transitionEnd _freeModeNoMomentumRelease', () => {\n if (initialized) {\n setHash();\n }\n });\n on('slideChange', () => {\n if (initialized && swiper.params.cssMode) {\n setHash();\n }\n });\n }\n\n /* eslint no-underscore-dangle: \"off\" */\n function Autoplay({swiper, extendParams, on, emit}) {\n let timeout;\n swiper.autoplay = {\n running: false,\n paused: false,\n };\n extendParams({\n autoplay: {\n enabled: false,\n delay: 3000,\n waitForTransition: true,\n disableOnInteraction: true,\n stopOnLastSlide: false,\n reverseDirection: false,\n pauseOnMouseEnter: false,\n },\n });\n\n function run() {\n const $activeSlideEl = swiper.slides.eq(swiper.activeIndex);\n let delay = swiper.params.autoplay.delay;\n\n if ($activeSlideEl.attr('data-swiper-autoplay')) {\n delay = $activeSlideEl.attr('data-swiper-autoplay') || swiper.params.autoplay.delay;\n }\n\n clearTimeout(timeout);\n timeout = nextTick(() => {\n let autoplayResult;\n\n if (swiper.params.autoplay.reverseDirection) {\n if (swiper.params.loop) {\n swiper.loopFix();\n autoplayResult = swiper.slidePrev(swiper.params.speed, true, true);\n emit('autoplay');\n } else if (!swiper.isBeginning) {\n autoplayResult = swiper.slidePrev(swiper.params.speed, true, true);\n emit('autoplay');\n } else if (!swiper.params.autoplay.stopOnLastSlide) {\n autoplayResult = swiper.slideTo(swiper.slides.length - 1, swiper.params.speed, true, true);\n emit('autoplay');\n } else {\n stop();\n }\n } else if (swiper.params.loop) {\n swiper.loopFix();\n autoplayResult = swiper.slideNext(swiper.params.speed, true, true);\n emit('autoplay');\n } else if (!swiper.isEnd) {\n autoplayResult = swiper.slideNext(swiper.params.speed, true, true);\n emit('autoplay');\n } else if (!swiper.params.autoplay.stopOnLastSlide) {\n autoplayResult = swiper.slideTo(0, swiper.params.speed, true, true);\n emit('autoplay');\n } else {\n stop();\n }\n\n if (swiper.params.cssMode && swiper.autoplay.running) run();\n else if (autoplayResult === false) {\n run();\n }\n }, delay);\n }\n\n function start() {\n if (typeof timeout !== 'undefined') return false;\n if (swiper.autoplay.running) return false;\n swiper.autoplay.running = true;\n emit('autoplayStart');\n run();\n return true;\n }\n\n function stop() {\n if (!swiper.autoplay.running) return false;\n if (typeof timeout === 'undefined') return false;\n\n if (timeout) {\n clearTimeout(timeout);\n timeout = undefined;\n }\n\n swiper.autoplay.running = false;\n emit('autoplayStop');\n return true;\n }\n\n function pause(speed) {\n if (!swiper.autoplay.running) return;\n if (swiper.autoplay.paused) return;\n if (timeout) clearTimeout(timeout);\n swiper.autoplay.paused = true;\n\n if (speed === 0 || !swiper.params.autoplay.waitForTransition) {\n swiper.autoplay.paused = false;\n run();\n } else {\n ['transitionend', 'webkitTransitionEnd'].forEach((event) => {\n swiper.$wrapperEl[0].addEventListener(event, onTransitionEnd);\n });\n }\n }\n\n function onVisibilityChange() {\n const document = getDocument();\n\n if (document.visibilityState === 'hidden' && swiper.autoplay.running) {\n pause();\n }\n\n if (document.visibilityState === 'visible' && swiper.autoplay.paused) {\n run();\n swiper.autoplay.paused = false;\n }\n }\n\n function onTransitionEnd(e) {\n if (!swiper || swiper.destroyed || !swiper.$wrapperEl) return;\n if (e.target !== swiper.$wrapperEl[0]) return;\n ['transitionend', 'webkitTransitionEnd'].forEach((event) => {\n swiper.$wrapperEl[0].removeEventListener(event, onTransitionEnd);\n });\n swiper.autoplay.paused = false;\n\n if (!swiper.autoplay.running) {\n stop();\n } else {\n run();\n }\n }\n\n function onMouseEnter() {\n if (swiper.params.autoplay.disableOnInteraction) {\n stop();\n } else {\n pause();\n }\n\n ['transitionend', 'webkitTransitionEnd'].forEach((event) => {\n swiper.$wrapperEl[0].removeEventListener(event, onTransitionEnd);\n });\n }\n\n function onMouseLeave() {\n if (swiper.params.autoplay.disableOnInteraction) {\n return;\n }\n\n swiper.autoplay.paused = false;\n run();\n }\n\n function attachMouseEvents() {\n if (swiper.params.autoplay.pauseOnMouseEnter) {\n swiper.$el.on('mouseenter', onMouseEnter);\n swiper.$el.on('mouseleave', onMouseLeave);\n }\n }\n\n function detachMouseEvents() {\n swiper.$el.off('mouseenter', onMouseEnter);\n swiper.$el.off('mouseleave', onMouseLeave);\n }\n\n on('init', () => {\n if (swiper.params.autoplay.enabled) {\n start();\n const document = getDocument();\n document.addEventListener('visibilitychange', onVisibilityChange);\n attachMouseEvents();\n }\n });\n on('beforeTransitionStart', (_s, speed, internal) => {\n if (swiper.autoplay.running) {\n if (internal || !swiper.params.autoplay.disableOnInteraction) {\n swiper.autoplay.pause(speed);\n } else {\n stop();\n }\n }\n });\n on('sliderFirstMove', () => {\n if (swiper.autoplay.running) {\n if (swiper.params.autoplay.disableOnInteraction) {\n stop();\n } else {\n pause();\n }\n }\n });\n on('touchEnd', () => {\n if (swiper.params.cssMode && swiper.autoplay.paused && !swiper.params.autoplay.disableOnInteraction) {\n run();\n }\n });\n on('destroy', () => {\n detachMouseEvents();\n\n if (swiper.autoplay.running) {\n stop();\n }\n\n const document = getDocument();\n document.removeEventListener('visibilitychange', onVisibilityChange);\n });\n Object.assign(swiper.autoplay, {\n pause,\n run,\n start,\n stop,\n });\n }\n\n function Thumb({swiper, extendParams, on}) {\n extendParams({\n thumbs: {\n swiper: null,\n multipleActiveThumbs: true,\n autoScrollOffset: 0,\n slideThumbActiveClass: 'swiper-slide-thumb-active',\n thumbsContainerClass: 'swiper-thumbs',\n },\n });\n let initialized = false;\n let swiperCreated = false;\n swiper.thumbs = {\n swiper: null,\n };\n\n function onThumbClick() {\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n const clickedIndex = thumbsSwiper.clickedIndex;\n const clickedSlide = thumbsSwiper.clickedSlide;\n if (clickedSlide && $(clickedSlide).hasClass(swiper.params.thumbs.slideThumbActiveClass)) return;\n if (typeof clickedIndex === 'undefined' || clickedIndex === null) return;\n let slideToIndex;\n\n if (thumbsSwiper.params.loop) {\n slideToIndex = parseInt($(thumbsSwiper.clickedSlide).attr('data-swiper-slide-index'), 10);\n } else {\n slideToIndex = clickedIndex;\n }\n\n if (swiper.params.loop) {\n let currentIndex = swiper.activeIndex;\n\n if (swiper.slides.eq(currentIndex).hasClass(swiper.params.slideDuplicateClass)) {\n swiper.loopFix(); // eslint-disable-next-line\n\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n currentIndex = swiper.activeIndex;\n }\n\n const prevIndex = swiper.slides\n .eq(currentIndex)\n .prevAll(`[data-swiper-slide-index=\"${slideToIndex}\"]`)\n .eq(0)\n .index();\n const nextIndex = swiper.slides\n .eq(currentIndex)\n .nextAll(`[data-swiper-slide-index=\"${slideToIndex}\"]`)\n .eq(0)\n .index();\n if (typeof prevIndex === 'undefined') slideToIndex = nextIndex;\n else if (typeof nextIndex === 'undefined') slideToIndex = prevIndex;\n else if (nextIndex - currentIndex < currentIndex - prevIndex) slideToIndex = nextIndex;\n else slideToIndex = prevIndex;\n }\n\n swiper.slideTo(slideToIndex);\n }\n\n function init() {\n const {thumbs: thumbsParams} = swiper.params;\n if (initialized) return false;\n initialized = true;\n const SwiperClass = swiper.constructor;\n\n if (thumbsParams.swiper instanceof SwiperClass) {\n swiper.thumbs.swiper = thumbsParams.swiper;\n Object.assign(swiper.thumbs.swiper.originalParams, {\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n });\n Object.assign(swiper.thumbs.swiper.params, {\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n });\n } else if (isObject(thumbsParams.swiper)) {\n const thumbsSwiperParams = Object.assign({}, thumbsParams.swiper);\n Object.assign(thumbsSwiperParams, {\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n });\n swiper.thumbs.swiper = new SwiperClass(thumbsSwiperParams);\n swiperCreated = true;\n }\n\n swiper.thumbs.swiper.$el.addClass(swiper.params.thumbs.thumbsContainerClass);\n swiper.thumbs.swiper.on('tap', onThumbClick);\n return true;\n }\n\n function update(initial) {\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n const slidesPerView =\n thumbsSwiper.params.slidesPerView === 'auto'\n ? thumbsSwiper.slidesPerViewDynamic()\n : thumbsSwiper.params.slidesPerView;\n const autoScrollOffset = swiper.params.thumbs.autoScrollOffset;\n const useOffset = autoScrollOffset && !thumbsSwiper.params.loop;\n\n if (swiper.realIndex !== thumbsSwiper.realIndex || useOffset) {\n let currentThumbsIndex = thumbsSwiper.activeIndex;\n let newThumbsIndex;\n let direction;\n\n if (thumbsSwiper.params.loop) {\n if (thumbsSwiper.slides.eq(currentThumbsIndex).hasClass(thumbsSwiper.params.slideDuplicateClass)) {\n thumbsSwiper.loopFix(); // eslint-disable-next-line\n\n thumbsSwiper._clientLeft = thumbsSwiper.$wrapperEl[0].clientLeft;\n currentThumbsIndex = thumbsSwiper.activeIndex;\n } // Find actual thumbs index to slide to\n\n const prevThumbsIndex = thumbsSwiper.slides\n .eq(currentThumbsIndex)\n .prevAll(`[data-swiper-slide-index=\"${swiper.realIndex}\"]`)\n .eq(0)\n .index();\n const nextThumbsIndex = thumbsSwiper.slides\n .eq(currentThumbsIndex)\n .nextAll(`[data-swiper-slide-index=\"${swiper.realIndex}\"]`)\n .eq(0)\n .index();\n\n if (typeof prevThumbsIndex === 'undefined') {\n newThumbsIndex = nextThumbsIndex;\n } else if (typeof nextThumbsIndex === 'undefined') {\n newThumbsIndex = prevThumbsIndex;\n } else if (nextThumbsIndex - currentThumbsIndex === currentThumbsIndex - prevThumbsIndex) {\n newThumbsIndex = thumbsSwiper.params.slidesPerGroup > 1 ? nextThumbsIndex : currentThumbsIndex;\n } else if (nextThumbsIndex - currentThumbsIndex < currentThumbsIndex - prevThumbsIndex) {\n newThumbsIndex = nextThumbsIndex;\n } else {\n newThumbsIndex = prevThumbsIndex;\n }\n\n direction = swiper.activeIndex > swiper.previousIndex ? 'next' : 'prev';\n } else {\n newThumbsIndex = swiper.realIndex;\n direction = newThumbsIndex > swiper.previousIndex ? 'next' : 'prev';\n }\n\n if (useOffset) {\n newThumbsIndex += direction === 'next' ? autoScrollOffset : -1 * autoScrollOffset;\n }\n\n if (thumbsSwiper.visibleSlidesIndexes && thumbsSwiper.visibleSlidesIndexes.indexOf(newThumbsIndex) < 0) {\n if (thumbsSwiper.params.centeredSlides) {\n if (newThumbsIndex > currentThumbsIndex) {\n newThumbsIndex = newThumbsIndex - Math.floor(slidesPerView / 2) + 1;\n } else {\n newThumbsIndex = newThumbsIndex + Math.floor(slidesPerView / 2) - 1;\n }\n } else if (newThumbsIndex > currentThumbsIndex && thumbsSwiper.params.slidesPerGroup === 1);\n\n thumbsSwiper.slideTo(newThumbsIndex, initial ? 0 : undefined);\n }\n } // Activate thumbs\n\n let thumbsToActivate = 1;\n const thumbActiveClass = swiper.params.thumbs.slideThumbActiveClass;\n\n if (swiper.params.slidesPerView > 1 && !swiper.params.centeredSlides) {\n thumbsToActivate = swiper.params.slidesPerView;\n }\n\n if (!swiper.params.thumbs.multipleActiveThumbs) {\n thumbsToActivate = 1;\n }\n\n thumbsToActivate = Math.floor(thumbsToActivate);\n thumbsSwiper.slides.removeClass(thumbActiveClass);\n\n if (thumbsSwiper.params.loop || (thumbsSwiper.params.virtual && thumbsSwiper.params.virtual.enabled)) {\n for (let i = 0; i < thumbsToActivate; i += 1) {\n thumbsSwiper.$wrapperEl\n .children(`[data-swiper-slide-index=\"${swiper.realIndex + i}\"]`)\n .addClass(thumbActiveClass);\n }\n } else {\n for (let i = 0; i < thumbsToActivate; i += 1) {\n thumbsSwiper.slides.eq(swiper.realIndex + i).addClass(thumbActiveClass);\n }\n }\n }\n\n on('beforeInit', () => {\n const {thumbs} = swiper.params;\n if (!thumbs || !thumbs.swiper) return;\n init();\n update(true);\n });\n on('slideChange update resize observerUpdate', () => {\n if (!swiper.thumbs.swiper) return;\n update();\n });\n on('setTransition', (_s, duration) => {\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n thumbsSwiper.setTransition(duration);\n });\n on('beforeDestroy', () => {\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n\n if (swiperCreated && thumbsSwiper) {\n thumbsSwiper.destroy();\n }\n });\n Object.assign(swiper.thumbs, {\n init,\n update,\n });\n }\n\n function freeMode({swiper, extendParams, emit, once}) {\n extendParams({\n freeMode: {\n enabled: false,\n momentum: true,\n momentumRatio: 1,\n momentumBounce: true,\n momentumBounceRatio: 1,\n momentumVelocityRatio: 1,\n sticky: false,\n minimumVelocity: 0.02,\n },\n });\n\n function onTouchMove() {\n const {touchEventsData: data, touches} = swiper; // Velocity\n\n if (data.velocities.length === 0) {\n data.velocities.push({\n position: touches[swiper.isHorizontal() ? 'startX' : 'startY'],\n time: data.touchStartTime,\n });\n }\n\n data.velocities.push({\n position: touches[swiper.isHorizontal() ? 'currentX' : 'currentY'],\n time: now(),\n });\n }\n\n function onTouchEnd({currentPos}) {\n const {params, $wrapperEl, rtlTranslate: rtl, snapGrid, touchEventsData: data} = swiper; // Time diff\n\n const touchEndTime = now();\n const timeDiff = touchEndTime - data.touchStartTime;\n\n if (currentPos < -swiper.minTranslate()) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n\n if (currentPos > -swiper.maxTranslate()) {\n if (swiper.slides.length < snapGrid.length) {\n swiper.slideTo(snapGrid.length - 1);\n } else {\n swiper.slideTo(swiper.slides.length - 1);\n }\n\n return;\n }\n\n if (params.freeMode.momentum) {\n if (data.velocities.length > 1) {\n const lastMoveEvent = data.velocities.pop();\n const velocityEvent = data.velocities.pop();\n const distance = lastMoveEvent.position - velocityEvent.position;\n const time = lastMoveEvent.time - velocityEvent.time;\n swiper.velocity = distance / time;\n swiper.velocity /= 2;\n\n if (Math.abs(swiper.velocity) < params.freeMode.minimumVelocity) {\n swiper.velocity = 0;\n } // this implies that the user stopped moving a finger then released.\n // There would be no events with distance zero, so the last event is stale.\n\n if (time > 150 || now() - lastMoveEvent.time > 300) {\n swiper.velocity = 0;\n }\n } else {\n swiper.velocity = 0;\n }\n\n swiper.velocity *= params.freeMode.momentumVelocityRatio;\n data.velocities.length = 0;\n let momentumDuration = 1000 * params.freeMode.momentumRatio;\n const momentumDistance = swiper.velocity * momentumDuration;\n let newPosition = swiper.translate + momentumDistance;\n if (rtl) newPosition = -newPosition;\n let doBounce = false;\n let afterBouncePosition;\n const bounceAmount = Math.abs(swiper.velocity) * 20 * params.freeMode.momentumBounceRatio;\n let needsLoopFix;\n\n if (newPosition < swiper.maxTranslate()) {\n if (params.freeMode.momentumBounce) {\n if (newPosition + swiper.maxTranslate() < -bounceAmount) {\n newPosition = swiper.maxTranslate() - bounceAmount;\n }\n\n afterBouncePosition = swiper.maxTranslate();\n doBounce = true;\n data.allowMomentumBounce = true;\n } else {\n newPosition = swiper.maxTranslate();\n }\n\n if (params.loop && params.centeredSlides) needsLoopFix = true;\n } else if (newPosition > swiper.minTranslate()) {\n if (params.freeMode.momentumBounce) {\n if (newPosition - swiper.minTranslate() > bounceAmount) {\n newPosition = swiper.minTranslate() + bounceAmount;\n }\n\n afterBouncePosition = swiper.minTranslate();\n doBounce = true;\n data.allowMomentumBounce = true;\n } else {\n newPosition = swiper.minTranslate();\n }\n\n if (params.loop && params.centeredSlides) needsLoopFix = true;\n } else if (params.freeMode.sticky) {\n let nextSlide;\n\n for (let j = 0; j < snapGrid.length; j += 1) {\n if (snapGrid[j] > -newPosition) {\n nextSlide = j;\n break;\n }\n }\n\n if (\n Math.abs(snapGrid[nextSlide] - newPosition) < Math.abs(snapGrid[nextSlide - 1] - newPosition) ||\n swiper.swipeDirection === 'next'\n ) {\n newPosition = snapGrid[nextSlide];\n } else {\n newPosition = snapGrid[nextSlide - 1];\n }\n\n newPosition = -newPosition;\n }\n\n if (needsLoopFix) {\n once('transitionEnd', () => {\n swiper.loopFix();\n });\n } // Fix duration\n\n if (swiper.velocity !== 0) {\n if (rtl) {\n momentumDuration = Math.abs((-newPosition - swiper.translate) / swiper.velocity);\n } else {\n momentumDuration = Math.abs((newPosition - swiper.translate) / swiper.velocity);\n }\n\n if (params.freeMode.sticky) {\n // If freeMode.sticky is active and the user ends a swipe with a slow-velocity\n // event, then durations can be 20+ seconds to slide one (or zero!) slides.\n // It's easy to see this when simulating touch with mouse events. To fix this,\n // limit single-slide swipes to the default slide duration. This also has the\n // nice side effect of matching slide speed if the user stopped moving before\n // lifting finger or mouse vs. moving slowly before lifting the finger/mouse.\n // For faster swipes, also apply limits (albeit higher ones).\n const moveDistance = Math.abs((rtl ? -newPosition : newPosition) - swiper.translate);\n const currentSlideSize = swiper.slidesSizesGrid[swiper.activeIndex];\n\n if (moveDistance < currentSlideSize) {\n momentumDuration = params.speed;\n } else if (moveDistance < 2 * currentSlideSize) {\n momentumDuration = params.speed * 1.5;\n } else {\n momentumDuration = params.speed * 2.5;\n }\n }\n } else if (params.freeMode.sticky) {\n swiper.slideToClosest();\n return;\n }\n\n if (params.freeMode.momentumBounce && doBounce) {\n swiper.updateProgress(afterBouncePosition);\n swiper.setTransition(momentumDuration);\n swiper.setTranslate(newPosition);\n swiper.transitionStart(true, swiper.swipeDirection);\n swiper.animating = true;\n $wrapperEl.transitionEnd(() => {\n if (!swiper || swiper.destroyed || !data.allowMomentumBounce) return;\n emit('momentumBounce');\n swiper.setTransition(params.speed);\n setTimeout(() => {\n swiper.setTranslate(afterBouncePosition);\n $wrapperEl.transitionEnd(() => {\n if (!swiper || swiper.destroyed) return;\n swiper.transitionEnd();\n });\n }, 0);\n });\n } else if (swiper.velocity) {\n emit('_freeModeNoMomentumRelease');\n swiper.updateProgress(newPosition);\n swiper.setTransition(momentumDuration);\n swiper.setTranslate(newPosition);\n swiper.transitionStart(true, swiper.swipeDirection);\n\n if (!swiper.animating) {\n swiper.animating = true;\n $wrapperEl.transitionEnd(() => {\n if (!swiper || swiper.destroyed) return;\n swiper.transitionEnd();\n });\n }\n } else {\n swiper.updateProgress(newPosition);\n }\n\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n } else if (params.freeMode.sticky) {\n swiper.slideToClosest();\n return;\n } else if (params.freeMode) {\n emit('_freeModeNoMomentumRelease');\n }\n\n if (!params.freeMode.momentum || timeDiff >= params.longSwipesMs) {\n swiper.updateProgress();\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n }\n\n Object.assign(swiper, {\n freeMode: {\n onTouchMove,\n onTouchEnd,\n },\n });\n }\n\n function Grid({swiper, extendParams}) {\n extendParams({\n grid: {\n rows: 1,\n fill: 'column',\n },\n });\n let slidesNumberEvenToRows;\n let slidesPerRow;\n let numFullColumns;\n\n const initSlides = (slidesLength) => {\n const {slidesPerView} = swiper.params;\n const {rows, fill} = swiper.params.grid;\n slidesPerRow = slidesNumberEvenToRows / rows;\n numFullColumns = Math.floor(slidesLength / rows);\n\n if (Math.floor(slidesLength / rows) === slidesLength / rows) {\n slidesNumberEvenToRows = slidesLength;\n } else {\n slidesNumberEvenToRows = Math.ceil(slidesLength / rows) * rows;\n }\n\n if (slidesPerView !== 'auto' && fill === 'row') {\n slidesNumberEvenToRows = Math.max(slidesNumberEvenToRows, slidesPerView * rows);\n }\n };\n\n const updateSlide = (i, slide, slidesLength, getDirectionLabel) => {\n const {slidesPerGroup, spaceBetween} = swiper.params;\n const {rows, fill} = swiper.params.grid; // Set slides order\n\n let newSlideOrderIndex;\n let column;\n let row;\n\n if (fill === 'row' && slidesPerGroup > 1) {\n const groupIndex = Math.floor(i / (slidesPerGroup * rows));\n const slideIndexInGroup = i - rows * slidesPerGroup * groupIndex;\n const columnsInGroup =\n groupIndex === 0\n ? slidesPerGroup\n : Math.min(Math.ceil((slidesLength - groupIndex * rows * slidesPerGroup) / rows), slidesPerGroup);\n row = Math.floor(slideIndexInGroup / columnsInGroup);\n column = slideIndexInGroup - row * columnsInGroup + groupIndex * slidesPerGroup;\n newSlideOrderIndex = column + (row * slidesNumberEvenToRows) / rows;\n slide.css({\n '-webkit-order': newSlideOrderIndex,\n order: newSlideOrderIndex,\n });\n } else if (fill === 'column') {\n column = Math.floor(i / rows);\n row = i - column * rows;\n\n if (column > numFullColumns || (column === numFullColumns && row === rows - 1)) {\n row += 1;\n\n if (row >= rows) {\n row = 0;\n column += 1;\n }\n }\n } else {\n row = Math.floor(i / slidesPerRow);\n column = i - row * slidesPerRow;\n }\n\n slide.css(getDirectionLabel('margin-top'), row !== 0 ? spaceBetween && `${spaceBetween}px` : '');\n };\n\n const updateWrapperSize = (slideSize, snapGrid, getDirectionLabel) => {\n const {spaceBetween, centeredSlides, roundLengths} = swiper.params;\n const {rows} = swiper.params.grid;\n swiper.virtualSize = (slideSize + spaceBetween) * slidesNumberEvenToRows;\n swiper.virtualSize = Math.ceil(swiper.virtualSize / rows) - spaceBetween;\n swiper.$wrapperEl.css({\n [getDirectionLabel('width')]: `${swiper.virtualSize + spaceBetween}px`,\n });\n\n if (centeredSlides) {\n snapGrid.splice(0, snapGrid.length);\n const newSlidesGrid = [];\n\n for (let i = 0; i < snapGrid.length; i += 1) {\n let slidesGridItem = snapGrid[i];\n if (roundLengths) slidesGridItem = Math.floor(slidesGridItem);\n if (snapGrid[i] < swiper.virtualSize + snapGrid[0]) newSlidesGrid.push(slidesGridItem);\n }\n\n snapGrid.push(...newSlidesGrid);\n }\n };\n\n swiper.grid = {\n initSlides,\n updateSlide,\n updateWrapperSize,\n };\n }\n\n function appendSlide(slides) {\n const swiper = this;\n const {$wrapperEl, params} = swiper;\n\n if (params.loop) {\n swiper.loopDestroy();\n }\n\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) $wrapperEl.append(slides[i]);\n }\n } else {\n $wrapperEl.append(slides);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n\n if (!params.observer) {\n swiper.update();\n }\n }\n\n function prependSlide(slides) {\n const swiper = this;\n const {params, $wrapperEl, activeIndex} = swiper;\n\n if (params.loop) {\n swiper.loopDestroy();\n }\n\n let newActiveIndex = activeIndex + 1;\n\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) $wrapperEl.prepend(slides[i]);\n }\n\n newActiveIndex = activeIndex + slides.length;\n } else {\n $wrapperEl.prepend(slides);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n\n if (!params.observer) {\n swiper.update();\n }\n\n swiper.slideTo(newActiveIndex, 0, false);\n }\n\n function addSlide(index, slides) {\n const swiper = this;\n const {$wrapperEl, params, activeIndex} = swiper;\n let activeIndexBuffer = activeIndex;\n\n if (params.loop) {\n activeIndexBuffer -= swiper.loopedSlides;\n swiper.loopDestroy();\n swiper.slides = $wrapperEl.children(`.${params.slideClass}`);\n }\n\n const baseLength = swiper.slides.length;\n\n if (index <= 0) {\n swiper.prependSlide(slides);\n return;\n }\n\n if (index >= baseLength) {\n swiper.appendSlide(slides);\n return;\n }\n\n let newActiveIndex = activeIndexBuffer > index ? activeIndexBuffer + 1 : activeIndexBuffer;\n const slidesBuffer = [];\n\n for (let i = baseLength - 1; i >= index; i -= 1) {\n const currentSlide = swiper.slides.eq(i);\n currentSlide.remove();\n slidesBuffer.unshift(currentSlide);\n }\n\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) $wrapperEl.append(slides[i]);\n }\n\n newActiveIndex = activeIndexBuffer > index ? activeIndexBuffer + slides.length : activeIndexBuffer;\n } else {\n $wrapperEl.append(slides);\n }\n\n for (let i = 0; i < slidesBuffer.length; i += 1) {\n $wrapperEl.append(slidesBuffer[i]);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n\n if (!params.observer) {\n swiper.update();\n }\n\n if (params.loop) {\n swiper.slideTo(newActiveIndex + swiper.loopedSlides, 0, false);\n } else {\n swiper.slideTo(newActiveIndex, 0, false);\n }\n }\n\n function removeSlide(slidesIndexes) {\n const swiper = this;\n const {params, $wrapperEl, activeIndex} = swiper;\n let activeIndexBuffer = activeIndex;\n\n if (params.loop) {\n activeIndexBuffer -= swiper.loopedSlides;\n swiper.loopDestroy();\n swiper.slides = $wrapperEl.children(`.${params.slideClass}`);\n }\n\n let newActiveIndex = activeIndexBuffer;\n let indexToRemove;\n\n if (typeof slidesIndexes === 'object' && 'length' in slidesIndexes) {\n for (let i = 0; i < slidesIndexes.length; i += 1) {\n indexToRemove = slidesIndexes[i];\n if (swiper.slides[indexToRemove]) swiper.slides.eq(indexToRemove).remove();\n if (indexToRemove < newActiveIndex) newActiveIndex -= 1;\n }\n\n newActiveIndex = Math.max(newActiveIndex, 0);\n } else {\n indexToRemove = slidesIndexes;\n if (swiper.slides[indexToRemove]) swiper.slides.eq(indexToRemove).remove();\n if (indexToRemove < newActiveIndex) newActiveIndex -= 1;\n newActiveIndex = Math.max(newActiveIndex, 0);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n\n if (!params.observer) {\n swiper.update();\n }\n\n if (params.loop) {\n swiper.slideTo(newActiveIndex + swiper.loopedSlides, 0, false);\n } else {\n swiper.slideTo(newActiveIndex, 0, false);\n }\n }\n\n function removeAllSlides() {\n const swiper = this;\n const slidesIndexes = [];\n\n for (let i = 0; i < swiper.slides.length; i += 1) {\n slidesIndexes.push(i);\n }\n\n swiper.removeSlide(slidesIndexes);\n }\n\n function Manipulation({swiper}) {\n Object.assign(swiper, {\n appendSlide: appendSlide.bind(swiper),\n prependSlide: prependSlide.bind(swiper),\n addSlide: addSlide.bind(swiper),\n removeSlide: removeSlide.bind(swiper),\n removeAllSlides: removeAllSlides.bind(swiper),\n });\n }\n\n function effectInit(params) {\n const {effect, swiper, on, setTranslate, setTransition, overwriteParams, perspective} = params;\n on('beforeInit', () => {\n if (swiper.params.effect !== effect) return;\n swiper.classNames.push(`${swiper.params.containerModifierClass}${effect}`);\n\n if (perspective && perspective()) {\n swiper.classNames.push(`${swiper.params.containerModifierClass}3d`);\n }\n\n const overwriteParamsResult = overwriteParams ? overwriteParams() : {};\n Object.assign(swiper.params, overwriteParamsResult);\n Object.assign(swiper.originalParams, overwriteParamsResult);\n });\n on('setTranslate', () => {\n if (swiper.params.effect !== effect) return;\n setTranslate();\n });\n on('setTransition', (_s, duration) => {\n if (swiper.params.effect !== effect) return;\n setTransition(duration);\n });\n }\n\n function effectTarget(effectParams, $slideEl) {\n if (effectParams.transformEl) {\n return $slideEl.find(effectParams.transformEl).css({\n 'backface-visibility': 'hidden',\n '-webkit-backface-visibility': 'hidden',\n });\n }\n\n return $slideEl;\n }\n\n function effectVirtualTransitionEnd({swiper, duration, transformEl, allSlides}) {\n const {slides, activeIndex, $wrapperEl} = swiper;\n\n if (swiper.params.virtualTranslate && duration !== 0) {\n let eventTriggered = false;\n let $transitionEndTarget;\n\n if (allSlides) {\n $transitionEndTarget = transformEl ? slides.find(transformEl) : slides;\n } else {\n $transitionEndTarget = transformEl ? slides.eq(activeIndex).find(transformEl) : slides.eq(activeIndex);\n }\n\n $transitionEndTarget.transitionEnd(() => {\n if (eventTriggered) return;\n if (!swiper || swiper.destroyed) return;\n eventTriggered = true;\n swiper.animating = false;\n const triggerEvents = ['webkitTransitionEnd', 'transitionend'];\n\n for (let i = 0; i < triggerEvents.length; i += 1) {\n $wrapperEl.trigger(triggerEvents[i]);\n }\n });\n }\n }\n\n function EffectFade({swiper, extendParams, on}) {\n extendParams({\n fadeEffect: {\n crossFade: false,\n transformEl: null,\n },\n });\n\n const setTranslate = () => {\n const {slides} = swiper;\n const params = swiper.params.fadeEffect;\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = swiper.slides.eq(i);\n const offset = $slideEl[0].swiperSlideOffset;\n let tx = -offset;\n if (!swiper.params.virtualTranslate) tx -= swiper.translate;\n let ty = 0;\n\n if (!swiper.isHorizontal()) {\n ty = tx;\n tx = 0;\n }\n\n const slideOpacity = swiper.params.fadeEffect.crossFade\n ? Math.max(1 - Math.abs($slideEl[0].progress), 0)\n : 1 + Math.min(Math.max($slideEl[0].progress, -1), 0);\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl\n .css({\n opacity: slideOpacity,\n })\n .transform(`translate3d(${tx}px, ${ty}px, 0px)`);\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.fadeEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements.transition(duration);\n effectVirtualTransitionEnd({\n swiper,\n duration,\n transformEl,\n allSlides: true,\n });\n };\n\n effectInit({\n effect: 'fade',\n swiper,\n on,\n setTranslate,\n setTransition,\n overwriteParams: () => ({\n slidesPerView: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n spaceBetween: 0,\n virtualTranslate: !swiper.params.cssMode,\n }),\n });\n }\n\n function EffectCube({swiper, extendParams, on}) {\n extendParams({\n cubeEffect: {\n slideShadows: true,\n shadow: true,\n shadowOffset: 20,\n shadowScale: 0.94,\n },\n });\n\n const setTranslate = () => {\n const {\n $el,\n $wrapperEl,\n slides,\n width: swiperWidth,\n height: swiperHeight,\n rtlTranslate: rtl,\n size: swiperSize,\n browser,\n } = swiper;\n const params = swiper.params.cubeEffect;\n const isHorizontal = swiper.isHorizontal();\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n let wrapperRotate = 0;\n let $cubeShadowEl;\n\n if (params.shadow) {\n if (isHorizontal) {\n $cubeShadowEl = $wrapperEl.find('.swiper-cube-shadow');\n\n if ($cubeShadowEl.length === 0) {\n $cubeShadowEl = $('
    ');\n $wrapperEl.append($cubeShadowEl);\n }\n\n $cubeShadowEl.css({\n height: `${swiperWidth}px`,\n });\n } else {\n $cubeShadowEl = $el.find('.swiper-cube-shadow');\n\n if ($cubeShadowEl.length === 0) {\n $cubeShadowEl = $('
    ');\n $el.append($cubeShadowEl);\n }\n }\n }\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n let slideIndex = i;\n\n if (isVirtual) {\n slideIndex = parseInt($slideEl.attr('data-swiper-slide-index'), 10);\n }\n\n let slideAngle = slideIndex * 90;\n let round = Math.floor(slideAngle / 360);\n\n if (rtl) {\n slideAngle = -slideAngle;\n round = Math.floor(-slideAngle / 360);\n }\n\n const progress = Math.max(Math.min($slideEl[0].progress, 1), -1);\n let tx = 0;\n let ty = 0;\n let tz = 0;\n\n if (slideIndex % 4 === 0) {\n tx = -round * 4 * swiperSize;\n tz = 0;\n } else if ((slideIndex - 1) % 4 === 0) {\n tx = 0;\n tz = -round * 4 * swiperSize;\n } else if ((slideIndex - 2) % 4 === 0) {\n tx = swiperSize + round * 4 * swiperSize;\n tz = swiperSize;\n } else if ((slideIndex - 3) % 4 === 0) {\n tx = -swiperSize;\n tz = 3 * swiperSize + swiperSize * 4 * round;\n }\n\n if (rtl) {\n tx = -tx;\n }\n\n if (!isHorizontal) {\n ty = tx;\n tx = 0;\n }\n\n const transform = `rotateX(${isHorizontal ? 0 : -slideAngle}deg) rotateY(${\n isHorizontal ? slideAngle : 0\n }deg) translate3d(${tx}px, ${ty}px, ${tz}px)`;\n\n if (progress <= 1 && progress > -1) {\n wrapperRotate = slideIndex * 90 + progress * 90;\n if (rtl) wrapperRotate = -slideIndex * 90 - progress * 90;\n }\n\n $slideEl.transform(transform);\n\n if (params.slideShadows) {\n // Set shadows\n let shadowBefore = isHorizontal\n ? $slideEl.find('.swiper-slide-shadow-left')\n : $slideEl.find('.swiper-slide-shadow-top');\n let shadowAfter = isHorizontal\n ? $slideEl.find('.swiper-slide-shadow-right')\n : $slideEl.find('.swiper-slide-shadow-bottom');\n\n if (shadowBefore.length === 0) {\n shadowBefore = $(`
    `);\n $slideEl.append(shadowBefore);\n }\n\n if (shadowAfter.length === 0) {\n shadowAfter = $(`
    `);\n $slideEl.append(shadowAfter);\n }\n\n if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0);\n if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0);\n }\n }\n\n $wrapperEl.css({\n '-webkit-transform-origin': `50% 50% -${swiperSize / 2}px`,\n 'transform-origin': `50% 50% -${swiperSize / 2}px`,\n });\n\n if (params.shadow) {\n if (isHorizontal) {\n $cubeShadowEl.transform(\n `translate3d(0px, ${swiperWidth / 2 + params.shadowOffset}px, ${\n -swiperWidth / 2\n }px) rotateX(90deg) rotateZ(0deg) scale(${params.shadowScale})`,\n );\n } else {\n const shadowAngle = Math.abs(wrapperRotate) - Math.floor(Math.abs(wrapperRotate) / 90) * 90;\n const multiplier =\n 1.5 - (Math.sin((shadowAngle * 2 * Math.PI) / 360) / 2 + Math.cos((shadowAngle * 2 * Math.PI) / 360) / 2);\n const scale1 = params.shadowScale;\n const scale2 = params.shadowScale / multiplier;\n const offset = params.shadowOffset;\n $cubeShadowEl.transform(\n `scale3d(${scale1}, 1, ${scale2}) translate3d(0px, ${swiperHeight / 2 + offset}px, ${\n -swiperHeight / 2 / scale2\n }px) rotateX(-90deg)`,\n );\n }\n }\n\n const zFactor = browser.isSafari || browser.isWebView ? -swiperSize / 2 : 0;\n $wrapperEl.transform(\n `translate3d(0px,0,${zFactor}px) rotateX(${swiper.isHorizontal() ? 0 : wrapperRotate}deg) rotateY(${\n swiper.isHorizontal() ? -wrapperRotate : 0\n }deg)`,\n );\n };\n\n const setTransition = (duration) => {\n const {$el, slides} = swiper;\n slides\n .transition(duration)\n .find(\n '.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left',\n )\n .transition(duration);\n\n if (swiper.params.cubeEffect.shadow && !swiper.isHorizontal()) {\n $el.find('.swiper-cube-shadow').transition(duration);\n }\n };\n\n effectInit({\n effect: 'cube',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => true,\n overwriteParams: () => ({\n slidesPerView: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n resistanceRatio: 0,\n spaceBetween: 0,\n centeredSlides: false,\n virtualTranslate: true,\n }),\n });\n }\n\n function createShadow(params, $slideEl, side) {\n const shadowClass = `swiper-slide-shadow${side ? `-${side}` : ''}`;\n const $shadowContainer = params.transformEl ? $slideEl.find(params.transformEl) : $slideEl;\n let $shadowEl = $shadowContainer.children(`.${shadowClass}`);\n\n if (!$shadowEl.length) {\n $shadowEl = $(`
    `);\n $shadowContainer.append($shadowEl);\n }\n\n return $shadowEl;\n }\n\n function EffectFlip({swiper, extendParams, on}) {\n extendParams({\n flipEffect: {\n slideShadows: true,\n limitRotation: true,\n transformEl: null,\n },\n });\n\n const setTranslate = () => {\n const {slides, rtlTranslate: rtl} = swiper;\n const params = swiper.params.flipEffect;\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n let progress = $slideEl[0].progress;\n\n if (swiper.params.flipEffect.limitRotation) {\n progress = Math.max(Math.min($slideEl[0].progress, 1), -1);\n }\n\n const offset = $slideEl[0].swiperSlideOffset;\n const rotate = -180 * progress;\n let rotateY = rotate;\n let rotateX = 0;\n let tx = swiper.params.cssMode ? -offset - swiper.translate : -offset;\n let ty = 0;\n\n if (!swiper.isHorizontal()) {\n ty = tx;\n tx = 0;\n rotateX = -rotateY;\n rotateY = 0;\n } else if (rtl) {\n rotateY = -rotateY;\n }\n\n $slideEl[0].style.zIndex = -Math.abs(Math.round(progress)) + slides.length;\n\n if (params.slideShadows) {\n // Set shadows\n let shadowBefore = swiper.isHorizontal()\n ? $slideEl.find('.swiper-slide-shadow-left')\n : $slideEl.find('.swiper-slide-shadow-top');\n let shadowAfter = swiper.isHorizontal()\n ? $slideEl.find('.swiper-slide-shadow-right')\n : $slideEl.find('.swiper-slide-shadow-bottom');\n\n if (shadowBefore.length === 0) {\n shadowBefore = createShadow(params, $slideEl, swiper.isHorizontal() ? 'left' : 'top');\n }\n\n if (shadowAfter.length === 0) {\n shadowAfter = createShadow(params, $slideEl, swiper.isHorizontal() ? 'right' : 'bottom');\n }\n\n if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0);\n if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0);\n }\n\n const transform = `translate3d(${tx}px, ${ty}px, 0px) rotateX(${rotateX}deg) rotateY(${rotateY}deg)`;\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl.transform(transform);\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.flipEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements\n .transition(duration)\n .find(\n '.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left',\n )\n .transition(duration);\n effectVirtualTransitionEnd({\n swiper,\n duration,\n transformEl,\n });\n };\n\n effectInit({\n effect: 'flip',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => true,\n overwriteParams: () => ({\n slidesPerView: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n spaceBetween: 0,\n virtualTranslate: !swiper.params.cssMode,\n }),\n });\n }\n\n function EffectCoverflow({swiper, extendParams, on}) {\n extendParams({\n coverflowEffect: {\n rotate: 50,\n stretch: 0,\n depth: 100,\n scale: 1,\n modifier: 1,\n slideShadows: true,\n transformEl: null,\n },\n });\n\n const setTranslate = () => {\n const {width: swiperWidth, height: swiperHeight, slides, slidesSizesGrid} = swiper;\n const params = swiper.params.coverflowEffect;\n const isHorizontal = swiper.isHorizontal();\n const transform = swiper.translate;\n const center = isHorizontal ? -transform + swiperWidth / 2 : -transform + swiperHeight / 2;\n const rotate = isHorizontal ? params.rotate : -params.rotate;\n const translate = params.depth; // Each slide offset from center\n\n for (let i = 0, length = slides.length; i < length; i += 1) {\n const $slideEl = slides.eq(i);\n const slideSize = slidesSizesGrid[i];\n const slideOffset = $slideEl[0].swiperSlideOffset;\n const offsetMultiplier = ((center - slideOffset - slideSize / 2) / slideSize) * params.modifier;\n let rotateY = isHorizontal ? rotate * offsetMultiplier : 0;\n let rotateX = isHorizontal ? 0 : rotate * offsetMultiplier; // var rotateZ = 0\n\n let translateZ = -translate * Math.abs(offsetMultiplier);\n let stretch = params.stretch; // Allow percentage to make a relative stretch for responsive sliders\n\n if (typeof stretch === 'string' && stretch.indexOf('%') !== -1) {\n stretch = (parseFloat(params.stretch) / 100) * slideSize;\n }\n\n let translateY = isHorizontal ? 0 : stretch * offsetMultiplier;\n let translateX = isHorizontal ? stretch * offsetMultiplier : 0;\n let scale = 1 - (1 - params.scale) * Math.abs(offsetMultiplier); // Fix for ultra small values\n\n if (Math.abs(translateX) < 0.001) translateX = 0;\n if (Math.abs(translateY) < 0.001) translateY = 0;\n if (Math.abs(translateZ) < 0.001) translateZ = 0;\n if (Math.abs(rotateY) < 0.001) rotateY = 0;\n if (Math.abs(rotateX) < 0.001) rotateX = 0;\n if (Math.abs(scale) < 0.001) scale = 0;\n const slideTransform = `translate3d(${translateX}px,${translateY}px,${translateZ}px) rotateX(${rotateX}deg) rotateY(${rotateY}deg) scale(${scale})`;\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl.transform(slideTransform);\n $slideEl[0].style.zIndex = -Math.abs(Math.round(offsetMultiplier)) + 1;\n\n if (params.slideShadows) {\n // Set shadows\n let $shadowBeforeEl = isHorizontal\n ? $slideEl.find('.swiper-slide-shadow-left')\n : $slideEl.find('.swiper-slide-shadow-top');\n let $shadowAfterEl = isHorizontal\n ? $slideEl.find('.swiper-slide-shadow-right')\n : $slideEl.find('.swiper-slide-shadow-bottom');\n\n if ($shadowBeforeEl.length === 0) {\n $shadowBeforeEl = createShadow(params, $slideEl, isHorizontal ? 'left' : 'top');\n }\n\n if ($shadowAfterEl.length === 0) {\n $shadowAfterEl = createShadow(params, $slideEl, isHorizontal ? 'right' : 'bottom');\n }\n\n if ($shadowBeforeEl.length) $shadowBeforeEl[0].style.opacity = offsetMultiplier > 0 ? offsetMultiplier : 0;\n if ($shadowAfterEl.length) $shadowAfterEl[0].style.opacity = -offsetMultiplier > 0 ? -offsetMultiplier : 0;\n }\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.coverflowEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements\n .transition(duration)\n .find(\n '.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left',\n )\n .transition(duration);\n };\n\n effectInit({\n effect: 'coverflow',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => true,\n overwriteParams: () => ({\n watchSlidesProgress: true,\n }),\n });\n }\n\n function EffectCreative({swiper, extendParams, on}) {\n extendParams({\n creativeEffect: {\n transformEl: null,\n limitProgress: 1,\n shadowPerProgress: false,\n progressMultiplier: 1,\n perspective: true,\n prev: {\n translate: [0, 0, 0],\n rotate: [0, 0, 0],\n opacity: 1,\n scale: 1,\n },\n next: {\n translate: [0, 0, 0],\n rotate: [0, 0, 0],\n opacity: 1,\n scale: 1,\n },\n },\n });\n\n const getTranslateValue = (value) => {\n if (typeof value === 'string') return value;\n return `${value}px`;\n };\n\n const setTranslate = () => {\n const {slides, $wrapperEl, slidesSizesGrid} = swiper;\n const params = swiper.params.creativeEffect;\n const {progressMultiplier: multiplier} = params;\n const isCenteredSlides = swiper.params.centeredSlides;\n\n if (isCenteredSlides) {\n const margin = slidesSizesGrid[0] / 2 - swiper.params.slidesOffsetBefore || 0;\n $wrapperEl.transform(`translateX(calc(50% - ${margin}px))`);\n }\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n const slideProgress = $slideEl[0].progress;\n const progress = Math.min(Math.max($slideEl[0].progress, -params.limitProgress), params.limitProgress);\n let originalProgress = progress;\n\n if (!isCenteredSlides) {\n originalProgress = Math.min(\n Math.max($slideEl[0].originalProgress, -params.limitProgress),\n params.limitProgress,\n );\n }\n\n const offset = $slideEl[0].swiperSlideOffset;\n const t = [swiper.params.cssMode ? -offset - swiper.translate : -offset, 0, 0];\n const r = [0, 0, 0];\n let custom = false;\n\n if (!swiper.isHorizontal()) {\n t[1] = t[0];\n t[0] = 0;\n }\n\n let data = {\n translate: [0, 0, 0],\n rotate: [0, 0, 0],\n scale: 1,\n opacity: 1,\n };\n\n if (progress < 0) {\n data = params.next;\n custom = true;\n } else if (progress > 0) {\n data = params.prev;\n custom = true;\n } // set translate\n\n t.forEach((value, index) => {\n t[index] = `calc(${value}px + (${getTranslateValue(data.translate[index])} * ${Math.abs(\n progress * multiplier,\n )}))`;\n }); // set rotates\n\n r.forEach((value, index) => {\n r[index] = data.rotate[index] * Math.abs(progress * multiplier);\n });\n $slideEl[0].style.zIndex = -Math.abs(Math.round(slideProgress)) + slides.length;\n const translateString = t.join(', ');\n const rotateString = `rotateX(${r[0]}deg) rotateY(${r[1]}deg) rotateZ(${r[2]}deg)`;\n const scaleString =\n originalProgress < 0\n ? `scale(${1 + (1 - data.scale) * originalProgress * multiplier})`\n : `scale(${1 - (1 - data.scale) * originalProgress * multiplier})`;\n const opacityString =\n originalProgress < 0\n ? 1 + (1 - data.opacity) * originalProgress * multiplier\n : 1 - (1 - data.opacity) * originalProgress * multiplier;\n const transform = `translate3d(${translateString}) ${rotateString} ${scaleString}`; // Set shadows\n\n if ((custom && data.shadow) || !custom) {\n let $shadowEl = $slideEl.children('.swiper-slide-shadow');\n\n if ($shadowEl.length === 0 && data.shadow) {\n $shadowEl = createShadow(params, $slideEl);\n }\n\n if ($shadowEl.length) {\n const shadowOpacity = params.shadowPerProgress ? progress * (1 / params.limitProgress) : progress;\n $shadowEl[0].style.opacity = Math.min(Math.max(Math.abs(shadowOpacity), 0), 1);\n }\n }\n\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl.transform(transform).css({\n opacity: opacityString,\n });\n\n if (data.origin) {\n $targetEl.css('transform-origin', data.origin);\n }\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.creativeEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements.transition(duration).find('.swiper-slide-shadow').transition(duration);\n effectVirtualTransitionEnd({\n swiper,\n duration,\n transformEl,\n allSlides: true,\n });\n };\n\n effectInit({\n effect: 'creative',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => swiper.params.creativeEffect.perspective,\n overwriteParams: () => ({\n watchSlidesProgress: true,\n virtualTranslate: !swiper.params.cssMode,\n }),\n });\n }\n\n function EffectCards({swiper, extendParams, on}) {\n extendParams({\n cardsEffect: {\n slideShadows: true,\n transformEl: null,\n },\n });\n\n const setTranslate = () => {\n const {slides, activeIndex} = swiper;\n const params = swiper.params.cardsEffect;\n const {startTranslate, isTouched} = swiper.touchEventsData;\n const currentTranslate = swiper.translate;\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n const slideProgress = $slideEl[0].progress;\n const progress = Math.min(Math.max(slideProgress, -4), 4);\n let offset = $slideEl[0].swiperSlideOffset;\n\n if (swiper.params.centeredSlides && !swiper.params.cssMode) {\n swiper.$wrapperEl.transform(`translateX(${swiper.minTranslate()}px)`);\n }\n\n if (swiper.params.centeredSlides && swiper.params.cssMode) {\n offset -= slides[0].swiperSlideOffset;\n }\n\n let tX = swiper.params.cssMode ? -offset - swiper.translate : -offset;\n let tY = 0;\n const tZ = -100 * Math.abs(progress);\n let scale = 1;\n let rotate = -2 * progress;\n let tXAdd = 8 - Math.abs(progress) * 0.75;\n const isSwipeToNext =\n (i === activeIndex || i === activeIndex - 1) &&\n progress > 0 &&\n progress < 1 &&\n (isTouched || swiper.params.cssMode) &&\n currentTranslate < startTranslate;\n const isSwipeToPrev =\n (i === activeIndex || i === activeIndex + 1) &&\n progress < 0 &&\n progress > -1 &&\n (isTouched || swiper.params.cssMode) &&\n currentTranslate > startTranslate;\n\n if (isSwipeToNext || isSwipeToPrev) {\n const subProgress = (1 - Math.abs((Math.abs(progress) - 0.5) / 0.5)) ** 0.5;\n rotate += -28 * progress * subProgress;\n scale += -0.5 * subProgress;\n tXAdd += 96 * subProgress;\n tY = `${-25 * subProgress * Math.abs(progress)}%`;\n }\n\n if (progress < 0) {\n // next\n tX = `calc(${tX}px + (${tXAdd * Math.abs(progress)}%))`;\n } else if (progress > 0) {\n // prev\n tX = `calc(${tX}px + (-${tXAdd * Math.abs(progress)}%))`;\n } else {\n tX = `${tX}px`;\n }\n\n if (!swiper.isHorizontal()) {\n const prevY = tY;\n tY = tX;\n tX = prevY;\n }\n\n const scaleString = progress < 0 ? `${1 + (1 - scale) * progress}` : `${1 - (1 - scale) * progress}`;\n const transform = `\n translate3d(${tX}, ${tY}, ${tZ}px)\n rotateZ(${rotate}deg)\n scale(${scaleString})\n `;\n\n if (params.slideShadows) {\n // Set shadows\n let $shadowEl = $slideEl.find('.swiper-slide-shadow');\n\n if ($shadowEl.length === 0) {\n $shadowEl = createShadow(params, $slideEl);\n }\n\n if ($shadowEl.length)\n $shadowEl[0].style.opacity = Math.min(Math.max((Math.abs(progress) - 0.5) / 0.5, 0), 1);\n }\n\n $slideEl[0].style.zIndex = -Math.abs(Math.round(slideProgress)) + slides.length;\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl.transform(transform);\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.cardsEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements.transition(duration).find('.swiper-slide-shadow').transition(duration);\n effectVirtualTransitionEnd({\n swiper,\n duration,\n transformEl,\n });\n };\n\n effectInit({\n effect: 'cards',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => true,\n overwriteParams: () => ({\n watchSlidesProgress: true,\n virtualTranslate: !swiper.params.cssMode,\n }),\n });\n }\n\n // Swiper Class\n const modules = [\n Virtual,\n Keyboard,\n Mousewheel,\n Navigation,\n Pagination,\n Scrollbar,\n Parallax,\n Zoom,\n Lazy,\n Controller,\n A11y,\n History,\n HashNavigation,\n Autoplay,\n Thumb,\n freeMode,\n Grid,\n Manipulation,\n EffectFade,\n EffectCube,\n EffectFlip,\n EffectCoverflow,\n EffectCreative,\n EffectCards,\n ];\n Swiper.use(modules);\n\n global.Swiper = Swiper;\n\n return Swiper;\n });\n //# sourceMappingURL=swiper-bundle.js.map\n};\n\nexport default swiper();\n"]} \ No newline at end of file +{"version":3,"sources":["node_modules/browser-pack/_prelude.js","source/js/main.js","source/js/modules/accordions/accordions.js","source/js/modules/accordions/init-accordion.js","source/js/modules/form-validate/callback.js","source/js/modules/form-validate/form.js","source/js/modules/form-validate/init-phone-input.js","source/js/modules/form-validate/matrix.js","source/js/modules/form-validate/regular-expression.js","source/js/modules/form-validate/render-message.js","source/js/modules/form-validate/validator.js","source/js/modules/modals/init-modals.js","source/js/modules/modals/modals.js","source/js/modules/tabs/init-tabs.js","source/js/modules/tabs/tabs.js","source/js/utils/focus-lock.js","source/js/utils/ios-checker.js","source/js/utils/ios-vh-fix.js","source/js/utils/scroll-lock.js","source/js/vendor/swiper.js"],"names":[],"mappings":"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","file":"main.min.js","sourcesContent":["(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c=\"function\"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error(\"Cannot find module '\"+i+\"'\");throw a.code=\"MODULE_NOT_FOUND\",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u=\"function\"==typeof require&&require,i=0;i {\n\n // Utils\n // ---------------------------------\n\n iosVhFix();\n\n // Modules\n // ---------------------------------\n\n // все скрипты должны быть в обработчике 'DOMContentLoaded', но не все в 'load'\n // в load следует добавить скрипты, не участвующие в работе первого экрана\n window.addEventListener('load', () => {\n initModals();\n const form = new Form();\n window.form = form;\n form.init();\n initAccordions();\n });\n initTabs();\n});\n\nconst inputName = document.querySelector('#data-name');\nconst labelName = document.querySelector('label[for=\"data-name\"]');\ninputName.addEventListener('focus', () => {\n labelName.style.visibility = 'hidden';\n});\n\nconst inputPhone = document.querySelector('#data-phone');\nconst labelPhone = document.querySelector('label[for=\"data-phone\"]');\ninputPhone.addEventListener('focus', () => {\n labelPhone.style.visibility = 'hidden';\n});\n\n\n// ---------------------------------\n\n// ❗❗❗ обязательно установите плагины eslint, stylelint, editorconfig в редактор кода.\n\n// привязывайте js не на классы, а на дата атрибуты (data-validate)\n\n// вместо модификаторов .block--active используем утилитарные классы\n// .is-active || .is-open || .is-invalid и прочие (обязателен нейминг в два слова)\n// .select.select--opened ❌ ---> [data-select].is-open ✅\n\n// выносим все в дата атрибуты\n// url до иконок пинов карты, настройки автопрокрутки слайдера, url к json и т.д.\n\n// для адаптивного JS используется matchMedia и addListener\n// const breakpoint = window.matchMedia(`(min-width:1024px)`);\n// const breakpointChecker = () => {\n// if (breakpoint.matches) {\n// } else {\n// }\n// };\n// breakpoint.addListener(breakpointChecker);\n// breakpointChecker();\n\n// используйте .closest(el)\n","export class Accordions {\n constructor() {\n this._openHeight = 0;\n this._windowWidth = window.innerWidth;\n this._documentClickHandler = this._documentClickHandler.bind(this);\n this._windowResizeHandler = this._windowResizeHandler.bind(this);\n this._init();\n }\n\n _init() {\n this.fullUpdate();\n document.addEventListener('click', this._documentClickHandler);\n window.addEventListener('resize', this._windowResizeHandler);\n }\n\n _documentClickHandler(evt) {\n const target = evt.target;\n if (!target.closest('[data-accordion=\"button\"]')) {\n return;\n }\n\n evt.preventDefault();\n const parent = target.closest('[data-accordion=\"parent\"]');\n\n if (parent.dataset.destroy && !window.matchMedia(parent.dataset.destroy).matches) {\n return;\n }\n\n const element = target.closest('[data-accordion=\"element\"]');\n if (element.classList.contains('is-active')) {\n this.closeAccordion(element);\n return;\n }\n this.openAccordion(element);\n }\n\n _windowResizeHandler() {\n if (this._windowWidth === window.innerWidth) {\n return;\n }\n this._windowWidth = window.innerWidth;\n this.updateAccordionsHeight();\n }\n\n closeAllAccordion(parent) {\n const elements = parent.querySelectorAll('[data-accordion=\"element\"]');\n elements.forEach((element) => {\n const currentParent = element.closest('[data-accordion=\"parent\"]');\n if (currentParent === parent) {\n this.closeAccordion(element);\n }\n });\n }\n\n updateAccordionsHeight(element = null) {\n if (element) {\n const content = element.querySelector('[data-accordion=\"content\"]');\n content.style.transition = 'none';\n content.style.maxHeight = `${content.scrollHeight}px`;\n setTimeout(() => {\n content.style.transition = null;\n });\n return;\n }\n\n const closeElements = document.querySelectorAll('[data-accordion=\"element\"]:not(.is-active)');\n\n closeElements.forEach((closeElement) => {\n const parent = closeElement.closest('[data-accordion=\"parent\"]');\n const content = closeElement.querySelector('[data-accordion=\"content\"]');\n if (parent.dataset.destroy && !window.matchMedia(parent.dataset.destroy).matches) {\n content.style.maxHeight = '100%';\n return;\n }\n content.style.maxHeight = null;\n });\n\n const openElements = document.querySelectorAll('[data-accordion=\"element\"].is-active');\n openElements.forEach((openElement) => {\n const content = openElement.querySelector('[data-accordion=\"content\"]');\n const parent = openElement.closest('[data-accordion=\"parent\"]');\n if (parent.dataset.destroy && !window.matchMedia(parent.dataset.destroy).matches) {\n content.style.maxHeight = '100%';\n return;\n }\n content.style.transition = 'none';\n content.style.maxHeight = `${content.scrollHeight}px`;\n setTimeout(() => {\n content.style.transition = null;\n });\n });\n }\n\n fullUpdate(parent = null, transition = false) {\n let openElements;\n if (parent) {\n openElements = parent.querySelectorAll('[data-accordion=\"element\"].is-active');\n } else {\n openElements = document.querySelectorAll('[data-accordion=\"element\"].is-active');\n }\n openElements.forEach((openElement) => {\n const innerParent = openElement.querySelector('[data-accordion=\"parent\"]');\n if (innerParent) {\n return;\n }\n this.openAccordion(openElement, transition);\n });\n this.updateAccordionsHeight();\n }\n\n openAccordion(element, transition = true) {\n const parentElement = element.closest('[data-accordion=\"parent\"]');\n const contentElement = element.querySelector('[data-accordion=\"content\"]');\n this._openHeight += contentElement.scrollHeight;\n\n if (parentElement.hasAttribute('data-single')) {\n this.closeAllAccordion(parentElement);\n }\n\n element.classList.add('is-active');\n if (transition) {\n contentElement.style.maxHeight = `${this._openHeight}px`;\n } else {\n contentElement.style.transition = 'none';\n contentElement.style.maxHeight = `${this._openHeight}px`;\n setTimeout(() => {\n contentElement.style.transition = null;\n });\n }\n\n if (parentElement.closest('[data-accordion=\"element\"]')) {\n this.openAccordion(parentElement.closest('[data-accordion=\"element\"]'), transition);\n return;\n }\n\n this._openHeight = 0;\n }\n\n closeAccordion(element, transition = true) {\n const contentElement = element.querySelector('[data-accordion=\"content\"]');\n if (!contentElement) {\n return;\n }\n element.classList.remove('is-active');\n if (transition) {\n contentElement.style.maxHeight = '0';\n } else {\n contentElement.style.transition = 'none';\n contentElement.style.maxHeight = '0';\n setTimeout(() => {\n contentElement.style.transition = null;\n });\n }\n }\n}\n","import {Accordions} from './accordions';\nlet accordions;\n\nconst initAccordions = () => {\n accordions = new Accordions();\n // Используйте в разработке экспортируемую переменную accordions, window сделан для бэкэнда\n window.accordions = accordions;\n};\n\nexport {initAccordions, accordions};\n","\nconst baseSuccessCallback = (event) => {\n event.preventDefault();\n // В данном колбеке бэкендер, либо разработчик при необходимости будет писать запрос на отправку формы на сервер и обрабатывать возможные ошибки или успешную отправку формы на сервер\n};\n\nconst baseErrorCallback = (event) => {\n event.preventDefault();\n // Данный коллбек используется при необходимости выполнить какое-либо действие помимо показа ошибок при попытке отправить неккорректные данные, он не связан с запросами на сервер\n};\n\nexport const callbacks = {\n base: {\n // Сбросс формы\n reset: true,\n // Таймаут сброса формы\n resetTimeout: 500,\n successCallback: baseSuccessCallback,\n errorCallback: baseErrorCallback,\n },\n};\n","import {Validator} from './validator';\nimport {callbacks} from './callback';\nimport {initPhoneInput} from './init-phone-input';\n\nexport class Form {\n constructor() {\n this._validator = new Validator();\n this._initPhoneInput = initPhoneInput;\n this._callbacks = callbacks;\n }\n\n _resetSelect(select) {\n const nativeSelect = select.querySelector('select');\n const activeIndex = nativeSelect.options.selectedIndex;\n const selectedOption = nativeSelect.options[activeIndex];\n const buttonText = select.querySelector('.custom-select__text');\n const selectItems = select.querySelectorAll('.custom-select__item');\n buttonText.textContent = selectedOption.textContent;\n selectItems.forEach((item, index) => {\n if (index === activeIndex - 1) {\n item.setAttribute('aria-selected', 'true');\n return;\n }\n item.setAttribute('aria-selected', 'false');\n });\n if (!nativeSelect.value) {\n select.classList.remove('not-empty');\n select.classList.remove('is-valid');\n }\n }\n\n _resetSelects(form) {\n const selects = form.querySelectorAll('[data-select]');\n selects.forEach((select) => {\n this._resetSelect(select);\n });\n }\n\n reset(form) {\n form.reset();\n form.querySelectorAll('.is-invalid').forEach((item) => item.classList.remove('is-invalid'));\n form.querySelectorAll('.is-valid').forEach((item) => item.classList.remove('is-valid'));\n form.querySelectorAll('.input-message').forEach((item) => item.remove());\n setTimeout(() => {\n this._resetSelects(form);\n });\n }\n\n initPhoneInput(parent) {\n this._initPhoneInput(parent);\n }\n\n validateForm(form) {\n return this._validator.validateForm(form);\n }\n\n validateFormElement(item) {\n return this._validator.validateFormElement(item);\n }\n\n _onFormSubmit(event, callback = null) {\n if (this.validateForm(event.target) && callback) {\n this._callbacks[callback].successCallback(event);\n if (this._callbacks[callback].reset) {\n setTimeout(() => {\n this.reset(event.target);\n }, this._callbacks[callback].resetTimeout ? this._callbacks[callback].resetTimeout : 500);\n }\n return;\n }\n if (!this.validateForm(event.target) && callback) {\n this._callbacks[callback].errorCallback(event);\n return;\n }\n }\n\n _onFormInput(item) {\n this.validateFormElement(item);\n }\n\n _initValidate(parent) {\n const form = parent.querySelector('form');\n if (!form) {\n return;\n }\n\n const phoneParents = form.querySelectorAll('[data-validate-type=\"phone\"]');\n phoneParents.forEach((item) => this._initPhoneInput(item));\n\n const callback = parent.dataset.callback;\n form.noValidate = true;\n\n form.addEventListener('submit', (event) => {\n event.preventDefault();\n this._onFormSubmit(event, callback);\n });\n\n form.addEventListener('input', (event) => {\n this._onFormInput(event.target);\n });\n\n form.addEventListener('reset', (event) => {\n this.reset(event.target);\n });\n }\n\n init() {\n this._validateParent = document.querySelectorAll('[data-form-validate]');\n if (!this._validateParent.length) {\n return;\n }\n this._validateParent.forEach((parent) => this._initValidate(parent));\n }\n}\n","const baseCountryCode = '+7';\nconst baseMatrix = ' (___) ___ __ __';\nconst phoneLength = baseCountryCode.length + baseMatrix.length;\n\nconst onPhoneInputInput = (e) => {\n const matrix = `${baseCountryCode}${baseMatrix}`;\n const def = matrix.replace(/\\D/g, '');\n let i = 0;\n let val = e.target.value.replace(/\\D/g, '');\n if (def.length >= val.length) {\n val = def;\n }\n e.target.value = matrix.replace(/./g, (a) => {\n if (/[_\\d]/.test(a) && i < val.length) {\n return val.charAt(i++);\n } else if (i >= val.length) {\n return '';\n } else {\n return a;\n }\n });\n};\n\nconst onPhoneInputFocus = ({target}) => {\n if (!target.value) {\n target.value = baseCountryCode;\n }\n target.addEventListener('input', onPhoneInputInput);\n target.addEventListener('blur', onPhoneInputBlur);\n target.addEventListener('keydown', onPhoneInputKeydown);\n target.addEventListener('paste', onPhoneInputPaste);\n target.addEventListener('click', onPhoneInputClick);\n};\n\nconst onPhoneInputClick = (e) => {\n if (e.target.selectionStart < 4) {\n e.preventDefault();\n e.target.setSelectionRange(3, 3);\n }\n};\n\nconst onPhoneInputPaste = (e) => {\n e.target.setSelectionRange(0, 0);\n if (!e.target.selectionStart) {\n setTimeout(() => {\n if (e.target.value.startsWith('+7')) {\n return;\n }\n if (e.target.value.startsWith('+8')) {\n e.target.value = `+7 ${e.target.value.slice(3)}`;\n return;\n }\n e.target.value = '';\n });\n }\n};\n\nconst onPhoneInputKeydown = (e) => {\n if (e.target.selectionStart < 4 && (e.keyCode === 37 || e.keyCode === 13)) {\n e.preventDefault();\n e.target.setSelectionRange(3, 3);\n }\n};\n\nconst onPhoneInputBlur = ({target}) => {\n if (target.value === baseCountryCode) {\n const parent = target.closest('[data-validate-type=\"phone\"]');\n target.value = '';\n if (!parent.hasAttribute('data-required')) {\n parent.classList.remove('is-valid');\n parent.classList.remove('is-invalid');\n const parentMessage = parent.querySelector('.input-message');\n if (parentMessage) {\n parentMessage.remove();\n }\n }\n parent.classList.remove('not-empty');\n target.removeEventListener('input', onPhoneInputInput);\n target.removeEventListener('blur', onPhoneInputBlur);\n target.removeEventListener('keydown', onPhoneInputKeydown);\n target.removeEventListener('paste', onPhoneInputPaste);\n target.removeEventListener('click', onPhoneInputClick);\n }\n};\n\nexport const initPhoneInput = (parent) => {\n const input = parent.querySelector('input');\n parent.dataset.phoneLength = phoneLength;\n input.addEventListener('focus', onPhoneInputFocus);\n};\n","export const matrixReplace = (item, matrix, RegEx) => {\n if (!matrix) {\n // eslint-disable-next-line no-console\n console.error('При валидации по матрице обязательно указывать формат матрицы: data-matrix=\"\"');\n item.value = '';\n return;\n }\n\n if (!RegEx) {\n // eslint-disable-next-line no-console\n console.error('При валидации по матрице обязательно указывать формат ограничений: data-matrix-limitations=\"\"');\n item.value = '';\n return;\n }\n\n const def = matrix.replace(RegEx, '');\n let val = item.value.replace(RegEx, '');\n let i = 0;\n\n if (def.length >= val.length) {\n val = def;\n }\n\n item.value = matrix.replace(/./g, (a) => {\n if (/[_\\^]/.test(a) && i < val.length) {\n return val.charAt(i++);\n } else if (i >= val.length) {\n return '';\n } else {\n return a;\n }\n });\n};\n","const setLimitationError = (limitation) => {\n // eslint-disable-next-line no-console\n console.error(`Переданный формат ограничения(data-limitation=\"${limitation}\") - не поддерживается. Проверьте корректность введённых значений.`);\n};\n\nexport const getLimitationsRegEx = (limitation) => {\n switch (limitation) {\n case 'digit':\n return /[^\\d]/g;\n case 'name':\n return /[^a-zA-Zа-яёА-ЯЁ\\-\\s]/g;\n case 'letters':\n return /[^a-zA-Zа-яёА-ЯЁ\\s]/g;\n case 'letters-and-digit':\n return /[^a-zA-Zа-яёА-ЯЁ\\s\\d]/g;\n case 'cyrillic':\n return /[^а-яёА-ЯЁ\\s]/g;\n case 'latin':\n return /[^a-zA-Z\\s]/g;\n default:\n return setLimitationError(limitation);\n }\n};\n\nexport const getMatrixLimitationsRegEx = (matrix) => {\n switch (matrix) {\n case 'digit':\n return /[^\\d]/g;\n case 'name':\n return /[^\\а-яё\\А-ЯЁ\\a-z\\A-Z\\-]]/g;\n case 'letters':\n return /[^\\а-яё\\А-ЯЁ\\a-z\\A-Z]/g;\n case 'letters-and-digit':\n return /[^\\а-яё\\А-ЯЁ\\a-z\\A-Z\\d]/g;\n case 'cyrillic':\n return /[^\\а-яё\\А-ЯЁ]/g;\n case 'latin':\n return /[^\\a-z\\A-Z]/g;\n default:\n return false;\n }\n};\n\nexport const getMailRegEx = () => /[a-zA-Zа-яёА-ЯЁ0-9]{1}([a-zA-Zа-яёА-ЯЁ0-9\\-_\\.]{1,})?@[a-zA-Zа-яёА-ЯЁ0-9\\-]{1}([a-zA-Zа-яёА-ЯЁ0-9.\\-]{1,})?[a-zA-Zа-яёА-ЯЁ0-9\\-]{1}\\.[a-zA-Zа-яёА-ЯЁ]{2,6}/;\n","export class Message {\n constructor() {\n this._baseErrorText = 'Это поле является обязательным';\n }\n\n _messageTemplate(message, state) {\n const cssClass = state === 'valid' ? 'is-valid' : 'is-invalid';\n return `${message}`;\n }\n\n removeMessage(parent) {\n const parentMessage = parent.querySelector('.input-message');\n if (parentMessage) {\n parentMessage.remove();\n }\n }\n\n renderMessage(parent, message, state) {\n this.removeMessage(parent);\n parent.insertAdjacentHTML('beforeend', this._messageTemplate(message, state));\n }\n}\n","import {getLimitationsRegEx, getMatrixLimitationsRegEx, getMailRegEx} from './regular-expression';\nimport {matrixReplace} from './matrix';\nimport {Message} from './render-message';\n\nexport class Validator {\n constructor() {\n this._getLimitationsRegEx = getLimitationsRegEx;\n this._getMatrixLimitationsRegEx = getMatrixLimitationsRegEx;\n this._getMailRegEx = getMailRegEx;\n this._matrixReplace = matrixReplace;\n this._message = new Message();\n }\n\n _renderMessage(trigger, parent, input) {\n if (!parent.hasAttribute('data-required') && !input.value) {\n return;\n }\n if (!trigger) {\n parent.classList.add('is-invalid');\n if (parent.hasAttribute('data-message-base') && !input.value) {\n this._message.renderMessage(parent, parent.dataset.messageBase, 'invalid');\n } else if (parent.hasAttribute('data-message-extra') && input.value) {\n this._message.renderMessage(parent, parent.dataset.messageExtra, 'invalid');\n } else if (!parent.hasAttribute('data-message-extra') && parent.hasAttribute('data-message-base') && input.value) {\n this._message.renderMessage(parent, parent.dataset.messageBase, 'invalid');\n } else {\n this._message.removeMessage(parent);\n }\n } else {\n if (parent.hasAttribute('data-message-success')) {\n this._message.renderMessage(parent, parent.dataset.messageSuccess, 'valid');\n } else {\n this._message.removeMessage(parent);\n }\n }\n }\n\n _setItemValidState(parent, input) {\n if (!parent.hasAttribute('data-required') && !input.value) {\n return;\n }\n parent.classList.add('is-valid');\n parent.classList.remove('is-invalid');\n input.setAttribute('aria-invalid', 'false');\n this._message.removeMessage(parent);\n }\n\n _setItemInvalidState(parent, input) {\n if (!parent.hasAttribute('data-required') && !input.value) {\n return;\n }\n parent.classList.remove('is-valid');\n input.setAttribute('aria-invalid', 'true');\n }\n\n _simpleLimitation(item, limitation) {\n item.value = item.value.replace(this._getLimitationsRegEx(limitation), '');\n }\n\n _matrixLimitation(item, matrix, limitation) {\n this._matrixReplace(item, matrix, limitation);\n }\n\n _validateTextInput(parent, input) {\n let flag = true;\n if (input.value.length >= (+input.getAttribute('minlength') || 1)) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validateMatrixInput(parent, input) {\n let flag = true;\n if (input.value.length === input.closest('[data-matrix]').dataset.matrix.length) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validateEmailInput(parent, input) {\n let flag = true;\n if (new RegExp(this._getMailRegEx(), '').test(input.value)) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validatePhoneInput(parent, input) {\n let flag = true;\n if (input.value.length >= +parent.dataset.phoneLength) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validateCheckbox(parent, input) {\n let flag = true;\n if (input.checked) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _findSelectedOption(options) {\n let flag = false;\n options.forEach((option) => {\n if (option.value && option.selected) {\n flag = true;\n }\n });\n return flag;\n }\n\n _validateSelect(parent, input) {\n const options = input.querySelectorAll('option');\n const customSelectText = parent.querySelector('.custom-select__text');\n input.setAttribute('aria-invalid', 'false');\n let flag = true;\n if (this._findSelectedOption(options)) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n parent.classList.remove('not-empty');\n customSelectText.innerHTML = '';\n flag = false;\n }\n return flag;\n }\n\n _returnCheckedElements(inputs) {\n let flag = false;\n inputs.forEach((input) => {\n if (input.checked) {\n flag = true;\n }\n });\n return flag;\n }\n\n _removeGroupAria(inputs) {\n inputs.forEach((input) => {\n if (!input.checked) {\n input.removeAttribute('aria-required');\n input.removeAttribute('aria-invalid');\n } else {\n input.setAttribute('aria-required', true);\n input.setAttribute('aria-invalid', false);\n }\n });\n }\n\n _setGroupAria(inputs) {\n inputs.forEach((input) => {\n input.setAttribute('aria-required', true);\n input.setAttribute('aria-invalid', true);\n });\n }\n\n _validateToggleGroup(parent) {\n const formElements = parent.querySelectorAll('input');\n let flag = true;\n if (this._returnCheckedElements(formElements)) {\n this._removeGroupAria(formElements);\n parent.classList.remove('is-invalid');\n parent.classList.add('is-valid');\n this._message.removeMessage(parent);\n } else {\n this._setGroupAria(formElements);\n parent.classList.remove('is-valid');\n flag = false;\n }\n return flag;\n }\n\n _customExample(parent, input) {\n let flag = true;\n if (!input.value.length) {\n parent.dataset.messageBase = 'Поле обязательно к заполнению';\n this._setItemInvalidState(parent, input);\n flag = false;\n } else if (input.value.length < input.minLength) {\n parent.dataset.messageBase = `Осталось ввести ещё ${input.minLength - input.value.length} символов`;\n this._setItemInvalidState(parent, input);\n flag = false;\n } else if (input.value.length > input.minLength) {\n parent.dataset.messageBase = `Вы ввели ${input.value.length - input.minLength} лишних символов`;\n this._setItemInvalidState(parent, input);\n flag = false;\n } else {\n parent.dataset.messageSuccess = 'Поле заполнено корректно';\n this._setItemValidState(parent, input);\n flag = true;\n }\n return flag;\n }\n\n _validateFile(parent, input) {\n let flag = true;\n const sizeTest = parent.dataset.maxSize && input.files[0] ? input.files[0].size < +parent.dataset.maxSize : true;\n if (input.value && sizeTest) {\n this._setItemValidState(parent, input);\n } else {\n this._setItemInvalidState(parent, input);\n flag = false;\n }\n return flag;\n }\n\n _validateInput(type, parent, input) {\n switch (type) {\n case 'text':\n return this._validateTextInput(parent, input);\n case 'matrix':\n return this._validateMatrixInput(parent, input);\n case 'email':\n return this._validateEmailInput(parent, input);\n case 'phone':\n return this._validatePhoneInput(parent, input);\n case 'checkbox':\n return this._validateCheckbox(parent, input);\n case 'select':\n return this._validateSelect(parent, input);\n case 'toggle-group':\n return this._validateToggleGroup(parent, input);\n case 'file':\n return this._validateFile(parent, input);\n case 'custom-example':\n return this._customExample(parent, input);\n default:\n return false;\n }\n }\n\n validateFormElement(formElement, fullValidate = false) {\n const parent = formElement.closest('[data-validate-type]');\n if (!parent) {\n return;\n }\n\n if (!parent.hasAttribute('data-required')) {\n const removeElement = parent.querySelector('input') || parent.querySelector('select') || parent.querySelector('textarea');\n\n if (!removeElement.value) {\n parent.classList.remove('is-valid');\n parent.classList.remove('is-invalid');\n }\n }\n\n const onInputValidate = parent.hasAttribute('data-on-input-validate');\n\n if (parent.hasAttribute('data-limitation')) {\n this._simpleLimitation(formElement, parent.dataset.limitation);\n }\n\n if (parent.dataset.validateType === 'matrix') {\n this._matrixLimitation(formElement, parent.dataset.matrix, this._getMatrixLimitationsRegEx(parent.dataset.matrixLimitation));\n }\n\n const isValid = this._validateInput(parent.dataset.validateType, parent, formElement);\n\n if (onInputValidate || fullValidate) {\n this._renderMessage(isValid, parent, formElement);\n }\n }\n\n _fullValidate(items) {\n let result = true;\n items.forEach((item) => {\n const formElement = item.querySelector('input') || item.querySelector('select') || item.querySelector('textarea');\n this.validateFormElement(formElement, true);\n if (item.classList.contains('is-invalid')) {\n result = false;\n }\n });\n return result;\n }\n\n validateForm(form) {\n const validateItems = form.querySelectorAll('[data-validate-type]');\n const result = this._fullValidate(validateItems);\n return result;\n }\n}\n","import {Modals} from './modals';\n\nlet modals;\n\n// Здесь реализован пример открытия модалки через колбэк закрытия\n// const openModalInCloseCallback = (name, context = this) => {\n// context._enableScrolling = false;\n// context._setSettings('default');\n// modals.open(name);\n// };\n\n// closeCallback() {\n// openModalInCloseCallback('modal-5');\n// },\n\nconst settings = {\n 'default': {\n preventDefault: true,\n stopPlay: true,\n lockFocus: true,\n startFocus: true,\n focusBack: true,\n eventTimeout: 400,\n openCallback: false,\n closeCallback: false,\n },\n};\n\nconst initModals = () => {\n const modalElements = document.querySelectorAll('.modal');\n modalElements.forEach((el) => {\n setTimeout(() => {\n el.classList.remove('modal--preload');\n }, 100);\n });\n modals = new Modals(settings);\n // Используйте в разработке экспортируемую переменную modals, window сделан для бэкэнда\n window.modals = modals;\n};\n\nexport {modals, initModals};\n","import {ScrollLock} from '../../utils/scroll-lock';\nimport {FocusLock} from '../../utils/focus-lock';\n\nexport class Modals {\n constructor(settings = {}) {\n this._scrollLock = new ScrollLock();\n this._focusLock = new FocusLock();\n\n this._modalOpenElements = document.querySelectorAll('[data-open-modal]');\n this._openedModalElement = null;\n this._modalName = null;\n this._enableScrolling = true;\n this._settingKey = 'default';\n\n this._settings = settings;\n this._preventDefault = this._settings[this._settingKey].preventDefault;\n this._stopPlay = this._settings[this._settingKey].stopPlay;\n this._lockFocus = this._settings[this._settingKey].lockFocus;\n this._startFocus = this._settings[this._settingKey].startFocus;\n this._focusBack = this._settings[this._settingKey].focusBack;\n this._eventTimeout = this._settings[this._settingKey].eventTimeout;\n this._openCallback = this._settings[this._settingKey].openCallback;\n this._closeCallback = this._settings[this._settingKey].closeCallback;\n\n this._documentKeydownHandler = this._documentKeydownHandler.bind(this);\n this._documentClickHandler = this._documentClickHandler.bind(this);\n this._modalClickHandler = this._modalClickHandler.bind(this);\n\n this._init();\n }\n\n _init() {\n if (this._modalOpenElements.length) {\n document.addEventListener('click', this._documentClickHandler);\n }\n }\n\n _setSettings(settingKey = this._settingKey) {\n if (!this._settings[settingKey]) {\n return;\n }\n\n this._preventDefault =\n typeof this._settings[settingKey].preventDefault === 'boolean'\n ? this._settings[settingKey].preventDefault\n : this._settings[this._settingKey].preventDefault;\n this._stopPlay =\n typeof this._settings[settingKey].stopPlay === 'boolean'\n ? this._settings[settingKey].stopPlay\n : this._settings[this._settingKey].stopPlay;\n this._lockFocus =\n typeof this._settings[settingKey].lockFocus === 'boolean'\n ? this._settings[settingKey].lockFocus\n : this._settings[this._settingKey].lockFocus;\n this._startFocus =\n typeof this._settings[settingKey].startFocus === 'boolean'\n ? this._settings[settingKey].startFocus\n : this._settings[this._settingKey].startFocus;\n this._focusBack =\n typeof this._settings[settingKey].lockFocus === 'boolean'\n ? this._settings[settingKey].focusBack\n : this._settings[this._settingKey].focusBack;\n this._eventTimeout =\n typeof this._settings[settingKey].eventTimeout === 'number'\n ? this._settings[settingKey].eventTimeout\n : this._settings[this._settingKey].eventTimeout;\n this._openCallback = this._settings[settingKey].openCallback || this._settings[this._settingKey].openCallback;\n this._closeCallback = this._settings[settingKey].closeCallback || this._settings[this._settingKey].closeCallback;\n }\n\n _documentClickHandler(evt) {\n const target = evt.target;\n\n if (!target.closest('[data-open-modal]')) {\n return;\n }\n\n evt.preventDefault();\n\n this._modalName = target.closest('[data-open-modal]').dataset.openModal;\n\n if (!this._modalName) {\n return;\n }\n\n this.open();\n }\n\n _documentKeydownHandler(evt) {\n const isEscKey = evt.key === 'Escape' || evt.key === 'Esc';\n\n if (isEscKey) {\n evt.preventDefault();\n this.close(document.querySelector('.modal.is-active').dataset.modal);\n }\n }\n\n _modalClickHandler(evt) {\n const target = evt.target;\n\n if (!target.closest('[data-close-modal]')) {\n return;\n }\n\n this.close(target.closest('[data-modal]').dataset.modal);\n }\n\n _addListeners(modal) {\n modal.addEventListener('click', this._modalClickHandler);\n document.addEventListener('keydown', this._documentKeydownHandler);\n }\n\n _removeListeners(modal) {\n modal.removeEventListener('click', this._modalClickHandler);\n document.removeEventListener('keydown', this._documentKeydownHandler);\n }\n\n _stopInteractive(modal) {\n if (this._stopPlay) {\n modal.querySelectorAll('video, audio').forEach((el) => el.pause());\n modal.querySelectorAll('[data-iframe]').forEach((el) => {\n el.querySelector('iframe').contentWindow.postMessage('{\"event\": \"command\", \"func\": \"pauseVideo\", \"args\": \"\"}', '*');\n });\n }\n }\n\n _autoPlay(modal) {\n modal.querySelectorAll('[data-iframe]').forEach((el) => {\n const autoPlay = el.closest('[data-auto-play]');\n if (autoPlay) {\n el.querySelector('iframe').contentWindow.postMessage('{\"event\":\"command\",\"func\":\"playVideo\",\"args\":\"\"}', '*');\n }\n });\n }\n\n open(modalName = this._modalName) {\n const modal = document.querySelector(`[data-modal=\"${modalName}\"]`);\n\n if (!modal || modal.classList.contains('is-active')) {\n return;\n }\n\n document.removeEventListener('click', this._documentClickHandler);\n\n this._openedModalElement = document.querySelector('.modal.is-active');\n\n if (this._openedModalElement) {\n this._enableScrolling = false;\n this.close(this._openedModalElement.dataset.modal);\n }\n\n this._setSettings(modalName);\n modal.classList.add('is-active');\n\n if (!this._openedModalElement) {\n this._scrollLock.disableScrolling();\n }\n\n if (this._openCallback) {\n this._openCallback();\n }\n\n if (this._lockFocus) {\n this._focusLock.lock('.modal.is-active', this._startFocus);\n }\n\n setTimeout(() => {\n this._addListeners(modal);\n this._autoPlay(modal);\n document.addEventListener('click', this._documentClickHandler);\n }, this._eventTimeout);\n }\n\n close(modalName = this._modalName) {\n const modal = document.querySelector(`[data-modal=\"${modalName}\"]`);\n document.removeEventListener('click', this._documentClickHandler);\n\n if (!modal || !modal.classList.contains('is-active')) {\n return;\n }\n\n if (this._lockFocus) {\n this._focusLock.unlock(this._focusBack);\n }\n\n modal.classList.remove('is-active');\n this._removeListeners(modal);\n this._stopInteractive(modal);\n\n if (this._closeCallback) {\n this._closeCallback();\n }\n\n if (this._enableScrolling) {\n setTimeout(() => {\n this._scrollLock.enableScrolling();\n }, this._eventTimeout);\n }\n\n setTimeout(() => {\n document.addEventListener('click', this._documentClickHandler);\n }, this._eventTimeout);\n\n this._setSettings('default');\n this._enableScrolling = true;\n }\n}\n","import {Tabs} from './tabs';\n\nlet tabs;\n\nconst initTabs = () => {\n tabs = new Tabs();\n // Используйте в разработке экспортируемую переменную tabs, window сделан для бэкэнда\n window.tabs = tabs;\n};\n\nexport {initTabs, tabs};\n","export class Tabs {\n constructor() {\n this._windowWidth = window.innerWidth;\n this._documentClickHandler = this._documentClickHandler.bind(this);\n this._init();\n }\n\n _init() {\n this._initAllTabs();\n document.addEventListener('click', this._documentClickHandler);\n }\n\n _resizeObserver() {\n return new ResizeObserver((entries) => {\n for (let entry of entries) {\n if (entry.target.classList.contains('is-active')) {\n this._updateTabHeight();\n }\n }\n });\n }\n\n _documentClickHandler(evt) {\n const target = evt.target;\n if (!target.closest('[data-tabs=\"control\"]')) {\n return;\n }\n evt.preventDefault();\n const control = target.closest('[data-tabs=\"control\"]');\n this.openTab(control);\n }\n\n _initAllTabs() {\n const tabs = document.querySelectorAll('[data-tabs=\"parent\"]');\n const forLoadTabs = document.querySelectorAll('[data-tabs=\"element\"].for-load');\n tabs.forEach((tab) => {\n this._initTab(tab);\n });\n forLoadTabs.forEach((tab) => {\n tab.classList.remove('for-load');\n });\n }\n\n _removeAllActiveClasses(tabControlElements, tabElements) {\n tabElements.forEach((tab) => {\n tab.classList.remove('is-active');\n });\n\n tabControlElements.forEach((element, index) => {\n element.classList.remove('is-active');\n element.setAttribute('data-index', index);\n });\n }\n\n _setTabStartState(tab, dataHeight, tabElements, tabContentElement, tabControlElements, dataDelay) {\n const activeIndex = this._returnActiveIndex(tabControlElements);\n const blockHeight = dataHeight === 'max' ? this._returnMaxHeight(tabElements) : tabElements[activeIndex].offsetHeight;\n this._removeAllActiveClasses(tabControlElements, tabElements);\n tab.classList.add('no-transition');\n tabControlElements[activeIndex].classList.add('is-active');\n tabElements[activeIndex].classList.add('is-active');\n if (dataHeight !== 'unset') {\n tabContentElement.style.height = `${blockHeight}px`;\n }\n setTimeout(() => {\n if (dataDelay) {\n tab.classList.remove('no-transition');\n }\n }, dataDelay);\n }\n\n _returnActiveIndex(tabControlElements) {\n let activeIndex = 0;\n let flag = true;\n tabControlElements.forEach((control, index) => {\n if (control.classList.contains('is-active') && flag) {\n activeIndex = index;\n flag = false;\n }\n });\n return activeIndex;\n }\n\n _returnMaxHeight(tabElements) {\n let height = [];\n tabElements.forEach((element) => {\n height.push(element.offsetHeight);\n });\n height.sort((a, b) => a - b);\n return height[height.length - 1];\n }\n\n _returnScopeList(nodeList, parent) {\n const array = [];\n nodeList.forEach((element) => {\n const elementParent = element.closest('[data-tabs=\"parent\"]');\n if (elementParent === parent) {\n array.push(element);\n }\n });\n\n return array;\n }\n\n _returnScopeChild(nodeList, parent) {\n let currentChild;\n nodeList.forEach((element) => {\n const elementParent = element.closest('[data-tabs=\"parent\"]');\n if (elementParent === parent) {\n currentChild = element;\n }\n });\n\n return currentChild;\n }\n\n _updateTabHeight() {\n const activeElements = document.querySelectorAll('[data-tabs=\"element\"].is-active');\n activeElements.forEach((element) => {\n let transition = false;\n const parent = element.closest('[data-tabs=\"parent\"]');\n if (parent.closest('[data-tabs=\"element\"]')) {\n transition = true;\n }\n this._setTabElementHeight(element, transition);\n });\n }\n\n _setTabElementHeight(element, transition) {\n const parentElement = element.closest('[data-tabs=\"parent\"]');\n const dataHeight = parentElement.dataset.height;\n const contentElement = this._returnScopeChild(parentElement.querySelectorAll('[data-tabs=\"content\"]'), parentElement);\n const tabElements = this._returnScopeList(parentElement.querySelectorAll('[data-tabs=\"element\"]'), parentElement);\n\n if (!transition) {\n parentElement.classList.add('no-transition');\n }\n\n if (dataHeight === 'max') {\n contentElement.style.height = `${this._returnMaxHeight(tabElements)}px`;\n } else if (dataHeight === 'unset') {\n contentElement.style.height = null;\n } else {\n contentElement.style.height = `${this._returnScopeChild(parentElement.querySelectorAll('[data-tabs=\"element\"].is-active'), parentElement).offsetHeight}px`;\n }\n\n setTimeout(() => parentElement.classList.remove('no-transition'));\n }\n\n _initTab(tab) {\n const dataHeight = tab.dataset.height;\n const dataDelay = tab.dataset.delay ? tab.dataset.delay : 0;\n const tabContentElement = tab.querySelector('[data-tabs=\"content\"]');\n const tabControlElements = this._returnScopeList(tab.querySelectorAll('[data-tabs=\"control\"]'), tab);\n const tabElements = this._returnScopeList(tab.querySelectorAll('[data-tabs=\"element\"]'), tab);\n this._setTabStartState(tab, dataHeight, tabElements, tabContentElement, tabControlElements, dataDelay);\n if (dataHeight !== 'unset') {\n tabElements.forEach((element) => {\n this._resizeObserver().observe(element);\n });\n }\n setTimeout(() => {\n tab.classList.remove('no-transition-global');\n });\n }\n\n reInit() {\n this._initAllTabs();\n }\n\n openTab(control) {\n const currentIndex = control.dataset.index;\n const parentElement = control.closest('[data-tabs=\"parent\"]');\n\n if (control.classList.contains('is-active') || parentElement.classList.contains('no-action')) {\n return;\n }\n\n const dataDelay = parentElement.dataset.delay ? parentElement.dataset.delay : 0;\n const dataHeight = parentElement.dataset.height;\n const contentElement = parentElement.querySelector('[data-tabs=\"content\"]');\n const tabElements = this._returnScopeList(parentElement.querySelectorAll('[data-tabs=\"element\"]'), parentElement);\n\n const activeControl = this._returnScopeChild(parentElement.querySelectorAll('[data-tabs=\"control\"].is-active'), parentElement);\n const activeElement = this._returnScopeChild(parentElement.querySelectorAll('[data-tabs=\"element\"].is-active'), parentElement);\n const currentHeight = contentElement.offsetHeight;\n const newHeight = tabElements[currentIndex].offsetHeight;\n\n parentElement.classList.add('no-action');\n document.activeElement.blur();\n\n if (activeControl) {\n activeControl.classList.remove('is-active');\n }\n\n if (activeElement) {\n activeElement.classList.remove('is-active');\n }\n\n if (currentHeight > newHeight) {\n setTimeout(() => {\n if (dataHeight !== 'max' && dataHeight !== 'unset') {\n contentElement.style.height = newHeight + 'px';\n }\n control.classList.add('is-active');\n tabElements[currentIndex].classList.add('is-active');\n parentElement.classList.remove('no-action');\n }, dataDelay);\n } else {\n if (dataHeight !== 'max' && dataHeight !== 'unset') {\n contentElement.style.height = newHeight + 'px';\n }\n setTimeout(() => {\n control.classList.add('is-active');\n tabElements[currentIndex].classList.add('is-active');\n parentElement.classList.remove('no-action');\n }, dataDelay);\n }\n }\n}\n","const SELECTORS = [\n 'a[href]',\n 'area[href]',\n 'input:not([disabled]):not([type=\"hidden\"]):not([aria-hidden])',\n 'select:not([disabled]):not([aria-hidden])',\n 'textarea:not([disabled]):not([aria-hidden])',\n 'button:not([disabled]):not([aria-hidden])',\n 'iframe',\n 'object',\n 'embed',\n '[contenteditable]',\n '[tabindex]:not([tabindex^=\"-\"])'\n];\n\nexport class FocusLock {\n constructor() {\n this._lockedSelector = null;\n this._focusableElements = null;\n this._endElement = null;\n this._selectors = SELECTORS;\n\n this._documentKeydownHandler = this._documentKeydownHandler.bind(this);\n }\n\n _documentKeydownHandler(evt) {\n const activeElement = document.activeElement;\n if (evt.key === 'Tab') {\n if (!this._focusableElements.length) {\n evt.preventDefault();\n activeElement.blur();\n return;\n }\n if (this._focusableElements.length === 1) {\n evt.preventDefault();\n this._focusableElements[0].focus();\n return;\n }\n if (this._focusableElements.length > 1 && !activeElement.closest(this._lockedSelector)) {\n evt.preventDefault();\n this._focusableElements[0].focus();\n return;\n }\n }\n if (evt.key === 'Tab' && !evt.shiftKey && activeElement === this._focusableElements[this._focusableElements.length - 1]) {\n evt.preventDefault();\n this._focusableElements[0].focus();\n }\n if (evt.key === 'Tab' && evt.shiftKey && activeElement === this._focusableElements[0]) {\n evt.preventDefault();\n this._focusableElements[this._focusableElements.length - 1].focus();\n }\n }\n\n lock(lockedSelector, startFocus = true) {\n this.unlock();\n this._lockedSelector = lockedSelector;\n const lockedElement = document.querySelector(this._lockedSelector);\n if (!lockedElement) {\n return;\n }\n this._focusableElements = lockedElement.querySelectorAll(this._selectors);\n this._endElement = document.activeElement;\n const startElement = lockedElement.querySelector('[data-focus]') || this._focusableElements[0];\n if (this._endElement) {\n this._endElement.blur();\n }\n if (startElement && startFocus) {\n startElement.focus();\n }\n document.addEventListener('keydown', this._documentKeydownHandler);\n }\n\n unlock(returnFocus = true) {\n if (this._endElement && returnFocus) {\n this._endElement.focus();\n }\n this._lockedSelector = null;\n this._focusableElements = null;\n this._endElement = null;\n document.removeEventListener('keydown', this._documentKeydownHandler);\n }\n}\n\nwindow.focusLock = new FocusLock();\n","export const iosChecker = () => {\n return [\n 'iPad Simulator',\n 'iPhone Simulator',\n 'iPod Simulator',\n 'iPad',\n 'iPhone',\n 'iPod'\n ].includes(navigator.platform)\n // iPad on iOS 13 detection\n || (navigator.userAgent.includes('Mac') && 'ontouchend' in document);\n};\n","import {iosChecker} from './ios-checker';\n\nconst iosVhFix = () => {\n if (!(!!window.MSInputMethodContext && !!document.documentMode)) {\n if (iosChecker()) {\n let vh = window.innerHeight * 0.01;\n document.documentElement.style.setProperty('--vh', `${vh}px`);\n\n window.addEventListener('resize', function () {\n vh = window.innerHeight * 0.01;\n document.documentElement.style.setProperty('--vh', `${vh}px`);\n });\n }\n }\n};\n\nexport {iosVhFix};\n","import {iosChecker} from './ios-checker';\n\nexport class ScrollLock {\n constructor() {\n this._iosChecker = iosChecker;\n this._lockClass = this._iosChecker() ? 'scroll-lock-ios' : 'scroll-lock';\n this._scrollTop = null;\n this._fixedBlockElements = document.querySelectorAll('[data-fix-block]');\n }\n\n _getScrollbarWidth() {\n return window.innerWidth - document.documentElement.clientWidth;\n }\n\n _getBodyScrollTop() {\n return (\n self.pageYOffset ||\n (document.documentElement && document.documentElement.ScrollTop) ||\n (document.body && document.body.scrollTop)\n );\n }\n\n disableScrolling() {\n this._scrollTop = document.body.dataset.scroll = document.body.dataset.scroll ? document.body.dataset.scroll : this._getBodyScrollTop();\n if (this._getScrollbarWidth()) {\n document.body.style.paddingRight = `${this._getScrollbarWidth()}px`;\n this._fixedBlockElements.forEach((block) => {\n block.style.paddingRight = `${this._getScrollbarWidth()}px`;\n });\n }\n document.body.style.top = `-${this._scrollTop}px`;\n document.body.classList.add(this._lockClass);\n }\n\n enableScrolling() {\n document.body.classList.remove(this._lockClass);\n window.scrollTo(0, +document.body.dataset.scroll);\n document.body.style.paddingRight = null;\n document.body.style.top = null;\n this._fixedBlockElements.forEach((block) => {\n block.style.paddingRight = null;\n });\n document.body.removeAttribute('data-scroll');\n this._scrollTop = null;\n }\n}\n\nwindow.scrollLock = new ScrollLock();\n"," const swiper = () => {\n /**\n * Swiper 7.4.1\n * Most modern mobile touch slider and framework with hardware accelerated transitions\n * https://swiperjs.com\n *\n * Copyright 2014-2021 Vladimir Kharlampidi\n *\n * Released under the MIT License\n *\n * Released on: December 24, 2021\n */\n\n (function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined'\n ? (module.exports = factory())\n : typeof define === 'function' && define.amd\n ? define(factory)\n : ((global = typeof globalThis !== 'undefined' ? globalThis : global || self), (global.Swiper = factory()));\n })(this, function () {\n\n 'use strict';\n\n /**\n * SSR Window 4.0.2\n * Better handling for window object in SSR environment\n * https://github.com/nolimits4web/ssr-window\n *\n * Copyright 2021, Vladimir Kharlampidi\n *\n * Licensed under MIT\n *\n * Released on: December 13, 2021\n */\n\n /* eslint-disable no-param-reassign */\n function isObject$1(obj) {\n return obj !== null && typeof obj === 'object' && 'constructor' in obj && obj.constructor === Object;\n }\n\n function extend$1(target = {}, src = {}) {\n Object.keys(src).forEach((key) => {\n if (typeof target[key] === 'undefined') target[key] = src[key];\n else if (isObject$1(src[key]) && isObject$1(target[key]) && Object.keys(src[key]).length > 0) {\n extend$1(target[key], src[key]);\n }\n });\n }\n\n const ssrDocument = {\n body: {},\n\n addEventListener() {},\n\n removeEventListener() {},\n\n activeElement: {\n blur() {},\n\n nodeName: '',\n },\n\n querySelector() {\n return null;\n },\n\n querySelectorAll() {\n return [];\n },\n\n getElementById() {\n return null;\n },\n\n createEvent() {\n return {\n initEvent() {},\n };\n },\n\n createElement() {\n return {\n children: [],\n childNodes: [],\n style: {},\n\n setAttribute() {},\n\n getElementsByTagName() {\n return [];\n },\n };\n },\n\n createElementNS() {\n return {};\n },\n\n importNode() {\n return null;\n },\n\n location: {\n hash: '',\n host: '',\n hostname: '',\n href: '',\n origin: '',\n pathname: '',\n protocol: '',\n search: '',\n },\n };\n\n function getDocument() {\n const doc = typeof document !== 'undefined' ? document : {};\n extend$1(doc, ssrDocument);\n return doc;\n }\n\n const ssrWindow = {\n document: ssrDocument,\n navigator: {\n userAgent: '',\n },\n location: {\n hash: '',\n host: '',\n hostname: '',\n href: '',\n origin: '',\n pathname: '',\n protocol: '',\n search: '',\n },\n history: {\n replaceState() {},\n\n pushState() {},\n\n go() {},\n\n back() {},\n },\n CustomEvent: function CustomEvent() {\n return this;\n },\n\n addEventListener() {},\n\n removeEventListener() {},\n\n getComputedStyle() {\n return {\n getPropertyValue() {\n return '';\n },\n };\n },\n\n Image() {},\n\n Date() {},\n\n screen: {},\n\n setTimeout() {},\n\n clearTimeout() {},\n\n matchMedia() {\n return {};\n },\n\n requestAnimationFrame(callback) {\n if (typeof setTimeout === 'undefined') {\n callback();\n return null;\n }\n\n return setTimeout(callback, 0);\n },\n\n cancelAnimationFrame(id) {\n if (typeof setTimeout === 'undefined') {\n return;\n }\n\n clearTimeout(id);\n },\n };\n\n function getWindow() {\n const win = typeof window !== 'undefined' ? window : {};\n extend$1(win, ssrWindow);\n return win;\n }\n\n /**\n * Dom7 4.0.2\n * Minimalistic JavaScript library for DOM manipulation, with a jQuery-compatible API\n * https://framework7.io/docs/dom7.html\n *\n * Copyright 2021, Vladimir Kharlampidi\n *\n * Licensed under MIT\n *\n * Released on: December 13, 2021\n */\n /* eslint-disable no-proto */\n\n function makeReactive(obj) {\n const proto = obj.__proto__;\n Object.defineProperty(obj, '__proto__', {\n get() {\n return proto;\n },\n\n set(value) {\n proto.__proto__ = value;\n },\n });\n }\n\n class Dom7 extends Array {\n constructor(items) {\n super(...(items || []));\n makeReactive(this);\n }\n }\n\n function arrayFlat(arr = []) {\n const res = [];\n arr.forEach((el) => {\n if (Array.isArray(el)) {\n res.push(...arrayFlat(el));\n } else {\n res.push(el);\n }\n });\n return res;\n }\n\n function arrayFilter(arr, callback) {\n return Array.prototype.filter.call(arr, callback);\n }\n\n function arrayUnique(arr) {\n const uniqueArray = [];\n\n for (let i = 0; i < arr.length; i += 1) {\n if (uniqueArray.indexOf(arr[i]) === -1) uniqueArray.push(arr[i]);\n }\n\n return uniqueArray;\n }\n\n function qsa(selector, context) {\n if (typeof selector !== 'string') {\n return [selector];\n }\n\n const a = [];\n const res = context.querySelectorAll(selector);\n\n for (let i = 0; i < res.length; i += 1) {\n a.push(res[i]);\n }\n\n return a;\n }\n\n function $(selector, context) {\n const window = getWindow();\n const document = getDocument();\n let arr = [];\n\n if (!context && selector instanceof Dom7) {\n return selector;\n }\n\n if (!selector) {\n return new Dom7(arr);\n }\n\n if (typeof selector === 'string') {\n const html = selector.trim();\n\n if (html.indexOf('<') >= 0 && html.indexOf('>') >= 0) {\n let toCreate = 'div';\n if (html.indexOf(' c.split(' ')));\n this.forEach((el) => {\n el.classList.add(...classNames);\n });\n return this;\n }\n\n function removeClass(...classes) {\n const classNames = arrayFlat(classes.map((c) => c.split(' ')));\n this.forEach((el) => {\n el.classList.remove(...classNames);\n });\n return this;\n }\n\n function toggleClass(...classes) {\n const classNames = arrayFlat(classes.map((c) => c.split(' ')));\n this.forEach((el) => {\n classNames.forEach((className) => {\n el.classList.toggle(className);\n });\n });\n }\n\n function hasClass(...classes) {\n const classNames = arrayFlat(classes.map((c) => c.split(' ')));\n return (\n arrayFilter(this, (el) => {\n return classNames.filter((className) => el.classList.contains(className)).length > 0;\n }).length > 0\n );\n }\n\n function attr(attrs, value) {\n if (arguments.length === 1 && typeof attrs === 'string') {\n // Get attr\n if (this[0]) return this[0].getAttribute(attrs);\n return undefined;\n } // Set attrs\n\n for (let i = 0; i < this.length; i += 1) {\n if (arguments.length === 2) {\n // String\n this[i].setAttribute(attrs, value);\n } else {\n // Object\n for (const attrName in attrs) {\n this[i][attrName] = attrs[attrName];\n this[i].setAttribute(attrName, attrs[attrName]);\n }\n }\n }\n\n return this;\n }\n\n function removeAttr(attr) {\n for (let i = 0; i < this.length; i += 1) {\n this[i].removeAttribute(attr);\n }\n\n return this;\n }\n\n function transform(transform) {\n for (let i = 0; i < this.length; i += 1) {\n this[i].style.transform = transform;\n }\n\n return this;\n }\n\n function transition$1(duration) {\n for (let i = 0; i < this.length; i += 1) {\n this[i].style.transitionDuration = typeof duration !== 'string' ? `${duration}ms` : duration;\n }\n\n return this;\n }\n\n function on(...args) {\n let [eventType, targetSelector, listener, capture] = args;\n\n if (typeof args[1] === 'function') {\n [eventType, listener, capture] = args;\n targetSelector = undefined;\n }\n\n if (!capture) capture = false;\n\n function handleLiveEvent(e) {\n const target = e.target;\n if (!target) return;\n const eventData = e.target.dom7EventData || [];\n\n if (eventData.indexOf(e) < 0) {\n eventData.unshift(e);\n }\n\n if ($(target).is(targetSelector)) listener.apply(target, eventData);\n else {\n const parents = $(target).parents(); // eslint-disable-line\n\n for (let k = 0; k < parents.length; k += 1) {\n if ($(parents[k]).is(targetSelector)) listener.apply(parents[k], eventData);\n }\n }\n }\n\n function handleEvent(e) {\n const eventData = e && e.target ? e.target.dom7EventData || [] : [];\n\n if (eventData.indexOf(e) < 0) {\n eventData.unshift(e);\n }\n\n listener.apply(this, eventData);\n }\n\n const events = eventType.split(' ');\n let j;\n\n for (let i = 0; i < this.length; i += 1) {\n const el = this[i];\n\n if (!targetSelector) {\n for (j = 0; j < events.length; j += 1) {\n const event = events[j];\n if (!el.dom7Listeners) el.dom7Listeners = {};\n if (!el.dom7Listeners[event]) el.dom7Listeners[event] = [];\n el.dom7Listeners[event].push({\n listener,\n proxyListener: handleEvent,\n });\n el.addEventListener(event, handleEvent, capture);\n }\n } else {\n // Live events\n for (j = 0; j < events.length; j += 1) {\n const event = events[j];\n if (!el.dom7LiveListeners) el.dom7LiveListeners = {};\n if (!el.dom7LiveListeners[event]) el.dom7LiveListeners[event] = [];\n el.dom7LiveListeners[event].push({\n listener,\n proxyListener: handleLiveEvent,\n });\n el.addEventListener(event, handleLiveEvent, capture);\n }\n }\n }\n\n return this;\n }\n\n function off(...args) {\n let [eventType, targetSelector, listener, capture] = args;\n\n if (typeof args[1] === 'function') {\n [eventType, listener, capture] = args;\n targetSelector = undefined;\n }\n\n if (!capture) capture = false;\n const events = eventType.split(' ');\n\n for (let i = 0; i < events.length; i += 1) {\n const event = events[i];\n\n for (let j = 0; j < this.length; j += 1) {\n const el = this[j];\n let handlers;\n\n if (!targetSelector && el.dom7Listeners) {\n handlers = el.dom7Listeners[event];\n } else if (targetSelector && el.dom7LiveListeners) {\n handlers = el.dom7LiveListeners[event];\n }\n\n if (handlers && handlers.length) {\n for (let k = handlers.length - 1; k >= 0; k -= 1) {\n const handler = handlers[k];\n\n if (listener && handler.listener === listener) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n } else if (\n listener &&\n handler.listener &&\n handler.listener.dom7proxy &&\n handler.listener.dom7proxy === listener\n ) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n } else if (!listener) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n }\n }\n }\n }\n }\n\n return this;\n }\n\n function trigger(...args) {\n const window = getWindow();\n const events = args[0].split(' ');\n const eventData = args[1];\n\n for (let i = 0; i < events.length; i += 1) {\n const event = events[i];\n\n for (let j = 0; j < this.length; j += 1) {\n const el = this[j];\n\n if (window.CustomEvent) {\n const evt = new window.CustomEvent(event, {\n detail: eventData,\n bubbles: true,\n cancelable: true,\n });\n el.dom7EventData = args.filter((data, dataIndex) => dataIndex > 0);\n el.dispatchEvent(evt);\n el.dom7EventData = [];\n delete el.dom7EventData;\n }\n }\n }\n\n return this;\n }\n\n function transitionEnd$1(callback) {\n const dom = this;\n\n function fireCallBack(e) {\n if (e.target !== this) return;\n callback.call(this, e);\n dom.off('transitionend', fireCallBack);\n }\n\n if (callback) {\n dom.on('transitionend', fireCallBack);\n }\n\n return this;\n }\n\n function outerWidth(includeMargins) {\n if (this.length > 0) {\n if (includeMargins) {\n const styles = this.styles();\n return (\n this[0].offsetWidth +\n parseFloat(styles.getPropertyValue('margin-right')) +\n parseFloat(styles.getPropertyValue('margin-left'))\n );\n }\n\n return this[0].offsetWidth;\n }\n\n return null;\n }\n\n function outerHeight(includeMargins) {\n if (this.length > 0) {\n if (includeMargins) {\n const styles = this.styles();\n return (\n this[0].offsetHeight +\n parseFloat(styles.getPropertyValue('margin-top')) +\n parseFloat(styles.getPropertyValue('margin-bottom'))\n );\n }\n\n return this[0].offsetHeight;\n }\n\n return null;\n }\n\n function offset() {\n if (this.length > 0) {\n const window = getWindow();\n const document = getDocument();\n const el = this[0];\n const box = el.getBoundingClientRect();\n const body = document.body;\n const clientTop = el.clientTop || body.clientTop || 0;\n const clientLeft = el.clientLeft || body.clientLeft || 0;\n const scrollTop = el === window ? window.scrollY : el.scrollTop;\n const scrollLeft = el === window ? window.scrollX : el.scrollLeft;\n return {\n top: box.top + scrollTop - clientTop,\n left: box.left + scrollLeft - clientLeft,\n };\n }\n\n return null;\n }\n\n function styles() {\n const window = getWindow();\n if (this[0]) return window.getComputedStyle(this[0], null);\n return {};\n }\n\n function css(props, value) {\n const window = getWindow();\n let i;\n\n if (arguments.length === 1) {\n if (typeof props === 'string') {\n // .css('width')\n if (this[0]) return window.getComputedStyle(this[0], null).getPropertyValue(props);\n } else {\n // .css({ width: '100px' })\n for (i = 0; i < this.length; i += 1) {\n for (const prop in props) {\n this[i].style[prop] = props[prop];\n }\n }\n\n return this;\n }\n }\n\n if (arguments.length === 2 && typeof props === 'string') {\n // .css('width', '100px')\n for (i = 0; i < this.length; i += 1) {\n this[i].style[props] = value;\n }\n\n return this;\n }\n\n return this;\n }\n\n function each(callback) {\n if (!callback) return this;\n this.forEach((el, index) => {\n callback.apply(el, [el, index]);\n });\n return this;\n }\n\n function filter(callback) {\n const result = arrayFilter(this, callback);\n return $(result);\n }\n\n function html(html) {\n if (typeof html === 'undefined') {\n return this[0] ? this[0].innerHTML : null;\n }\n\n for (let i = 0; i < this.length; i += 1) {\n this[i].innerHTML = html;\n }\n\n return this;\n }\n\n function text(text) {\n if (typeof text === 'undefined') {\n return this[0] ? this[0].textContent.trim() : null;\n }\n\n for (let i = 0; i < this.length; i += 1) {\n this[i].textContent = text;\n }\n\n return this;\n }\n\n function is(selector) {\n const window = getWindow();\n const document = getDocument();\n const el = this[0];\n let compareWith;\n let i;\n if (!el || typeof selector === 'undefined') return false;\n\n if (typeof selector === 'string') {\n if (el.matches) return el.matches(selector);\n if (el.webkitMatchesSelector) return el.webkitMatchesSelector(selector);\n if (el.msMatchesSelector) return el.msMatchesSelector(selector);\n compareWith = $(selector);\n\n for (i = 0; i < compareWith.length; i += 1) {\n if (compareWith[i] === el) return true;\n }\n\n return false;\n }\n\n if (selector === document) {\n return el === document;\n }\n\n if (selector === window) {\n return el === window;\n }\n\n if (selector.nodeType || selector instanceof Dom7) {\n compareWith = selector.nodeType ? [selector] : selector;\n\n for (i = 0; i < compareWith.length; i += 1) {\n if (compareWith[i] === el) return true;\n }\n\n return false;\n }\n\n return false;\n }\n\n function index() {\n let child = this[0];\n let i;\n\n if (child) {\n i = 0; // eslint-disable-next-line\n\n while ((child = child.previousSibling) !== null) {\n if (child.nodeType === 1) i += 1;\n }\n\n return i;\n }\n\n return undefined;\n }\n\n function eq(index) {\n if (typeof index === 'undefined') return this;\n const length = this.length;\n\n if (index > length - 1) {\n return $([]);\n }\n\n if (index < 0) {\n const returnIndex = length + index;\n if (returnIndex < 0) return $([]);\n return $([this[returnIndex]]);\n }\n\n return $([this[index]]);\n }\n\n function append(...els) {\n let newChild;\n const document = getDocument();\n\n for (let k = 0; k < els.length; k += 1) {\n newChild = els[k];\n\n for (let i = 0; i < this.length; i += 1) {\n if (typeof newChild === 'string') {\n const tempDiv = document.createElement('div');\n tempDiv.innerHTML = newChild;\n\n while (tempDiv.firstChild) {\n this[i].appendChild(tempDiv.firstChild);\n }\n } else if (newChild instanceof Dom7) {\n for (let j = 0; j < newChild.length; j += 1) {\n this[i].appendChild(newChild[j]);\n }\n } else {\n this[i].appendChild(newChild);\n }\n }\n }\n\n return this;\n }\n\n function prepend(newChild) {\n const document = getDocument();\n let i;\n let j;\n\n for (i = 0; i < this.length; i += 1) {\n if (typeof newChild === 'string') {\n const tempDiv = document.createElement('div');\n tempDiv.innerHTML = newChild;\n\n for (j = tempDiv.childNodes.length - 1; j >= 0; j -= 1) {\n this[i].insertBefore(tempDiv.childNodes[j], this[i].childNodes[0]);\n }\n } else if (newChild instanceof Dom7) {\n for (j = 0; j < newChild.length; j += 1) {\n this[i].insertBefore(newChild[j], this[i].childNodes[0]);\n }\n } else {\n this[i].insertBefore(newChild, this[i].childNodes[0]);\n }\n }\n\n return this;\n }\n\n function next(selector) {\n if (this.length > 0) {\n if (selector) {\n if (this[0].nextElementSibling && $(this[0].nextElementSibling).is(selector)) {\n return $([this[0].nextElementSibling]);\n }\n\n return $([]);\n }\n\n if (this[0].nextElementSibling) return $([this[0].nextElementSibling]);\n return $([]);\n }\n\n return $([]);\n }\n\n function nextAll(selector) {\n const nextEls = [];\n let el = this[0];\n if (!el) return $([]);\n\n while (el.nextElementSibling) {\n const next = el.nextElementSibling; // eslint-disable-line\n\n if (selector) {\n if ($(next).is(selector)) nextEls.push(next);\n } else nextEls.push(next);\n\n el = next;\n }\n\n return $(nextEls);\n }\n\n function prev(selector) {\n if (this.length > 0) {\n const el = this[0];\n\n if (selector) {\n if (el.previousElementSibling && $(el.previousElementSibling).is(selector)) {\n return $([el.previousElementSibling]);\n }\n\n return $([]);\n }\n\n if (el.previousElementSibling) return $([el.previousElementSibling]);\n return $([]);\n }\n\n return $([]);\n }\n\n function prevAll(selector) {\n const prevEls = [];\n let el = this[0];\n if (!el) return $([]);\n\n while (el.previousElementSibling) {\n const prev = el.previousElementSibling; // eslint-disable-line\n\n if (selector) {\n if ($(prev).is(selector)) prevEls.push(prev);\n } else prevEls.push(prev);\n\n el = prev;\n }\n\n return $(prevEls);\n }\n\n function parent(selector) {\n const parents = []; // eslint-disable-line\n\n for (let i = 0; i < this.length; i += 1) {\n if (this[i].parentNode !== null) {\n if (selector) {\n if ($(this[i].parentNode).is(selector)) parents.push(this[i].parentNode);\n } else {\n parents.push(this[i].parentNode);\n }\n }\n }\n\n return $(parents);\n }\n\n function parents(selector) {\n const parents = []; // eslint-disable-line\n\n for (let i = 0; i < this.length; i += 1) {\n let parent = this[i].parentNode; // eslint-disable-line\n\n while (parent) {\n if (selector) {\n if ($(parent).is(selector)) parents.push(parent);\n } else {\n parents.push(parent);\n }\n\n parent = parent.parentNode;\n }\n }\n\n return $(parents);\n }\n\n function closest(selector) {\n let closest = this; // eslint-disable-line\n\n if (typeof selector === 'undefined') {\n return $([]);\n }\n\n if (!closest.is(selector)) {\n closest = closest.parents(selector).eq(0);\n }\n\n return closest;\n }\n\n function find(selector) {\n const foundElements = [];\n\n for (let i = 0; i < this.length; i += 1) {\n const found = this[i].querySelectorAll(selector);\n\n for (let j = 0; j < found.length; j += 1) {\n foundElements.push(found[j]);\n }\n }\n\n return $(foundElements);\n }\n\n function children(selector) {\n const children = []; // eslint-disable-line\n\n for (let i = 0; i < this.length; i += 1) {\n const childNodes = this[i].children;\n\n for (let j = 0; j < childNodes.length; j += 1) {\n if (!selector || $(childNodes[j]).is(selector)) {\n children.push(childNodes[j]);\n }\n }\n }\n\n return $(children);\n }\n\n function remove() {\n for (let i = 0; i < this.length; i += 1) {\n if (this[i].parentNode) this[i].parentNode.removeChild(this[i]);\n }\n\n return this;\n }\n\n const Methods = {\n addClass,\n removeClass,\n hasClass,\n toggleClass,\n attr,\n removeAttr,\n transform,\n transition: transition$1,\n on,\n off,\n trigger,\n transitionEnd: transitionEnd$1,\n outerWidth,\n outerHeight,\n styles,\n offset,\n css,\n each,\n html,\n text,\n is,\n index,\n eq,\n append,\n prepend,\n next,\n nextAll,\n prev,\n prevAll,\n parent,\n parents,\n closest,\n find,\n children,\n filter,\n remove,\n };\n Object.keys(Methods).forEach((methodName) => {\n Object.defineProperty($.fn, methodName, {\n value: Methods[methodName],\n writable: true,\n });\n });\n\n function deleteProps(obj) {\n const object = obj;\n Object.keys(object).forEach((key) => {\n try {\n object[key] = null;\n } catch (e) {\n // no getter for object\n }\n\n try {\n delete object[key];\n } catch (e) {\n // something got wrong\n }\n });\n }\n\n function nextTick(callback, delay = 0) {\n return setTimeout(callback, delay);\n }\n\n function now() {\n return Date.now();\n }\n\n function getComputedStyle$1(el) {\n const window = getWindow();\n let style;\n\n if (window.getComputedStyle) {\n style = window.getComputedStyle(el, null);\n }\n\n if (!style && el.currentStyle) {\n style = el.currentStyle;\n }\n\n if (!style) {\n style = el.style;\n }\n\n return style;\n }\n\n function getTranslate(el, axis = 'x') {\n const window = getWindow();\n let matrix;\n let curTransform;\n let transformMatrix;\n const curStyle = getComputedStyle$1(el);\n\n if (window.WebKitCSSMatrix) {\n curTransform = curStyle.transform || curStyle.webkitTransform;\n\n if (curTransform.split(',').length > 6) {\n curTransform = curTransform\n .split(', ')\n .map((a) => a.replace(',', '.'))\n .join(', ');\n } // Some old versions of Webkit choke when 'none' is passed; pass\n // empty string instead in this case\n\n transformMatrix = new window.WebKitCSSMatrix(curTransform === 'none' ? '' : curTransform);\n } else {\n transformMatrix =\n curStyle.MozTransform ||\n curStyle.OTransform ||\n curStyle.MsTransform ||\n curStyle.msTransform ||\n curStyle.transform ||\n curStyle.getPropertyValue('transform').replace('translate(', 'matrix(1, 0, 0, 1,');\n matrix = transformMatrix.toString().split(',');\n }\n\n if (axis === 'x') {\n // Latest Chrome and webkits Fix\n if (window.WebKitCSSMatrix) curTransform = transformMatrix.m41; // Crazy IE10 Matrix\n else if (matrix.length === 16) curTransform = parseFloat(matrix[12]); // Normal Browsers\n else curTransform = parseFloat(matrix[4]);\n }\n\n if (axis === 'y') {\n // Latest Chrome and webkits Fix\n if (window.WebKitCSSMatrix) curTransform = transformMatrix.m42; // Crazy IE10 Matrix\n else if (matrix.length === 16) curTransform = parseFloat(matrix[13]); // Normal Browsers\n else curTransform = parseFloat(matrix[5]);\n }\n\n return curTransform || 0;\n }\n\n function isObject(o) {\n return (\n typeof o === 'object' &&\n o !== null &&\n o.constructor &&\n Object.prototype.toString.call(o).slice(8, -1) === 'Object'\n );\n }\n\n function isNode(node) {\n // eslint-disable-next-line\n if (typeof window !== 'undefined' && typeof window.HTMLElement !== 'undefined') {\n return node instanceof HTMLElement;\n }\n\n return node && (node.nodeType === 1 || node.nodeType === 11);\n }\n\n function extend(...args) {\n const to = Object(args[0]);\n const noExtend = ['__proto__', 'constructor', 'prototype'];\n\n for (let i = 1; i < args.length; i += 1) {\n const nextSource = args[i];\n\n if (nextSource !== undefined && nextSource !== null && !isNode(nextSource)) {\n const keysArray = Object.keys(Object(nextSource)).filter((key) => noExtend.indexOf(key) < 0);\n\n for (let nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex += 1) {\n const nextKey = keysArray[nextIndex];\n const desc = Object.getOwnPropertyDescriptor(nextSource, nextKey);\n\n if (desc !== undefined && desc.enumerable) {\n if (isObject(to[nextKey]) && isObject(nextSource[nextKey])) {\n if (nextSource[nextKey].__swiper__) {\n to[nextKey] = nextSource[nextKey];\n } else {\n extend(to[nextKey], nextSource[nextKey]);\n }\n } else if (!isObject(to[nextKey]) && isObject(nextSource[nextKey])) {\n to[nextKey] = {};\n\n if (nextSource[nextKey].__swiper__) {\n to[nextKey] = nextSource[nextKey];\n } else {\n extend(to[nextKey], nextSource[nextKey]);\n }\n } else {\n to[nextKey] = nextSource[nextKey];\n }\n }\n }\n }\n }\n\n return to;\n }\n\n function setCSSProperty(el, varName, varValue) {\n el.style.setProperty(varName, varValue);\n }\n\n function animateCSSModeScroll({swiper, targetPosition, side}) {\n const window = getWindow();\n const startPosition = -swiper.translate;\n let startTime = null;\n let time;\n const duration = swiper.params.speed;\n swiper.wrapperEl.style.scrollSnapType = 'none';\n window.cancelAnimationFrame(swiper.cssModeFrameID);\n const dir = targetPosition > startPosition ? 'next' : 'prev';\n\n const isOutOfBound = (current, target) => {\n return (dir === 'next' && current >= target) || (dir === 'prev' && current <= target);\n };\n\n const animate = () => {\n time = new Date().getTime();\n\n if (startTime === null) {\n startTime = time;\n }\n\n const progress = Math.max(Math.min((time - startTime) / duration, 1), 0);\n const easeProgress = 0.5 - Math.cos(progress * Math.PI) / 2;\n let currentPosition = startPosition + easeProgress * (targetPosition - startPosition);\n\n if (isOutOfBound(currentPosition, targetPosition)) {\n currentPosition = targetPosition;\n }\n\n swiper.wrapperEl.scrollTo({\n [side]: currentPosition,\n });\n\n if (isOutOfBound(currentPosition, targetPosition)) {\n swiper.wrapperEl.style.overflow = 'hidden';\n swiper.wrapperEl.style.scrollSnapType = '';\n setTimeout(() => {\n swiper.wrapperEl.style.overflow = '';\n swiper.wrapperEl.scrollTo({\n [side]: currentPosition,\n });\n });\n window.cancelAnimationFrame(swiper.cssModeFrameID);\n return;\n }\n\n swiper.cssModeFrameID = window.requestAnimationFrame(animate);\n };\n\n animate();\n }\n\n let support;\n\n function calcSupport() {\n const window = getWindow();\n const document = getDocument();\n return {\n smoothScroll: document.documentElement && 'scrollBehavior' in document.documentElement.style,\n touch: !!('ontouchstart' in window || (window.DocumentTouch && document instanceof window.DocumentTouch)),\n passiveListener: (function checkPassiveListener() {\n let supportsPassive = false;\n\n try {\n const opts = Object.defineProperty({}, 'passive', {\n // eslint-disable-next-line\n get() {\n supportsPassive = true;\n },\n });\n window.addEventListener('testPassiveListener', null, opts);\n } catch (e) {\n // No support\n }\n\n return supportsPassive;\n })(),\n gestures: (function checkGestures() {\n return 'ongesturestart' in window;\n })(),\n };\n }\n\n function getSupport() {\n if (!support) {\n support = calcSupport();\n }\n\n return support;\n }\n\n let deviceCached;\n\n function calcDevice({userAgent} = {}) {\n const support = getSupport();\n const window = getWindow();\n const platform = window.navigator.platform;\n const ua = userAgent || window.navigator.userAgent;\n const device = {\n ios: false,\n android: false,\n };\n const screenWidth = window.screen.width;\n const screenHeight = window.screen.height;\n const android = ua.match(/(Android);?[\\s\\/]+([\\d.]+)?/); // eslint-disable-line\n\n let ipad = ua.match(/(iPad).*OS\\s([\\d_]+)/);\n const ipod = ua.match(/(iPod)(.*OS\\s([\\d_]+))?/);\n const iphone = !ipad && ua.match(/(iPhone\\sOS|iOS)\\s([\\d_]+)/);\n const windows = platform === 'Win32';\n let macos = platform === 'MacIntel'; // iPadOs 13 fix\n\n const iPadScreens = [\n '1024x1366',\n '1366x1024',\n '834x1194',\n '1194x834',\n '834x1112',\n '1112x834',\n '768x1024',\n '1024x768',\n '820x1180',\n '1180x820',\n '810x1080',\n '1080x810',\n ];\n\n if (!ipad && macos && support.touch && iPadScreens.indexOf(`${screenWidth}x${screenHeight}`) >= 0) {\n ipad = ua.match(/(Version)\\/([\\d.]+)/);\n if (!ipad) ipad = [0, 1, '13_0_0'];\n macos = false;\n } // Android\n\n if (android && !windows) {\n device.os = 'android';\n device.android = true;\n }\n\n if (ipad || iphone || ipod) {\n device.os = 'ios';\n device.ios = true;\n } // Export object\n\n return device;\n }\n\n function getDevice(overrides = {}) {\n if (!deviceCached) {\n deviceCached = calcDevice(overrides);\n }\n\n return deviceCached;\n }\n\n let browser;\n\n function calcBrowser() {\n const window = getWindow();\n\n function isSafari() {\n const ua = window.navigator.userAgent.toLowerCase();\n return ua.indexOf('safari') >= 0 && ua.indexOf('chrome') < 0 && ua.indexOf('android') < 0;\n }\n\n return {\n isSafari: isSafari(),\n isWebView: /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(window.navigator.userAgent),\n };\n }\n\n function getBrowser() {\n if (!browser) {\n browser = calcBrowser();\n }\n\n return browser;\n }\n\n function Resize({swiper, on, emit}) {\n const window = getWindow();\n let observer = null;\n\n const resizeHandler = () => {\n if (!swiper || swiper.destroyed || !swiper.initialized) return;\n emit('beforeResize');\n emit('resize');\n };\n\n const createObserver = () => {\n if (!swiper || swiper.destroyed || !swiper.initialized) return;\n observer = new ResizeObserver((entries) => {\n const {width, height} = swiper;\n let newWidth = width;\n let newHeight = height;\n entries.forEach(({contentBoxSize, contentRect, target}) => {\n if (target && target !== swiper.el) return;\n newWidth = contentRect ? contentRect.width : (contentBoxSize[0] || contentBoxSize).inlineSize;\n newHeight = contentRect ? contentRect.height : (contentBoxSize[0] || contentBoxSize).blockSize;\n });\n\n if (newWidth !== width || newHeight !== height) {\n resizeHandler();\n }\n });\n observer.observe(swiper.el);\n };\n\n const removeObserver = () => {\n if (observer && observer.unobserve && swiper.el) {\n observer.unobserve(swiper.el);\n observer = null;\n }\n };\n\n const orientationChangeHandler = () => {\n if (!swiper || swiper.destroyed || !swiper.initialized) return;\n emit('orientationchange');\n };\n\n on('init', () => {\n if (swiper.params.resizeObserver && typeof window.ResizeObserver !== 'undefined') {\n createObserver();\n return;\n }\n\n window.addEventListener('resize', resizeHandler);\n window.addEventListener('orientationchange', orientationChangeHandler);\n });\n on('destroy', () => {\n removeObserver();\n window.removeEventListener('resize', resizeHandler);\n window.removeEventListener('orientationchange', orientationChangeHandler);\n });\n }\n\n function Observer({swiper, extendParams, on, emit}) {\n const observers = [];\n const window = getWindow();\n\n const attach = (target, options = {}) => {\n const ObserverFunc = window.MutationObserver || window.WebkitMutationObserver;\n const observer = new ObserverFunc((mutations) => {\n // The observerUpdate event should only be triggered\n // once despite the number of mutations. Additional\n // triggers are redundant and are very costly\n if (mutations.length === 1) {\n emit('observerUpdate', mutations[0]);\n return;\n }\n\n const observerUpdate = function observerUpdate() {\n emit('observerUpdate', mutations[0]);\n };\n\n if (window.requestAnimationFrame) {\n window.requestAnimationFrame(observerUpdate);\n } else {\n window.setTimeout(observerUpdate, 0);\n }\n });\n observer.observe(target, {\n attributes: typeof options.attributes === 'undefined' ? true : options.attributes,\n childList: typeof options.childList === 'undefined' ? true : options.childList,\n characterData: typeof options.characterData === 'undefined' ? true : options.characterData,\n });\n observers.push(observer);\n };\n\n const init = () => {\n if (!swiper.params.observer) return;\n\n if (swiper.params.observeParents) {\n const containerParents = swiper.$el.parents();\n\n for (let i = 0; i < containerParents.length; i += 1) {\n attach(containerParents[i]);\n }\n } // Observe container\n\n attach(swiper.$el[0], {\n childList: swiper.params.observeSlideChildren,\n }); // Observe wrapper\n\n attach(swiper.$wrapperEl[0], {\n attributes: false,\n });\n };\n\n const destroy = () => {\n observers.forEach((observer) => {\n observer.disconnect();\n });\n observers.splice(0, observers.length);\n };\n\n extendParams({\n observer: false,\n observeParents: false,\n observeSlideChildren: false,\n });\n on('init', init);\n on('destroy', destroy);\n }\n\n /* eslint-disable no-underscore-dangle */\n var eventsEmitter = {\n on(events, handler, priority) {\n const self = this;\n if (typeof handler !== 'function') return self;\n const method = priority ? 'unshift' : 'push';\n events.split(' ').forEach((event) => {\n if (!self.eventsListeners[event]) self.eventsListeners[event] = [];\n self.eventsListeners[event][method](handler);\n });\n return self;\n },\n\n once(events, handler, priority) {\n const self = this;\n if (typeof handler !== 'function') return self;\n\n function onceHandler(...args) {\n self.off(events, onceHandler);\n\n if (onceHandler.__emitterProxy) {\n delete onceHandler.__emitterProxy;\n }\n\n handler.apply(self, args);\n }\n\n onceHandler.__emitterProxy = handler;\n return self.on(events, onceHandler, priority);\n },\n\n onAny(handler, priority) {\n const self = this;\n if (typeof handler !== 'function') return self;\n const method = priority ? 'unshift' : 'push';\n\n if (self.eventsAnyListeners.indexOf(handler) < 0) {\n self.eventsAnyListeners[method](handler);\n }\n\n return self;\n },\n\n offAny(handler) {\n const self = this;\n if (!self.eventsAnyListeners) return self;\n const index = self.eventsAnyListeners.indexOf(handler);\n\n if (index >= 0) {\n self.eventsAnyListeners.splice(index, 1);\n }\n\n return self;\n },\n\n off(events, handler) {\n const self = this;\n if (!self.eventsListeners) return self;\n events.split(' ').forEach((event) => {\n if (typeof handler === 'undefined') {\n self.eventsListeners[event] = [];\n } else if (self.eventsListeners[event]) {\n self.eventsListeners[event].forEach((eventHandler, index) => {\n if (\n eventHandler === handler ||\n (eventHandler.__emitterProxy && eventHandler.__emitterProxy === handler)\n ) {\n self.eventsListeners[event].splice(index, 1);\n }\n });\n }\n });\n return self;\n },\n\n emit(...args) {\n const self = this;\n if (!self.eventsListeners) return self;\n let events;\n let data;\n let context;\n\n if (typeof args[0] === 'string' || Array.isArray(args[0])) {\n events = args[0];\n data = args.slice(1, args.length);\n context = self;\n } else {\n events = args[0].events;\n data = args[0].data;\n context = args[0].context || self;\n }\n\n data.unshift(context);\n const eventsArray = Array.isArray(events) ? events : events.split(' ');\n eventsArray.forEach((event) => {\n if (self.eventsAnyListeners && self.eventsAnyListeners.length) {\n self.eventsAnyListeners.forEach((eventHandler) => {\n eventHandler.apply(context, [event, ...data]);\n });\n }\n\n if (self.eventsListeners && self.eventsListeners[event]) {\n self.eventsListeners[event].forEach((eventHandler) => {\n eventHandler.apply(context, data);\n });\n }\n });\n return self;\n },\n };\n\n function updateSize() {\n const swiper = this;\n let width;\n let height;\n const $el = swiper.$el;\n\n if (typeof swiper.params.width !== 'undefined' && swiper.params.width !== null) {\n width = swiper.params.width;\n } else {\n width = $el[0].clientWidth;\n }\n\n if (typeof swiper.params.height !== 'undefined' && swiper.params.height !== null) {\n height = swiper.params.height;\n } else {\n height = $el[0].clientHeight;\n }\n\n if ((width === 0 && swiper.isHorizontal()) || (height === 0 && swiper.isVertical())) {\n return;\n } // Subtract paddings\n\n width = width - parseInt($el.css('padding-left') || 0, 10) - parseInt($el.css('padding-right') || 0, 10);\n height = height - parseInt($el.css('padding-top') || 0, 10) - parseInt($el.css('padding-bottom') || 0, 10);\n if (Number.isNaN(width)) width = 0;\n if (Number.isNaN(height)) height = 0;\n Object.assign(swiper, {\n width,\n height,\n size: swiper.isHorizontal() ? width : height,\n });\n }\n\n function updateSlides() {\n const swiper = this;\n\n function getDirectionLabel(property) {\n if (swiper.isHorizontal()) {\n return property;\n } // prettier-ignore\n\n return {\n width: 'height',\n 'margin-top': 'margin-left',\n 'margin-bottom ': 'margin-right',\n 'margin-left': 'margin-top',\n 'margin-right': 'margin-bottom',\n 'padding-left': 'padding-top',\n 'padding-right': 'padding-bottom',\n marginRight: 'marginBottom',\n }[property];\n }\n\n function getDirectionPropertyValue(node, label) {\n return parseFloat(node.getPropertyValue(getDirectionLabel(label)) || 0);\n }\n\n const params = swiper.params;\n const {$wrapperEl, size: swiperSize, rtlTranslate: rtl, wrongRTL} = swiper;\n const isVirtual = swiper.virtual && params.virtual.enabled;\n const previousSlidesLength = isVirtual ? swiper.virtual.slides.length : swiper.slides.length;\n const slides = $wrapperEl.children(`.${swiper.params.slideClass}`);\n const slidesLength = isVirtual ? swiper.virtual.slides.length : slides.length;\n let snapGrid = [];\n const slidesGrid = [];\n const slidesSizesGrid = [];\n let offsetBefore = params.slidesOffsetBefore;\n\n if (typeof offsetBefore === 'function') {\n offsetBefore = params.slidesOffsetBefore.call(swiper);\n }\n\n let offsetAfter = params.slidesOffsetAfter;\n\n if (typeof offsetAfter === 'function') {\n offsetAfter = params.slidesOffsetAfter.call(swiper);\n }\n\n const previousSnapGridLength = swiper.snapGrid.length;\n const previousSlidesGridLength = swiper.slidesGrid.length;\n let spaceBetween = params.spaceBetween;\n let slidePosition = -offsetBefore;\n let prevSlideSize = 0;\n let index = 0;\n\n if (typeof swiperSize === 'undefined') {\n return;\n }\n\n if (typeof spaceBetween === 'string' && spaceBetween.indexOf('%') >= 0) {\n spaceBetween = (parseFloat(spaceBetween.replace('%', '')) / 100) * swiperSize;\n }\n\n swiper.virtualSize = -spaceBetween; // reset margins\n\n if (rtl)\n slides.css({\n marginLeft: '',\n marginBottom: '',\n marginTop: '',\n });\n else\n slides.css({\n marginRight: '',\n marginBottom: '',\n marginTop: '',\n }); // reset cssMode offsets\n\n if (params.centeredSlides && params.cssMode) {\n setCSSProperty(swiper.wrapperEl, '--swiper-centered-offset-before', '');\n setCSSProperty(swiper.wrapperEl, '--swiper-centered-offset-after', '');\n }\n\n const gridEnabled = params.grid && params.grid.rows > 1 && swiper.grid;\n\n if (gridEnabled) {\n swiper.grid.initSlides(slidesLength);\n } // Calc slides\n\n let slideSize;\n const shouldResetSlideSize =\n params.slidesPerView === 'auto' &&\n params.breakpoints &&\n Object.keys(params.breakpoints).filter((key) => {\n return typeof params.breakpoints[key].slidesPerView !== 'undefined';\n }).length > 0;\n\n for (let i = 0; i < slidesLength; i += 1) {\n slideSize = 0;\n const slide = slides.eq(i);\n\n if (gridEnabled) {\n swiper.grid.updateSlide(i, slide, slidesLength, getDirectionLabel);\n }\n\n if (slide.css('display') === 'none') continue; // eslint-disable-line\n\n if (params.slidesPerView === 'auto') {\n if (shouldResetSlideSize) {\n slides[i].style[getDirectionLabel('width')] = ``;\n }\n\n const slideStyles = getComputedStyle(slide[0]);\n const currentTransform = slide[0].style.transform;\n const currentWebKitTransform = slide[0].style.webkitTransform;\n\n if (currentTransform) {\n slide[0].style.transform = 'none';\n }\n\n if (currentWebKitTransform) {\n slide[0].style.webkitTransform = 'none';\n }\n\n if (params.roundLengths) {\n slideSize = swiper.isHorizontal() ? slide.outerWidth(true) : slide.outerHeight(true);\n } else {\n // eslint-disable-next-line\n const width = getDirectionPropertyValue(slideStyles, 'width');\n const paddingLeft = getDirectionPropertyValue(slideStyles, 'padding-left');\n const paddingRight = getDirectionPropertyValue(slideStyles, 'padding-right');\n const marginLeft = getDirectionPropertyValue(slideStyles, 'margin-left');\n const marginRight = getDirectionPropertyValue(slideStyles, 'margin-right');\n const boxSizing = slideStyles.getPropertyValue('box-sizing');\n\n if (boxSizing && boxSizing === 'border-box') {\n slideSize = width + marginLeft + marginRight;\n } else {\n const {clientWidth, offsetWidth} = slide[0];\n slideSize = width + paddingLeft + paddingRight + marginLeft + marginRight + (offsetWidth - clientWidth);\n }\n }\n\n if (currentTransform) {\n slide[0].style.transform = currentTransform;\n }\n\n if (currentWebKitTransform) {\n slide[0].style.webkitTransform = currentWebKitTransform;\n }\n\n if (params.roundLengths) slideSize = Math.floor(slideSize);\n } else {\n slideSize = (swiperSize - (params.slidesPerView - 1) * spaceBetween) / params.slidesPerView;\n if (params.roundLengths) slideSize = Math.floor(slideSize);\n\n if (slides[i]) {\n slides[i].style[getDirectionLabel('width')] = `${slideSize}px`;\n }\n }\n\n if (slides[i]) {\n slides[i].swiperSlideSize = slideSize;\n }\n\n slidesSizesGrid.push(slideSize);\n\n if (params.centeredSlides) {\n slidePosition = slidePosition + slideSize / 2 + prevSlideSize / 2 + spaceBetween;\n if (prevSlideSize === 0 && i !== 0) slidePosition = slidePosition - swiperSize / 2 - spaceBetween;\n if (i === 0) slidePosition = slidePosition - swiperSize / 2 - spaceBetween;\n if (Math.abs(slidePosition) < 1 / 1000) slidePosition = 0;\n if (params.roundLengths) slidePosition = Math.floor(slidePosition);\n if (index % params.slidesPerGroup === 0) snapGrid.push(slidePosition);\n slidesGrid.push(slidePosition);\n } else {\n if (params.roundLengths) slidePosition = Math.floor(slidePosition);\n if ((index - Math.min(swiper.params.slidesPerGroupSkip, index)) % swiper.params.slidesPerGroup === 0)\n snapGrid.push(slidePosition);\n slidesGrid.push(slidePosition);\n slidePosition = slidePosition + slideSize + spaceBetween;\n }\n\n swiper.virtualSize += slideSize + spaceBetween;\n prevSlideSize = slideSize;\n index += 1;\n }\n\n swiper.virtualSize = Math.max(swiper.virtualSize, swiperSize) + offsetAfter;\n\n if (rtl && wrongRTL && (params.effect === 'slide' || params.effect === 'coverflow')) {\n $wrapperEl.css({\n width: `${swiper.virtualSize + params.spaceBetween}px`,\n });\n }\n\n if (params.setWrapperSize) {\n $wrapperEl.css({\n [getDirectionLabel('width')]: `${swiper.virtualSize + params.spaceBetween}px`,\n });\n }\n\n if (gridEnabled) {\n swiper.grid.updateWrapperSize(slideSize, snapGrid, getDirectionLabel);\n } // Remove last grid elements depending on width\n\n if (!params.centeredSlides) {\n const newSlidesGrid = [];\n\n for (let i = 0; i < snapGrid.length; i += 1) {\n let slidesGridItem = snapGrid[i];\n if (params.roundLengths) slidesGridItem = Math.floor(slidesGridItem);\n\n if (snapGrid[i] <= swiper.virtualSize - swiperSize) {\n newSlidesGrid.push(slidesGridItem);\n }\n }\n\n snapGrid = newSlidesGrid;\n\n if (Math.floor(swiper.virtualSize - swiperSize) - Math.floor(snapGrid[snapGrid.length - 1]) > 1) {\n snapGrid.push(swiper.virtualSize - swiperSize);\n }\n }\n\n if (snapGrid.length === 0) snapGrid = [0];\n\n if (params.spaceBetween !== 0) {\n const key = swiper.isHorizontal() && rtl ? 'marginLeft' : getDirectionLabel('marginRight');\n slides\n .filter((_, slideIndex) => {\n if (!params.cssMode) return true;\n\n if (slideIndex === slides.length - 1) {\n return false;\n }\n\n return true;\n })\n .css({\n [key]: `${spaceBetween}px`,\n });\n }\n\n if (params.centeredSlides && params.centeredSlidesBounds) {\n let allSlidesSize = 0;\n slidesSizesGrid.forEach((slideSizeValue) => {\n allSlidesSize += slideSizeValue + (params.spaceBetween ? params.spaceBetween : 0);\n });\n allSlidesSize -= params.spaceBetween;\n const maxSnap = allSlidesSize - swiperSize;\n snapGrid = snapGrid.map((snap) => {\n if (snap < 0) return -offsetBefore;\n if (snap > maxSnap) return maxSnap + offsetAfter;\n return snap;\n });\n }\n\n if (params.centerInsufficientSlides) {\n let allSlidesSize = 0;\n slidesSizesGrid.forEach((slideSizeValue) => {\n allSlidesSize += slideSizeValue + (params.spaceBetween ? params.spaceBetween : 0);\n });\n allSlidesSize -= params.spaceBetween;\n\n if (allSlidesSize < swiperSize) {\n const allSlidesOffset = (swiperSize - allSlidesSize) / 2;\n snapGrid.forEach((snap, snapIndex) => {\n snapGrid[snapIndex] = snap - allSlidesOffset;\n });\n slidesGrid.forEach((snap, snapIndex) => {\n slidesGrid[snapIndex] = snap + allSlidesOffset;\n });\n }\n }\n\n Object.assign(swiper, {\n slides,\n snapGrid,\n slidesGrid,\n slidesSizesGrid,\n });\n\n if (params.centeredSlides && params.cssMode && !params.centeredSlidesBounds) {\n setCSSProperty(swiper.wrapperEl, '--swiper-centered-offset-before', `${-snapGrid[0]}px`);\n setCSSProperty(\n swiper.wrapperEl,\n '--swiper-centered-offset-after',\n `${swiper.size / 2 - slidesSizesGrid[slidesSizesGrid.length - 1] / 2}px`,\n );\n const addToSnapGrid = -swiper.snapGrid[0];\n const addToSlidesGrid = -swiper.slidesGrid[0];\n swiper.snapGrid = swiper.snapGrid.map((v) => v + addToSnapGrid);\n swiper.slidesGrid = swiper.slidesGrid.map((v) => v + addToSlidesGrid);\n }\n\n if (slidesLength !== previousSlidesLength) {\n swiper.emit('slidesLengthChange');\n }\n\n if (snapGrid.length !== previousSnapGridLength) {\n if (swiper.params.watchOverflow) swiper.checkOverflow();\n swiper.emit('snapGridLengthChange');\n }\n\n if (slidesGrid.length !== previousSlidesGridLength) {\n swiper.emit('slidesGridLengthChange');\n }\n\n if (params.watchSlidesProgress) {\n swiper.updateSlidesOffset();\n }\n }\n\n function updateAutoHeight(speed) {\n const swiper = this;\n const activeSlides = [];\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n let newHeight = 0;\n let i;\n\n if (typeof speed === 'number') {\n swiper.setTransition(speed);\n } else if (speed === true) {\n swiper.setTransition(swiper.params.speed);\n }\n\n const getSlideByIndex = (index) => {\n if (isVirtual) {\n return swiper.slides.filter((el) => parseInt(el.getAttribute('data-swiper-slide-index'), 10) === index)[0];\n }\n\n return swiper.slides.eq(index)[0];\n }; // Find slides currently in view\n\n if (swiper.params.slidesPerView !== 'auto' && swiper.params.slidesPerView > 1) {\n if (swiper.params.centeredSlides) {\n swiper.visibleSlides.each((slide) => {\n activeSlides.push(slide);\n });\n } else {\n for (i = 0; i < Math.ceil(swiper.params.slidesPerView); i += 1) {\n const index = swiper.activeIndex + i;\n if (index > swiper.slides.length && !isVirtual) break;\n activeSlides.push(getSlideByIndex(index));\n }\n }\n } else {\n activeSlides.push(getSlideByIndex(swiper.activeIndex));\n } // Find new height from highest slide in view\n\n for (i = 0; i < activeSlides.length; i += 1) {\n if (typeof activeSlides[i] !== 'undefined') {\n const height = activeSlides[i].offsetHeight;\n newHeight = height > newHeight ? height : newHeight;\n }\n } // Update Height\n\n if (newHeight || newHeight === 0) swiper.$wrapperEl.css('height', `${newHeight}px`);\n }\n\n function updateSlidesOffset() {\n const swiper = this;\n const slides = swiper.slides;\n\n for (let i = 0; i < slides.length; i += 1) {\n slides[i].swiperSlideOffset = swiper.isHorizontal() ? slides[i].offsetLeft : slides[i].offsetTop;\n }\n }\n\n function updateSlidesProgress(translate = (this && this.translate) || 0) {\n const swiper = this;\n const params = swiper.params;\n const {slides, rtlTranslate: rtl, snapGrid} = swiper;\n if (slides.length === 0) return;\n if (typeof slides[0].swiperSlideOffset === 'undefined') swiper.updateSlidesOffset();\n let offsetCenter = -translate;\n if (rtl) offsetCenter = translate; // Visible Slides\n\n slides.removeClass(params.slideVisibleClass);\n swiper.visibleSlidesIndexes = [];\n swiper.visibleSlides = [];\n\n for (let i = 0; i < slides.length; i += 1) {\n const slide = slides[i];\n let slideOffset = slide.swiperSlideOffset;\n\n if (params.cssMode && params.centeredSlides) {\n slideOffset -= slides[0].swiperSlideOffset;\n }\n\n const slideProgress =\n (offsetCenter + (params.centeredSlides ? swiper.minTranslate() : 0) - slideOffset) /\n (slide.swiperSlideSize + params.spaceBetween);\n const originalSlideProgress =\n (offsetCenter - snapGrid[0] + (params.centeredSlides ? swiper.minTranslate() : 0) - slideOffset) /\n (slide.swiperSlideSize + params.spaceBetween);\n const slideBefore = -(offsetCenter - slideOffset);\n const slideAfter = slideBefore + swiper.slidesSizesGrid[i];\n const isVisible =\n (slideBefore >= 0 && slideBefore < swiper.size - 1) ||\n (slideAfter > 1 && slideAfter <= swiper.size) ||\n (slideBefore <= 0 && slideAfter >= swiper.size);\n\n if (isVisible) {\n swiper.visibleSlides.push(slide);\n swiper.visibleSlidesIndexes.push(i);\n slides.eq(i).addClass(params.slideVisibleClass);\n }\n\n slide.progress = rtl ? -slideProgress : slideProgress;\n slide.originalProgress = rtl ? -originalSlideProgress : originalSlideProgress;\n }\n\n swiper.visibleSlides = $(swiper.visibleSlides);\n }\n\n function updateProgress(translate) {\n const swiper = this;\n\n if (typeof translate === 'undefined') {\n const multiplier = swiper.rtlTranslate ? -1 : 1; // eslint-disable-next-line\n\n translate = (swiper && swiper.translate && swiper.translate * multiplier) || 0;\n }\n\n const params = swiper.params;\n const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n let {progress, isBeginning, isEnd} = swiper;\n const wasBeginning = isBeginning;\n const wasEnd = isEnd;\n\n if (translatesDiff === 0) {\n progress = 0;\n isBeginning = true;\n isEnd = true;\n } else {\n progress = (translate - swiper.minTranslate()) / translatesDiff;\n isBeginning = progress <= 0;\n isEnd = progress >= 1;\n }\n\n Object.assign(swiper, {\n progress,\n isBeginning,\n isEnd,\n });\n if (params.watchSlidesProgress || (params.centeredSlides && params.autoHeight))\n swiper.updateSlidesProgress(translate);\n\n if (isBeginning && !wasBeginning) {\n swiper.emit('reachBeginning toEdge');\n }\n\n if (isEnd && !wasEnd) {\n swiper.emit('reachEnd toEdge');\n }\n\n if ((wasBeginning && !isBeginning) || (wasEnd && !isEnd)) {\n swiper.emit('fromEdge');\n }\n\n swiper.emit('progress', progress);\n }\n\n function updateSlidesClasses() {\n const swiper = this;\n const {slides, params, $wrapperEl, activeIndex, realIndex} = swiper;\n const isVirtual = swiper.virtual && params.virtual.enabled;\n slides.removeClass(\n `${params.slideActiveClass} ${params.slideNextClass} ${params.slidePrevClass} ${params.slideDuplicateActiveClass} ${params.slideDuplicateNextClass} ${params.slideDuplicatePrevClass}`,\n );\n let activeSlide;\n\n if (isVirtual) {\n activeSlide = swiper.$wrapperEl.find(`.${params.slideClass}[data-swiper-slide-index=\"${activeIndex}\"]`);\n } else {\n activeSlide = slides.eq(activeIndex);\n } // Active classes\n\n activeSlide.addClass(params.slideActiveClass);\n\n if (params.loop) {\n // Duplicate to all looped slides\n if (activeSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children(\n `.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index=\"${realIndex}\"]`,\n )\n .addClass(params.slideDuplicateActiveClass);\n } else {\n $wrapperEl\n .children(`.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index=\"${realIndex}\"]`)\n .addClass(params.slideDuplicateActiveClass);\n }\n } // Next Slide\n\n let nextSlide = activeSlide.nextAll(`.${params.slideClass}`).eq(0).addClass(params.slideNextClass);\n\n if (params.loop && nextSlide.length === 0) {\n nextSlide = slides.eq(0);\n nextSlide.addClass(params.slideNextClass);\n } // Prev Slide\n\n let prevSlide = activeSlide.prevAll(`.${params.slideClass}`).eq(0).addClass(params.slidePrevClass);\n\n if (params.loop && prevSlide.length === 0) {\n prevSlide = slides.eq(-1);\n prevSlide.addClass(params.slidePrevClass);\n }\n\n if (params.loop) {\n // Duplicate to all looped slides\n if (nextSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children(\n `.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index=\"${nextSlide.attr(\n 'data-swiper-slide-index',\n )}\"]`,\n )\n .addClass(params.slideDuplicateNextClass);\n } else {\n $wrapperEl\n .children(\n `.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index=\"${nextSlide.attr(\n 'data-swiper-slide-index',\n )}\"]`,\n )\n .addClass(params.slideDuplicateNextClass);\n }\n\n if (prevSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children(\n `.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index=\"${prevSlide.attr(\n 'data-swiper-slide-index',\n )}\"]`,\n )\n .addClass(params.slideDuplicatePrevClass);\n } else {\n $wrapperEl\n .children(\n `.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index=\"${prevSlide.attr(\n 'data-swiper-slide-index',\n )}\"]`,\n )\n .addClass(params.slideDuplicatePrevClass);\n }\n }\n\n swiper.emitSlidesClasses();\n }\n\n function updateActiveIndex(newActiveIndex) {\n const swiper = this;\n const translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate;\n const {\n slidesGrid,\n snapGrid,\n params,\n activeIndex: previousIndex,\n realIndex: previousRealIndex,\n snapIndex: previousSnapIndex,\n } = swiper;\n let activeIndex = newActiveIndex;\n let snapIndex;\n\n if (typeof activeIndex === 'undefined') {\n for (let i = 0; i < slidesGrid.length; i += 1) {\n if (typeof slidesGrid[i + 1] !== 'undefined') {\n if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1] - (slidesGrid[i + 1] - slidesGrid[i]) / 2) {\n activeIndex = i;\n } else if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1]) {\n activeIndex = i + 1;\n }\n } else if (translate >= slidesGrid[i]) {\n activeIndex = i;\n }\n } // Normalize slideIndex\n\n if (params.normalizeSlideIndex) {\n if (activeIndex < 0 || typeof activeIndex === 'undefined') activeIndex = 0;\n }\n }\n\n if (snapGrid.indexOf(translate) >= 0) {\n snapIndex = snapGrid.indexOf(translate);\n } else {\n const skip = Math.min(params.slidesPerGroupSkip, activeIndex);\n snapIndex = skip + Math.floor((activeIndex - skip) / params.slidesPerGroup);\n }\n\n if (snapIndex >= snapGrid.length) snapIndex = snapGrid.length - 1;\n\n if (activeIndex === previousIndex) {\n if (snapIndex !== previousSnapIndex) {\n swiper.snapIndex = snapIndex;\n swiper.emit('snapIndexChange');\n }\n\n return;\n } // Get real index\n\n const realIndex = parseInt(swiper.slides.eq(activeIndex).attr('data-swiper-slide-index') || activeIndex, 10);\n Object.assign(swiper, {\n snapIndex,\n realIndex,\n previousIndex,\n activeIndex,\n });\n swiper.emit('activeIndexChange');\n swiper.emit('snapIndexChange');\n\n if (previousRealIndex !== realIndex) {\n swiper.emit('realIndexChange');\n }\n\n if (swiper.initialized || swiper.params.runCallbacksOnInit) {\n swiper.emit('slideChange');\n }\n }\n\n function updateClickedSlide(e) {\n const swiper = this;\n const params = swiper.params;\n const slide = $(e).closest(`.${params.slideClass}`)[0];\n let slideFound = false;\n let slideIndex;\n\n if (slide) {\n for (let i = 0; i < swiper.slides.length; i += 1) {\n if (swiper.slides[i] === slide) {\n slideFound = true;\n slideIndex = i;\n break;\n }\n }\n }\n\n if (slide && slideFound) {\n swiper.clickedSlide = slide;\n\n if (swiper.virtual && swiper.params.virtual.enabled) {\n swiper.clickedIndex = parseInt($(slide).attr('data-swiper-slide-index'), 10);\n } else {\n swiper.clickedIndex = slideIndex;\n }\n } else {\n swiper.clickedSlide = undefined;\n swiper.clickedIndex = undefined;\n return;\n }\n\n if (\n params.slideToClickedSlide &&\n swiper.clickedIndex !== undefined &&\n swiper.clickedIndex !== swiper.activeIndex\n ) {\n swiper.slideToClickedSlide();\n }\n }\n\n var update = {\n updateSize,\n updateSlides,\n updateAutoHeight,\n updateSlidesOffset,\n updateSlidesProgress,\n updateProgress,\n updateSlidesClasses,\n updateActiveIndex,\n updateClickedSlide,\n };\n\n function getSwiperTranslate(axis = this.isHorizontal() ? 'x' : 'y') {\n const swiper = this;\n const {params, rtlTranslate: rtl, translate, $wrapperEl} = swiper;\n\n if (params.virtualTranslate) {\n return rtl ? -translate : translate;\n }\n\n if (params.cssMode) {\n return translate;\n }\n\n let currentTranslate = getTranslate($wrapperEl[0], axis);\n if (rtl) currentTranslate = -currentTranslate;\n return currentTranslate || 0;\n }\n\n function setTranslate(translate, byController) {\n const swiper = this;\n const {rtlTranslate: rtl, params, $wrapperEl, wrapperEl, progress} = swiper;\n let x = 0;\n let y = 0;\n const z = 0;\n\n if (swiper.isHorizontal()) {\n x = rtl ? -translate : translate;\n } else {\n y = translate;\n }\n\n if (params.roundLengths) {\n x = Math.floor(x);\n y = Math.floor(y);\n }\n\n if (params.cssMode) {\n wrapperEl[swiper.isHorizontal() ? 'scrollLeft' : 'scrollTop'] = swiper.isHorizontal() ? -x : -y;\n } else if (!params.virtualTranslate) {\n $wrapperEl.transform(`translate3d(${x}px, ${y}px, ${z}px)`);\n }\n\n swiper.previousTranslate = swiper.translate;\n swiper.translate = swiper.isHorizontal() ? x : y; // Check if we need to update progress\n\n let newProgress;\n const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n\n if (translatesDiff === 0) {\n newProgress = 0;\n } else {\n newProgress = (translate - swiper.minTranslate()) / translatesDiff;\n }\n\n if (newProgress !== progress) {\n swiper.updateProgress(translate);\n }\n\n swiper.emit('setTranslate', swiper.translate, byController);\n }\n\n function minTranslate() {\n return -this.snapGrid[0];\n }\n\n function maxTranslate() {\n return -this.snapGrid[this.snapGrid.length - 1];\n }\n\n function translateTo(\n translate = 0,\n speed = this.params.speed,\n runCallbacks = true,\n translateBounds = true,\n internal,\n ) {\n const swiper = this;\n const {params, wrapperEl} = swiper;\n\n if (swiper.animating && params.preventInteractionOnTransition) {\n return false;\n }\n\n const minTranslate = swiper.minTranslate();\n const maxTranslate = swiper.maxTranslate();\n let newTranslate;\n if (translateBounds && translate > minTranslate) newTranslate = minTranslate;\n else if (translateBounds && translate < maxTranslate) newTranslate = maxTranslate;\n else newTranslate = translate; // Update progress\n\n swiper.updateProgress(newTranslate);\n\n if (params.cssMode) {\n const isH = swiper.isHorizontal();\n\n if (speed === 0) {\n wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = -newTranslate;\n } else {\n if (!swiper.support.smoothScroll) {\n animateCSSModeScroll({\n swiper,\n targetPosition: -newTranslate,\n side: isH ? 'left' : 'top',\n });\n return true;\n }\n\n wrapperEl.scrollTo({\n [isH ? 'left' : 'top']: -newTranslate,\n behavior: 'smooth',\n });\n }\n\n return true;\n }\n\n if (speed === 0) {\n swiper.setTransition(0);\n swiper.setTranslate(newTranslate);\n\n if (runCallbacks) {\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.emit('transitionEnd');\n }\n } else {\n swiper.setTransition(speed);\n swiper.setTranslate(newTranslate);\n\n if (runCallbacks) {\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.emit('transitionStart');\n }\n\n if (!swiper.animating) {\n swiper.animating = true;\n\n if (!swiper.onTranslateToWrapperTransitionEnd) {\n swiper.onTranslateToWrapperTransitionEnd = function transitionEnd(e) {\n if (!swiper || swiper.destroyed) return;\n if (e.target !== this) return;\n swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.onTranslateToWrapperTransitionEnd);\n swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.onTranslateToWrapperTransitionEnd);\n swiper.onTranslateToWrapperTransitionEnd = null;\n delete swiper.onTranslateToWrapperTransitionEnd;\n\n if (runCallbacks) {\n swiper.emit('transitionEnd');\n }\n };\n }\n\n swiper.$wrapperEl[0].addEventListener('transitionend', swiper.onTranslateToWrapperTransitionEnd);\n swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.onTranslateToWrapperTransitionEnd);\n }\n }\n\n return true;\n }\n\n var translate = {\n getTranslate: getSwiperTranslate,\n setTranslate,\n minTranslate,\n maxTranslate,\n translateTo,\n };\n\n function setTransition(duration, byController) {\n const swiper = this;\n\n if (!swiper.params.cssMode) {\n swiper.$wrapperEl.transition(duration);\n }\n\n swiper.emit('setTransition', duration, byController);\n }\n\n function transitionEmit({swiper, runCallbacks, direction, step}) {\n const {activeIndex, previousIndex} = swiper;\n let dir = direction;\n\n if (!dir) {\n if (activeIndex > previousIndex) dir = 'next';\n else if (activeIndex < previousIndex) dir = 'prev';\n else dir = 'reset';\n }\n\n swiper.emit(`transition${step}`);\n\n if (runCallbacks && activeIndex !== previousIndex) {\n if (dir === 'reset') {\n swiper.emit(`slideResetTransition${step}`);\n return;\n }\n\n swiper.emit(`slideChangeTransition${step}`);\n\n if (dir === 'next') {\n swiper.emit(`slideNextTransition${step}`);\n } else {\n swiper.emit(`slidePrevTransition${step}`);\n }\n }\n }\n\n function transitionStart(runCallbacks = true, direction) {\n const swiper = this;\n const {params} = swiper;\n if (params.cssMode) return;\n\n if (params.autoHeight) {\n swiper.updateAutoHeight();\n }\n\n transitionEmit({\n swiper,\n runCallbacks,\n direction,\n step: 'Start',\n });\n }\n\n function transitionEnd(runCallbacks = true, direction) {\n const swiper = this;\n const {params} = swiper;\n swiper.animating = false;\n if (params.cssMode) return;\n swiper.setTransition(0);\n transitionEmit({\n swiper,\n runCallbacks,\n direction,\n step: 'End',\n });\n }\n\n var transition = {\n setTransition,\n transitionStart,\n transitionEnd,\n };\n\n function slideTo(index = 0, speed = this.params.speed, runCallbacks = true, internal, initial) {\n if (typeof index !== 'number' && typeof index !== 'string') {\n throw new Error(\n `The 'index' argument cannot have type other than 'number' or 'string'. [${typeof index}] given.`,\n );\n }\n\n if (typeof index === 'string') {\n /**\n * The `index` argument converted from `string` to `number`.\n * @type {number}\n */\n const indexAsNumber = parseInt(index, 10);\n /**\n * Determines whether the `index` argument is a valid `number`\n * after being converted from the `string` type.\n * @type {boolean}\n */\n\n const isValidNumber = isFinite(indexAsNumber);\n\n if (!isValidNumber) {\n throw new Error(`The passed-in 'index' (string) couldn't be converted to 'number'. [${index}] given.`);\n } // Knowing that the converted `index` is a valid number,\n // we can update the original argument's value.\n\n index = indexAsNumber;\n }\n\n const swiper = this;\n let slideIndex = index;\n if (slideIndex < 0) slideIndex = 0;\n const {params, snapGrid, slidesGrid, previousIndex, activeIndex, rtlTranslate: rtl, wrapperEl, enabled} = swiper;\n\n if ((swiper.animating && params.preventInteractionOnTransition) || (!enabled && !internal && !initial)) {\n return false;\n }\n\n const skip = Math.min(swiper.params.slidesPerGroupSkip, slideIndex);\n let snapIndex = skip + Math.floor((slideIndex - skip) / swiper.params.slidesPerGroup);\n if (snapIndex >= snapGrid.length) snapIndex = snapGrid.length - 1;\n\n if ((activeIndex || params.initialSlide || 0) === (previousIndex || 0) && runCallbacks) {\n swiper.emit('beforeSlideChangeStart');\n }\n\n const translate = -snapGrid[snapIndex]; // Update progress\n\n swiper.updateProgress(translate); // Normalize slideIndex\n\n if (params.normalizeSlideIndex) {\n for (let i = 0; i < slidesGrid.length; i += 1) {\n const normalizedTranslate = -Math.floor(translate * 100);\n const normalizedGrid = Math.floor(slidesGrid[i] * 100);\n const normalizedGridNext = Math.floor(slidesGrid[i + 1] * 100);\n\n if (typeof slidesGrid[i + 1] !== 'undefined') {\n if (\n normalizedTranslate >= normalizedGrid &&\n normalizedTranslate < normalizedGridNext - (normalizedGridNext - normalizedGrid) / 2\n ) {\n slideIndex = i;\n } else if (normalizedTranslate >= normalizedGrid && normalizedTranslate < normalizedGridNext) {\n slideIndex = i + 1;\n }\n } else if (normalizedTranslate >= normalizedGrid) {\n slideIndex = i;\n }\n }\n } // Directions locks\n\n if (swiper.initialized && slideIndex !== activeIndex) {\n if (!swiper.allowSlideNext && translate < swiper.translate && translate < swiper.minTranslate()) {\n return false;\n }\n\n if (!swiper.allowSlidePrev && translate > swiper.translate && translate > swiper.maxTranslate()) {\n if ((activeIndex || 0) !== slideIndex) return false;\n }\n }\n\n let direction;\n if (slideIndex > activeIndex) direction = 'next';\n else if (slideIndex < activeIndex) direction = 'prev';\n else direction = 'reset'; // Update Index\n\n if ((rtl && -translate === swiper.translate) || (!rtl && translate === swiper.translate)) {\n swiper.updateActiveIndex(slideIndex); // Update Height\n\n if (params.autoHeight) {\n swiper.updateAutoHeight();\n }\n\n swiper.updateSlidesClasses();\n\n if (params.effect !== 'slide') {\n swiper.setTranslate(translate);\n }\n\n if (direction !== 'reset') {\n swiper.transitionStart(runCallbacks, direction);\n swiper.transitionEnd(runCallbacks, direction);\n }\n\n return false;\n }\n\n if (params.cssMode) {\n const isH = swiper.isHorizontal();\n const t = rtl ? translate : -translate;\n\n if (speed === 0) {\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n\n if (isVirtual) {\n swiper.wrapperEl.style.scrollSnapType = 'none';\n swiper._immediateVirtual = true;\n }\n\n wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = t;\n\n if (isVirtual) {\n requestAnimationFrame(() => {\n swiper.wrapperEl.style.scrollSnapType = '';\n swiper._swiperImmediateVirtual = false;\n });\n }\n } else {\n if (!swiper.support.smoothScroll) {\n animateCSSModeScroll({\n swiper,\n targetPosition: t,\n side: isH ? 'left' : 'top',\n });\n return true;\n }\n\n wrapperEl.scrollTo({\n [isH ? 'left' : 'top']: t,\n behavior: 'smooth',\n });\n }\n\n return true;\n }\n\n swiper.setTransition(speed);\n swiper.setTranslate(translate);\n swiper.updateActiveIndex(slideIndex);\n swiper.updateSlidesClasses();\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.transitionStart(runCallbacks, direction);\n\n if (speed === 0) {\n swiper.transitionEnd(runCallbacks, direction);\n } else if (!swiper.animating) {\n swiper.animating = true;\n\n if (!swiper.onSlideToWrapperTransitionEnd) {\n swiper.onSlideToWrapperTransitionEnd = function transitionEnd(e) {\n if (!swiper || swiper.destroyed) return;\n if (e.target !== this) return;\n swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd);\n swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd);\n swiper.onSlideToWrapperTransitionEnd = null;\n delete swiper.onSlideToWrapperTransitionEnd;\n swiper.transitionEnd(runCallbacks, direction);\n };\n }\n\n swiper.$wrapperEl[0].addEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd);\n swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd);\n }\n\n return true;\n }\n\n function slideToLoop(index = 0, speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n let newIndex = index;\n\n if (swiper.params.loop) {\n newIndex += swiper.loopedSlides;\n }\n\n return swiper.slideTo(newIndex, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slideNext(speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n const {animating, enabled, params} = swiper;\n if (!enabled) return swiper;\n let perGroup = params.slidesPerGroup;\n\n if (params.slidesPerView === 'auto' && params.slidesPerGroup === 1 && params.slidesPerGroupAuto) {\n perGroup = Math.max(swiper.slidesPerViewDynamic('current', true), 1);\n }\n\n const increment = swiper.activeIndex < params.slidesPerGroupSkip ? 1 : perGroup;\n\n if (params.loop) {\n if (animating && params.loopPreventsSlide) return false;\n swiper.loopFix(); // eslint-disable-next-line\n\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n }\n\n if (params.rewind && swiper.isEnd) {\n return swiper.slideTo(0, speed, runCallbacks, internal);\n }\n\n return swiper.slideTo(swiper.activeIndex + increment, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slidePrev(speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n const {params, animating, snapGrid, slidesGrid, rtlTranslate, enabled} = swiper;\n if (!enabled) return swiper;\n\n if (params.loop) {\n if (animating && params.loopPreventsSlide) return false;\n swiper.loopFix(); // eslint-disable-next-line\n\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n }\n\n const translate = rtlTranslate ? swiper.translate : -swiper.translate;\n\n function normalize(val) {\n if (val < 0) return -Math.floor(Math.abs(val));\n return Math.floor(val);\n }\n\n const normalizedTranslate = normalize(translate);\n const normalizedSnapGrid = snapGrid.map((val) => normalize(val));\n let prevSnap = snapGrid[normalizedSnapGrid.indexOf(normalizedTranslate) - 1];\n\n if (typeof prevSnap === 'undefined' && params.cssMode) {\n let prevSnapIndex;\n snapGrid.forEach((snap, snapIndex) => {\n if (normalizedTranslate >= snap) {\n // prevSnap = snap;\n prevSnapIndex = snapIndex;\n }\n });\n\n if (typeof prevSnapIndex !== 'undefined') {\n prevSnap = snapGrid[prevSnapIndex > 0 ? prevSnapIndex - 1 : prevSnapIndex];\n }\n }\n\n let prevIndex = 0;\n\n if (typeof prevSnap !== 'undefined') {\n prevIndex = slidesGrid.indexOf(prevSnap);\n if (prevIndex < 0) prevIndex = swiper.activeIndex - 1;\n\n if (params.slidesPerView === 'auto' && params.slidesPerGroup === 1 && params.slidesPerGroupAuto) {\n prevIndex = prevIndex - swiper.slidesPerViewDynamic('previous', true) + 1;\n prevIndex = Math.max(prevIndex, 0);\n }\n }\n\n if (params.rewind && swiper.isBeginning) {\n return swiper.slideTo(swiper.slides.length - 1, speed, runCallbacks, internal);\n }\n\n return swiper.slideTo(prevIndex, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slideReset(speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n return swiper.slideTo(swiper.activeIndex, speed, runCallbacks, internal);\n }\n\n /* eslint no-unused-vars: \"off\" */\n function slideToClosest(speed = this.params.speed, runCallbacks = true, internal, threshold = 0.5) {\n const swiper = this;\n let index = swiper.activeIndex;\n const skip = Math.min(swiper.params.slidesPerGroupSkip, index);\n const snapIndex = skip + Math.floor((index - skip) / swiper.params.slidesPerGroup);\n const translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate;\n\n if (translate >= swiper.snapGrid[snapIndex]) {\n // The current translate is on or after the current snap index, so the choice\n // is between the current index and the one after it.\n const currentSnap = swiper.snapGrid[snapIndex];\n const nextSnap = swiper.snapGrid[snapIndex + 1];\n\n if (translate - currentSnap > (nextSnap - currentSnap) * threshold) {\n index += swiper.params.slidesPerGroup;\n }\n } else {\n // The current translate is before the current snap index, so the choice\n // is between the current index and the one before it.\n const prevSnap = swiper.snapGrid[snapIndex - 1];\n const currentSnap = swiper.snapGrid[snapIndex];\n\n if (translate - prevSnap <= (currentSnap - prevSnap) * threshold) {\n index -= swiper.params.slidesPerGroup;\n }\n }\n\n index = Math.max(index, 0);\n index = Math.min(index, swiper.slidesGrid.length - 1);\n return swiper.slideTo(index, speed, runCallbacks, internal);\n }\n\n function slideToClickedSlide() {\n const swiper = this;\n const {params, $wrapperEl} = swiper;\n const slidesPerView = params.slidesPerView === 'auto' ? swiper.slidesPerViewDynamic() : params.slidesPerView;\n let slideToIndex = swiper.clickedIndex;\n let realIndex;\n\n if (params.loop) {\n if (swiper.animating) return;\n realIndex = parseInt($(swiper.clickedSlide).attr('data-swiper-slide-index'), 10);\n\n if (params.centeredSlides) {\n if (\n slideToIndex < swiper.loopedSlides - slidesPerView / 2 ||\n slideToIndex > swiper.slides.length - swiper.loopedSlides + slidesPerView / 2\n ) {\n swiper.loopFix();\n slideToIndex = $wrapperEl\n .children(\n `.${params.slideClass}[data-swiper-slide-index=\"${realIndex}\"]:not(.${params.slideDuplicateClass})`,\n )\n .eq(0)\n .index();\n nextTick(() => {\n swiper.slideTo(slideToIndex);\n });\n } else {\n swiper.slideTo(slideToIndex);\n }\n } else if (slideToIndex > swiper.slides.length - slidesPerView) {\n swiper.loopFix();\n slideToIndex = $wrapperEl\n .children(\n `.${params.slideClass}[data-swiper-slide-index=\"${realIndex}\"]:not(.${params.slideDuplicateClass})`,\n )\n .eq(0)\n .index();\n nextTick(() => {\n swiper.slideTo(slideToIndex);\n });\n } else {\n swiper.slideTo(slideToIndex);\n }\n } else {\n swiper.slideTo(slideToIndex);\n }\n }\n\n var slide = {\n slideTo,\n slideToLoop,\n slideNext,\n slidePrev,\n slideReset,\n slideToClosest,\n slideToClickedSlide,\n };\n\n function loopCreate() {\n const swiper = this;\n const document = getDocument();\n const {params, $wrapperEl} = swiper; // Remove duplicated slides\n\n const $selector = $wrapperEl.children().length > 0 ? $($wrapperEl.children()[0].parentNode) : $wrapperEl;\n $selector.children(`.${params.slideClass}.${params.slideDuplicateClass}`).remove();\n let slides = $selector.children(`.${params.slideClass}`);\n\n if (params.loopFillGroupWithBlank) {\n const blankSlidesNum = params.slidesPerGroup - (slides.length % params.slidesPerGroup);\n\n if (blankSlidesNum !== params.slidesPerGroup) {\n for (let i = 0; i < blankSlidesNum; i += 1) {\n const blankNode = $(document.createElement('div')).addClass(\n `${params.slideClass} ${params.slideBlankClass}`,\n );\n $selector.append(blankNode);\n }\n\n slides = $selector.children(`.${params.slideClass}`);\n }\n }\n\n if (params.slidesPerView === 'auto' && !params.loopedSlides) params.loopedSlides = slides.length;\n swiper.loopedSlides = Math.ceil(parseFloat(params.loopedSlides || params.slidesPerView, 10));\n swiper.loopedSlides += params.loopAdditionalSlides;\n\n if (swiper.loopedSlides > slides.length) {\n swiper.loopedSlides = slides.length;\n }\n\n const prependSlides = [];\n const appendSlides = [];\n slides.each((el, index) => {\n const slide = $(el);\n\n if (index < swiper.loopedSlides) {\n appendSlides.push(el);\n }\n\n if (index < slides.length && index >= slides.length - swiper.loopedSlides) {\n prependSlides.push(el);\n }\n\n slide.attr('data-swiper-slide-index', index);\n });\n\n for (let i = 0; i < appendSlides.length; i += 1) {\n $selector.append($(appendSlides[i].cloneNode(true)).addClass(params.slideDuplicateClass));\n }\n\n for (let i = prependSlides.length - 1; i >= 0; i -= 1) {\n $selector.prepend($(prependSlides[i].cloneNode(true)).addClass(params.slideDuplicateClass));\n }\n }\n\n function loopFix() {\n const swiper = this;\n swiper.emit('beforeLoopFix');\n const {activeIndex, slides, loopedSlides, allowSlidePrev, allowSlideNext, snapGrid, rtlTranslate: rtl} = swiper;\n let newIndex;\n swiper.allowSlidePrev = true;\n swiper.allowSlideNext = true;\n const snapTranslate = -snapGrid[activeIndex];\n const diff = snapTranslate - swiper.getTranslate(); // Fix For Negative Oversliding\n\n if (activeIndex < loopedSlides) {\n newIndex = slides.length - loopedSlides * 3 + activeIndex;\n newIndex += loopedSlides;\n const slideChanged = swiper.slideTo(newIndex, 0, false, true);\n\n if (slideChanged && diff !== 0) {\n swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff);\n }\n } else if (activeIndex >= slides.length - loopedSlides) {\n // Fix For Positive Oversliding\n newIndex = -slides.length + activeIndex + loopedSlides;\n newIndex += loopedSlides;\n const slideChanged = swiper.slideTo(newIndex, 0, false, true);\n\n if (slideChanged && diff !== 0) {\n swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff);\n }\n }\n\n swiper.allowSlidePrev = allowSlidePrev;\n swiper.allowSlideNext = allowSlideNext;\n swiper.emit('loopFix');\n }\n\n function loopDestroy() {\n const swiper = this;\n const {$wrapperEl, params, slides} = swiper;\n $wrapperEl\n .children(`.${params.slideClass}.${params.slideDuplicateClass},.${params.slideClass}.${params.slideBlankClass}`)\n .remove();\n slides.removeAttr('data-swiper-slide-index');\n }\n\n var loop = {\n loopCreate,\n loopFix,\n loopDestroy,\n };\n\n function setGrabCursor(moving) {\n const swiper = this;\n if (\n swiper.support.touch ||\n !swiper.params.simulateTouch ||\n (swiper.params.watchOverflow && swiper.isLocked) ||\n swiper.params.cssMode\n )\n return;\n const el = swiper.params.touchEventsTarget === 'container' ? swiper.el : swiper.wrapperEl;\n el.style.cursor = 'move';\n el.style.cursor = moving ? '-webkit-grabbing' : '-webkit-grab';\n el.style.cursor = moving ? '-moz-grabbin' : '-moz-grab';\n el.style.cursor = moving ? 'grabbing' : 'grab';\n }\n\n function unsetGrabCursor() {\n const swiper = this;\n\n if (swiper.support.touch || (swiper.params.watchOverflow && swiper.isLocked) || swiper.params.cssMode) {\n return;\n }\n\n swiper[swiper.params.touchEventsTarget === 'container' ? 'el' : 'wrapperEl'].style.cursor = '';\n }\n\n var grabCursor = {\n setGrabCursor,\n unsetGrabCursor,\n };\n\n function closestElement(selector, base = this) {\n function __closestFrom(el) {\n if (!el || el === getDocument() || el === getWindow()) return null;\n if (el.assignedSlot) el = el.assignedSlot;\n const found = el.closest(selector);\n return found || __closestFrom(el.getRootNode().host);\n }\n\n return __closestFrom(base);\n }\n\n function onTouchStart(event) {\n const swiper = this;\n const document = getDocument();\n const window = getWindow();\n const data = swiper.touchEventsData;\n const {params, touches, enabled} = swiper;\n if (!enabled) return;\n\n if (swiper.animating && params.preventInteractionOnTransition) {\n return;\n }\n\n if (!swiper.animating && params.cssMode && params.loop) {\n swiper.loopFix();\n }\n\n let e = event;\n if (e.originalEvent) e = e.originalEvent;\n let $targetEl = $(e.target);\n\n if (params.touchEventsTarget === 'wrapper') {\n if (!$targetEl.closest(swiper.wrapperEl).length) return;\n }\n\n data.isTouchEvent = e.type === 'touchstart';\n if (!data.isTouchEvent && 'which' in e && e.which === 3) return;\n if (!data.isTouchEvent && 'button' in e && e.button > 0) return;\n if (data.isTouched && data.isMoved) return; // change target el for shadow root component\n\n const swipingClassHasValue = !!params.noSwipingClass && params.noSwipingClass !== '';\n\n if (swipingClassHasValue && e.target && e.target.shadowRoot && event.path && event.path[0]) {\n $targetEl = $(event.path[0]);\n }\n\n const noSwipingSelector = params.noSwipingSelector ? params.noSwipingSelector : `.${params.noSwipingClass}`;\n const isTargetShadow = !!(e.target && e.target.shadowRoot); // use closestElement for shadow root element to get the actual closest for nested shadow root element\n\n if (\n params.noSwiping &&\n (isTargetShadow ? closestElement(noSwipingSelector, e.target) : $targetEl.closest(noSwipingSelector)[0])\n ) {\n swiper.allowClick = true;\n return;\n }\n\n if (params.swipeHandler) {\n if (!$targetEl.closest(params.swipeHandler)[0]) return;\n }\n\n touches.currentX = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX;\n touches.currentY = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY;\n const startX = touches.currentX;\n const startY = touches.currentY; // Do NOT start if iOS edge swipe is detected. Otherwise iOS app cannot swipe-to-go-back anymore\n\n const edgeSwipeDetection = params.edgeSwipeDetection || params.iOSEdgeSwipeDetection;\n const edgeSwipeThreshold = params.edgeSwipeThreshold || params.iOSEdgeSwipeThreshold;\n\n if (edgeSwipeDetection && (startX <= edgeSwipeThreshold || startX >= window.innerWidth - edgeSwipeThreshold)) {\n if (edgeSwipeDetection === 'prevent') {\n event.preventDefault();\n } else {\n return;\n }\n }\n\n Object.assign(data, {\n isTouched: true,\n isMoved: false,\n allowTouchCallbacks: true,\n isScrolling: undefined,\n startMoving: undefined,\n });\n touches.startX = startX;\n touches.startY = startY;\n data.touchStartTime = now();\n swiper.allowClick = true;\n swiper.updateSize();\n swiper.swipeDirection = undefined;\n if (params.threshold > 0) data.allowThresholdMove = false;\n\n if (e.type !== 'touchstart') {\n let preventDefault = true;\n if ($targetEl.is(data.focusableElements)) preventDefault = false;\n\n if (\n document.activeElement &&\n $(document.activeElement).is(data.focusableElements) &&\n document.activeElement !== $targetEl[0]\n ) {\n document.activeElement.blur();\n }\n\n const shouldPreventDefault = preventDefault && swiper.allowTouchMove && params.touchStartPreventDefault;\n\n if ((params.touchStartForcePreventDefault || shouldPreventDefault) && !$targetEl[0].isContentEditable) {\n e.preventDefault();\n }\n }\n\n swiper.emit('touchStart', e);\n }\n\n function onTouchMove(event) {\n const document = getDocument();\n const swiper = this;\n const data = swiper.touchEventsData;\n const {params, touches, rtlTranslate: rtl, enabled} = swiper;\n if (!enabled) return;\n let e = event;\n if (e.originalEvent) e = e.originalEvent;\n\n if (!data.isTouched) {\n if (data.startMoving && data.isScrolling) {\n swiper.emit('touchMoveOpposite', e);\n }\n\n return;\n }\n\n if (data.isTouchEvent && e.type !== 'touchmove') return;\n const targetTouch = e.type === 'touchmove' && e.targetTouches && (e.targetTouches[0] || e.changedTouches[0]);\n const pageX = e.type === 'touchmove' ? targetTouch.pageX : e.pageX;\n const pageY = e.type === 'touchmove' ? targetTouch.pageY : e.pageY;\n\n if (e.preventedByNestedSwiper) {\n touches.startX = pageX;\n touches.startY = pageY;\n return;\n }\n\n if (!swiper.allowTouchMove) {\n // isMoved = true;\n swiper.allowClick = false;\n\n if (data.isTouched) {\n Object.assign(touches, {\n startX: pageX,\n startY: pageY,\n currentX: pageX,\n currentY: pageY,\n });\n data.touchStartTime = now();\n }\n\n return;\n }\n\n if (data.isTouchEvent && params.touchReleaseOnEdges && !params.loop) {\n if (swiper.isVertical()) {\n // Vertical\n if (\n (pageY < touches.startY && swiper.translate <= swiper.maxTranslate()) ||\n (pageY > touches.startY && swiper.translate >= swiper.minTranslate())\n ) {\n data.isTouched = false;\n data.isMoved = false;\n return;\n }\n } else if (\n (pageX < touches.startX && swiper.translate <= swiper.maxTranslate()) ||\n (pageX > touches.startX && swiper.translate >= swiper.minTranslate())\n ) {\n return;\n }\n }\n\n if (data.isTouchEvent && document.activeElement) {\n if (e.target === document.activeElement && $(e.target).is(data.focusableElements)) {\n data.isMoved = true;\n swiper.allowClick = false;\n return;\n }\n }\n\n if (data.allowTouchCallbacks) {\n swiper.emit('touchMove', e);\n }\n\n if (e.targetTouches && e.targetTouches.length > 1) return;\n touches.currentX = pageX;\n touches.currentY = pageY;\n const diffX = touches.currentX - touches.startX;\n const diffY = touches.currentY - touches.startY;\n if (swiper.params.threshold && Math.sqrt(diffX ** 2 + diffY ** 2) < swiper.params.threshold) return;\n\n if (typeof data.isScrolling === 'undefined') {\n let touchAngle;\n\n if (\n (swiper.isHorizontal() && touches.currentY === touches.startY) ||\n (swiper.isVertical() && touches.currentX === touches.startX)\n ) {\n data.isScrolling = false;\n } else {\n // eslint-disable-next-line\n if (diffX * diffX + diffY * diffY >= 25) {\n touchAngle = (Math.atan2(Math.abs(diffY), Math.abs(diffX)) * 180) / Math.PI;\n data.isScrolling = swiper.isHorizontal()\n ? touchAngle > params.touchAngle\n : 90 - touchAngle > params.touchAngle;\n }\n }\n }\n\n if (data.isScrolling) {\n swiper.emit('touchMoveOpposite', e);\n }\n\n if (typeof data.startMoving === 'undefined') {\n if (touches.currentX !== touches.startX || touches.currentY !== touches.startY) {\n data.startMoving = true;\n }\n }\n\n if (data.isScrolling) {\n data.isTouched = false;\n return;\n }\n\n if (!data.startMoving) {\n return;\n }\n\n swiper.allowClick = false;\n\n if (!params.cssMode && e.cancelable) {\n e.preventDefault();\n }\n\n if (params.touchMoveStopPropagation && !params.nested) {\n e.stopPropagation();\n }\n\n if (!data.isMoved) {\n if (params.loop && !params.cssMode) {\n swiper.loopFix();\n }\n\n data.startTranslate = swiper.getTranslate();\n swiper.setTransition(0);\n\n if (swiper.animating) {\n swiper.$wrapperEl.trigger('webkitTransitionEnd transitionend');\n }\n\n data.allowMomentumBounce = false; // Grab Cursor\n\n if (params.grabCursor && (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)) {\n swiper.setGrabCursor(true);\n }\n\n swiper.emit('sliderFirstMove', e);\n }\n\n swiper.emit('sliderMove', e);\n data.isMoved = true;\n let diff = swiper.isHorizontal() ? diffX : diffY;\n touches.diff = diff;\n diff *= params.touchRatio;\n if (rtl) diff = -diff;\n swiper.swipeDirection = diff > 0 ? 'prev' : 'next';\n data.currentTranslate = diff + data.startTranslate;\n let disableParentSwiper = true;\n let resistanceRatio = params.resistanceRatio;\n\n if (params.touchReleaseOnEdges) {\n resistanceRatio = 0;\n }\n\n if (diff > 0 && data.currentTranslate > swiper.minTranslate()) {\n disableParentSwiper = false;\n if (params.resistance)\n data.currentTranslate =\n swiper.minTranslate() - 1 + (-swiper.minTranslate() + data.startTranslate + diff) ** resistanceRatio;\n } else if (diff < 0 && data.currentTranslate < swiper.maxTranslate()) {\n disableParentSwiper = false;\n if (params.resistance)\n data.currentTranslate =\n swiper.maxTranslate() + 1 - (swiper.maxTranslate() - data.startTranslate - diff) ** resistanceRatio;\n }\n\n if (disableParentSwiper) {\n e.preventedByNestedSwiper = true;\n } // Directions locks\n\n if (!swiper.allowSlideNext && swiper.swipeDirection === 'next' && data.currentTranslate < data.startTranslate) {\n data.currentTranslate = data.startTranslate;\n }\n\n if (!swiper.allowSlidePrev && swiper.swipeDirection === 'prev' && data.currentTranslate > data.startTranslate) {\n data.currentTranslate = data.startTranslate;\n }\n\n if (!swiper.allowSlidePrev && !swiper.allowSlideNext) {\n data.currentTranslate = data.startTranslate;\n } // Threshold\n\n if (params.threshold > 0) {\n if (Math.abs(diff) > params.threshold || data.allowThresholdMove) {\n if (!data.allowThresholdMove) {\n data.allowThresholdMove = true;\n touches.startX = touches.currentX;\n touches.startY = touches.currentY;\n data.currentTranslate = data.startTranslate;\n touches.diff = swiper.isHorizontal()\n ? touches.currentX - touches.startX\n : touches.currentY - touches.startY;\n return;\n }\n } else {\n data.currentTranslate = data.startTranslate;\n return;\n }\n }\n\n if (!params.followFinger || params.cssMode) return; // Update active index in free mode\n\n if ((params.freeMode && params.freeMode.enabled && swiper.freeMode) || params.watchSlidesProgress) {\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n\n if (swiper.params.freeMode && params.freeMode.enabled && swiper.freeMode) {\n swiper.freeMode.onTouchMove();\n } // Update progress\n\n swiper.updateProgress(data.currentTranslate); // Update translate\n\n swiper.setTranslate(data.currentTranslate);\n }\n\n function onTouchEnd(event) {\n const swiper = this;\n const data = swiper.touchEventsData;\n const {params, touches, rtlTranslate: rtl, slidesGrid, enabled} = swiper;\n if (!enabled) return;\n let e = event;\n if (e.originalEvent) e = e.originalEvent;\n\n if (data.allowTouchCallbacks) {\n swiper.emit('touchEnd', e);\n }\n\n data.allowTouchCallbacks = false;\n\n if (!data.isTouched) {\n if (data.isMoved && params.grabCursor) {\n swiper.setGrabCursor(false);\n }\n\n data.isMoved = false;\n data.startMoving = false;\n return;\n } // Return Grab Cursor\n\n if (\n params.grabCursor &&\n data.isMoved &&\n data.isTouched &&\n (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)\n ) {\n swiper.setGrabCursor(false);\n } // Time diff\n\n const touchEndTime = now();\n const timeDiff = touchEndTime - data.touchStartTime; // Tap, doubleTap, Click\n\n if (swiper.allowClick) {\n const pathTree = e.path || (e.composedPath && e.composedPath());\n swiper.updateClickedSlide((pathTree && pathTree[0]) || e.target);\n swiper.emit('tap click', e);\n\n if (timeDiff < 300 && touchEndTime - data.lastClickTime < 300) {\n swiper.emit('doubleTap doubleClick', e);\n }\n }\n\n data.lastClickTime = now();\n nextTick(() => {\n if (!swiper.destroyed) swiper.allowClick = true;\n });\n\n if (\n !data.isTouched ||\n !data.isMoved ||\n !swiper.swipeDirection ||\n touches.diff === 0 ||\n data.currentTranslate === data.startTranslate\n ) {\n data.isTouched = false;\n data.isMoved = false;\n data.startMoving = false;\n return;\n }\n\n data.isTouched = false;\n data.isMoved = false;\n data.startMoving = false;\n let currentPos;\n\n if (params.followFinger) {\n currentPos = rtl ? swiper.translate : -swiper.translate;\n } else {\n currentPos = -data.currentTranslate;\n }\n\n if (params.cssMode) {\n return;\n }\n\n if (swiper.params.freeMode && params.freeMode.enabled) {\n swiper.freeMode.onTouchEnd({\n currentPos,\n });\n return;\n } // Find current slide\n\n let stopIndex = 0;\n let groupSize = swiper.slidesSizesGrid[0];\n\n for (let i = 0; i < slidesGrid.length; i += i < params.slidesPerGroupSkip ? 1 : params.slidesPerGroup) {\n const increment = i < params.slidesPerGroupSkip - 1 ? 1 : params.slidesPerGroup;\n\n if (typeof slidesGrid[i + increment] !== 'undefined') {\n if (currentPos >= slidesGrid[i] && currentPos < slidesGrid[i + increment]) {\n stopIndex = i;\n groupSize = slidesGrid[i + increment] - slidesGrid[i];\n }\n } else if (currentPos >= slidesGrid[i]) {\n stopIndex = i;\n groupSize = slidesGrid[slidesGrid.length - 1] - slidesGrid[slidesGrid.length - 2];\n }\n } // Find current slide size\n\n const ratio = (currentPos - slidesGrid[stopIndex]) / groupSize;\n const increment = stopIndex < params.slidesPerGroupSkip - 1 ? 1 : params.slidesPerGroup;\n\n if (timeDiff > params.longSwipesMs) {\n // Long touches\n if (!params.longSwipes) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n\n if (swiper.swipeDirection === 'next') {\n if (ratio >= params.longSwipesRatio) swiper.slideTo(stopIndex + increment);\n else swiper.slideTo(stopIndex);\n }\n\n if (swiper.swipeDirection === 'prev') {\n if (ratio > 1 - params.longSwipesRatio) swiper.slideTo(stopIndex + increment);\n else swiper.slideTo(stopIndex);\n }\n } else {\n // Short swipes\n if (!params.shortSwipes) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n\n const isNavButtonTarget =\n swiper.navigation && (e.target === swiper.navigation.nextEl || e.target === swiper.navigation.prevEl);\n\n if (!isNavButtonTarget) {\n if (swiper.swipeDirection === 'next') {\n swiper.slideTo(stopIndex + increment);\n }\n\n if (swiper.swipeDirection === 'prev') {\n swiper.slideTo(stopIndex);\n }\n } else if (e.target === swiper.navigation.nextEl) {\n swiper.slideTo(stopIndex + increment);\n } else {\n swiper.slideTo(stopIndex);\n }\n }\n }\n\n function onResize() {\n const swiper = this;\n const {params, el} = swiper;\n if (el && el.offsetWidth === 0) return; // Breakpoints\n\n if (params.breakpoints) {\n swiper.setBreakpoint();\n } // Save locks\n\n const {allowSlideNext, allowSlidePrev, snapGrid} = swiper; // Disable locks on resize\n\n swiper.allowSlideNext = true;\n swiper.allowSlidePrev = true;\n swiper.updateSize();\n swiper.updateSlides();\n swiper.updateSlidesClasses();\n\n if (\n (params.slidesPerView === 'auto' || params.slidesPerView > 1) &&\n swiper.isEnd &&\n !swiper.isBeginning &&\n !swiper.params.centeredSlides\n ) {\n swiper.slideTo(swiper.slides.length - 1, 0, false, true);\n } else {\n swiper.slideTo(swiper.activeIndex, 0, false, true);\n }\n\n if (swiper.autoplay && swiper.autoplay.running && swiper.autoplay.paused) {\n swiper.autoplay.run();\n } // Return locks after resize\n\n swiper.allowSlidePrev = allowSlidePrev;\n swiper.allowSlideNext = allowSlideNext;\n\n if (swiper.params.watchOverflow && snapGrid !== swiper.snapGrid) {\n swiper.checkOverflow();\n }\n }\n\n function onClick(e) {\n const swiper = this;\n if (!swiper.enabled) return;\n\n if (!swiper.allowClick) {\n if (swiper.params.preventClicks) e.preventDefault();\n\n if (swiper.params.preventClicksPropagation && swiper.animating) {\n e.stopPropagation();\n e.stopImmediatePropagation();\n }\n }\n }\n\n function onScroll() {\n const swiper = this;\n const {wrapperEl, rtlTranslate, enabled} = swiper;\n if (!enabled) return;\n swiper.previousTranslate = swiper.translate;\n\n if (swiper.isHorizontal()) {\n swiper.translate = -wrapperEl.scrollLeft;\n } else {\n swiper.translate = -wrapperEl.scrollTop;\n } // eslint-disable-next-line\n\n if (swiper.translate === -0) swiper.translate = 0;\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n let newProgress;\n const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n\n if (translatesDiff === 0) {\n newProgress = 0;\n } else {\n newProgress = (swiper.translate - swiper.minTranslate()) / translatesDiff;\n }\n\n if (newProgress !== swiper.progress) {\n swiper.updateProgress(rtlTranslate ? -swiper.translate : swiper.translate);\n }\n\n swiper.emit('setTranslate', swiper.translate, false);\n }\n\n let dummyEventAttached = false;\n\n function dummyEventListener() {}\n\n const events = (swiper, method) => {\n const document = getDocument();\n const {params, touchEvents, el, wrapperEl, device, support} = swiper;\n const capture = !!params.nested;\n const domMethod = method === 'on' ? 'addEventListener' : 'removeEventListener';\n const swiperMethod = method; // Touch Events\n\n if (!support.touch) {\n el[domMethod](touchEvents.start, swiper.onTouchStart, false);\n document[domMethod](touchEvents.move, swiper.onTouchMove, capture);\n document[domMethod](touchEvents.end, swiper.onTouchEnd, false);\n } else {\n const passiveListener =\n touchEvents.start === 'touchstart' && support.passiveListener && params.passiveListeners\n ? {\n passive: true,\n capture: false,\n }\n : false;\n el[domMethod](touchEvents.start, swiper.onTouchStart, passiveListener);\n el[domMethod](\n touchEvents.move,\n swiper.onTouchMove,\n support.passiveListener\n ? {\n passive: false,\n capture,\n }\n : capture,\n );\n el[domMethod](touchEvents.end, swiper.onTouchEnd, passiveListener);\n\n if (touchEvents.cancel) {\n el[domMethod](touchEvents.cancel, swiper.onTouchEnd, passiveListener);\n }\n } // Prevent Links Clicks\n\n if (params.preventClicks || params.preventClicksPropagation) {\n el[domMethod]('click', swiper.onClick, true);\n }\n\n if (params.cssMode) {\n wrapperEl[domMethod]('scroll', swiper.onScroll);\n } // Resize handler\n\n if (params.updateOnWindowResize) {\n swiper[swiperMethod](\n device.ios || device.android ? 'resize orientationchange observerUpdate' : 'resize observerUpdate',\n onResize,\n true,\n );\n } else {\n swiper[swiperMethod]('observerUpdate', onResize, true);\n }\n };\n\n function attachEvents() {\n const swiper = this;\n const document = getDocument();\n const {params, support} = swiper;\n swiper.onTouchStart = onTouchStart.bind(swiper);\n swiper.onTouchMove = onTouchMove.bind(swiper);\n swiper.onTouchEnd = onTouchEnd.bind(swiper);\n\n if (params.cssMode) {\n swiper.onScroll = onScroll.bind(swiper);\n }\n\n swiper.onClick = onClick.bind(swiper);\n\n if (support.touch && !dummyEventAttached) {\n document.addEventListener('touchstart', dummyEventListener);\n dummyEventAttached = true;\n }\n\n events(swiper, 'on');\n }\n\n function detachEvents() {\n const swiper = this;\n events(swiper, 'off');\n }\n\n var events$1 = {\n attachEvents,\n detachEvents,\n };\n\n const isGridEnabled = (swiper, params) => {\n return swiper.grid && params.grid && params.grid.rows > 1;\n };\n\n function setBreakpoint() {\n const swiper = this;\n const {activeIndex, initialized, loopedSlides = 0, params, $el} = swiper;\n const breakpoints = params.breakpoints;\n if (!breakpoints || (breakpoints && Object.keys(breakpoints).length === 0)) return; // Get breakpoint for window width and update parameters\n\n const breakpoint = swiper.getBreakpoint(breakpoints, swiper.params.breakpointsBase, swiper.el);\n if (!breakpoint || swiper.currentBreakpoint === breakpoint) return;\n const breakpointOnlyParams = breakpoint in breakpoints ? breakpoints[breakpoint] : undefined;\n const breakpointParams = breakpointOnlyParams || swiper.originalParams;\n const wasMultiRow = isGridEnabled(swiper, params);\n const isMultiRow = isGridEnabled(swiper, breakpointParams);\n const wasEnabled = params.enabled;\n\n if (wasMultiRow && !isMultiRow) {\n $el.removeClass(`${params.containerModifierClass}grid ${params.containerModifierClass}grid-column`);\n swiper.emitContainerClasses();\n } else if (!wasMultiRow && isMultiRow) {\n $el.addClass(`${params.containerModifierClass}grid`);\n\n if (\n (breakpointParams.grid.fill && breakpointParams.grid.fill === 'column') ||\n (!breakpointParams.grid.fill && params.grid.fill === 'column')\n ) {\n $el.addClass(`${params.containerModifierClass}grid-column`);\n }\n\n swiper.emitContainerClasses();\n }\n\n const directionChanged = breakpointParams.direction && breakpointParams.direction !== params.direction;\n const needsReLoop = params.loop && (breakpointParams.slidesPerView !== params.slidesPerView || directionChanged);\n\n if (directionChanged && initialized) {\n swiper.changeDirection();\n }\n\n extend(swiper.params, breakpointParams);\n const isEnabled = swiper.params.enabled;\n Object.assign(swiper, {\n allowTouchMove: swiper.params.allowTouchMove,\n allowSlideNext: swiper.params.allowSlideNext,\n allowSlidePrev: swiper.params.allowSlidePrev,\n });\n\n if (wasEnabled && !isEnabled) {\n swiper.disable();\n } else if (!wasEnabled && isEnabled) {\n swiper.enable();\n }\n\n swiper.currentBreakpoint = breakpoint;\n swiper.emit('_beforeBreakpoint', breakpointParams);\n\n if (needsReLoop && initialized) {\n swiper.loopDestroy();\n swiper.loopCreate();\n swiper.updateSlides();\n swiper.slideTo(activeIndex - loopedSlides + swiper.loopedSlides, 0, false);\n }\n\n swiper.emit('breakpoint', breakpointParams);\n }\n\n function getBreakpoint(breakpoints, base = 'window', containerEl) {\n if (!breakpoints || (base === 'container' && !containerEl)) return undefined;\n let breakpoint = false;\n const window = getWindow();\n const currentHeight = base === 'window' ? window.innerHeight : containerEl.clientHeight;\n const points = Object.keys(breakpoints).map((point) => {\n if (typeof point === 'string' && point.indexOf('@') === 0) {\n const minRatio = parseFloat(point.substr(1));\n const value = currentHeight * minRatio;\n return {\n value,\n point,\n };\n }\n\n return {\n value: point,\n point,\n };\n });\n points.sort((a, b) => parseInt(a.value, 10) - parseInt(b.value, 10));\n\n for (let i = 0; i < points.length; i += 1) {\n const {point, value} = points[i];\n\n if (base === 'window') {\n if (window.matchMedia(`(min-width: ${value}px)`).matches) {\n breakpoint = point;\n }\n } else if (value <= containerEl.clientWidth) {\n breakpoint = point;\n }\n }\n\n return breakpoint || 'max';\n }\n\n var breakpoints = {\n setBreakpoint,\n getBreakpoint,\n };\n\n function prepareClasses(entries, prefix) {\n const resultClasses = [];\n entries.forEach((item) => {\n if (typeof item === 'object') {\n Object.keys(item).forEach((classNames) => {\n if (item[classNames]) {\n resultClasses.push(prefix + classNames);\n }\n });\n } else if (typeof item === 'string') {\n resultClasses.push(prefix + item);\n }\n });\n return resultClasses;\n }\n\n function addClasses() {\n const swiper = this;\n const {\n classNames,\n params,\n rtl,\n $el,\n device,\n support\n } = swiper; // prettier-ignore\n\n const suffixes = prepareClasses(\n [\n 'initialized',\n params.direction,\n {\n 'pointer-events': !support.touch,\n },\n {\n 'free-mode': swiper.params.freeMode && params.freeMode.enabled,\n },\n {\n autoheight: params.autoHeight,\n },\n {\n rtl: rtl,\n },\n {\n grid: params.grid && params.grid.rows > 1,\n },\n {\n 'grid-column': params.grid && params.grid.rows > 1 && params.grid.fill === 'column',\n },\n {\n android: device.android,\n },\n {\n ios: device.ios,\n },\n {\n 'css-mode': params.cssMode,\n },\n {\n centered: params.cssMode && params.centeredSlides,\n },\n ],\n params.containerModifierClass,\n );\n classNames.push(...suffixes);\n $el.addClass([...classNames].join(' '));\n swiper.emitContainerClasses();\n }\n\n function removeClasses() {\n const swiper = this;\n const {$el, classNames} = swiper;\n $el.removeClass(classNames.join(' '));\n swiper.emitContainerClasses();\n }\n\n var classes = {\n addClasses,\n removeClasses,\n };\n\n function loadImage(imageEl, src, srcset, sizes, checkForComplete, callback) {\n const window = getWindow();\n let image;\n\n function onReady() {\n if (callback) callback();\n }\n\n const isPicture = $(imageEl).parent('picture')[0];\n\n if (!isPicture && (!imageEl.complete || !checkForComplete)) {\n if (src) {\n image = new window.Image();\n image.onload = onReady;\n image.onerror = onReady;\n\n if (sizes) {\n image.sizes = sizes;\n }\n\n if (srcset) {\n image.srcset = srcset;\n }\n\n if (src) {\n image.src = src;\n }\n } else {\n onReady();\n }\n } else {\n // image already loaded...\n onReady();\n }\n }\n\n function preloadImages() {\n const swiper = this;\n swiper.imagesToLoad = swiper.$el.find('img');\n\n function onReady() {\n if (typeof swiper === 'undefined' || swiper === null || !swiper || swiper.destroyed) return;\n if (swiper.imagesLoaded !== undefined) swiper.imagesLoaded += 1;\n\n if (swiper.imagesLoaded === swiper.imagesToLoad.length) {\n if (swiper.params.updateOnImagesReady) swiper.update();\n swiper.emit('imagesReady');\n }\n }\n\n for (let i = 0; i < swiper.imagesToLoad.length; i += 1) {\n const imageEl = swiper.imagesToLoad[i];\n swiper.loadImage(\n imageEl,\n imageEl.currentSrc || imageEl.getAttribute('src'),\n imageEl.srcset || imageEl.getAttribute('srcset'),\n imageEl.sizes || imageEl.getAttribute('sizes'),\n true,\n onReady,\n );\n }\n }\n\n var images = {\n loadImage,\n preloadImages,\n };\n\n function checkOverflow() {\n const swiper = this;\n const {isLocked: wasLocked, params} = swiper;\n const {slidesOffsetBefore} = params;\n\n if (slidesOffsetBefore) {\n const lastSlideIndex = swiper.slides.length - 1;\n const lastSlideRightEdge =\n swiper.slidesGrid[lastSlideIndex] + swiper.slidesSizesGrid[lastSlideIndex] + slidesOffsetBefore * 2;\n swiper.isLocked = swiper.size > lastSlideRightEdge;\n } else {\n swiper.isLocked = swiper.snapGrid.length === 1;\n }\n\n if (params.allowSlideNext === true) {\n swiper.allowSlideNext = !swiper.isLocked;\n }\n\n if (params.allowSlidePrev === true) {\n swiper.allowSlidePrev = !swiper.isLocked;\n }\n\n if (wasLocked && wasLocked !== swiper.isLocked) {\n swiper.isEnd = false;\n }\n\n if (wasLocked !== swiper.isLocked) {\n swiper.emit(swiper.isLocked ? 'lock' : 'unlock');\n }\n }\n\n var checkOverflow$1 = {\n checkOverflow,\n };\n\n var defaults = {\n init: true,\n direction: 'horizontal',\n touchEventsTarget: 'wrapper',\n initialSlide: 0,\n speed: 300,\n cssMode: false,\n updateOnWindowResize: true,\n resizeObserver: true,\n nested: false,\n createElements: false,\n enabled: true,\n focusableElements: 'input, select, option, textarea, button, video, label',\n // Overrides\n width: null,\n height: null,\n //\n preventInteractionOnTransition: false,\n // ssr\n userAgent: null,\n url: null,\n // To support iOS's swipe-to-go-back gesture (when being used in-app).\n edgeSwipeDetection: false,\n edgeSwipeThreshold: 20,\n // Autoheight\n autoHeight: false,\n // Set wrapper width\n setWrapperSize: false,\n // Virtual Translate\n virtualTranslate: false,\n // Effects\n effect: 'slide',\n // 'slide' or 'fade' or 'cube' or 'coverflow' or 'flip'\n // Breakpoints\n breakpoints: undefined,\n breakpointsBase: 'window',\n // Slides grid\n spaceBetween: 0,\n slidesPerView: 1,\n slidesPerGroup: 1,\n slidesPerGroupSkip: 0,\n slidesPerGroupAuto: false,\n centeredSlides: false,\n centeredSlidesBounds: false,\n slidesOffsetBefore: 0,\n // in px\n slidesOffsetAfter: 0,\n // in px\n normalizeSlideIndex: true,\n centerInsufficientSlides: false,\n // Disable swiper and hide navigation when container not overflow\n watchOverflow: true,\n // Round length\n roundLengths: false,\n // Touches\n touchRatio: 1,\n touchAngle: 45,\n simulateTouch: true,\n shortSwipes: true,\n longSwipes: true,\n longSwipesRatio: 0.5,\n longSwipesMs: 300,\n followFinger: true,\n allowTouchMove: true,\n threshold: 0,\n touchMoveStopPropagation: false,\n touchStartPreventDefault: true,\n touchStartForcePreventDefault: false,\n touchReleaseOnEdges: false,\n // Unique Navigation Elements\n uniqueNavElements: true,\n // Resistance\n resistance: true,\n resistanceRatio: 0.85,\n // Progress\n watchSlidesProgress: false,\n // Cursor\n grabCursor: false,\n // Clicks\n preventClicks: true,\n preventClicksPropagation: true,\n slideToClickedSlide: false,\n // Images\n preloadImages: true,\n updateOnImagesReady: true,\n // loop\n loop: false,\n loopAdditionalSlides: 0,\n loopedSlides: null,\n loopFillGroupWithBlank: false,\n loopPreventsSlide: true,\n // rewind\n rewind: false,\n // Swiping/no swiping\n allowSlidePrev: true,\n allowSlideNext: true,\n swipeHandler: null,\n // '.swipe-handler',\n noSwiping: true,\n noSwipingClass: 'swiper-no-swiping',\n noSwipingSelector: null,\n // Passive Listeners\n passiveListeners: true,\n // NS\n containerModifierClass: 'swiper-',\n // NEW\n slideClass: 'swiper-slide',\n slideBlankClass: 'swiper-slide-invisible-blank',\n slideActiveClass: 'swiper-slide-active',\n slideDuplicateActiveClass: 'swiper-slide-duplicate-active',\n slideVisibleClass: 'swiper-slide-visible',\n slideDuplicateClass: 'swiper-slide-duplicate',\n slideNextClass: 'swiper-slide-next',\n slideDuplicateNextClass: 'swiper-slide-duplicate-next',\n slidePrevClass: 'swiper-slide-prev',\n slideDuplicatePrevClass: 'swiper-slide-duplicate-prev',\n wrapperClass: 'swiper-wrapper',\n // Callbacks\n runCallbacksOnInit: true,\n // Internals\n _emitClasses: false,\n };\n\n function moduleExtendParams(params, allModulesParams) {\n return function extendParams(obj = {}) {\n const moduleParamName = Object.keys(obj)[0];\n const moduleParams = obj[moduleParamName];\n\n if (typeof moduleParams !== 'object' || moduleParams === null) {\n extend(allModulesParams, obj);\n return;\n }\n\n if (\n ['navigation', 'pagination', 'scrollbar'].indexOf(moduleParamName) >= 0 &&\n params[moduleParamName] === true\n ) {\n params[moduleParamName] = {\n auto: true,\n };\n }\n\n if (!(moduleParamName in params && 'enabled' in moduleParams)) {\n extend(allModulesParams, obj);\n return;\n }\n\n if (params[moduleParamName] === true) {\n params[moduleParamName] = {\n enabled: true,\n };\n }\n\n if (typeof params[moduleParamName] === 'object' && !('enabled' in params[moduleParamName])) {\n params[moduleParamName].enabled = true;\n }\n\n if (!params[moduleParamName])\n params[moduleParamName] = {\n enabled: false,\n };\n extend(allModulesParams, obj);\n };\n }\n\n /* eslint no-param-reassign: \"off\" */\n const prototypes = {\n eventsEmitter,\n update,\n translate,\n transition,\n slide,\n loop,\n grabCursor,\n events: events$1,\n breakpoints,\n checkOverflow: checkOverflow$1,\n classes,\n images,\n };\n const extendedDefaults = {};\n\n class Swiper {\n constructor(...args) {\n let el;\n let params;\n\n if (\n args.length === 1 &&\n args[0].constructor &&\n Object.prototype.toString.call(args[0]).slice(8, -1) === 'Object'\n ) {\n params = args[0];\n } else {\n [el, params] = args;\n }\n\n if (!params) params = {};\n params = extend({}, params);\n if (el && !params.el) params.el = el;\n\n if (params.el && $(params.el).length > 1) {\n const swipers = [];\n $(params.el).each((containerEl) => {\n const newParams = extend({}, params, {\n el: containerEl,\n });\n swipers.push(new Swiper(newParams));\n });\n return swipers;\n } // Swiper Instance\n\n const swiper = this;\n swiper.__swiper__ = true;\n swiper.support = getSupport();\n swiper.device = getDevice({\n userAgent: params.userAgent,\n });\n swiper.browser = getBrowser();\n swiper.eventsListeners = {};\n swiper.eventsAnyListeners = [];\n swiper.modules = [...swiper.__modules__];\n\n if (params.modules && Array.isArray(params.modules)) {\n swiper.modules.push(...params.modules);\n }\n\n const allModulesParams = {};\n swiper.modules.forEach((mod) => {\n mod({\n swiper,\n extendParams: moduleExtendParams(params, allModulesParams),\n on: swiper.on.bind(swiper),\n once: swiper.once.bind(swiper),\n off: swiper.off.bind(swiper),\n emit: swiper.emit.bind(swiper),\n });\n }); // Extend defaults with modules params\n\n const swiperParams = extend({}, defaults, allModulesParams); // Extend defaults with passed params\n\n swiper.params = extend({}, swiperParams, extendedDefaults, params);\n swiper.originalParams = extend({}, swiper.params);\n swiper.passedParams = extend({}, params); // add event listeners\n\n if (swiper.params && swiper.params.on) {\n Object.keys(swiper.params.on).forEach((eventName) => {\n swiper.on(eventName, swiper.params.on[eventName]);\n });\n }\n\n if (swiper.params && swiper.params.onAny) {\n swiper.onAny(swiper.params.onAny);\n } // Save Dom lib\n\n swiper.$ = $; // Extend Swiper\n\n Object.assign(swiper, {\n enabled: swiper.params.enabled,\n el,\n // Classes\n classNames: [],\n // Slides\n slides: $(),\n slidesGrid: [],\n snapGrid: [],\n slidesSizesGrid: [],\n\n // isDirection\n isHorizontal() {\n return swiper.params.direction === 'horizontal';\n },\n\n isVertical() {\n return swiper.params.direction === 'vertical';\n },\n\n // Indexes\n activeIndex: 0,\n realIndex: 0,\n //\n isBeginning: true,\n isEnd: false,\n // Props\n translate: 0,\n previousTranslate: 0,\n progress: 0,\n velocity: 0,\n animating: false,\n // Locks\n allowSlideNext: swiper.params.allowSlideNext,\n allowSlidePrev: swiper.params.allowSlidePrev,\n // Touch Events\n touchEvents: (function touchEvents() {\n const touch = ['touchstart', 'touchmove', 'touchend', 'touchcancel'];\n const desktop = ['pointerdown', 'pointermove', 'pointerup'];\n swiper.touchEventsTouch = {\n start: touch[0],\n move: touch[1],\n end: touch[2],\n cancel: touch[3],\n };\n swiper.touchEventsDesktop = {\n start: desktop[0],\n move: desktop[1],\n end: desktop[2],\n };\n return swiper.support.touch || !swiper.params.simulateTouch\n ? swiper.touchEventsTouch\n : swiper.touchEventsDesktop;\n })(),\n touchEventsData: {\n isTouched: undefined,\n isMoved: undefined,\n allowTouchCallbacks: undefined,\n touchStartTime: undefined,\n isScrolling: undefined,\n currentTranslate: undefined,\n startTranslate: undefined,\n allowThresholdMove: undefined,\n // Form elements to match\n focusableElements: swiper.params.focusableElements,\n // Last click time\n lastClickTime: now(),\n clickTimeout: undefined,\n // Velocities\n velocities: [],\n allowMomentumBounce: undefined,\n isTouchEvent: undefined,\n startMoving: undefined,\n },\n // Clicks\n allowClick: true,\n // Touches\n allowTouchMove: swiper.params.allowTouchMove,\n touches: {\n startX: 0,\n startY: 0,\n currentX: 0,\n currentY: 0,\n diff: 0,\n },\n // Images\n imagesToLoad: [],\n imagesLoaded: 0,\n });\n swiper.emit('_swiper'); // Init\n\n if (swiper.params.init) {\n swiper.init();\n } // Return app instance\n\n return swiper;\n }\n\n enable() {\n const swiper = this;\n if (swiper.enabled) return;\n swiper.enabled = true;\n\n if (swiper.params.grabCursor) {\n swiper.setGrabCursor();\n }\n\n swiper.emit('enable');\n }\n\n disable() {\n const swiper = this;\n if (!swiper.enabled) return;\n swiper.enabled = false;\n\n if (swiper.params.grabCursor) {\n swiper.unsetGrabCursor();\n }\n\n swiper.emit('disable');\n }\n\n setProgress(progress, speed) {\n const swiper = this;\n progress = Math.min(Math.max(progress, 0), 1);\n const min = swiper.minTranslate();\n const max = swiper.maxTranslate();\n const current = (max - min) * progress + min;\n swiper.translateTo(current, typeof speed === 'undefined' ? 0 : speed);\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n\n emitContainerClasses() {\n const swiper = this;\n if (!swiper.params._emitClasses || !swiper.el) return;\n const cls = swiper.el.className.split(' ').filter((className) => {\n return className.indexOf('swiper') === 0 || className.indexOf(swiper.params.containerModifierClass) === 0;\n });\n swiper.emit('_containerClasses', cls.join(' '));\n }\n\n getSlideClasses(slideEl) {\n const swiper = this;\n return slideEl.className\n .split(' ')\n .filter((className) => {\n return className.indexOf('swiper-slide') === 0 || className.indexOf(swiper.params.slideClass) === 0;\n })\n .join(' ');\n }\n\n emitSlidesClasses() {\n const swiper = this;\n if (!swiper.params._emitClasses || !swiper.el) return;\n const updates = [];\n swiper.slides.each((slideEl) => {\n const classNames = swiper.getSlideClasses(slideEl);\n updates.push({\n slideEl,\n classNames,\n });\n swiper.emit('_slideClass', slideEl, classNames);\n });\n swiper.emit('_slideClasses', updates);\n }\n\n slidesPerViewDynamic(view = 'current', exact = false) {\n const swiper = this;\n const {params, slides, slidesGrid, slidesSizesGrid, size: swiperSize, activeIndex} = swiper;\n let spv = 1;\n\n if (params.centeredSlides) {\n let slideSize = slides[activeIndex].swiperSlideSize;\n let breakLoop;\n\n for (let i = activeIndex + 1; i < slides.length; i += 1) {\n if (slides[i] && !breakLoop) {\n slideSize += slides[i].swiperSlideSize;\n spv += 1;\n if (slideSize > swiperSize) breakLoop = true;\n }\n }\n\n for (let i = activeIndex - 1; i >= 0; i -= 1) {\n if (slides[i] && !breakLoop) {\n slideSize += slides[i].swiperSlideSize;\n spv += 1;\n if (slideSize > swiperSize) breakLoop = true;\n }\n }\n } else {\n // eslint-disable-next-line\n if (view === 'current') {\n for (let i = activeIndex + 1; i < slides.length; i += 1) {\n const slideInView = exact\n ? slidesGrid[i] + slidesSizesGrid[i] - slidesGrid[activeIndex] < swiperSize\n : slidesGrid[i] - slidesGrid[activeIndex] < swiperSize;\n\n if (slideInView) {\n spv += 1;\n }\n }\n } else {\n // previous\n for (let i = activeIndex - 1; i >= 0; i -= 1) {\n const slideInView = slidesGrid[activeIndex] - slidesGrid[i] < swiperSize;\n\n if (slideInView) {\n spv += 1;\n }\n }\n }\n }\n\n return spv;\n }\n\n update() {\n const swiper = this;\n if (!swiper || swiper.destroyed) return;\n const {snapGrid, params} = swiper; // Breakpoints\n\n if (params.breakpoints) {\n swiper.setBreakpoint();\n }\n\n swiper.updateSize();\n swiper.updateSlides();\n swiper.updateProgress();\n swiper.updateSlidesClasses();\n\n function setTranslate() {\n const translateValue = swiper.rtlTranslate ? swiper.translate * -1 : swiper.translate;\n const newTranslate = Math.min(Math.max(translateValue, swiper.maxTranslate()), swiper.minTranslate());\n swiper.setTranslate(newTranslate);\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n\n let translated;\n\n if (swiper.params.freeMode && swiper.params.freeMode.enabled) {\n setTranslate();\n\n if (swiper.params.autoHeight) {\n swiper.updateAutoHeight();\n }\n } else {\n if (\n (swiper.params.slidesPerView === 'auto' || swiper.params.slidesPerView > 1) &&\n swiper.isEnd &&\n !swiper.params.centeredSlides\n ) {\n translated = swiper.slideTo(swiper.slides.length - 1, 0, false, true);\n } else {\n translated = swiper.slideTo(swiper.activeIndex, 0, false, true);\n }\n\n if (!translated) {\n setTranslate();\n }\n }\n\n if (params.watchOverflow && snapGrid !== swiper.snapGrid) {\n swiper.checkOverflow();\n }\n\n swiper.emit('update');\n }\n\n changeDirection(newDirection, needUpdate = true) {\n const swiper = this;\n const currentDirection = swiper.params.direction;\n\n if (!newDirection) {\n // eslint-disable-next-line\n newDirection = currentDirection === 'horizontal' ? 'vertical' : 'horizontal';\n }\n\n if (newDirection === currentDirection || (newDirection !== 'horizontal' && newDirection !== 'vertical')) {\n return swiper;\n }\n\n swiper.$el\n .removeClass(`${swiper.params.containerModifierClass}${currentDirection}`)\n .addClass(`${swiper.params.containerModifierClass}${newDirection}`);\n swiper.emitContainerClasses();\n swiper.params.direction = newDirection;\n swiper.slides.each((slideEl) => {\n if (newDirection === 'vertical') {\n slideEl.style.width = '';\n } else {\n slideEl.style.height = '';\n }\n });\n swiper.emit('changeDirection');\n if (needUpdate) swiper.update();\n return swiper;\n }\n\n mount(el) {\n const swiper = this;\n if (swiper.mounted) return true; // Find el\n\n const $el = $(el || swiper.params.el);\n el = $el[0];\n\n if (!el) {\n return false;\n }\n\n el.swiper = swiper;\n\n const getWrapperSelector = () => {\n return `.${(swiper.params.wrapperClass || '').trim().split(' ').join('.')}`;\n };\n\n const getWrapper = () => {\n if (el && el.shadowRoot && el.shadowRoot.querySelector) {\n const res = $(el.shadowRoot.querySelector(getWrapperSelector())); // Children needs to return slot items\n\n res.children = (options) => $el.children(options);\n\n return res;\n }\n\n return $el.children(getWrapperSelector());\n }; // Find Wrapper\n\n let $wrapperEl = getWrapper();\n\n if ($wrapperEl.length === 0 && swiper.params.createElements) {\n const document = getDocument();\n const wrapper = document.createElement('div');\n $wrapperEl = $(wrapper);\n wrapper.className = swiper.params.wrapperClass;\n $el.append(wrapper);\n $el.children(`.${swiper.params.slideClass}`).each((slideEl) => {\n $wrapperEl.append(slideEl);\n });\n }\n\n Object.assign(swiper, {\n $el,\n el,\n $wrapperEl,\n wrapperEl: $wrapperEl[0],\n mounted: true,\n // RTL\n rtl: el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl',\n rtlTranslate:\n swiper.params.direction === 'horizontal' &&\n (el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl'),\n wrongRTL: $wrapperEl.css('display') === '-webkit-box',\n });\n return true;\n }\n\n init(el) {\n const swiper = this;\n if (swiper.initialized) return swiper;\n const mounted = swiper.mount(el);\n if (mounted === false) return swiper;\n swiper.emit('beforeInit'); // Set breakpoint\n\n if (swiper.params.breakpoints) {\n swiper.setBreakpoint();\n } // Add Classes\n\n swiper.addClasses(); // Create loop\n\n if (swiper.params.loop) {\n swiper.loopCreate();\n } // Update size\n\n swiper.updateSize(); // Update slides\n\n swiper.updateSlides();\n\n if (swiper.params.watchOverflow) {\n swiper.checkOverflow();\n } // Set Grab Cursor\n\n if (swiper.params.grabCursor && swiper.enabled) {\n swiper.setGrabCursor();\n }\n\n if (swiper.params.preloadImages) {\n swiper.preloadImages();\n } // Slide To Initial Slide\n\n if (swiper.params.loop) {\n swiper.slideTo(\n swiper.params.initialSlide + swiper.loopedSlides,\n 0,\n swiper.params.runCallbacksOnInit,\n false,\n true,\n );\n } else {\n swiper.slideTo(swiper.params.initialSlide, 0, swiper.params.runCallbacksOnInit, false, true);\n } // Attach events\n\n swiper.attachEvents(); // Init Flag\n\n swiper.initialized = true; // Emit\n\n swiper.emit('init');\n swiper.emit('afterInit');\n return swiper;\n }\n\n destroy(deleteInstance = true, cleanStyles = true) {\n const swiper = this;\n const {params, $el, $wrapperEl, slides} = swiper;\n\n if (typeof swiper.params === 'undefined' || swiper.destroyed) {\n return null;\n }\n\n swiper.emit('beforeDestroy'); // Init Flag\n\n swiper.initialized = false; // Detach events\n\n swiper.detachEvents(); // Destroy loop\n\n if (params.loop) {\n swiper.loopDestroy();\n } // Cleanup styles\n\n if (cleanStyles) {\n swiper.removeClasses();\n $el.removeAttr('style');\n $wrapperEl.removeAttr('style');\n\n if (slides && slides.length) {\n slides\n .removeClass(\n [params.slideVisibleClass, params.slideActiveClass, params.slideNextClass, params.slidePrevClass].join(\n ' ',\n ),\n )\n .removeAttr('style')\n .removeAttr('data-swiper-slide-index');\n }\n }\n\n swiper.emit('destroy'); // Detach emitter events\n\n Object.keys(swiper.eventsListeners).forEach((eventName) => {\n swiper.off(eventName);\n });\n\n if (deleteInstance !== false) {\n swiper.$el[0].swiper = null;\n deleteProps(swiper);\n }\n\n swiper.destroyed = true;\n return null;\n }\n\n static extendDefaults(newDefaults) {\n extend(extendedDefaults, newDefaults);\n }\n\n static get extendedDefaults() {\n return extendedDefaults;\n }\n\n static get defaults() {\n return defaults;\n }\n\n static installModule(mod) {\n if (!Swiper.prototype.__modules__) Swiper.prototype.__modules__ = [];\n const modules = Swiper.prototype.__modules__;\n\n if (typeof mod === 'function' && modules.indexOf(mod) < 0) {\n modules.push(mod);\n }\n }\n\n static use(module) {\n if (Array.isArray(module)) {\n module.forEach((m) => Swiper.installModule(m));\n return Swiper;\n }\n\n Swiper.installModule(module);\n return Swiper;\n }\n }\n\n Object.keys(prototypes).forEach((prototypeGroup) => {\n Object.keys(prototypes[prototypeGroup]).forEach((protoMethod) => {\n Swiper.prototype[protoMethod] = prototypes[prototypeGroup][protoMethod];\n });\n });\n Swiper.use([Resize, Observer]);\n\n function Virtual({swiper, extendParams, on}) {\n extendParams({\n virtual: {\n enabled: false,\n slides: [],\n cache: true,\n renderSlide: null,\n renderExternal: null,\n renderExternalUpdate: true,\n addSlidesBefore: 0,\n addSlidesAfter: 0,\n },\n });\n let cssModeTimeout;\n swiper.virtual = {\n cache: {},\n from: undefined,\n to: undefined,\n slides: [],\n offset: 0,\n slidesGrid: [],\n };\n\n function renderSlide(slide, index) {\n const params = swiper.params.virtual;\n\n if (params.cache && swiper.virtual.cache[index]) {\n return swiper.virtual.cache[index];\n }\n\n const $slideEl = params.renderSlide\n ? $(params.renderSlide.call(swiper, slide, index))\n : $(`
    ${slide}
    `);\n if (!$slideEl.attr('data-swiper-slide-index')) $slideEl.attr('data-swiper-slide-index', index);\n if (params.cache) swiper.virtual.cache[index] = $slideEl;\n return $slideEl;\n }\n\n function update(force) {\n const {slidesPerView, slidesPerGroup, centeredSlides} = swiper.params;\n const {addSlidesBefore, addSlidesAfter} = swiper.params.virtual;\n const {\n from: previousFrom,\n to: previousTo,\n slides,\n slidesGrid: previousSlidesGrid,\n offset: previousOffset,\n } = swiper.virtual;\n\n if (!swiper.params.cssMode) {\n swiper.updateActiveIndex();\n }\n\n const activeIndex = swiper.activeIndex || 0;\n let offsetProp;\n if (swiper.rtlTranslate) offsetProp = 'right';\n else offsetProp = swiper.isHorizontal() ? 'left' : 'top';\n let slidesAfter;\n let slidesBefore;\n\n if (centeredSlides) {\n slidesAfter = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesAfter;\n slidesBefore = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesBefore;\n } else {\n slidesAfter = slidesPerView + (slidesPerGroup - 1) + addSlidesAfter;\n slidesBefore = slidesPerGroup + addSlidesBefore;\n }\n\n const from = Math.max((activeIndex || 0) - slidesBefore, 0);\n const to = Math.min((activeIndex || 0) + slidesAfter, slides.length - 1);\n const offset = (swiper.slidesGrid[from] || 0) - (swiper.slidesGrid[0] || 0);\n Object.assign(swiper.virtual, {\n from,\n to,\n offset,\n slidesGrid: swiper.slidesGrid,\n });\n\n function onRendered() {\n swiper.updateSlides();\n swiper.updateProgress();\n swiper.updateSlidesClasses();\n\n if (swiper.lazy && swiper.params.lazy.enabled) {\n swiper.lazy.load();\n }\n }\n\n if (previousFrom === from && previousTo === to && !force) {\n if (swiper.slidesGrid !== previousSlidesGrid && offset !== previousOffset) {\n swiper.slides.css(offsetProp, `${offset}px`);\n }\n\n swiper.updateProgress();\n return;\n }\n\n if (swiper.params.virtual.renderExternal) {\n swiper.params.virtual.renderExternal.call(swiper, {\n offset,\n from,\n to,\n slides: (function getSlides() {\n const slidesToRender = [];\n\n for (let i = from; i <= to; i += 1) {\n slidesToRender.push(slides[i]);\n }\n\n return slidesToRender;\n })(),\n });\n\n if (swiper.params.virtual.renderExternalUpdate) {\n onRendered();\n }\n\n return;\n }\n\n const prependIndexes = [];\n const appendIndexes = [];\n\n if (force) {\n swiper.$wrapperEl.find(`.${swiper.params.slideClass}`).remove();\n } else {\n for (let i = previousFrom; i <= previousTo; i += 1) {\n if (i < from || i > to) {\n swiper.$wrapperEl.find(`.${swiper.params.slideClass}[data-swiper-slide-index=\"${i}\"]`).remove();\n }\n }\n }\n\n for (let i = 0; i < slides.length; i += 1) {\n if (i >= from && i <= to) {\n if (typeof previousTo === 'undefined' || force) {\n appendIndexes.push(i);\n } else {\n if (i > previousTo) appendIndexes.push(i);\n if (i < previousFrom) prependIndexes.push(i);\n }\n }\n }\n\n appendIndexes.forEach((index) => {\n swiper.$wrapperEl.append(renderSlide(slides[index], index));\n });\n prependIndexes\n .sort((a, b) => b - a)\n .forEach((index) => {\n swiper.$wrapperEl.prepend(renderSlide(slides[index], index));\n });\n swiper.$wrapperEl.children('.swiper-slide').css(offsetProp, `${offset}px`);\n onRendered();\n }\n\n function appendSlide(slides) {\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) swiper.virtual.slides.push(slides[i]);\n }\n } else {\n swiper.virtual.slides.push(slides);\n }\n\n update(true);\n }\n\n function prependSlide(slides) {\n const activeIndex = swiper.activeIndex;\n let newActiveIndex = activeIndex + 1;\n let numberOfNewSlides = 1;\n\n if (Array.isArray(slides)) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) swiper.virtual.slides.unshift(slides[i]);\n }\n\n newActiveIndex = activeIndex + slides.length;\n numberOfNewSlides = slides.length;\n } else {\n swiper.virtual.slides.unshift(slides);\n }\n\n if (swiper.params.virtual.cache) {\n const cache = swiper.virtual.cache;\n const newCache = {};\n Object.keys(cache).forEach((cachedIndex) => {\n const $cachedEl = cache[cachedIndex];\n const cachedElIndex = $cachedEl.attr('data-swiper-slide-index');\n\n if (cachedElIndex) {\n $cachedEl.attr('data-swiper-slide-index', parseInt(cachedElIndex, 10) + numberOfNewSlides);\n }\n\n newCache[parseInt(cachedIndex, 10) + numberOfNewSlides] = $cachedEl;\n });\n swiper.virtual.cache = newCache;\n }\n\n update(true);\n swiper.slideTo(newActiveIndex, 0);\n }\n\n function removeSlide(slidesIndexes) {\n if (typeof slidesIndexes === 'undefined' || slidesIndexes === null) return;\n let activeIndex = swiper.activeIndex;\n\n if (Array.isArray(slidesIndexes)) {\n for (let i = slidesIndexes.length - 1; i >= 0; i -= 1) {\n swiper.virtual.slides.splice(slidesIndexes[i], 1);\n\n if (swiper.params.virtual.cache) {\n delete swiper.virtual.cache[slidesIndexes[i]];\n }\n\n if (slidesIndexes[i] < activeIndex) activeIndex -= 1;\n activeIndex = Math.max(activeIndex, 0);\n }\n } else {\n swiper.virtual.slides.splice(slidesIndexes, 1);\n\n if (swiper.params.virtual.cache) {\n delete swiper.virtual.cache[slidesIndexes];\n }\n\n if (slidesIndexes < activeIndex) activeIndex -= 1;\n activeIndex = Math.max(activeIndex, 0);\n }\n\n update(true);\n swiper.slideTo(activeIndex, 0);\n }\n\n function removeAllSlides() {\n swiper.virtual.slides = [];\n\n if (swiper.params.virtual.cache) {\n swiper.virtual.cache = {};\n }\n\n update(true);\n swiper.slideTo(0, 0);\n }\n\n on('beforeInit', () => {\n if (!swiper.params.virtual.enabled) return;\n swiper.virtual.slides = swiper.params.virtual.slides;\n swiper.classNames.push(`${swiper.params.containerModifierClass}virtual`);\n swiper.params.watchSlidesProgress = true;\n swiper.originalParams.watchSlidesProgress = true;\n\n if (!swiper.params.initialSlide) {\n update();\n }\n });\n on('setTranslate', () => {\n if (!swiper.params.virtual.enabled) return;\n\n if (swiper.params.cssMode && !swiper._immediateVirtual) {\n clearTimeout(cssModeTimeout);\n cssModeTimeout = setTimeout(() => {\n update();\n }, 100);\n } else {\n update();\n }\n });\n on('init update resize', () => {\n if (!swiper.params.virtual.enabled) return;\n\n if (swiper.params.cssMode) {\n setCSSProperty(swiper.wrapperEl, '--swiper-virtual-size', `${swiper.virtualSize}px`);\n }\n });\n Object.assign(swiper.virtual, {\n appendSlide,\n prependSlide,\n removeSlide,\n removeAllSlides,\n update,\n });\n }\n\n /* eslint-disable consistent-return */\n function Keyboard({swiper, extendParams, on, emit}) {\n const document = getDocument();\n const window = getWindow();\n swiper.keyboard = {\n enabled: false,\n };\n extendParams({\n keyboard: {\n enabled: false,\n onlyInViewport: true,\n pageUpDown: true,\n },\n });\n\n function handle(event) {\n if (!swiper.enabled) return;\n const {rtlTranslate: rtl} = swiper;\n let e = event;\n if (e.originalEvent) e = e.originalEvent; // jquery fix\n\n const kc = e.keyCode || e.charCode;\n const pageUpDown = swiper.params.keyboard.pageUpDown;\n const isPageUp = pageUpDown && kc === 33;\n const isPageDown = pageUpDown && kc === 34;\n const isArrowLeft = kc === 37;\n const isArrowRight = kc === 39;\n const isArrowUp = kc === 38;\n const isArrowDown = kc === 40; // Directions locks\n\n if (\n !swiper.allowSlideNext &&\n ((swiper.isHorizontal() && isArrowRight) || (swiper.isVertical() && isArrowDown) || isPageDown)\n ) {\n return false;\n }\n\n if (\n !swiper.allowSlidePrev &&\n ((swiper.isHorizontal() && isArrowLeft) || (swiper.isVertical() && isArrowUp) || isPageUp)\n ) {\n return false;\n }\n\n if (e.shiftKey || e.altKey || e.ctrlKey || e.metaKey) {\n return undefined;\n }\n\n if (\n document.activeElement &&\n document.activeElement.nodeName &&\n (document.activeElement.nodeName.toLowerCase() === 'input' ||\n document.activeElement.nodeName.toLowerCase() === 'textarea')\n ) {\n return undefined;\n }\n\n if (\n swiper.params.keyboard.onlyInViewport &&\n (isPageUp || isPageDown || isArrowLeft || isArrowRight || isArrowUp || isArrowDown)\n ) {\n let inView = false; // Check that swiper should be inside of visible area of window\n\n if (\n swiper.$el.parents(`.${swiper.params.slideClass}`).length > 0 &&\n swiper.$el.parents(`.${swiper.params.slideActiveClass}`).length === 0\n ) {\n return undefined;\n }\n\n const $el = swiper.$el;\n const swiperWidth = $el[0].clientWidth;\n const swiperHeight = $el[0].clientHeight;\n const windowWidth = window.innerWidth;\n const windowHeight = window.innerHeight;\n const swiperOffset = swiper.$el.offset();\n if (rtl) swiperOffset.left -= swiper.$el[0].scrollLeft;\n const swiperCoord = [\n [swiperOffset.left, swiperOffset.top],\n [swiperOffset.left + swiperWidth, swiperOffset.top],\n [swiperOffset.left, swiperOffset.top + swiperHeight],\n [swiperOffset.left + swiperWidth, swiperOffset.top + swiperHeight],\n ];\n\n for (let i = 0; i < swiperCoord.length; i += 1) {\n const point = swiperCoord[i];\n\n if (point[0] >= 0 && point[0] <= windowWidth && point[1] >= 0 && point[1] <= windowHeight) {\n if (point[0] === 0 && point[1] === 0) continue; // eslint-disable-line\n\n inView = true;\n }\n }\n\n if (!inView) return undefined;\n }\n\n if (swiper.isHorizontal()) {\n if (isPageUp || isPageDown || isArrowLeft || isArrowRight) {\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n }\n\n if (((isPageDown || isArrowRight) && !rtl) || ((isPageUp || isArrowLeft) && rtl)) swiper.slideNext();\n if (((isPageUp || isArrowLeft) && !rtl) || ((isPageDown || isArrowRight) && rtl)) swiper.slidePrev();\n } else {\n if (isPageUp || isPageDown || isArrowUp || isArrowDown) {\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n }\n\n if (isPageDown || isArrowDown) swiper.slideNext();\n if (isPageUp || isArrowUp) swiper.slidePrev();\n }\n\n emit('keyPress', kc);\n return undefined;\n }\n\n function enable() {\n if (swiper.keyboard.enabled) return;\n $(document).on('keydown', handle);\n swiper.keyboard.enabled = true;\n }\n\n function disable() {\n if (!swiper.keyboard.enabled) return;\n $(document).off('keydown', handle);\n swiper.keyboard.enabled = false;\n }\n\n on('init', () => {\n if (swiper.params.keyboard.enabled) {\n enable();\n }\n });\n on('destroy', () => {\n if (swiper.keyboard.enabled) {\n disable();\n }\n });\n Object.assign(swiper.keyboard, {\n enable,\n disable,\n });\n }\n\n /* eslint-disable consistent-return */\n function Mousewheel({swiper, extendParams, on, emit}) {\n const window = getWindow();\n extendParams({\n mousewheel: {\n enabled: false,\n releaseOnEdges: false,\n invert: false,\n forceToAxis: false,\n sensitivity: 1,\n eventsTarget: 'container',\n thresholdDelta: null,\n thresholdTime: null,\n },\n });\n swiper.mousewheel = {\n enabled: false,\n };\n let timeout;\n let lastScrollTime = now();\n let lastEventBeforeSnap;\n const recentWheelEvents = [];\n\n function normalize(e) {\n // Reasonable defaults\n const PIXEL_STEP = 10;\n const LINE_HEIGHT = 40;\n const PAGE_HEIGHT = 800;\n let sX = 0;\n let sY = 0; // spinX, spinY\n\n let pX = 0;\n let pY = 0; // pixelX, pixelY\n // Legacy\n\n if ('detail' in e) {\n sY = e.detail;\n }\n\n if ('wheelDelta' in e) {\n sY = -e.wheelDelta / 120;\n }\n\n if ('wheelDeltaY' in e) {\n sY = -e.wheelDeltaY / 120;\n }\n\n if ('wheelDeltaX' in e) {\n sX = -e.wheelDeltaX / 120;\n } // side scrolling on FF with DOMMouseScroll\n\n if ('axis' in e && e.axis === e.HORIZONTAL_AXIS) {\n sX = sY;\n sY = 0;\n }\n\n pX = sX * PIXEL_STEP;\n pY = sY * PIXEL_STEP;\n\n if ('deltaY' in e) {\n pY = e.deltaY;\n }\n\n if ('deltaX' in e) {\n pX = e.deltaX;\n }\n\n if (e.shiftKey && !pX) {\n // if user scrolls with shift he wants horizontal scroll\n pX = pY;\n pY = 0;\n }\n\n if ((pX || pY) && e.deltaMode) {\n if (e.deltaMode === 1) {\n // delta in LINE units\n pX *= LINE_HEIGHT;\n pY *= LINE_HEIGHT;\n } else {\n // delta in PAGE units\n pX *= PAGE_HEIGHT;\n pY *= PAGE_HEIGHT;\n }\n } // Fall-back if spin cannot be determined\n\n if (pX && !sX) {\n sX = pX < 1 ? -1 : 1;\n }\n\n if (pY && !sY) {\n sY = pY < 1 ? -1 : 1;\n }\n\n return {\n spinX: sX,\n spinY: sY,\n pixelX: pX,\n pixelY: pY,\n };\n }\n\n function handleMouseEnter() {\n if (!swiper.enabled) return;\n swiper.mouseEntered = true;\n }\n\n function handleMouseLeave() {\n if (!swiper.enabled) return;\n swiper.mouseEntered = false;\n }\n\n function animateSlider(newEvent) {\n if (swiper.params.mousewheel.thresholdDelta && newEvent.delta < swiper.params.mousewheel.thresholdDelta) {\n // Prevent if delta of wheel scroll delta is below configured threshold\n return false;\n }\n\n if (swiper.params.mousewheel.thresholdTime && now() - lastScrollTime < swiper.params.mousewheel.thresholdTime) {\n // Prevent if time between scrolls is below configured threshold\n return false;\n } // If the movement is NOT big enough and\n // if the last time the user scrolled was too close to the current one (avoid continuously triggering the slider):\n // Don't go any further (avoid insignificant scroll movement).\n\n if (newEvent.delta >= 6 && now() - lastScrollTime < 60) {\n // Return false as a default\n return true;\n } // If user is scrolling towards the end:\n // If the slider hasn't hit the latest slide or\n // if the slider is a loop and\n // if the slider isn't moving right now:\n // Go to next slide and\n // emit a scroll event.\n // Else (the user is scrolling towards the beginning) and\n // if the slider hasn't hit the first slide or\n // if the slider is a loop and\n // if the slider isn't moving right now:\n // Go to prev slide and\n // emit a scroll event.\n\n if (newEvent.direction < 0) {\n if ((!swiper.isEnd || swiper.params.loop) && !swiper.animating) {\n swiper.slideNext();\n emit('scroll', newEvent.raw);\n }\n } else if ((!swiper.isBeginning || swiper.params.loop) && !swiper.animating) {\n swiper.slidePrev();\n emit('scroll', newEvent.raw);\n } // If you got here is because an animation has been triggered so store the current time\n\n lastScrollTime = new window.Date().getTime(); // Return false as a default\n\n return false;\n }\n\n function releaseScroll(newEvent) {\n const params = swiper.params.mousewheel;\n\n if (newEvent.direction < 0) {\n if (swiper.isEnd && !swiper.params.loop && params.releaseOnEdges) {\n // Return true to animate scroll on edges\n return true;\n }\n } else if (swiper.isBeginning && !swiper.params.loop && params.releaseOnEdges) {\n // Return true to animate scroll on edges\n return true;\n }\n\n return false;\n }\n\n function handle(event) {\n let e = event;\n let disableParentSwiper = true;\n if (!swiper.enabled) return;\n const params = swiper.params.mousewheel;\n\n if (swiper.params.cssMode) {\n e.preventDefault();\n }\n\n let target = swiper.$el;\n\n if (swiper.params.mousewheel.eventsTarget !== 'container') {\n target = $(swiper.params.mousewheel.eventsTarget);\n }\n\n if (!swiper.mouseEntered && !target[0].contains(e.target) && !params.releaseOnEdges) return true;\n if (e.originalEvent) e = e.originalEvent; // jquery fix\n\n let delta = 0;\n const rtlFactor = swiper.rtlTranslate ? -1 : 1;\n const data = normalize(e);\n\n if (params.forceToAxis) {\n if (swiper.isHorizontal()) {\n if (Math.abs(data.pixelX) > Math.abs(data.pixelY)) delta = -data.pixelX * rtlFactor;\n else return true;\n } else if (Math.abs(data.pixelY) > Math.abs(data.pixelX)) delta = -data.pixelY;\n else return true;\n } else {\n delta = Math.abs(data.pixelX) > Math.abs(data.pixelY) ? -data.pixelX * rtlFactor : -data.pixelY;\n }\n\n if (delta === 0) return true;\n if (params.invert) delta = -delta; // Get the scroll positions\n\n let positions = swiper.getTranslate() + delta * params.sensitivity;\n if (positions >= swiper.minTranslate()) positions = swiper.minTranslate();\n if (positions <= swiper.maxTranslate()) positions = swiper.maxTranslate(); // When loop is true:\n // the disableParentSwiper will be true.\n // When loop is false:\n // if the scroll positions is not on edge,\n // then the disableParentSwiper will be true.\n // if the scroll on edge positions,\n // then the disableParentSwiper will be false.\n\n disableParentSwiper = swiper.params.loop\n ? true\n : !(positions === swiper.minTranslate() || positions === swiper.maxTranslate());\n if (disableParentSwiper && swiper.params.nested) e.stopPropagation();\n\n if (!swiper.params.freeMode || !swiper.params.freeMode.enabled) {\n // Register the new event in a variable which stores the relevant data\n const newEvent = {\n time: now(),\n delta: Math.abs(delta),\n direction: Math.sign(delta),\n raw: event,\n }; // Keep the most recent events\n\n if (recentWheelEvents.length >= 2) {\n recentWheelEvents.shift(); // only store the last N events\n }\n\n const prevEvent = recentWheelEvents.length ? recentWheelEvents[recentWheelEvents.length - 1] : undefined;\n recentWheelEvents.push(newEvent); // If there is at least one previous recorded event:\n // If direction has changed or\n // if the scroll is quicker than the previous one:\n // Animate the slider.\n // Else (this is the first time the wheel is moved):\n // Animate the slider.\n\n if (prevEvent) {\n if (\n newEvent.direction !== prevEvent.direction ||\n newEvent.delta > prevEvent.delta ||\n newEvent.time > prevEvent.time + 150\n ) {\n animateSlider(newEvent);\n }\n } else {\n animateSlider(newEvent);\n } // If it's time to release the scroll:\n // Return now so you don't hit the preventDefault.\n\n if (releaseScroll(newEvent)) {\n return true;\n }\n } else {\n // Freemode or scrollContainer:\n // If we recently snapped after a momentum scroll, then ignore wheel events\n // to give time for the deceleration to finish. Stop ignoring after 500 msecs\n // or if it's a new scroll (larger delta or inverse sign as last event before\n // an end-of-momentum snap).\n const newEvent = {\n time: now(),\n delta: Math.abs(delta),\n direction: Math.sign(delta),\n };\n const ignoreWheelEvents =\n lastEventBeforeSnap &&\n newEvent.time < lastEventBeforeSnap.time + 500 &&\n newEvent.delta <= lastEventBeforeSnap.delta &&\n newEvent.direction === lastEventBeforeSnap.direction;\n\n if (!ignoreWheelEvents) {\n lastEventBeforeSnap = undefined;\n\n if (swiper.params.loop) {\n swiper.loopFix();\n }\n\n let position = swiper.getTranslate() + delta * params.sensitivity;\n const wasBeginning = swiper.isBeginning;\n const wasEnd = swiper.isEnd;\n if (position >= swiper.minTranslate()) position = swiper.minTranslate();\n if (position <= swiper.maxTranslate()) position = swiper.maxTranslate();\n swiper.setTransition(0);\n swiper.setTranslate(position);\n swiper.updateProgress();\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n\n if ((!wasBeginning && swiper.isBeginning) || (!wasEnd && swiper.isEnd)) {\n swiper.updateSlidesClasses();\n }\n\n if (swiper.params.freeMode.sticky) {\n // When wheel scrolling starts with sticky (aka snap) enabled, then detect\n // the end of a momentum scroll by storing recent (N=15?) wheel events.\n // 1. do all N events have decreasing or same (absolute value) delta?\n // 2. did all N events arrive in the last M (M=500?) msecs?\n // 3. does the earliest event have an (absolute value) delta that's\n // at least P (P=1?) larger than the most recent event's delta?\n // 4. does the latest event have a delta that's smaller than Q (Q=6?) pixels?\n // If 1-4 are \"yes\" then we're near the end of a momentum scroll deceleration.\n // Snap immediately and ignore remaining wheel events in this scroll.\n // See comment above for \"remaining wheel events in this scroll\" determination.\n // If 1-4 aren't satisfied, then wait to snap until 500ms after the last event.\n clearTimeout(timeout);\n timeout = undefined;\n\n if (recentWheelEvents.length >= 15) {\n recentWheelEvents.shift(); // only store the last N events\n }\n\n const prevEvent = recentWheelEvents.length ? recentWheelEvents[recentWheelEvents.length - 1] : undefined;\n const firstEvent = recentWheelEvents[0];\n recentWheelEvents.push(newEvent);\n\n if (prevEvent && (newEvent.delta > prevEvent.delta || newEvent.direction !== prevEvent.direction)) {\n // Increasing or reverse-sign delta means the user started scrolling again. Clear the wheel event log.\n recentWheelEvents.splice(0);\n } else if (\n recentWheelEvents.length >= 15 &&\n newEvent.time - firstEvent.time < 500 &&\n firstEvent.delta - newEvent.delta >= 1 &&\n newEvent.delta <= 6\n ) {\n // We're at the end of the deceleration of a momentum scroll, so there's no need\n // to wait for more events. Snap ASAP on the next tick.\n // Also, because there's some remaining momentum we'll bias the snap in the\n // direction of the ongoing scroll because it's better UX for the scroll to snap\n // in the same direction as the scroll instead of reversing to snap. Therefore,\n // if it's already scrolled more than 20% in the current direction, keep going.\n const snapToThreshold = delta > 0 ? 0.8 : 0.2;\n lastEventBeforeSnap = newEvent;\n recentWheelEvents.splice(0);\n timeout = nextTick(() => {\n swiper.slideToClosest(swiper.params.speed, true, undefined, snapToThreshold);\n }, 0); // no delay; move on next tick\n }\n\n if (!timeout) {\n // if we get here, then we haven't detected the end of a momentum scroll, so\n // we'll consider a scroll \"complete\" when there haven't been any wheel events\n // for 500ms.\n timeout = nextTick(() => {\n const snapToThreshold = 0.5;\n lastEventBeforeSnap = newEvent;\n recentWheelEvents.splice(0);\n swiper.slideToClosest(swiper.params.speed, true, undefined, snapToThreshold);\n }, 500);\n }\n } // Emit event\n\n if (!ignoreWheelEvents) emit('scroll', e); // Stop autoplay\n\n if (swiper.params.autoplay && swiper.params.autoplayDisableOnInteraction) swiper.autoplay.stop(); // Return page scroll on edge positions\n\n if (position === swiper.minTranslate() || position === swiper.maxTranslate()) return true;\n }\n }\n\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n return false;\n }\n\n function events(method) {\n let target = swiper.$el;\n\n if (swiper.params.mousewheel.eventsTarget !== 'container') {\n target = $(swiper.params.mousewheel.eventsTarget);\n }\n\n target[method]('mouseenter', handleMouseEnter);\n target[method]('mouseleave', handleMouseLeave);\n target[method]('wheel', handle);\n }\n\n function enable() {\n if (swiper.params.cssMode) {\n swiper.wrapperEl.removeEventListener('wheel', handle);\n return true;\n }\n\n if (swiper.mousewheel.enabled) return false;\n events('on');\n swiper.mousewheel.enabled = true;\n return true;\n }\n\n function disable() {\n if (swiper.params.cssMode) {\n swiper.wrapperEl.addEventListener(event, handle);\n return true;\n }\n\n if (!swiper.mousewheel.enabled) return false;\n events('off');\n swiper.mousewheel.enabled = false;\n return true;\n }\n\n on('init', () => {\n if (!swiper.params.mousewheel.enabled && swiper.params.cssMode) {\n disable();\n }\n\n if (swiper.params.mousewheel.enabled) enable();\n });\n on('destroy', () => {\n if (swiper.params.cssMode) {\n enable();\n }\n\n if (swiper.mousewheel.enabled) disable();\n });\n Object.assign(swiper.mousewheel, {\n enable,\n disable,\n });\n }\n\n function createElementIfNotDefined(swiper, originalParams, params, checkProps) {\n const document = getDocument();\n\n if (swiper.params.createElements) {\n Object.keys(checkProps).forEach((key) => {\n if (!params[key] && params.auto === true) {\n let element = swiper.$el.children(`.${checkProps[key]}`)[0];\n\n if (!element) {\n element = document.createElement('div');\n element.className = checkProps[key];\n swiper.$el.append(element);\n }\n\n params[key] = element;\n originalParams[key] = element;\n }\n });\n }\n\n return params;\n }\n\n function Navigation({swiper, extendParams, on, emit}) {\n extendParams({\n navigation: {\n nextEl: null,\n prevEl: null,\n hideOnClick: false,\n disabledClass: 'swiper-button-disabled',\n hiddenClass: 'swiper-button-hidden',\n lockClass: 'swiper-button-lock',\n },\n });\n swiper.navigation = {\n nextEl: null,\n $nextEl: null,\n prevEl: null,\n $prevEl: null,\n };\n\n function getEl(el) {\n let $el;\n\n if (el) {\n $el = $(el);\n\n if (\n swiper.params.uniqueNavElements &&\n typeof el === 'string' &&\n $el.length > 1 &&\n swiper.$el.find(el).length === 1\n ) {\n $el = swiper.$el.find(el);\n }\n }\n\n return $el;\n }\n\n function toggleEl($el, disabled) {\n const params = swiper.params.navigation;\n\n if ($el && $el.length > 0) {\n $el[disabled ? 'addClass' : 'removeClass'](params.disabledClass);\n if ($el[0] && $el[0].tagName === 'BUTTON') $el[0].disabled = disabled;\n\n if (swiper.params.watchOverflow && swiper.enabled) {\n $el[swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);\n }\n }\n }\n\n function update() {\n // Update Navigation Buttons\n if (swiper.params.loop) return;\n const {$nextEl, $prevEl} = swiper.navigation;\n toggleEl($prevEl, swiper.isBeginning && !swiper.params.rewind);\n toggleEl($nextEl, swiper.isEnd && !swiper.params.rewind);\n }\n\n function onPrevClick(e) {\n e.preventDefault();\n if (swiper.isBeginning && !swiper.params.loop && !swiper.params.rewind) return;\n swiper.slidePrev();\n }\n\n function onNextClick(e) {\n e.preventDefault();\n if (swiper.isEnd && !swiper.params.loop && !swiper.params.rewind) return;\n swiper.slideNext();\n }\n\n function init() {\n const params = swiper.params.navigation;\n swiper.params.navigation = createElementIfNotDefined(\n swiper,\n swiper.originalParams.navigation,\n swiper.params.navigation,\n {\n nextEl: 'swiper-button-next',\n prevEl: 'swiper-button-prev',\n },\n );\n if (!(params.nextEl || params.prevEl)) return;\n const $nextEl = getEl(params.nextEl);\n const $prevEl = getEl(params.prevEl);\n\n if ($nextEl && $nextEl.length > 0) {\n $nextEl.on('click', onNextClick);\n }\n\n if ($prevEl && $prevEl.length > 0) {\n $prevEl.on('click', onPrevClick);\n }\n\n Object.assign(swiper.navigation, {\n $nextEl,\n nextEl: $nextEl && $nextEl[0],\n $prevEl,\n prevEl: $prevEl && $prevEl[0],\n });\n\n if (!swiper.enabled) {\n if ($nextEl) $nextEl.addClass(params.lockClass);\n if ($prevEl) $prevEl.addClass(params.lockClass);\n }\n }\n\n function destroy() {\n const {$nextEl, $prevEl} = swiper.navigation;\n\n if ($nextEl && $nextEl.length) {\n $nextEl.off('click', onNextClick);\n $nextEl.removeClass(swiper.params.navigation.disabledClass);\n }\n\n if ($prevEl && $prevEl.length) {\n $prevEl.off('click', onPrevClick);\n $prevEl.removeClass(swiper.params.navigation.disabledClass);\n }\n }\n\n on('init', () => {\n init();\n update();\n });\n on('toEdge fromEdge lock unlock', () => {\n update();\n });\n on('destroy', () => {\n destroy();\n });\n on('enable disable', () => {\n const {$nextEl, $prevEl} = swiper.navigation;\n\n if ($nextEl) {\n $nextEl[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.navigation.lockClass);\n }\n\n if ($prevEl) {\n $prevEl[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.navigation.lockClass);\n }\n });\n on('click', (_s, e) => {\n const {$nextEl, $prevEl} = swiper.navigation;\n const targetEl = e.target;\n\n if (swiper.params.navigation.hideOnClick && !$(targetEl).is($prevEl) && !$(targetEl).is($nextEl)) {\n if (\n swiper.pagination &&\n swiper.params.pagination &&\n swiper.params.pagination.clickable &&\n (swiper.pagination.el === targetEl || swiper.pagination.el.contains(targetEl))\n )\n return;\n let isHidden;\n\n if ($nextEl) {\n isHidden = $nextEl.hasClass(swiper.params.navigation.hiddenClass);\n } else if ($prevEl) {\n isHidden = $prevEl.hasClass(swiper.params.navigation.hiddenClass);\n }\n\n if (isHidden === true) {\n emit('navigationShow');\n } else {\n emit('navigationHide');\n }\n\n if ($nextEl) {\n $nextEl.toggleClass(swiper.params.navigation.hiddenClass);\n }\n\n if ($prevEl) {\n $prevEl.toggleClass(swiper.params.navigation.hiddenClass);\n }\n }\n });\n Object.assign(swiper.navigation, {\n update,\n init,\n destroy,\n });\n }\n\n function classesToSelector(classes = '') {\n return `.${classes\n .trim()\n .replace(/([\\.:!\\/])/g, '\\\\$1') // eslint-disable-line\n .replace(/ /g, '.')}`;\n }\n\n function Pagination({swiper, extendParams, on, emit}) {\n const pfx = 'swiper-pagination';\n extendParams({\n pagination: {\n el: null,\n bulletElement: 'span',\n clickable: false,\n hideOnClick: false,\n renderBullet: null,\n renderProgressbar: null,\n renderFraction: null,\n renderCustom: null,\n progressbarOpposite: false,\n type: 'bullets',\n // 'bullets' or 'progressbar' or 'fraction' or 'custom'\n dynamicBullets: false,\n dynamicMainBullets: 1,\n formatFractionCurrent: (number) => number,\n formatFractionTotal: (number) => number,\n bulletClass: `${pfx}-bullet`,\n bulletActiveClass: `${pfx}-bullet-active`,\n modifierClass: `${pfx}-`,\n currentClass: `${pfx}-current`,\n totalClass: `${pfx}-total`,\n hiddenClass: `${pfx}-hidden`,\n progressbarFillClass: `${pfx}-progressbar-fill`,\n progressbarOppositeClass: `${pfx}-progressbar-opposite`,\n clickableClass: `${pfx}-clickable`,\n lockClass: `${pfx}-lock`,\n horizontalClass: `${pfx}-horizontal`,\n verticalClass: `${pfx}-vertical`,\n },\n });\n swiper.pagination = {\n el: null,\n $el: null,\n bullets: [],\n };\n let bulletSize;\n let dynamicBulletIndex = 0;\n\n function isPaginationDisabled() {\n return (\n !swiper.params.pagination.el ||\n !swiper.pagination.el ||\n !swiper.pagination.$el ||\n swiper.pagination.$el.length === 0\n );\n }\n\n function setSideBullets($bulletEl, position) {\n const {bulletActiveClass} = swiper.params.pagination;\n $bulletEl[position]()\n .addClass(`${bulletActiveClass}-${position}`)\n [position]()\n .addClass(`${bulletActiveClass}-${position}-${position}`);\n }\n\n function update() {\n // Render || Update Pagination bullets/items\n const rtl = swiper.rtl;\n const params = swiper.params.pagination;\n if (isPaginationDisabled()) return;\n const slidesLength =\n swiper.virtual && swiper.params.virtual.enabled ? swiper.virtual.slides.length : swiper.slides.length;\n const $el = swiper.pagination.$el; // Current/Total\n\n let current;\n const total = swiper.params.loop\n ? Math.ceil((slidesLength - swiper.loopedSlides * 2) / swiper.params.slidesPerGroup)\n : swiper.snapGrid.length;\n\n if (swiper.params.loop) {\n current = Math.ceil((swiper.activeIndex - swiper.loopedSlides) / swiper.params.slidesPerGroup);\n\n if (current > slidesLength - 1 - swiper.loopedSlides * 2) {\n current -= slidesLength - swiper.loopedSlides * 2;\n }\n\n if (current > total - 1) current -= total;\n if (current < 0 && swiper.params.paginationType !== 'bullets') current = total + current;\n } else if (typeof swiper.snapIndex !== 'undefined') {\n current = swiper.snapIndex;\n } else {\n current = swiper.activeIndex || 0;\n } // Types\n\n if (params.type === 'bullets' && swiper.pagination.bullets && swiper.pagination.bullets.length > 0) {\n const bullets = swiper.pagination.bullets;\n let firstIndex;\n let lastIndex;\n let midIndex;\n\n if (params.dynamicBullets) {\n bulletSize = bullets.eq(0)[swiper.isHorizontal() ? 'outerWidth' : 'outerHeight'](true);\n $el.css(swiper.isHorizontal() ? 'width' : 'height', `${bulletSize * (params.dynamicMainBullets + 4)}px`);\n\n if (params.dynamicMainBullets > 1 && swiper.previousIndex !== undefined) {\n dynamicBulletIndex += current - (swiper.previousIndex - swiper.loopedSlides || 0);\n\n if (dynamicBulletIndex > params.dynamicMainBullets - 1) {\n dynamicBulletIndex = params.dynamicMainBullets - 1;\n } else if (dynamicBulletIndex < 0) {\n dynamicBulletIndex = 0;\n }\n }\n\n firstIndex = Math.max(current - dynamicBulletIndex, 0);\n lastIndex = firstIndex + (Math.min(bullets.length, params.dynamicMainBullets) - 1);\n midIndex = (lastIndex + firstIndex) / 2;\n }\n\n bullets.removeClass(\n ['', '-next', '-next-next', '-prev', '-prev-prev', '-main']\n .map((suffix) => `${params.bulletActiveClass}${suffix}`)\n .join(' '),\n );\n\n if ($el.length > 1) {\n bullets.each((bullet) => {\n const $bullet = $(bullet);\n const bulletIndex = $bullet.index();\n\n if (bulletIndex === current) {\n $bullet.addClass(params.bulletActiveClass);\n }\n\n if (params.dynamicBullets) {\n if (bulletIndex >= firstIndex && bulletIndex <= lastIndex) {\n $bullet.addClass(`${params.bulletActiveClass}-main`);\n }\n\n if (bulletIndex === firstIndex) {\n setSideBullets($bullet, 'prev');\n }\n\n if (bulletIndex === lastIndex) {\n setSideBullets($bullet, 'next');\n }\n }\n });\n } else {\n const $bullet = bullets.eq(current);\n const bulletIndex = $bullet.index();\n $bullet.addClass(params.bulletActiveClass);\n\n if (params.dynamicBullets) {\n const $firstDisplayedBullet = bullets.eq(firstIndex);\n const $lastDisplayedBullet = bullets.eq(lastIndex);\n\n for (let i = firstIndex; i <= lastIndex; i += 1) {\n bullets.eq(i).addClass(`${params.bulletActiveClass}-main`);\n }\n\n if (swiper.params.loop) {\n if (bulletIndex >= bullets.length) {\n for (let i = params.dynamicMainBullets; i >= 0; i -= 1) {\n bullets.eq(bullets.length - i).addClass(`${params.bulletActiveClass}-main`);\n }\n\n bullets\n .eq(bullets.length - params.dynamicMainBullets - 1)\n .addClass(`${params.bulletActiveClass}-prev`);\n } else {\n setSideBullets($firstDisplayedBullet, 'prev');\n setSideBullets($lastDisplayedBullet, 'next');\n }\n } else {\n setSideBullets($firstDisplayedBullet, 'prev');\n setSideBullets($lastDisplayedBullet, 'next');\n }\n }\n }\n\n if (params.dynamicBullets) {\n const dynamicBulletsLength = Math.min(bullets.length, params.dynamicMainBullets + 4);\n const bulletsOffset = (bulletSize * dynamicBulletsLength - bulletSize) / 2 - midIndex * bulletSize;\n const offsetProp = rtl ? 'right' : 'left';\n bullets.css(swiper.isHorizontal() ? offsetProp : 'top', `${bulletsOffset}px`);\n }\n }\n\n if (params.type === 'fraction') {\n $el.find(classesToSelector(params.currentClass)).text(params.formatFractionCurrent(current + 1));\n $el.find(classesToSelector(params.totalClass)).text(params.formatFractionTotal(total));\n }\n\n if (params.type === 'progressbar') {\n let progressbarDirection;\n\n if (params.progressbarOpposite) {\n progressbarDirection = swiper.isHorizontal() ? 'vertical' : 'horizontal';\n } else {\n progressbarDirection = swiper.isHorizontal() ? 'horizontal' : 'vertical';\n }\n\n const scale = (current + 1) / total;\n let scaleX = 1;\n let scaleY = 1;\n\n if (progressbarDirection === 'horizontal') {\n scaleX = scale;\n } else {\n scaleY = scale;\n }\n\n $el\n .find(classesToSelector(params.progressbarFillClass))\n .transform(`translate3d(0,0,0) scaleX(${scaleX}) scaleY(${scaleY})`)\n .transition(swiper.params.speed);\n }\n\n if (params.type === 'custom' && params.renderCustom) {\n $el.html(params.renderCustom(swiper, current + 1, total));\n emit('paginationRender', $el[0]);\n } else {\n emit('paginationUpdate', $el[0]);\n }\n\n if (swiper.params.watchOverflow && swiper.enabled) {\n $el[swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);\n }\n }\n\n function render() {\n // Render Container\n const params = swiper.params.pagination;\n if (isPaginationDisabled()) return;\n const slidesLength =\n swiper.virtual && swiper.params.virtual.enabled ? swiper.virtual.slides.length : swiper.slides.length;\n const $el = swiper.pagination.$el;\n let paginationHTML = '';\n\n if (params.type === 'bullets') {\n let numberOfBullets = swiper.params.loop\n ? Math.ceil((slidesLength - swiper.loopedSlides * 2) / swiper.params.slidesPerGroup)\n : swiper.snapGrid.length;\n\n if (\n swiper.params.freeMode &&\n swiper.params.freeMode.enabled &&\n !swiper.params.loop &&\n numberOfBullets > slidesLength\n ) {\n numberOfBullets = slidesLength;\n }\n\n for (let i = 0; i < numberOfBullets; i += 1) {\n if (params.renderBullet) {\n paginationHTML += params.renderBullet.call(swiper, i, params.bulletClass);\n } else {\n paginationHTML += `<${params.bulletElement} class=\"${params.bulletClass}\">`;\n }\n }\n\n $el.html(paginationHTML);\n swiper.pagination.bullets = $el.find(classesToSelector(params.bulletClass));\n }\n\n if (params.type === 'fraction') {\n if (params.renderFraction) {\n paginationHTML = params.renderFraction.call(swiper, params.currentClass, params.totalClass);\n } else {\n paginationHTML =\n `` + ' / ' + ``;\n }\n\n $el.html(paginationHTML);\n }\n\n if (params.type === 'progressbar') {\n if (params.renderProgressbar) {\n paginationHTML = params.renderProgressbar.call(swiper, params.progressbarFillClass);\n } else {\n paginationHTML = ``;\n }\n\n $el.html(paginationHTML);\n }\n\n if (params.type !== 'custom') {\n emit('paginationRender', swiper.pagination.$el[0]);\n }\n }\n\n function init() {\n swiper.params.pagination = createElementIfNotDefined(\n swiper,\n swiper.originalParams.pagination,\n swiper.params.pagination,\n {\n el: 'swiper-pagination',\n },\n );\n const params = swiper.params.pagination;\n if (!params.el) return;\n let $el = $(params.el);\n if ($el.length === 0) return;\n\n if (swiper.params.uniqueNavElements && typeof params.el === 'string' && $el.length > 1) {\n $el = swiper.$el.find(params.el); // check if it belongs to another nested Swiper\n\n if ($el.length > 1) {\n $el = $el.filter((el) => {\n if ($(el).parents('.swiper')[0] !== swiper.el) return false;\n return true;\n });\n }\n }\n\n if (params.type === 'bullets' && params.clickable) {\n $el.addClass(params.clickableClass);\n }\n\n $el.addClass(params.modifierClass + params.type);\n $el.addClass(params.modifierClass + swiper.params.direction);\n\n if (params.type === 'bullets' && params.dynamicBullets) {\n $el.addClass(`${params.modifierClass}${params.type}-dynamic`);\n dynamicBulletIndex = 0;\n\n if (params.dynamicMainBullets < 1) {\n params.dynamicMainBullets = 1;\n }\n }\n\n if (params.type === 'progressbar' && params.progressbarOpposite) {\n $el.addClass(params.progressbarOppositeClass);\n }\n\n if (params.clickable) {\n $el.on('click', classesToSelector(params.bulletClass), function onClick(e) {\n e.preventDefault();\n let index = $(this).index() * swiper.params.slidesPerGroup;\n if (swiper.params.loop) index += swiper.loopedSlides;\n swiper.slideTo(index);\n });\n }\n\n Object.assign(swiper.pagination, {\n $el,\n el: $el[0],\n });\n\n if (!swiper.enabled) {\n $el.addClass(params.lockClass);\n }\n }\n\n function destroy() {\n const params = swiper.params.pagination;\n if (isPaginationDisabled()) return;\n const $el = swiper.pagination.$el;\n $el.removeClass(params.hiddenClass);\n $el.removeClass(params.modifierClass + params.type);\n $el.removeClass(params.modifierClass + swiper.params.direction);\n if (swiper.pagination.bullets && swiper.pagination.bullets.removeClass)\n swiper.pagination.bullets.removeClass(params.bulletActiveClass);\n\n if (params.clickable) {\n $el.off('click', classesToSelector(params.bulletClass));\n }\n }\n\n on('init', () => {\n init();\n render();\n update();\n });\n on('activeIndexChange', () => {\n if (swiper.params.loop) {\n update();\n } else if (typeof swiper.snapIndex === 'undefined') {\n update();\n }\n });\n on('snapIndexChange', () => {\n if (!swiper.params.loop) {\n update();\n }\n });\n on('slidesLengthChange', () => {\n if (swiper.params.loop) {\n render();\n update();\n }\n });\n on('snapGridLengthChange', () => {\n if (!swiper.params.loop) {\n render();\n update();\n }\n });\n on('destroy', () => {\n destroy();\n });\n on('enable disable', () => {\n const {$el} = swiper.pagination;\n\n if ($el) {\n $el[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.pagination.lockClass);\n }\n });\n on('lock unlock', () => {\n update();\n });\n on('click', (_s, e) => {\n const targetEl = e.target;\n const {$el} = swiper.pagination;\n\n if (\n swiper.params.pagination.el &&\n swiper.params.pagination.hideOnClick &&\n $el.length > 0 &&\n !$(targetEl).hasClass(swiper.params.pagination.bulletClass)\n ) {\n if (\n swiper.navigation &&\n ((swiper.navigation.nextEl && targetEl === swiper.navigation.nextEl) ||\n (swiper.navigation.prevEl && targetEl === swiper.navigation.prevEl))\n )\n return;\n const isHidden = $el.hasClass(swiper.params.pagination.hiddenClass);\n\n if (isHidden === true) {\n emit('paginationShow');\n } else {\n emit('paginationHide');\n }\n\n $el.toggleClass(swiper.params.pagination.hiddenClass);\n }\n });\n Object.assign(swiper.pagination, {\n render,\n update,\n init,\n destroy,\n });\n }\n\n function Scrollbar({swiper, extendParams, on, emit}) {\n const document = getDocument();\n let isTouched = false;\n let timeout = null;\n let dragTimeout = null;\n let dragStartPos;\n let dragSize;\n let trackSize;\n let divider;\n extendParams({\n scrollbar: {\n el: null,\n dragSize: 'auto',\n hide: false,\n draggable: false,\n snapOnRelease: true,\n lockClass: 'swiper-scrollbar-lock',\n dragClass: 'swiper-scrollbar-drag',\n },\n });\n swiper.scrollbar = {\n el: null,\n dragEl: null,\n $el: null,\n $dragEl: null,\n };\n\n function setTranslate() {\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return;\n const {scrollbar, rtlTranslate: rtl, progress} = swiper;\n const {$dragEl, $el} = scrollbar;\n const params = swiper.params.scrollbar;\n let newSize = dragSize;\n let newPos = (trackSize - dragSize) * progress;\n\n if (rtl) {\n newPos = -newPos;\n\n if (newPos > 0) {\n newSize = dragSize - newPos;\n newPos = 0;\n } else if (-newPos + dragSize > trackSize) {\n newSize = trackSize + newPos;\n }\n } else if (newPos < 0) {\n newSize = dragSize + newPos;\n newPos = 0;\n } else if (newPos + dragSize > trackSize) {\n newSize = trackSize - newPos;\n }\n\n if (swiper.isHorizontal()) {\n $dragEl.transform(`translate3d(${newPos}px, 0, 0)`);\n $dragEl[0].style.width = `${newSize}px`;\n } else {\n $dragEl.transform(`translate3d(0px, ${newPos}px, 0)`);\n $dragEl[0].style.height = `${newSize}px`;\n }\n\n if (params.hide) {\n clearTimeout(timeout);\n $el[0].style.opacity = 1;\n timeout = setTimeout(() => {\n $el[0].style.opacity = 0;\n $el.transition(400);\n }, 1000);\n }\n }\n\n function setTransition(duration) {\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return;\n swiper.scrollbar.$dragEl.transition(duration);\n }\n\n function updateSize() {\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return;\n const {scrollbar} = swiper;\n const {$dragEl, $el} = scrollbar;\n $dragEl[0].style.width = '';\n $dragEl[0].style.height = '';\n trackSize = swiper.isHorizontal() ? $el[0].offsetWidth : $el[0].offsetHeight;\n divider =\n swiper.size /\n (swiper.virtualSize +\n swiper.params.slidesOffsetBefore -\n (swiper.params.centeredSlides ? swiper.snapGrid[0] : 0));\n\n if (swiper.params.scrollbar.dragSize === 'auto') {\n dragSize = trackSize * divider;\n } else {\n dragSize = parseInt(swiper.params.scrollbar.dragSize, 10);\n }\n\n if (swiper.isHorizontal()) {\n $dragEl[0].style.width = `${dragSize}px`;\n } else {\n $dragEl[0].style.height = `${dragSize}px`;\n }\n\n if (divider >= 1) {\n $el[0].style.display = 'none';\n } else {\n $el[0].style.display = '';\n }\n\n if (swiper.params.scrollbar.hide) {\n $el[0].style.opacity = 0;\n }\n\n if (swiper.params.watchOverflow && swiper.enabled) {\n scrollbar.$el[swiper.isLocked ? 'addClass' : 'removeClass'](swiper.params.scrollbar.lockClass);\n }\n }\n\n function getPointerPosition(e) {\n if (swiper.isHorizontal()) {\n return e.type === 'touchstart' || e.type === 'touchmove' ? e.targetTouches[0].clientX : e.clientX;\n }\n\n return e.type === 'touchstart' || e.type === 'touchmove' ? e.targetTouches[0].clientY : e.clientY;\n }\n\n function setDragPosition(e) {\n const {scrollbar, rtlTranslate: rtl} = swiper;\n const {$el} = scrollbar;\n let positionRatio;\n positionRatio =\n (getPointerPosition(e) -\n $el.offset()[swiper.isHorizontal() ? 'left' : 'top'] -\n (dragStartPos !== null ? dragStartPos : dragSize / 2)) /\n (trackSize - dragSize);\n positionRatio = Math.max(Math.min(positionRatio, 1), 0);\n\n if (rtl) {\n positionRatio = 1 - positionRatio;\n }\n\n const position = swiper.minTranslate() + (swiper.maxTranslate() - swiper.minTranslate()) * positionRatio;\n swiper.updateProgress(position);\n swiper.setTranslate(position);\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n\n function onDragStart(e) {\n const params = swiper.params.scrollbar;\n const {scrollbar, $wrapperEl} = swiper;\n const {$el, $dragEl} = scrollbar;\n isTouched = true;\n dragStartPos =\n e.target === $dragEl[0] || e.target === $dragEl\n ? getPointerPosition(e) - e.target.getBoundingClientRect()[swiper.isHorizontal() ? 'left' : 'top']\n : null;\n e.preventDefault();\n e.stopPropagation();\n $wrapperEl.transition(100);\n $dragEl.transition(100);\n setDragPosition(e);\n clearTimeout(dragTimeout);\n $el.transition(0);\n\n if (params.hide) {\n $el.css('opacity', 1);\n }\n\n if (swiper.params.cssMode) {\n swiper.$wrapperEl.css('scroll-snap-type', 'none');\n }\n\n emit('scrollbarDragStart', e);\n }\n\n function onDragMove(e) {\n const {scrollbar, $wrapperEl} = swiper;\n const {$el, $dragEl} = scrollbar;\n if (!isTouched) return;\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n setDragPosition(e);\n $wrapperEl.transition(0);\n $el.transition(0);\n $dragEl.transition(0);\n emit('scrollbarDragMove', e);\n }\n\n function onDragEnd(e) {\n const params = swiper.params.scrollbar;\n const {scrollbar, $wrapperEl} = swiper;\n const {$el} = scrollbar;\n if (!isTouched) return;\n isTouched = false;\n\n if (swiper.params.cssMode) {\n swiper.$wrapperEl.css('scroll-snap-type', '');\n $wrapperEl.transition('');\n }\n\n if (params.hide) {\n clearTimeout(dragTimeout);\n dragTimeout = nextTick(() => {\n $el.css('opacity', 0);\n $el.transition(400);\n }, 1000);\n }\n\n emit('scrollbarDragEnd', e);\n\n if (params.snapOnRelease) {\n swiper.slideToClosest();\n }\n }\n\n function events(method) {\n const {scrollbar, touchEventsTouch, touchEventsDesktop, params, support} = swiper;\n const $el = scrollbar.$el;\n const target = $el[0];\n const activeListener =\n support.passiveListener && params.passiveListeners\n ? {\n passive: false,\n capture: false,\n }\n : false;\n const passiveListener =\n support.passiveListener && params.passiveListeners\n ? {\n passive: true,\n capture: false,\n }\n : false;\n if (!target) return;\n const eventMethod = method === 'on' ? 'addEventListener' : 'removeEventListener';\n\n if (!support.touch) {\n target[eventMethod](touchEventsDesktop.start, onDragStart, activeListener);\n document[eventMethod](touchEventsDesktop.move, onDragMove, activeListener);\n document[eventMethod](touchEventsDesktop.end, onDragEnd, passiveListener);\n } else {\n target[eventMethod](touchEventsTouch.start, onDragStart, activeListener);\n target[eventMethod](touchEventsTouch.move, onDragMove, activeListener);\n target[eventMethod](touchEventsTouch.end, onDragEnd, passiveListener);\n }\n }\n\n function enableDraggable() {\n if (!swiper.params.scrollbar.el) return;\n events('on');\n }\n\n function disableDraggable() {\n if (!swiper.params.scrollbar.el) return;\n events('off');\n }\n\n function init() {\n const {scrollbar, $el: $swiperEl} = swiper;\n swiper.params.scrollbar = createElementIfNotDefined(\n swiper,\n swiper.originalParams.scrollbar,\n swiper.params.scrollbar,\n {\n el: 'swiper-scrollbar',\n },\n );\n const params = swiper.params.scrollbar;\n if (!params.el) return;\n let $el = $(params.el);\n\n if (\n swiper.params.uniqueNavElements &&\n typeof params.el === 'string' &&\n $el.length > 1 &&\n $swiperEl.find(params.el).length === 1\n ) {\n $el = $swiperEl.find(params.el);\n }\n\n let $dragEl = $el.find(`.${swiper.params.scrollbar.dragClass}`);\n\n if ($dragEl.length === 0) {\n $dragEl = $(`
    `);\n $el.append($dragEl);\n }\n\n Object.assign(scrollbar, {\n $el,\n el: $el[0],\n $dragEl,\n dragEl: $dragEl[0],\n });\n\n if (params.draggable) {\n enableDraggable();\n }\n\n if ($el) {\n $el[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.scrollbar.lockClass);\n }\n }\n\n function destroy() {\n disableDraggable();\n }\n\n on('init', () => {\n init();\n updateSize();\n setTranslate();\n });\n on('update resize observerUpdate lock unlock', () => {\n updateSize();\n });\n on('setTranslate', () => {\n setTranslate();\n });\n on('setTransition', (_s, duration) => {\n setTransition(duration);\n });\n on('enable disable', () => {\n const {$el} = swiper.scrollbar;\n\n if ($el) {\n $el[swiper.enabled ? 'removeClass' : 'addClass'](swiper.params.scrollbar.lockClass);\n }\n });\n on('destroy', () => {\n destroy();\n });\n Object.assign(swiper.scrollbar, {\n updateSize,\n setTranslate,\n init,\n destroy,\n });\n }\n\n function Parallax({swiper, extendParams, on}) {\n extendParams({\n parallax: {\n enabled: false,\n },\n });\n\n const setTransform = (el, progress) => {\n const {rtl} = swiper;\n const $el = $(el);\n const rtlFactor = rtl ? -1 : 1;\n const p = $el.attr('data-swiper-parallax') || '0';\n let x = $el.attr('data-swiper-parallax-x');\n let y = $el.attr('data-swiper-parallax-y');\n const scale = $el.attr('data-swiper-parallax-scale');\n const opacity = $el.attr('data-swiper-parallax-opacity');\n\n if (x || y) {\n x = x || '0';\n y = y || '0';\n } else if (swiper.isHorizontal()) {\n x = p;\n y = '0';\n } else {\n y = p;\n x = '0';\n }\n\n if (x.indexOf('%') >= 0) {\n x = `${parseInt(x, 10) * progress * rtlFactor}%`;\n } else {\n x = `${x * progress * rtlFactor}px`;\n }\n\n if (y.indexOf('%') >= 0) {\n y = `${parseInt(y, 10) * progress}%`;\n } else {\n y = `${y * progress}px`;\n }\n\n if (typeof opacity !== 'undefined' && opacity !== null) {\n const currentOpacity = opacity - (opacity - 1) * (1 - Math.abs(progress));\n $el[0].style.opacity = currentOpacity;\n }\n\n if (typeof scale === 'undefined' || scale === null) {\n $el.transform(`translate3d(${x}, ${y}, 0px)`);\n } else {\n const currentScale = scale - (scale - 1) * (1 - Math.abs(progress));\n $el.transform(`translate3d(${x}, ${y}, 0px) scale(${currentScale})`);\n }\n };\n\n const setTranslate = () => {\n const {$el, slides, progress, snapGrid} = swiper;\n $el\n .children(\n '[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]',\n )\n .each((el) => {\n setTransform(el, progress);\n });\n slides.each((slideEl, slideIndex) => {\n let slideProgress = slideEl.progress;\n\n if (swiper.params.slidesPerGroup > 1 && swiper.params.slidesPerView !== 'auto') {\n slideProgress += Math.ceil(slideIndex / 2) - progress * (snapGrid.length - 1);\n }\n\n slideProgress = Math.min(Math.max(slideProgress, -1), 1);\n $(slideEl)\n .find(\n '[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]',\n )\n .each((el) => {\n setTransform(el, slideProgress);\n });\n });\n };\n\n const setTransition = (duration = swiper.params.speed) => {\n const {$el} = swiper;\n $el\n .find(\n '[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]',\n )\n .each((parallaxEl) => {\n const $parallaxEl = $(parallaxEl);\n let parallaxDuration = parseInt($parallaxEl.attr('data-swiper-parallax-duration'), 10) || duration;\n if (duration === 0) parallaxDuration = 0;\n $parallaxEl.transition(parallaxDuration);\n });\n };\n\n on('beforeInit', () => {\n if (!swiper.params.parallax.enabled) return;\n swiper.params.watchSlidesProgress = true;\n swiper.originalParams.watchSlidesProgress = true;\n });\n on('init', () => {\n if (!swiper.params.parallax.enabled) return;\n setTranslate();\n });\n on('setTranslate', () => {\n if (!swiper.params.parallax.enabled) return;\n setTranslate();\n });\n on('setTransition', (_swiper, duration) => {\n if (!swiper.params.parallax.enabled) return;\n setTransition(duration);\n });\n }\n\n function Zoom({swiper, extendParams, on, emit}) {\n const window = getWindow();\n extendParams({\n zoom: {\n enabled: false,\n maxRatio: 3,\n minRatio: 1,\n toggle: true,\n containerClass: 'swiper-zoom-container',\n zoomedSlideClass: 'swiper-slide-zoomed',\n },\n });\n swiper.zoom = {\n enabled: false,\n };\n let currentScale = 1;\n let isScaling = false;\n let gesturesEnabled;\n let fakeGestureTouched;\n let fakeGestureMoved;\n const gesture = {\n $slideEl: undefined,\n slideWidth: undefined,\n slideHeight: undefined,\n $imageEl: undefined,\n $imageWrapEl: undefined,\n maxRatio: 3,\n };\n const image = {\n isTouched: undefined,\n isMoved: undefined,\n currentX: undefined,\n currentY: undefined,\n minX: undefined,\n minY: undefined,\n maxX: undefined,\n maxY: undefined,\n width: undefined,\n height: undefined,\n startX: undefined,\n startY: undefined,\n touchesStart: {},\n touchesCurrent: {},\n };\n const velocity = {\n x: undefined,\n y: undefined,\n prevPositionX: undefined,\n prevPositionY: undefined,\n prevTime: undefined,\n };\n let scale = 1;\n Object.defineProperty(swiper.zoom, 'scale', {\n get() {\n return scale;\n },\n\n set(value) {\n if (scale !== value) {\n const imageEl = gesture.$imageEl ? gesture.$imageEl[0] : undefined;\n const slideEl = gesture.$slideEl ? gesture.$slideEl[0] : undefined;\n emit('zoomChange', value, imageEl, slideEl);\n }\n\n scale = value;\n },\n });\n\n function getDistanceBetweenTouches(e) {\n if (e.targetTouches.length < 2) return 1;\n const x1 = e.targetTouches[0].pageX;\n const y1 = e.targetTouches[0].pageY;\n const x2 = e.targetTouches[1].pageX;\n const y2 = e.targetTouches[1].pageY;\n const distance = Math.sqrt((x2 - x1) ** 2 + (y2 - y1) ** 2);\n return distance;\n } // Events\n\n function onGestureStart(e) {\n const support = swiper.support;\n const params = swiper.params.zoom;\n fakeGestureTouched = false;\n fakeGestureMoved = false;\n\n if (!support.gestures) {\n if (e.type !== 'touchstart' || (e.type === 'touchstart' && e.targetTouches.length < 2)) {\n return;\n }\n\n fakeGestureTouched = true;\n gesture.scaleStart = getDistanceBetweenTouches(e);\n }\n\n if (!gesture.$slideEl || !gesture.$slideEl.length) {\n gesture.$slideEl = $(e.target).closest(`.${swiper.params.slideClass}`);\n if (gesture.$slideEl.length === 0) gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);\n gesture.$imageEl = gesture.$slideEl\n .find(`.${params.containerClass}`)\n .eq(0)\n .find('picture, img, svg, canvas, .swiper-zoom-target')\n .eq(0);\n gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`);\n gesture.maxRatio = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n\n if (gesture.$imageWrapEl.length === 0) {\n gesture.$imageEl = undefined;\n return;\n }\n }\n\n if (gesture.$imageEl) {\n gesture.$imageEl.transition(0);\n }\n\n isScaling = true;\n }\n\n function onGestureChange(e) {\n const support = swiper.support;\n const params = swiper.params.zoom;\n const zoom = swiper.zoom;\n\n if (!support.gestures) {\n if (e.type !== 'touchmove' || (e.type === 'touchmove' && e.targetTouches.length < 2)) {\n return;\n }\n\n fakeGestureMoved = true;\n gesture.scaleMove = getDistanceBetweenTouches(e);\n }\n\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) {\n if (e.type === 'gesturechange') onGestureStart(e);\n return;\n }\n\n if (support.gestures) {\n zoom.scale = e.scale * currentScale;\n } else {\n zoom.scale = (gesture.scaleMove / gesture.scaleStart) * currentScale;\n }\n\n if (zoom.scale > gesture.maxRatio) {\n zoom.scale = gesture.maxRatio - 1 + (zoom.scale - gesture.maxRatio + 1) ** 0.5;\n }\n\n if (zoom.scale < params.minRatio) {\n zoom.scale = params.minRatio + 1 - (params.minRatio - zoom.scale + 1) ** 0.5;\n }\n\n gesture.$imageEl.transform(`translate3d(0,0,0) scale(${zoom.scale})`);\n }\n\n function onGestureEnd(e) {\n const device = swiper.device;\n const support = swiper.support;\n const params = swiper.params.zoom;\n const zoom = swiper.zoom;\n\n if (!support.gestures) {\n if (!fakeGestureTouched || !fakeGestureMoved) {\n return;\n }\n\n if (e.type !== 'touchend' || (e.type === 'touchend' && e.changedTouches.length < 2 && !device.android)) {\n return;\n }\n\n fakeGestureTouched = false;\n fakeGestureMoved = false;\n }\n\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n zoom.scale = Math.max(Math.min(zoom.scale, gesture.maxRatio), params.minRatio);\n gesture.$imageEl.transition(swiper.params.speed).transform(`translate3d(0,0,0) scale(${zoom.scale})`);\n currentScale = zoom.scale;\n isScaling = false;\n if (zoom.scale === 1) gesture.$slideEl = undefined;\n }\n\n function onTouchStart(e) {\n const device = swiper.device;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n if (image.isTouched) return;\n if (device.android && e.cancelable) e.preventDefault();\n image.isTouched = true;\n image.touchesStart.x = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX;\n image.touchesStart.y = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY;\n }\n\n function onTouchMove(e) {\n const zoom = swiper.zoom;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n swiper.allowClick = false;\n if (!image.isTouched || !gesture.$slideEl) return;\n\n if (!image.isMoved) {\n image.width = gesture.$imageEl[0].offsetWidth;\n image.height = gesture.$imageEl[0].offsetHeight;\n image.startX = getTranslate(gesture.$imageWrapEl[0], 'x') || 0;\n image.startY = getTranslate(gesture.$imageWrapEl[0], 'y') || 0;\n gesture.slideWidth = gesture.$slideEl[0].offsetWidth;\n gesture.slideHeight = gesture.$slideEl[0].offsetHeight;\n gesture.$imageWrapEl.transition(0);\n } // Define if we need image drag\n\n const scaledWidth = image.width * zoom.scale;\n const scaledHeight = image.height * zoom.scale;\n if (scaledWidth < gesture.slideWidth && scaledHeight < gesture.slideHeight) return;\n image.minX = Math.min(gesture.slideWidth / 2 - scaledWidth / 2, 0);\n image.maxX = -image.minX;\n image.minY = Math.min(gesture.slideHeight / 2 - scaledHeight / 2, 0);\n image.maxY = -image.minY;\n image.touchesCurrent.x = e.type === 'touchmove' ? e.targetTouches[0].pageX : e.pageX;\n image.touchesCurrent.y = e.type === 'touchmove' ? e.targetTouches[0].pageY : e.pageY;\n\n if (!image.isMoved && !isScaling) {\n if (\n swiper.isHorizontal() &&\n ((Math.floor(image.minX) === Math.floor(image.startX) && image.touchesCurrent.x < image.touchesStart.x) ||\n (Math.floor(image.maxX) === Math.floor(image.startX) && image.touchesCurrent.x > image.touchesStart.x))\n ) {\n image.isTouched = false;\n return;\n }\n\n if (\n !swiper.isHorizontal() &&\n ((Math.floor(image.minY) === Math.floor(image.startY) && image.touchesCurrent.y < image.touchesStart.y) ||\n (Math.floor(image.maxY) === Math.floor(image.startY) && image.touchesCurrent.y > image.touchesStart.y))\n ) {\n image.isTouched = false;\n return;\n }\n }\n\n if (e.cancelable) {\n e.preventDefault();\n }\n\n e.stopPropagation();\n image.isMoved = true;\n image.currentX = image.touchesCurrent.x - image.touchesStart.x + image.startX;\n image.currentY = image.touchesCurrent.y - image.touchesStart.y + image.startY;\n\n if (image.currentX < image.minX) {\n image.currentX = image.minX + 1 - (image.minX - image.currentX + 1) ** 0.8;\n }\n\n if (image.currentX > image.maxX) {\n image.currentX = image.maxX - 1 + (image.currentX - image.maxX + 1) ** 0.8;\n }\n\n if (image.currentY < image.minY) {\n image.currentY = image.minY + 1 - (image.minY - image.currentY + 1) ** 0.8;\n }\n\n if (image.currentY > image.maxY) {\n image.currentY = image.maxY - 1 + (image.currentY - image.maxY + 1) ** 0.8;\n } // Velocity\n\n if (!velocity.prevPositionX) velocity.prevPositionX = image.touchesCurrent.x;\n if (!velocity.prevPositionY) velocity.prevPositionY = image.touchesCurrent.y;\n if (!velocity.prevTime) velocity.prevTime = Date.now();\n velocity.x = (image.touchesCurrent.x - velocity.prevPositionX) / (Date.now() - velocity.prevTime) / 2;\n velocity.y = (image.touchesCurrent.y - velocity.prevPositionY) / (Date.now() - velocity.prevTime) / 2;\n if (Math.abs(image.touchesCurrent.x - velocity.prevPositionX) < 2) velocity.x = 0;\n if (Math.abs(image.touchesCurrent.y - velocity.prevPositionY) < 2) velocity.y = 0;\n velocity.prevPositionX = image.touchesCurrent.x;\n velocity.prevPositionY = image.touchesCurrent.y;\n velocity.prevTime = Date.now();\n gesture.$imageWrapEl.transform(`translate3d(${image.currentX}px, ${image.currentY}px,0)`);\n }\n\n function onTouchEnd() {\n const zoom = swiper.zoom;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n\n if (!image.isTouched || !image.isMoved) {\n image.isTouched = false;\n image.isMoved = false;\n return;\n }\n\n image.isTouched = false;\n image.isMoved = false;\n let momentumDurationX = 300;\n let momentumDurationY = 300;\n const momentumDistanceX = velocity.x * momentumDurationX;\n const newPositionX = image.currentX + momentumDistanceX;\n const momentumDistanceY = velocity.y * momentumDurationY;\n const newPositionY = image.currentY + momentumDistanceY; // Fix duration\n\n if (velocity.x !== 0) momentumDurationX = Math.abs((newPositionX - image.currentX) / velocity.x);\n if (velocity.y !== 0) momentumDurationY = Math.abs((newPositionY - image.currentY) / velocity.y);\n const momentumDuration = Math.max(momentumDurationX, momentumDurationY);\n image.currentX = newPositionX;\n image.currentY = newPositionY; // Define if we need image drag\n\n const scaledWidth = image.width * zoom.scale;\n const scaledHeight = image.height * zoom.scale;\n image.minX = Math.min(gesture.slideWidth / 2 - scaledWidth / 2, 0);\n image.maxX = -image.minX;\n image.minY = Math.min(gesture.slideHeight / 2 - scaledHeight / 2, 0);\n image.maxY = -image.minY;\n image.currentX = Math.max(Math.min(image.currentX, image.maxX), image.minX);\n image.currentY = Math.max(Math.min(image.currentY, image.maxY), image.minY);\n gesture.$imageWrapEl\n .transition(momentumDuration)\n .transform(`translate3d(${image.currentX}px, ${image.currentY}px,0)`);\n }\n\n function onTransitionEnd() {\n const zoom = swiper.zoom;\n\n if (gesture.$slideEl && swiper.previousIndex !== swiper.activeIndex) {\n if (gesture.$imageEl) {\n gesture.$imageEl.transform('translate3d(0,0,0) scale(1)');\n }\n\n if (gesture.$imageWrapEl) {\n gesture.$imageWrapEl.transform('translate3d(0,0,0)');\n }\n\n zoom.scale = 1;\n currentScale = 1;\n gesture.$slideEl = undefined;\n gesture.$imageEl = undefined;\n gesture.$imageWrapEl = undefined;\n }\n }\n\n function zoomIn(e) {\n const zoom = swiper.zoom;\n const params = swiper.params.zoom;\n\n if (!gesture.$slideEl) {\n if (e && e.target) {\n gesture.$slideEl = $(e.target).closest(`.${swiper.params.slideClass}`);\n }\n\n if (!gesture.$slideEl) {\n if (swiper.params.virtual && swiper.params.virtual.enabled && swiper.virtual) {\n gesture.$slideEl = swiper.$wrapperEl.children(`.${swiper.params.slideActiveClass}`);\n } else {\n gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);\n }\n }\n\n gesture.$imageEl = gesture.$slideEl\n .find(`.${params.containerClass}`)\n .eq(0)\n .find('picture, img, svg, canvas, .swiper-zoom-target')\n .eq(0);\n gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`);\n }\n\n if (\n !gesture.$imageEl ||\n gesture.$imageEl.length === 0 ||\n !gesture.$imageWrapEl ||\n gesture.$imageWrapEl.length === 0\n )\n return;\n\n if (swiper.params.cssMode) {\n swiper.wrapperEl.style.overflow = 'hidden';\n swiper.wrapperEl.style.touchAction = 'none';\n }\n\n gesture.$slideEl.addClass(`${params.zoomedSlideClass}`);\n let touchX;\n let touchY;\n let offsetX;\n let offsetY;\n let diffX;\n let diffY;\n let translateX;\n let translateY;\n let imageWidth;\n let imageHeight;\n let scaledWidth;\n let scaledHeight;\n let translateMinX;\n let translateMinY;\n let translateMaxX;\n let translateMaxY;\n let slideWidth;\n let slideHeight;\n\n if (typeof image.touchesStart.x === 'undefined' && e) {\n touchX = e.type === 'touchend' ? e.changedTouches[0].pageX : e.pageX;\n touchY = e.type === 'touchend' ? e.changedTouches[0].pageY : e.pageY;\n } else {\n touchX = image.touchesStart.x;\n touchY = image.touchesStart.y;\n }\n\n zoom.scale = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n currentScale = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n\n if (e) {\n slideWidth = gesture.$slideEl[0].offsetWidth;\n slideHeight = gesture.$slideEl[0].offsetHeight;\n offsetX = gesture.$slideEl.offset().left + window.scrollX;\n offsetY = gesture.$slideEl.offset().top + window.scrollY;\n diffX = offsetX + slideWidth / 2 - touchX;\n diffY = offsetY + slideHeight / 2 - touchY;\n imageWidth = gesture.$imageEl[0].offsetWidth;\n imageHeight = gesture.$imageEl[0].offsetHeight;\n scaledWidth = imageWidth * zoom.scale;\n scaledHeight = imageHeight * zoom.scale;\n translateMinX = Math.min(slideWidth / 2 - scaledWidth / 2, 0);\n translateMinY = Math.min(slideHeight / 2 - scaledHeight / 2, 0);\n translateMaxX = -translateMinX;\n translateMaxY = -translateMinY;\n translateX = diffX * zoom.scale;\n translateY = diffY * zoom.scale;\n\n if (translateX < translateMinX) {\n translateX = translateMinX;\n }\n\n if (translateX > translateMaxX) {\n translateX = translateMaxX;\n }\n\n if (translateY < translateMinY) {\n translateY = translateMinY;\n }\n\n if (translateY > translateMaxY) {\n translateY = translateMaxY;\n }\n } else {\n translateX = 0;\n translateY = 0;\n }\n\n gesture.$imageWrapEl.transition(300).transform(`translate3d(${translateX}px, ${translateY}px,0)`);\n gesture.$imageEl.transition(300).transform(`translate3d(0,0,0) scale(${zoom.scale})`);\n }\n\n function zoomOut() {\n const zoom = swiper.zoom;\n const params = swiper.params.zoom;\n\n if (!gesture.$slideEl) {\n if (swiper.params.virtual && swiper.params.virtual.enabled && swiper.virtual) {\n gesture.$slideEl = swiper.$wrapperEl.children(`.${swiper.params.slideActiveClass}`);\n } else {\n gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);\n }\n\n gesture.$imageEl = gesture.$slideEl\n .find(`.${params.containerClass}`)\n .eq(0)\n .find('picture, img, svg, canvas, .swiper-zoom-target')\n .eq(0);\n gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`);\n }\n\n if (\n !gesture.$imageEl ||\n gesture.$imageEl.length === 0 ||\n !gesture.$imageWrapEl ||\n gesture.$imageWrapEl.length === 0\n )\n return;\n\n if (swiper.params.cssMode) {\n swiper.wrapperEl.style.overflow = '';\n swiper.wrapperEl.style.touchAction = '';\n }\n\n zoom.scale = 1;\n currentScale = 1;\n gesture.$imageWrapEl.transition(300).transform('translate3d(0,0,0)');\n gesture.$imageEl.transition(300).transform('translate3d(0,0,0) scale(1)');\n gesture.$slideEl.removeClass(`${params.zoomedSlideClass}`);\n gesture.$slideEl = undefined;\n } // Toggle Zoom\n\n function zoomToggle(e) {\n const zoom = swiper.zoom;\n\n if (zoom.scale && zoom.scale !== 1) {\n // Zoom Out\n zoomOut();\n } else {\n // Zoom In\n zoomIn(e);\n }\n }\n\n function getListeners() {\n const support = swiper.support;\n const passiveListener =\n swiper.touchEvents.start === 'touchstart' && support.passiveListener && swiper.params.passiveListeners\n ? {\n passive: true,\n capture: false,\n }\n : false;\n const activeListenerWithCapture = support.passiveListener\n ? {\n passive: false,\n capture: true,\n }\n : true;\n return {\n passiveListener,\n activeListenerWithCapture,\n };\n }\n\n function getSlideSelector() {\n return `.${swiper.params.slideClass}`;\n }\n\n function toggleGestures(method) {\n const {passiveListener} = getListeners();\n const slideSelector = getSlideSelector();\n swiper.$wrapperEl[method]('gesturestart', slideSelector, onGestureStart, passiveListener);\n swiper.$wrapperEl[method]('gesturechange', slideSelector, onGestureChange, passiveListener);\n swiper.$wrapperEl[method]('gestureend', slideSelector, onGestureEnd, passiveListener);\n }\n\n function enableGestures() {\n if (gesturesEnabled) return;\n gesturesEnabled = true;\n toggleGestures('on');\n }\n\n function disableGestures() {\n if (!gesturesEnabled) return;\n gesturesEnabled = false;\n toggleGestures('off');\n } // Attach/Detach Events\n\n function enable() {\n const zoom = swiper.zoom;\n if (zoom.enabled) return;\n zoom.enabled = true;\n const support = swiper.support;\n const {passiveListener, activeListenerWithCapture} = getListeners();\n const slideSelector = getSlideSelector(); // Scale image\n\n if (support.gestures) {\n swiper.$wrapperEl.on(swiper.touchEvents.start, enableGestures, passiveListener);\n swiper.$wrapperEl.on(swiper.touchEvents.end, disableGestures, passiveListener);\n } else if (swiper.touchEvents.start === 'touchstart') {\n swiper.$wrapperEl.on(swiper.touchEvents.start, slideSelector, onGestureStart, passiveListener);\n swiper.$wrapperEl.on(swiper.touchEvents.move, slideSelector, onGestureChange, activeListenerWithCapture);\n swiper.$wrapperEl.on(swiper.touchEvents.end, slideSelector, onGestureEnd, passiveListener);\n\n if (swiper.touchEvents.cancel) {\n swiper.$wrapperEl.on(swiper.touchEvents.cancel, slideSelector, onGestureEnd, passiveListener);\n }\n } // Move image\n\n swiper.$wrapperEl.on(\n swiper.touchEvents.move,\n `.${swiper.params.zoom.containerClass}`,\n onTouchMove,\n activeListenerWithCapture,\n );\n }\n\n function disable() {\n const zoom = swiper.zoom;\n if (!zoom.enabled) return;\n const support = swiper.support;\n zoom.enabled = false;\n const {passiveListener, activeListenerWithCapture} = getListeners();\n const slideSelector = getSlideSelector(); // Scale image\n\n if (support.gestures) {\n swiper.$wrapperEl.off(swiper.touchEvents.start, enableGestures, passiveListener);\n swiper.$wrapperEl.off(swiper.touchEvents.end, disableGestures, passiveListener);\n } else if (swiper.touchEvents.start === 'touchstart') {\n swiper.$wrapperEl.off(swiper.touchEvents.start, slideSelector, onGestureStart, passiveListener);\n swiper.$wrapperEl.off(swiper.touchEvents.move, slideSelector, onGestureChange, activeListenerWithCapture);\n swiper.$wrapperEl.off(swiper.touchEvents.end, slideSelector, onGestureEnd, passiveListener);\n\n if (swiper.touchEvents.cancel) {\n swiper.$wrapperEl.off(swiper.touchEvents.cancel, slideSelector, onGestureEnd, passiveListener);\n }\n } // Move image\n\n swiper.$wrapperEl.off(\n swiper.touchEvents.move,\n `.${swiper.params.zoom.containerClass}`,\n onTouchMove,\n activeListenerWithCapture,\n );\n }\n\n on('init', () => {\n if (swiper.params.zoom.enabled) {\n enable();\n }\n });\n on('destroy', () => {\n disable();\n });\n on('touchStart', (_s, e) => {\n if (!swiper.zoom.enabled) return;\n onTouchStart(e);\n });\n on('touchEnd', (_s, e) => {\n if (!swiper.zoom.enabled) return;\n onTouchEnd();\n });\n on('doubleTap', (_s, e) => {\n if (!swiper.animating && swiper.params.zoom.enabled && swiper.zoom.enabled && swiper.params.zoom.toggle) {\n zoomToggle(e);\n }\n });\n on('transitionEnd', () => {\n if (swiper.zoom.enabled && swiper.params.zoom.enabled) {\n onTransitionEnd();\n }\n });\n on('slideChange', () => {\n if (swiper.zoom.enabled && swiper.params.zoom.enabled && swiper.params.cssMode) {\n onTransitionEnd();\n }\n });\n Object.assign(swiper.zoom, {\n enable,\n disable,\n in: zoomIn,\n out: zoomOut,\n toggle: zoomToggle,\n });\n }\n\n function Lazy({swiper, extendParams, on, emit}) {\n extendParams({\n lazy: {\n checkInView: false,\n enabled: false,\n loadPrevNext: false,\n loadPrevNextAmount: 1,\n loadOnTransitionStart: false,\n scrollingElement: '',\n elementClass: 'swiper-lazy',\n loadingClass: 'swiper-lazy-loading',\n loadedClass: 'swiper-lazy-loaded',\n preloaderClass: 'swiper-lazy-preloader',\n },\n });\n swiper.lazy = {};\n let scrollHandlerAttached = false;\n let initialImageLoaded = false;\n\n function loadInSlide(index, loadInDuplicate = true) {\n const params = swiper.params.lazy;\n if (typeof index === 'undefined') return;\n if (swiper.slides.length === 0) return;\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n const $slideEl = isVirtual\n ? swiper.$wrapperEl.children(`.${swiper.params.slideClass}[data-swiper-slide-index=\"${index}\"]`)\n : swiper.slides.eq(index);\n const $images = $slideEl.find(\n `.${params.elementClass}:not(.${params.loadedClass}):not(.${params.loadingClass})`,\n );\n\n if (\n $slideEl.hasClass(params.elementClass) &&\n !$slideEl.hasClass(params.loadedClass) &&\n !$slideEl.hasClass(params.loadingClass)\n ) {\n $images.push($slideEl[0]);\n }\n\n if ($images.length === 0) return;\n $images.each((imageEl) => {\n const $imageEl = $(imageEl);\n $imageEl.addClass(params.loadingClass);\n const background = $imageEl.attr('data-background');\n const src = $imageEl.attr('data-src');\n const srcset = $imageEl.attr('data-srcset');\n const sizes = $imageEl.attr('data-sizes');\n const $pictureEl = $imageEl.parent('picture');\n swiper.loadImage($imageEl[0], src || background, srcset, sizes, false, () => {\n if (\n typeof swiper === 'undefined' ||\n swiper === null ||\n !swiper ||\n (swiper && !swiper.params) ||\n swiper.destroyed\n )\n return;\n\n if (background) {\n $imageEl.css('background-image', `url(\"${background}\")`);\n $imageEl.removeAttr('data-background');\n } else {\n if (srcset) {\n $imageEl.attr('srcset', srcset);\n $imageEl.removeAttr('data-srcset');\n }\n\n if (sizes) {\n $imageEl.attr('sizes', sizes);\n $imageEl.removeAttr('data-sizes');\n }\n\n if ($pictureEl.length) {\n $pictureEl.children('source').each((sourceEl) => {\n const $source = $(sourceEl);\n\n if ($source.attr('data-srcset')) {\n $source.attr('srcset', $source.attr('data-srcset'));\n $source.removeAttr('data-srcset');\n }\n });\n }\n\n if (src) {\n $imageEl.attr('src', src);\n $imageEl.removeAttr('data-src');\n }\n }\n\n $imageEl.addClass(params.loadedClass).removeClass(params.loadingClass);\n $slideEl.find(`.${params.preloaderClass}`).remove();\n\n if (swiper.params.loop && loadInDuplicate) {\n const slideOriginalIndex = $slideEl.attr('data-swiper-slide-index');\n\n if ($slideEl.hasClass(swiper.params.slideDuplicateClass)) {\n const originalSlide = swiper.$wrapperEl.children(\n `[data-swiper-slide-index=\"${slideOriginalIndex}\"]:not(.${swiper.params.slideDuplicateClass})`,\n );\n loadInSlide(originalSlide.index(), false);\n } else {\n const duplicatedSlide = swiper.$wrapperEl.children(\n `.${swiper.params.slideDuplicateClass}[data-swiper-slide-index=\"${slideOriginalIndex}\"]`,\n );\n loadInSlide(duplicatedSlide.index(), false);\n }\n }\n\n emit('lazyImageReady', $slideEl[0], $imageEl[0]);\n\n if (swiper.params.autoHeight) {\n swiper.updateAutoHeight();\n }\n });\n emit('lazyImageLoad', $slideEl[0], $imageEl[0]);\n });\n }\n\n function load() {\n const {$wrapperEl, params: swiperParams, slides, activeIndex} = swiper;\n const isVirtual = swiper.virtual && swiperParams.virtual.enabled;\n const params = swiperParams.lazy;\n let slidesPerView = swiperParams.slidesPerView;\n\n if (slidesPerView === 'auto') {\n slidesPerView = 0;\n }\n\n function slideExist(index) {\n if (isVirtual) {\n if ($wrapperEl.children(`.${swiperParams.slideClass}[data-swiper-slide-index=\"${index}\"]`).length) {\n return true;\n }\n } else if (slides[index]) return true;\n\n return false;\n }\n\n function slideIndex(slideEl) {\n if (isVirtual) {\n return $(slideEl).attr('data-swiper-slide-index');\n }\n\n return $(slideEl).index();\n }\n\n if (!initialImageLoaded) initialImageLoaded = true;\n\n if (swiper.params.watchSlidesProgress) {\n $wrapperEl.children(`.${swiperParams.slideVisibleClass}`).each((slideEl) => {\n const index = isVirtual ? $(slideEl).attr('data-swiper-slide-index') : $(slideEl).index();\n loadInSlide(index);\n });\n } else if (slidesPerView > 1) {\n for (let i = activeIndex; i < activeIndex + slidesPerView; i += 1) {\n if (slideExist(i)) loadInSlide(i);\n }\n } else {\n loadInSlide(activeIndex);\n }\n\n if (params.loadPrevNext) {\n if (slidesPerView > 1 || (params.loadPrevNextAmount && params.loadPrevNextAmount > 1)) {\n const amount = params.loadPrevNextAmount;\n const spv = slidesPerView;\n const maxIndex = Math.min(activeIndex + spv + Math.max(amount, spv), slides.length);\n const minIndex = Math.max(activeIndex - Math.max(spv, amount), 0); // Next Slides\n\n for (let i = activeIndex + slidesPerView; i < maxIndex; i += 1) {\n if (slideExist(i)) loadInSlide(i);\n } // Prev Slides\n\n for (let i = minIndex; i < activeIndex; i += 1) {\n if (slideExist(i)) loadInSlide(i);\n }\n } else {\n const nextSlide = $wrapperEl.children(`.${swiperParams.slideNextClass}`);\n if (nextSlide.length > 0) loadInSlide(slideIndex(nextSlide));\n const prevSlide = $wrapperEl.children(`.${swiperParams.slidePrevClass}`);\n if (prevSlide.length > 0) loadInSlide(slideIndex(prevSlide));\n }\n }\n }\n\n function checkInViewOnLoad() {\n const window = getWindow();\n if (!swiper || swiper.destroyed) return;\n const $scrollElement = swiper.params.lazy.scrollingElement ? $(swiper.params.lazy.scrollingElement) : $(window);\n const isWindow = $scrollElement[0] === window;\n const scrollElementWidth = isWindow ? window.innerWidth : $scrollElement[0].offsetWidth;\n const scrollElementHeight = isWindow ? window.innerHeight : $scrollElement[0].offsetHeight;\n const swiperOffset = swiper.$el.offset();\n const {rtlTranslate: rtl} = swiper;\n let inView = false;\n if (rtl) swiperOffset.left -= swiper.$el[0].scrollLeft;\n const swiperCoord = [\n [swiperOffset.left, swiperOffset.top],\n [swiperOffset.left + swiper.width, swiperOffset.top],\n [swiperOffset.left, swiperOffset.top + swiper.height],\n [swiperOffset.left + swiper.width, swiperOffset.top + swiper.height],\n ];\n\n for (let i = 0; i < swiperCoord.length; i += 1) {\n const point = swiperCoord[i];\n\n if (point[0] >= 0 && point[0] <= scrollElementWidth && point[1] >= 0 && point[1] <= scrollElementHeight) {\n if (point[0] === 0 && point[1] === 0) continue; // eslint-disable-line\n\n inView = true;\n }\n }\n\n const passiveListener =\n swiper.touchEvents.start === 'touchstart' && swiper.support.passiveListener && swiper.params.passiveListeners\n ? {\n passive: true,\n capture: false,\n }\n : false;\n\n if (inView) {\n load();\n $scrollElement.off('scroll', checkInViewOnLoad, passiveListener);\n } else if (!scrollHandlerAttached) {\n scrollHandlerAttached = true;\n $scrollElement.on('scroll', checkInViewOnLoad, passiveListener);\n }\n }\n\n on('beforeInit', () => {\n if (swiper.params.lazy.enabled && swiper.params.preloadImages) {\n swiper.params.preloadImages = false;\n }\n });\n on('init', () => {\n if (swiper.params.lazy.enabled) {\n if (swiper.params.lazy.checkInView) {\n checkInViewOnLoad();\n } else {\n load();\n }\n }\n });\n on('scroll', () => {\n if (swiper.params.freeMode && swiper.params.freeMode.enabled && !swiper.params.freeMode.sticky) {\n load();\n }\n });\n on('scrollbarDragMove resize _freeModeNoMomentumRelease', () => {\n if (swiper.params.lazy.enabled) {\n if (swiper.params.lazy.checkInView) {\n checkInViewOnLoad();\n } else {\n load();\n }\n }\n });\n on('transitionStart', () => {\n if (swiper.params.lazy.enabled) {\n if (\n swiper.params.lazy.loadOnTransitionStart ||\n (!swiper.params.lazy.loadOnTransitionStart && !initialImageLoaded)\n ) {\n if (swiper.params.lazy.checkInView) {\n checkInViewOnLoad();\n } else {\n load();\n }\n }\n }\n });\n on('transitionEnd', () => {\n if (swiper.params.lazy.enabled && !swiper.params.lazy.loadOnTransitionStart) {\n if (swiper.params.lazy.checkInView) {\n checkInViewOnLoad();\n } else {\n load();\n }\n }\n });\n on('slideChange', () => {\n const {lazy, cssMode, watchSlidesProgress, touchReleaseOnEdges, resistanceRatio} = swiper.params;\n\n if (lazy.enabled && (cssMode || (watchSlidesProgress && (touchReleaseOnEdges || resistanceRatio === 0)))) {\n load();\n }\n });\n Object.assign(swiper.lazy, {\n load,\n loadInSlide,\n });\n }\n\n /* eslint no-bitwise: [\"error\", { \"allow\": [\">>\"] }] */\n function Controller({swiper, extendParams, on}) {\n extendParams({\n controller: {\n control: undefined,\n inverse: false,\n by: 'slide', // or 'container'\n },\n });\n swiper.controller = {\n control: undefined,\n };\n\n function LinearSpline(x, y) {\n const binarySearch = (function search() {\n let maxIndex;\n let minIndex;\n let guess;\n return (array, val) => {\n minIndex = -1;\n maxIndex = array.length;\n\n while (maxIndex - minIndex > 1) {\n guess = (maxIndex + minIndex) >> 1;\n\n if (array[guess] <= val) {\n minIndex = guess;\n } else {\n maxIndex = guess;\n }\n }\n\n return maxIndex;\n };\n })();\n\n this.x = x;\n this.y = y;\n this.lastIndex = x.length - 1; // Given an x value (x2), return the expected y2 value:\n // (x1,y1) is the known point before given value,\n // (x3,y3) is the known point after given value.\n\n let i1;\n let i3;\n\n this.interpolate = function interpolate(x2) {\n if (!x2) return 0; // Get the indexes of x1 and x3 (the array indexes before and after given x2):\n\n i3 = binarySearch(this.x, x2);\n i1 = i3 - 1; // We have our indexes i1 & i3, so we can calculate already:\n // y2 := ((x2−x1) × (y3−y1)) ÷ (x3−x1) + y1\n\n return ((x2 - this.x[i1]) * (this.y[i3] - this.y[i1])) / (this.x[i3] - this.x[i1]) + this.y[i1];\n };\n\n return this;\n } // xxx: for now i will just save one spline function to to\n\n function getInterpolateFunction(c) {\n if (!swiper.controller.spline) {\n swiper.controller.spline = swiper.params.loop\n ? new LinearSpline(swiper.slidesGrid, c.slidesGrid)\n : new LinearSpline(swiper.snapGrid, c.snapGrid);\n }\n }\n\n function setTranslate(_t, byController) {\n const controlled = swiper.controller.control;\n let multiplier;\n let controlledTranslate;\n const Swiper = swiper.constructor;\n\n function setControlledTranslate(c) {\n // this will create an Interpolate function based on the snapGrids\n // x is the Grid of the scrolled scroller and y will be the controlled scroller\n // it makes sense to create this only once and recall it for the interpolation\n // the function does a lot of value caching for performance\n const translate = swiper.rtlTranslate ? -swiper.translate : swiper.translate;\n\n if (swiper.params.controller.by === 'slide') {\n getInterpolateFunction(c); // i am not sure why the values have to be multiplicated this way, tried to invert the snapGrid\n // but it did not work out\n\n controlledTranslate = -swiper.controller.spline.interpolate(-translate);\n }\n\n if (!controlledTranslate || swiper.params.controller.by === 'container') {\n multiplier = (c.maxTranslate() - c.minTranslate()) / (swiper.maxTranslate() - swiper.minTranslate());\n controlledTranslate = (translate - swiper.minTranslate()) * multiplier + c.minTranslate();\n }\n\n if (swiper.params.controller.inverse) {\n controlledTranslate = c.maxTranslate() - controlledTranslate;\n }\n\n c.updateProgress(controlledTranslate);\n c.setTranslate(controlledTranslate, swiper);\n c.updateActiveIndex();\n c.updateSlidesClasses();\n }\n\n if (Array.isArray(controlled)) {\n for (let i = 0; i < controlled.length; i += 1) {\n if (controlled[i] !== byController && controlled[i] instanceof Swiper) {\n setControlledTranslate(controlled[i]);\n }\n }\n } else if (controlled instanceof Swiper && byController !== controlled) {\n setControlledTranslate(controlled);\n }\n }\n\n function setTransition(duration, byController) {\n const Swiper = swiper.constructor;\n const controlled = swiper.controller.control;\n let i;\n\n function setControlledTransition(c) {\n c.setTransition(duration, swiper);\n\n if (duration !== 0) {\n c.transitionStart();\n\n if (c.params.autoHeight) {\n nextTick(() => {\n c.updateAutoHeight();\n });\n }\n\n c.$wrapperEl.transitionEnd(() => {\n if (!controlled) return;\n\n if (c.params.loop && swiper.params.controller.by === 'slide') {\n c.loopFix();\n }\n\n c.transitionEnd();\n });\n }\n }\n\n if (Array.isArray(controlled)) {\n for (i = 0; i < controlled.length; i += 1) {\n if (controlled[i] !== byController && controlled[i] instanceof Swiper) {\n setControlledTransition(controlled[i]);\n }\n }\n } else if (controlled instanceof Swiper && byController !== controlled) {\n setControlledTransition(controlled);\n }\n }\n\n function removeSpline() {\n if (!swiper.controller.control) return;\n\n if (swiper.controller.spline) {\n swiper.controller.spline = undefined;\n delete swiper.controller.spline;\n }\n }\n\n on('beforeInit', () => {\n swiper.controller.control = swiper.params.controller.control;\n });\n on('update', () => {\n removeSpline();\n });\n on('resize', () => {\n removeSpline();\n });\n on('observerUpdate', () => {\n removeSpline();\n });\n on('setTranslate', (_s, translate, byController) => {\n if (!swiper.controller.control) return;\n swiper.controller.setTranslate(translate, byController);\n });\n on('setTransition', (_s, duration, byController) => {\n if (!swiper.controller.control) return;\n swiper.controller.setTransition(duration, byController);\n });\n Object.assign(swiper.controller, {\n setTranslate,\n setTransition,\n });\n }\n\n function A11y({swiper, extendParams, on}) {\n extendParams({\n a11y: {\n enabled: true,\n notificationClass: 'swiper-notification',\n prevSlideMessage: 'Previous slide',\n nextSlideMessage: 'Next slide',\n firstSlideMessage: 'This is the first slide',\n lastSlideMessage: 'This is the last slide',\n paginationBulletMessage: 'Go to slide {{index}}',\n slideLabelMessage: '{{index}} / {{slidesLength}}',\n containerMessage: null,\n containerRoleDescriptionMessage: null,\n itemRoleDescriptionMessage: null,\n slideRole: 'group',\n },\n });\n let liveRegion = null;\n\n function notify(message) {\n const notification = liveRegion;\n if (notification.length === 0) return;\n notification.html('');\n notification.html(message);\n }\n\n function getRandomNumber(size = 16) {\n const randomChar = () => Math.round(16 * Math.random()).toString(16);\n\n return 'x'.repeat(size).replace(/x/g, randomChar);\n }\n\n function makeElFocusable($el) {\n $el.attr('tabIndex', '0');\n }\n\n function makeElNotFocusable($el) {\n $el.attr('tabIndex', '-1');\n }\n\n function addElRole($el, role) {\n $el.attr('role', role);\n }\n\n function addElRoleDescription($el, description) {\n $el.attr('aria-roledescription', description);\n }\n\n function addElControls($el, controls) {\n $el.attr('aria-controls', controls);\n }\n\n function addElLabel($el, label) {\n $el.attr('aria-label', label);\n }\n\n function addElId($el, id) {\n $el.attr('id', id);\n }\n\n function addElLive($el, live) {\n $el.attr('aria-live', live);\n }\n\n function disableEl($el) {\n $el.attr('aria-disabled', true);\n }\n\n function enableEl($el) {\n $el.attr('aria-disabled', false);\n }\n\n function onEnterOrSpaceKey(e) {\n if (e.keyCode !== 13 && e.keyCode !== 32) return;\n const params = swiper.params.a11y;\n const $targetEl = $(e.target);\n\n if (swiper.navigation && swiper.navigation.$nextEl && $targetEl.is(swiper.navigation.$nextEl)) {\n if (!(swiper.isEnd && !swiper.params.loop)) {\n swiper.slideNext();\n }\n\n if (swiper.isEnd) {\n notify(params.lastSlideMessage);\n } else {\n notify(params.nextSlideMessage);\n }\n }\n\n if (swiper.navigation && swiper.navigation.$prevEl && $targetEl.is(swiper.navigation.$prevEl)) {\n if (!(swiper.isBeginning && !swiper.params.loop)) {\n swiper.slidePrev();\n }\n\n if (swiper.isBeginning) {\n notify(params.firstSlideMessage);\n } else {\n notify(params.prevSlideMessage);\n }\n }\n\n if (swiper.pagination && $targetEl.is(classesToSelector(swiper.params.pagination.bulletClass))) {\n $targetEl[0].click();\n }\n }\n\n function updateNavigation() {\n if (swiper.params.loop || swiper.params.rewind || !swiper.navigation) return;\n const {$nextEl, $prevEl} = swiper.navigation;\n\n if ($prevEl && $prevEl.length > 0) {\n if (swiper.isBeginning) {\n disableEl($prevEl);\n makeElNotFocusable($prevEl);\n } else {\n enableEl($prevEl);\n makeElFocusable($prevEl);\n }\n }\n\n if ($nextEl && $nextEl.length > 0) {\n if (swiper.isEnd) {\n disableEl($nextEl);\n makeElNotFocusable($nextEl);\n } else {\n enableEl($nextEl);\n makeElFocusable($nextEl);\n }\n }\n }\n\n function hasPagination() {\n return swiper.pagination && swiper.pagination.bullets && swiper.pagination.bullets.length;\n }\n\n function hasClickablePagination() {\n return hasPagination() && swiper.params.pagination.clickable;\n }\n\n function updatePagination() {\n const params = swiper.params.a11y;\n if (!hasPagination()) return;\n swiper.pagination.bullets.each((bulletEl) => {\n const $bulletEl = $(bulletEl);\n\n if (swiper.params.pagination.clickable) {\n makeElFocusable($bulletEl);\n\n if (!swiper.params.pagination.renderBullet) {\n addElRole($bulletEl, 'button');\n addElLabel($bulletEl, params.paginationBulletMessage.replace(/\\{\\{index\\}\\}/, $bulletEl.index() + 1));\n }\n }\n\n if ($bulletEl.is(`.${swiper.params.pagination.bulletActiveClass}`)) {\n $bulletEl.attr('aria-current', 'true');\n } else {\n $bulletEl.removeAttr('aria-current');\n }\n });\n }\n\n const initNavEl = ($el, wrapperId, message) => {\n makeElFocusable($el);\n\n if ($el[0].tagName !== 'BUTTON') {\n addElRole($el, 'button');\n $el.on('keydown', onEnterOrSpaceKey);\n }\n\n addElLabel($el, message);\n addElControls($el, wrapperId);\n };\n\n function init() {\n const params = swiper.params.a11y;\n swiper.$el.append(liveRegion); // Container\n\n const $containerEl = swiper.$el;\n\n if (params.containerRoleDescriptionMessage) {\n addElRoleDescription($containerEl, params.containerRoleDescriptionMessage);\n }\n\n if (params.containerMessage) {\n addElLabel($containerEl, params.containerMessage);\n } // Wrapper\n\n const $wrapperEl = swiper.$wrapperEl;\n const wrapperId = $wrapperEl.attr('id') || `swiper-wrapper-${getRandomNumber(16)}`;\n const live = swiper.params.autoplay && swiper.params.autoplay.enabled ? 'off' : 'polite';\n addElId($wrapperEl, wrapperId);\n addElLive($wrapperEl, live); // Slide\n\n if (params.itemRoleDescriptionMessage) {\n addElRoleDescription($(swiper.slides), params.itemRoleDescriptionMessage);\n }\n\n addElRole($(swiper.slides), params.slideRole);\n const slidesLength = swiper.params.loop\n ? swiper.slides.filter((el) => !el.classList.contains(swiper.params.slideDuplicateClass)).length\n : swiper.slides.length;\n swiper.slides.each((slideEl, index) => {\n const $slideEl = $(slideEl);\n const slideIndex = swiper.params.loop ? parseInt($slideEl.attr('data-swiper-slide-index'), 10) : index;\n const ariaLabelMessage = params.slideLabelMessage\n .replace(/\\{\\{index\\}\\}/, slideIndex + 1)\n .replace(/\\{\\{slidesLength\\}\\}/, slidesLength);\n addElLabel($slideEl, ariaLabelMessage);\n }); // Navigation\n\n let $nextEl;\n let $prevEl;\n\n if (swiper.navigation && swiper.navigation.$nextEl) {\n $nextEl = swiper.navigation.$nextEl;\n }\n\n if (swiper.navigation && swiper.navigation.$prevEl) {\n $prevEl = swiper.navigation.$prevEl;\n }\n\n if ($nextEl && $nextEl.length) {\n initNavEl($nextEl, wrapperId, params.nextSlideMessage);\n }\n\n if ($prevEl && $prevEl.length) {\n initNavEl($prevEl, wrapperId, params.prevSlideMessage);\n } // Pagination\n\n if (hasClickablePagination()) {\n swiper.pagination.$el.on(\n 'keydown',\n classesToSelector(swiper.params.pagination.bulletClass),\n onEnterOrSpaceKey,\n );\n }\n }\n\n function destroy() {\n if (liveRegion && liveRegion.length > 0) liveRegion.remove();\n let $nextEl;\n let $prevEl;\n\n if (swiper.navigation && swiper.navigation.$nextEl) {\n $nextEl = swiper.navigation.$nextEl;\n }\n\n if (swiper.navigation && swiper.navigation.$prevEl) {\n $prevEl = swiper.navigation.$prevEl;\n }\n\n if ($nextEl) {\n $nextEl.off('keydown', onEnterOrSpaceKey);\n }\n\n if ($prevEl) {\n $prevEl.off('keydown', onEnterOrSpaceKey);\n } // Pagination\n\n if (hasClickablePagination()) {\n swiper.pagination.$el.off(\n 'keydown',\n classesToSelector(swiper.params.pagination.bulletClass),\n onEnterOrSpaceKey,\n );\n }\n }\n\n on('beforeInit', () => {\n liveRegion = $(\n ``,\n );\n });\n on('afterInit', () => {\n if (!swiper.params.a11y.enabled) return;\n init();\n updateNavigation();\n });\n on('toEdge', () => {\n if (!swiper.params.a11y.enabled) return;\n updateNavigation();\n });\n on('fromEdge', () => {\n if (!swiper.params.a11y.enabled) return;\n updateNavigation();\n });\n on('paginationUpdate', () => {\n if (!swiper.params.a11y.enabled) return;\n updatePagination();\n });\n on('destroy', () => {\n if (!swiper.params.a11y.enabled) return;\n destroy();\n });\n }\n\n function History({swiper, extendParams, on}) {\n extendParams({\n history: {\n enabled: false,\n root: '',\n replaceState: false,\n key: 'slides',\n },\n });\n let initialized = false;\n let paths = {};\n\n const slugify = (text) => {\n return text\n .toString()\n .replace(/\\s+/g, '-')\n .replace(/[^\\w-]+/g, '')\n .replace(/--+/g, '-')\n .replace(/^-+/, '')\n .replace(/-+$/, '');\n };\n\n const getPathValues = (urlOverride) => {\n const window = getWindow();\n let location;\n\n if (urlOverride) {\n location = new URL(urlOverride);\n } else {\n location = window.location;\n }\n\n const pathArray = location.pathname\n .slice(1)\n .split('/')\n .filter((part) => part !== '');\n const total = pathArray.length;\n const key = pathArray[total - 2];\n const value = pathArray[total - 1];\n return {\n key,\n value,\n };\n };\n\n const setHistory = (key, index) => {\n const window = getWindow();\n if (!initialized || !swiper.params.history.enabled) return;\n let location;\n\n if (swiper.params.url) {\n location = new URL(swiper.params.url);\n } else {\n location = window.location;\n }\n\n const slide = swiper.slides.eq(index);\n let value = slugify(slide.attr('data-history'));\n\n if (swiper.params.history.root.length > 0) {\n let root = swiper.params.history.root;\n if (root[root.length - 1] === '/') root = root.slice(0, root.length - 1);\n value = `${root}/${key}/${value}`;\n } else if (!location.pathname.includes(key)) {\n value = `${key}/${value}`;\n }\n\n const currentState = window.history.state;\n\n if (currentState && currentState.value === value) {\n return;\n }\n\n if (swiper.params.history.replaceState) {\n window.history.replaceState(\n {\n value,\n },\n null,\n value,\n );\n } else {\n window.history.pushState(\n {\n value,\n },\n null,\n value,\n );\n }\n };\n\n const scrollToSlide = (speed, value, runCallbacks) => {\n if (value) {\n for (let i = 0, length = swiper.slides.length; i < length; i += 1) {\n const slide = swiper.slides.eq(i);\n const slideHistory = slugify(slide.attr('data-history'));\n\n if (slideHistory === value && !slide.hasClass(swiper.params.slideDuplicateClass)) {\n const index = slide.index();\n swiper.slideTo(index, speed, runCallbacks);\n }\n }\n } else {\n swiper.slideTo(0, speed, runCallbacks);\n }\n };\n\n const setHistoryPopState = () => {\n paths = getPathValues(swiper.params.url);\n scrollToSlide(swiper.params.speed, swiper.paths.value, false);\n };\n\n const init = () => {\n const window = getWindow();\n if (!swiper.params.history) return;\n\n if (!window.history || !window.history.pushState) {\n swiper.params.history.enabled = false;\n swiper.params.hashNavigation.enabled = true;\n return;\n }\n\n initialized = true;\n paths = getPathValues(swiper.params.url);\n if (!paths.key && !paths.value) return;\n scrollToSlide(0, paths.value, swiper.params.runCallbacksOnInit);\n\n if (!swiper.params.history.replaceState) {\n window.addEventListener('popstate', setHistoryPopState);\n }\n };\n\n const destroy = () => {\n const window = getWindow();\n\n if (!swiper.params.history.replaceState) {\n window.removeEventListener('popstate', setHistoryPopState);\n }\n };\n\n on('init', () => {\n if (swiper.params.history.enabled) {\n init();\n }\n });\n on('destroy', () => {\n if (swiper.params.history.enabled) {\n destroy();\n }\n });\n on('transitionEnd _freeModeNoMomentumRelease', () => {\n if (initialized) {\n setHistory(swiper.params.history.key, swiper.activeIndex);\n }\n });\n on('slideChange', () => {\n if (initialized && swiper.params.cssMode) {\n setHistory(swiper.params.history.key, swiper.activeIndex);\n }\n });\n }\n\n function HashNavigation({swiper, extendParams, emit, on}) {\n let initialized = false;\n const document = getDocument();\n const window = getWindow();\n extendParams({\n hashNavigation: {\n enabled: false,\n replaceState: false,\n watchState: false,\n },\n });\n\n const onHashChange = () => {\n emit('hashChange');\n const newHash = document.location.hash.replace('#', '');\n const activeSlideHash = swiper.slides.eq(swiper.activeIndex).attr('data-hash');\n\n if (newHash !== activeSlideHash) {\n const newIndex = swiper.$wrapperEl.children(`.${swiper.params.slideClass}[data-hash=\"${newHash}\"]`).index();\n if (typeof newIndex === 'undefined') return;\n swiper.slideTo(newIndex);\n }\n };\n\n const setHash = () => {\n if (!initialized || !swiper.params.hashNavigation.enabled) return;\n\n if (swiper.params.hashNavigation.replaceState && window.history && window.history.replaceState) {\n window.history.replaceState(null, null, `#${swiper.slides.eq(swiper.activeIndex).attr('data-hash')}` || '');\n emit('hashSet');\n } else {\n const slide = swiper.slides.eq(swiper.activeIndex);\n const hash = slide.attr('data-hash') || slide.attr('data-history');\n document.location.hash = hash || '';\n emit('hashSet');\n }\n };\n\n const init = () => {\n if (!swiper.params.hashNavigation.enabled || (swiper.params.history && swiper.params.history.enabled)) return;\n initialized = true;\n const hash = document.location.hash.replace('#', '');\n\n if (hash) {\n const speed = 0;\n\n for (let i = 0, length = swiper.slides.length; i < length; i += 1) {\n const slide = swiper.slides.eq(i);\n const slideHash = slide.attr('data-hash') || slide.attr('data-history');\n\n if (slideHash === hash && !slide.hasClass(swiper.params.slideDuplicateClass)) {\n const index = slide.index();\n swiper.slideTo(index, speed, swiper.params.runCallbacksOnInit, true);\n }\n }\n }\n\n if (swiper.params.hashNavigation.watchState) {\n $(window).on('hashchange', onHashChange);\n }\n };\n\n const destroy = () => {\n if (swiper.params.hashNavigation.watchState) {\n $(window).off('hashchange', onHashChange);\n }\n };\n\n on('init', () => {\n if (swiper.params.hashNavigation.enabled) {\n init();\n }\n });\n on('destroy', () => {\n if (swiper.params.hashNavigation.enabled) {\n destroy();\n }\n });\n on('transitionEnd _freeModeNoMomentumRelease', () => {\n if (initialized) {\n setHash();\n }\n });\n on('slideChange', () => {\n if (initialized && swiper.params.cssMode) {\n setHash();\n }\n });\n }\n\n /* eslint no-underscore-dangle: \"off\" */\n function Autoplay({swiper, extendParams, on, emit}) {\n let timeout;\n swiper.autoplay = {\n running: false,\n paused: false,\n };\n extendParams({\n autoplay: {\n enabled: false,\n delay: 3000,\n waitForTransition: true,\n disableOnInteraction: true,\n stopOnLastSlide: false,\n reverseDirection: false,\n pauseOnMouseEnter: false,\n },\n });\n\n function run() {\n const $activeSlideEl = swiper.slides.eq(swiper.activeIndex);\n let delay = swiper.params.autoplay.delay;\n\n if ($activeSlideEl.attr('data-swiper-autoplay')) {\n delay = $activeSlideEl.attr('data-swiper-autoplay') || swiper.params.autoplay.delay;\n }\n\n clearTimeout(timeout);\n timeout = nextTick(() => {\n let autoplayResult;\n\n if (swiper.params.autoplay.reverseDirection) {\n if (swiper.params.loop) {\n swiper.loopFix();\n autoplayResult = swiper.slidePrev(swiper.params.speed, true, true);\n emit('autoplay');\n } else if (!swiper.isBeginning) {\n autoplayResult = swiper.slidePrev(swiper.params.speed, true, true);\n emit('autoplay');\n } else if (!swiper.params.autoplay.stopOnLastSlide) {\n autoplayResult = swiper.slideTo(swiper.slides.length - 1, swiper.params.speed, true, true);\n emit('autoplay');\n } else {\n stop();\n }\n } else if (swiper.params.loop) {\n swiper.loopFix();\n autoplayResult = swiper.slideNext(swiper.params.speed, true, true);\n emit('autoplay');\n } else if (!swiper.isEnd) {\n autoplayResult = swiper.slideNext(swiper.params.speed, true, true);\n emit('autoplay');\n } else if (!swiper.params.autoplay.stopOnLastSlide) {\n autoplayResult = swiper.slideTo(0, swiper.params.speed, true, true);\n emit('autoplay');\n } else {\n stop();\n }\n\n if (swiper.params.cssMode && swiper.autoplay.running) run();\n else if (autoplayResult === false) {\n run();\n }\n }, delay);\n }\n\n function start() {\n if (typeof timeout !== 'undefined') return false;\n if (swiper.autoplay.running) return false;\n swiper.autoplay.running = true;\n emit('autoplayStart');\n run();\n return true;\n }\n\n function stop() {\n if (!swiper.autoplay.running) return false;\n if (typeof timeout === 'undefined') return false;\n\n if (timeout) {\n clearTimeout(timeout);\n timeout = undefined;\n }\n\n swiper.autoplay.running = false;\n emit('autoplayStop');\n return true;\n }\n\n function pause(speed) {\n if (!swiper.autoplay.running) return;\n if (swiper.autoplay.paused) return;\n if (timeout) clearTimeout(timeout);\n swiper.autoplay.paused = true;\n\n if (speed === 0 || !swiper.params.autoplay.waitForTransition) {\n swiper.autoplay.paused = false;\n run();\n } else {\n ['transitionend', 'webkitTransitionEnd'].forEach((event) => {\n swiper.$wrapperEl[0].addEventListener(event, onTransitionEnd);\n });\n }\n }\n\n function onVisibilityChange() {\n const document = getDocument();\n\n if (document.visibilityState === 'hidden' && swiper.autoplay.running) {\n pause();\n }\n\n if (document.visibilityState === 'visible' && swiper.autoplay.paused) {\n run();\n swiper.autoplay.paused = false;\n }\n }\n\n function onTransitionEnd(e) {\n if (!swiper || swiper.destroyed || !swiper.$wrapperEl) return;\n if (e.target !== swiper.$wrapperEl[0]) return;\n ['transitionend', 'webkitTransitionEnd'].forEach((event) => {\n swiper.$wrapperEl[0].removeEventListener(event, onTransitionEnd);\n });\n swiper.autoplay.paused = false;\n\n if (!swiper.autoplay.running) {\n stop();\n } else {\n run();\n }\n }\n\n function onMouseEnter() {\n if (swiper.params.autoplay.disableOnInteraction) {\n stop();\n } else {\n pause();\n }\n\n ['transitionend', 'webkitTransitionEnd'].forEach((event) => {\n swiper.$wrapperEl[0].removeEventListener(event, onTransitionEnd);\n });\n }\n\n function onMouseLeave() {\n if (swiper.params.autoplay.disableOnInteraction) {\n return;\n }\n\n swiper.autoplay.paused = false;\n run();\n }\n\n function attachMouseEvents() {\n if (swiper.params.autoplay.pauseOnMouseEnter) {\n swiper.$el.on('mouseenter', onMouseEnter);\n swiper.$el.on('mouseleave', onMouseLeave);\n }\n }\n\n function detachMouseEvents() {\n swiper.$el.off('mouseenter', onMouseEnter);\n swiper.$el.off('mouseleave', onMouseLeave);\n }\n\n on('init', () => {\n if (swiper.params.autoplay.enabled) {\n start();\n const document = getDocument();\n document.addEventListener('visibilitychange', onVisibilityChange);\n attachMouseEvents();\n }\n });\n on('beforeTransitionStart', (_s, speed, internal) => {\n if (swiper.autoplay.running) {\n if (internal || !swiper.params.autoplay.disableOnInteraction) {\n swiper.autoplay.pause(speed);\n } else {\n stop();\n }\n }\n });\n on('sliderFirstMove', () => {\n if (swiper.autoplay.running) {\n if (swiper.params.autoplay.disableOnInteraction) {\n stop();\n } else {\n pause();\n }\n }\n });\n on('touchEnd', () => {\n if (swiper.params.cssMode && swiper.autoplay.paused && !swiper.params.autoplay.disableOnInteraction) {\n run();\n }\n });\n on('destroy', () => {\n detachMouseEvents();\n\n if (swiper.autoplay.running) {\n stop();\n }\n\n const document = getDocument();\n document.removeEventListener('visibilitychange', onVisibilityChange);\n });\n Object.assign(swiper.autoplay, {\n pause,\n run,\n start,\n stop,\n });\n }\n\n function Thumb({swiper, extendParams, on}) {\n extendParams({\n thumbs: {\n swiper: null,\n multipleActiveThumbs: true,\n autoScrollOffset: 0,\n slideThumbActiveClass: 'swiper-slide-thumb-active',\n thumbsContainerClass: 'swiper-thumbs',\n },\n });\n let initialized = false;\n let swiperCreated = false;\n swiper.thumbs = {\n swiper: null,\n };\n\n function onThumbClick() {\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n const clickedIndex = thumbsSwiper.clickedIndex;\n const clickedSlide = thumbsSwiper.clickedSlide;\n if (clickedSlide && $(clickedSlide).hasClass(swiper.params.thumbs.slideThumbActiveClass)) return;\n if (typeof clickedIndex === 'undefined' || clickedIndex === null) return;\n let slideToIndex;\n\n if (thumbsSwiper.params.loop) {\n slideToIndex = parseInt($(thumbsSwiper.clickedSlide).attr('data-swiper-slide-index'), 10);\n } else {\n slideToIndex = clickedIndex;\n }\n\n if (swiper.params.loop) {\n let currentIndex = swiper.activeIndex;\n\n if (swiper.slides.eq(currentIndex).hasClass(swiper.params.slideDuplicateClass)) {\n swiper.loopFix(); // eslint-disable-next-line\n\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n currentIndex = swiper.activeIndex;\n }\n\n const prevIndex = swiper.slides\n .eq(currentIndex)\n .prevAll(`[data-swiper-slide-index=\"${slideToIndex}\"]`)\n .eq(0)\n .index();\n const nextIndex = swiper.slides\n .eq(currentIndex)\n .nextAll(`[data-swiper-slide-index=\"${slideToIndex}\"]`)\n .eq(0)\n .index();\n if (typeof prevIndex === 'undefined') slideToIndex = nextIndex;\n else if (typeof nextIndex === 'undefined') slideToIndex = prevIndex;\n else if (nextIndex - currentIndex < currentIndex - prevIndex) slideToIndex = nextIndex;\n else slideToIndex = prevIndex;\n }\n\n swiper.slideTo(slideToIndex);\n }\n\n function init() {\n const {thumbs: thumbsParams} = swiper.params;\n if (initialized) return false;\n initialized = true;\n const SwiperClass = swiper.constructor;\n\n if (thumbsParams.swiper instanceof SwiperClass) {\n swiper.thumbs.swiper = thumbsParams.swiper;\n Object.assign(swiper.thumbs.swiper.originalParams, {\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n });\n Object.assign(swiper.thumbs.swiper.params, {\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n });\n } else if (isObject(thumbsParams.swiper)) {\n const thumbsSwiperParams = Object.assign({}, thumbsParams.swiper);\n Object.assign(thumbsSwiperParams, {\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n });\n swiper.thumbs.swiper = new SwiperClass(thumbsSwiperParams);\n swiperCreated = true;\n }\n\n swiper.thumbs.swiper.$el.addClass(swiper.params.thumbs.thumbsContainerClass);\n swiper.thumbs.swiper.on('tap', onThumbClick);\n return true;\n }\n\n function update(initial) {\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n const slidesPerView =\n thumbsSwiper.params.slidesPerView === 'auto'\n ? thumbsSwiper.slidesPerViewDynamic()\n : thumbsSwiper.params.slidesPerView;\n const autoScrollOffset = swiper.params.thumbs.autoScrollOffset;\n const useOffset = autoScrollOffset && !thumbsSwiper.params.loop;\n\n if (swiper.realIndex !== thumbsSwiper.realIndex || useOffset) {\n let currentThumbsIndex = thumbsSwiper.activeIndex;\n let newThumbsIndex;\n let direction;\n\n if (thumbsSwiper.params.loop) {\n if (thumbsSwiper.slides.eq(currentThumbsIndex).hasClass(thumbsSwiper.params.slideDuplicateClass)) {\n thumbsSwiper.loopFix(); // eslint-disable-next-line\n\n thumbsSwiper._clientLeft = thumbsSwiper.$wrapperEl[0].clientLeft;\n currentThumbsIndex = thumbsSwiper.activeIndex;\n } // Find actual thumbs index to slide to\n\n const prevThumbsIndex = thumbsSwiper.slides\n .eq(currentThumbsIndex)\n .prevAll(`[data-swiper-slide-index=\"${swiper.realIndex}\"]`)\n .eq(0)\n .index();\n const nextThumbsIndex = thumbsSwiper.slides\n .eq(currentThumbsIndex)\n .nextAll(`[data-swiper-slide-index=\"${swiper.realIndex}\"]`)\n .eq(0)\n .index();\n\n if (typeof prevThumbsIndex === 'undefined') {\n newThumbsIndex = nextThumbsIndex;\n } else if (typeof nextThumbsIndex === 'undefined') {\n newThumbsIndex = prevThumbsIndex;\n } else if (nextThumbsIndex - currentThumbsIndex === currentThumbsIndex - prevThumbsIndex) {\n newThumbsIndex = thumbsSwiper.params.slidesPerGroup > 1 ? nextThumbsIndex : currentThumbsIndex;\n } else if (nextThumbsIndex - currentThumbsIndex < currentThumbsIndex - prevThumbsIndex) {\n newThumbsIndex = nextThumbsIndex;\n } else {\n newThumbsIndex = prevThumbsIndex;\n }\n\n direction = swiper.activeIndex > swiper.previousIndex ? 'next' : 'prev';\n } else {\n newThumbsIndex = swiper.realIndex;\n direction = newThumbsIndex > swiper.previousIndex ? 'next' : 'prev';\n }\n\n if (useOffset) {\n newThumbsIndex += direction === 'next' ? autoScrollOffset : -1 * autoScrollOffset;\n }\n\n if (thumbsSwiper.visibleSlidesIndexes && thumbsSwiper.visibleSlidesIndexes.indexOf(newThumbsIndex) < 0) {\n if (thumbsSwiper.params.centeredSlides) {\n if (newThumbsIndex > currentThumbsIndex) {\n newThumbsIndex = newThumbsIndex - Math.floor(slidesPerView / 2) + 1;\n } else {\n newThumbsIndex = newThumbsIndex + Math.floor(slidesPerView / 2) - 1;\n }\n } else if (newThumbsIndex > currentThumbsIndex && thumbsSwiper.params.slidesPerGroup === 1);\n\n thumbsSwiper.slideTo(newThumbsIndex, initial ? 0 : undefined);\n }\n } // Activate thumbs\n\n let thumbsToActivate = 1;\n const thumbActiveClass = swiper.params.thumbs.slideThumbActiveClass;\n\n if (swiper.params.slidesPerView > 1 && !swiper.params.centeredSlides) {\n thumbsToActivate = swiper.params.slidesPerView;\n }\n\n if (!swiper.params.thumbs.multipleActiveThumbs) {\n thumbsToActivate = 1;\n }\n\n thumbsToActivate = Math.floor(thumbsToActivate);\n thumbsSwiper.slides.removeClass(thumbActiveClass);\n\n if (thumbsSwiper.params.loop || (thumbsSwiper.params.virtual && thumbsSwiper.params.virtual.enabled)) {\n for (let i = 0; i < thumbsToActivate; i += 1) {\n thumbsSwiper.$wrapperEl\n .children(`[data-swiper-slide-index=\"${swiper.realIndex + i}\"]`)\n .addClass(thumbActiveClass);\n }\n } else {\n for (let i = 0; i < thumbsToActivate; i += 1) {\n thumbsSwiper.slides.eq(swiper.realIndex + i).addClass(thumbActiveClass);\n }\n }\n }\n\n on('beforeInit', () => {\n const {thumbs} = swiper.params;\n if (!thumbs || !thumbs.swiper) return;\n init();\n update(true);\n });\n on('slideChange update resize observerUpdate', () => {\n if (!swiper.thumbs.swiper) return;\n update();\n });\n on('setTransition', (_s, duration) => {\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n thumbsSwiper.setTransition(duration);\n });\n on('beforeDestroy', () => {\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n\n if (swiperCreated && thumbsSwiper) {\n thumbsSwiper.destroy();\n }\n });\n Object.assign(swiper.thumbs, {\n init,\n update,\n });\n }\n\n function freeMode({swiper, extendParams, emit, once}) {\n extendParams({\n freeMode: {\n enabled: false,\n momentum: true,\n momentumRatio: 1,\n momentumBounce: true,\n momentumBounceRatio: 1,\n momentumVelocityRatio: 1,\n sticky: false,\n minimumVelocity: 0.02,\n },\n });\n\n function onTouchMove() {\n const {touchEventsData: data, touches} = swiper; // Velocity\n\n if (data.velocities.length === 0) {\n data.velocities.push({\n position: touches[swiper.isHorizontal() ? 'startX' : 'startY'],\n time: data.touchStartTime,\n });\n }\n\n data.velocities.push({\n position: touches[swiper.isHorizontal() ? 'currentX' : 'currentY'],\n time: now(),\n });\n }\n\n function onTouchEnd({currentPos}) {\n const {params, $wrapperEl, rtlTranslate: rtl, snapGrid, touchEventsData: data} = swiper; // Time diff\n\n const touchEndTime = now();\n const timeDiff = touchEndTime - data.touchStartTime;\n\n if (currentPos < -swiper.minTranslate()) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n\n if (currentPos > -swiper.maxTranslate()) {\n if (swiper.slides.length < snapGrid.length) {\n swiper.slideTo(snapGrid.length - 1);\n } else {\n swiper.slideTo(swiper.slides.length - 1);\n }\n\n return;\n }\n\n if (params.freeMode.momentum) {\n if (data.velocities.length > 1) {\n const lastMoveEvent = data.velocities.pop();\n const velocityEvent = data.velocities.pop();\n const distance = lastMoveEvent.position - velocityEvent.position;\n const time = lastMoveEvent.time - velocityEvent.time;\n swiper.velocity = distance / time;\n swiper.velocity /= 2;\n\n if (Math.abs(swiper.velocity) < params.freeMode.minimumVelocity) {\n swiper.velocity = 0;\n } // this implies that the user stopped moving a finger then released.\n // There would be no events with distance zero, so the last event is stale.\n\n if (time > 150 || now() - lastMoveEvent.time > 300) {\n swiper.velocity = 0;\n }\n } else {\n swiper.velocity = 0;\n }\n\n swiper.velocity *= params.freeMode.momentumVelocityRatio;\n data.velocities.length = 0;\n let momentumDuration = 1000 * params.freeMode.momentumRatio;\n const momentumDistance = swiper.velocity * momentumDuration;\n let newPosition = swiper.translate + momentumDistance;\n if (rtl) newPosition = -newPosition;\n let doBounce = false;\n let afterBouncePosition;\n const bounceAmount = Math.abs(swiper.velocity) * 20 * params.freeMode.momentumBounceRatio;\n let needsLoopFix;\n\n if (newPosition < swiper.maxTranslate()) {\n if (params.freeMode.momentumBounce) {\n if (newPosition + swiper.maxTranslate() < -bounceAmount) {\n newPosition = swiper.maxTranslate() - bounceAmount;\n }\n\n afterBouncePosition = swiper.maxTranslate();\n doBounce = true;\n data.allowMomentumBounce = true;\n } else {\n newPosition = swiper.maxTranslate();\n }\n\n if (params.loop && params.centeredSlides) needsLoopFix = true;\n } else if (newPosition > swiper.minTranslate()) {\n if (params.freeMode.momentumBounce) {\n if (newPosition - swiper.minTranslate() > bounceAmount) {\n newPosition = swiper.minTranslate() + bounceAmount;\n }\n\n afterBouncePosition = swiper.minTranslate();\n doBounce = true;\n data.allowMomentumBounce = true;\n } else {\n newPosition = swiper.minTranslate();\n }\n\n if (params.loop && params.centeredSlides) needsLoopFix = true;\n } else if (params.freeMode.sticky) {\n let nextSlide;\n\n for (let j = 0; j < snapGrid.length; j += 1) {\n if (snapGrid[j] > -newPosition) {\n nextSlide = j;\n break;\n }\n }\n\n if (\n Math.abs(snapGrid[nextSlide] - newPosition) < Math.abs(snapGrid[nextSlide - 1] - newPosition) ||\n swiper.swipeDirection === 'next'\n ) {\n newPosition = snapGrid[nextSlide];\n } else {\n newPosition = snapGrid[nextSlide - 1];\n }\n\n newPosition = -newPosition;\n }\n\n if (needsLoopFix) {\n once('transitionEnd', () => {\n swiper.loopFix();\n });\n } // Fix duration\n\n if (swiper.velocity !== 0) {\n if (rtl) {\n momentumDuration = Math.abs((-newPosition - swiper.translate) / swiper.velocity);\n } else {\n momentumDuration = Math.abs((newPosition - swiper.translate) / swiper.velocity);\n }\n\n if (params.freeMode.sticky) {\n // If freeMode.sticky is active and the user ends a swipe with a slow-velocity\n // event, then durations can be 20+ seconds to slide one (or zero!) slides.\n // It's easy to see this when simulating touch with mouse events. To fix this,\n // limit single-slide swipes to the default slide duration. This also has the\n // nice side effect of matching slide speed if the user stopped moving before\n // lifting finger or mouse vs. moving slowly before lifting the finger/mouse.\n // For faster swipes, also apply limits (albeit higher ones).\n const moveDistance = Math.abs((rtl ? -newPosition : newPosition) - swiper.translate);\n const currentSlideSize = swiper.slidesSizesGrid[swiper.activeIndex];\n\n if (moveDistance < currentSlideSize) {\n momentumDuration = params.speed;\n } else if (moveDistance < 2 * currentSlideSize) {\n momentumDuration = params.speed * 1.5;\n } else {\n momentumDuration = params.speed * 2.5;\n }\n }\n } else if (params.freeMode.sticky) {\n swiper.slideToClosest();\n return;\n }\n\n if (params.freeMode.momentumBounce && doBounce) {\n swiper.updateProgress(afterBouncePosition);\n swiper.setTransition(momentumDuration);\n swiper.setTranslate(newPosition);\n swiper.transitionStart(true, swiper.swipeDirection);\n swiper.animating = true;\n $wrapperEl.transitionEnd(() => {\n if (!swiper || swiper.destroyed || !data.allowMomentumBounce) return;\n emit('momentumBounce');\n swiper.setTransition(params.speed);\n setTimeout(() => {\n swiper.setTranslate(afterBouncePosition);\n $wrapperEl.transitionEnd(() => {\n if (!swiper || swiper.destroyed) return;\n swiper.transitionEnd();\n });\n }, 0);\n });\n } else if (swiper.velocity) {\n emit('_freeModeNoMomentumRelease');\n swiper.updateProgress(newPosition);\n swiper.setTransition(momentumDuration);\n swiper.setTranslate(newPosition);\n swiper.transitionStart(true, swiper.swipeDirection);\n\n if (!swiper.animating) {\n swiper.animating = true;\n $wrapperEl.transitionEnd(() => {\n if (!swiper || swiper.destroyed) return;\n swiper.transitionEnd();\n });\n }\n } else {\n swiper.updateProgress(newPosition);\n }\n\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n } else if (params.freeMode.sticky) {\n swiper.slideToClosest();\n return;\n } else if (params.freeMode) {\n emit('_freeModeNoMomentumRelease');\n }\n\n if (!params.freeMode.momentum || timeDiff >= params.longSwipesMs) {\n swiper.updateProgress();\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n }\n\n Object.assign(swiper, {\n freeMode: {\n onTouchMove,\n onTouchEnd,\n },\n });\n }\n\n function Grid({swiper, extendParams}) {\n extendParams({\n grid: {\n rows: 1,\n fill: 'column',\n },\n });\n let slidesNumberEvenToRows;\n let slidesPerRow;\n let numFullColumns;\n\n const initSlides = (slidesLength) => {\n const {slidesPerView} = swiper.params;\n const {rows, fill} = swiper.params.grid;\n slidesPerRow = slidesNumberEvenToRows / rows;\n numFullColumns = Math.floor(slidesLength / rows);\n\n if (Math.floor(slidesLength / rows) === slidesLength / rows) {\n slidesNumberEvenToRows = slidesLength;\n } else {\n slidesNumberEvenToRows = Math.ceil(slidesLength / rows) * rows;\n }\n\n if (slidesPerView !== 'auto' && fill === 'row') {\n slidesNumberEvenToRows = Math.max(slidesNumberEvenToRows, slidesPerView * rows);\n }\n };\n\n const updateSlide = (i, slide, slidesLength, getDirectionLabel) => {\n const {slidesPerGroup, spaceBetween} = swiper.params;\n const {rows, fill} = swiper.params.grid; // Set slides order\n\n let newSlideOrderIndex;\n let column;\n let row;\n\n if (fill === 'row' && slidesPerGroup > 1) {\n const groupIndex = Math.floor(i / (slidesPerGroup * rows));\n const slideIndexInGroup = i - rows * slidesPerGroup * groupIndex;\n const columnsInGroup =\n groupIndex === 0\n ? slidesPerGroup\n : Math.min(Math.ceil((slidesLength - groupIndex * rows * slidesPerGroup) / rows), slidesPerGroup);\n row = Math.floor(slideIndexInGroup / columnsInGroup);\n column = slideIndexInGroup - row * columnsInGroup + groupIndex * slidesPerGroup;\n newSlideOrderIndex = column + (row * slidesNumberEvenToRows) / rows;\n slide.css({\n '-webkit-order': newSlideOrderIndex,\n order: newSlideOrderIndex,\n });\n } else if (fill === 'column') {\n column = Math.floor(i / rows);\n row = i - column * rows;\n\n if (column > numFullColumns || (column === numFullColumns && row === rows - 1)) {\n row += 1;\n\n if (row >= rows) {\n row = 0;\n column += 1;\n }\n }\n } else {\n row = Math.floor(i / slidesPerRow);\n column = i - row * slidesPerRow;\n }\n\n slide.css(getDirectionLabel('margin-top'), row !== 0 ? spaceBetween && `${spaceBetween}px` : '');\n };\n\n const updateWrapperSize = (slideSize, snapGrid, getDirectionLabel) => {\n const {spaceBetween, centeredSlides, roundLengths} = swiper.params;\n const {rows} = swiper.params.grid;\n swiper.virtualSize = (slideSize + spaceBetween) * slidesNumberEvenToRows;\n swiper.virtualSize = Math.ceil(swiper.virtualSize / rows) - spaceBetween;\n swiper.$wrapperEl.css({\n [getDirectionLabel('width')]: `${swiper.virtualSize + spaceBetween}px`,\n });\n\n if (centeredSlides) {\n snapGrid.splice(0, snapGrid.length);\n const newSlidesGrid = [];\n\n for (let i = 0; i < snapGrid.length; i += 1) {\n let slidesGridItem = snapGrid[i];\n if (roundLengths) slidesGridItem = Math.floor(slidesGridItem);\n if (snapGrid[i] < swiper.virtualSize + snapGrid[0]) newSlidesGrid.push(slidesGridItem);\n }\n\n snapGrid.push(...newSlidesGrid);\n }\n };\n\n swiper.grid = {\n initSlides,\n updateSlide,\n updateWrapperSize,\n };\n }\n\n function appendSlide(slides) {\n const swiper = this;\n const {$wrapperEl, params} = swiper;\n\n if (params.loop) {\n swiper.loopDestroy();\n }\n\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) $wrapperEl.append(slides[i]);\n }\n } else {\n $wrapperEl.append(slides);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n\n if (!params.observer) {\n swiper.update();\n }\n }\n\n function prependSlide(slides) {\n const swiper = this;\n const {params, $wrapperEl, activeIndex} = swiper;\n\n if (params.loop) {\n swiper.loopDestroy();\n }\n\n let newActiveIndex = activeIndex + 1;\n\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) $wrapperEl.prepend(slides[i]);\n }\n\n newActiveIndex = activeIndex + slides.length;\n } else {\n $wrapperEl.prepend(slides);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n\n if (!params.observer) {\n swiper.update();\n }\n\n swiper.slideTo(newActiveIndex, 0, false);\n }\n\n function addSlide(index, slides) {\n const swiper = this;\n const {$wrapperEl, params, activeIndex} = swiper;\n let activeIndexBuffer = activeIndex;\n\n if (params.loop) {\n activeIndexBuffer -= swiper.loopedSlides;\n swiper.loopDestroy();\n swiper.slides = $wrapperEl.children(`.${params.slideClass}`);\n }\n\n const baseLength = swiper.slides.length;\n\n if (index <= 0) {\n swiper.prependSlide(slides);\n return;\n }\n\n if (index >= baseLength) {\n swiper.appendSlide(slides);\n return;\n }\n\n let newActiveIndex = activeIndexBuffer > index ? activeIndexBuffer + 1 : activeIndexBuffer;\n const slidesBuffer = [];\n\n for (let i = baseLength - 1; i >= index; i -= 1) {\n const currentSlide = swiper.slides.eq(i);\n currentSlide.remove();\n slidesBuffer.unshift(currentSlide);\n }\n\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) $wrapperEl.append(slides[i]);\n }\n\n newActiveIndex = activeIndexBuffer > index ? activeIndexBuffer + slides.length : activeIndexBuffer;\n } else {\n $wrapperEl.append(slides);\n }\n\n for (let i = 0; i < slidesBuffer.length; i += 1) {\n $wrapperEl.append(slidesBuffer[i]);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n\n if (!params.observer) {\n swiper.update();\n }\n\n if (params.loop) {\n swiper.slideTo(newActiveIndex + swiper.loopedSlides, 0, false);\n } else {\n swiper.slideTo(newActiveIndex, 0, false);\n }\n }\n\n function removeSlide(slidesIndexes) {\n const swiper = this;\n const {params, $wrapperEl, activeIndex} = swiper;\n let activeIndexBuffer = activeIndex;\n\n if (params.loop) {\n activeIndexBuffer -= swiper.loopedSlides;\n swiper.loopDestroy();\n swiper.slides = $wrapperEl.children(`.${params.slideClass}`);\n }\n\n let newActiveIndex = activeIndexBuffer;\n let indexToRemove;\n\n if (typeof slidesIndexes === 'object' && 'length' in slidesIndexes) {\n for (let i = 0; i < slidesIndexes.length; i += 1) {\n indexToRemove = slidesIndexes[i];\n if (swiper.slides[indexToRemove]) swiper.slides.eq(indexToRemove).remove();\n if (indexToRemove < newActiveIndex) newActiveIndex -= 1;\n }\n\n newActiveIndex = Math.max(newActiveIndex, 0);\n } else {\n indexToRemove = slidesIndexes;\n if (swiper.slides[indexToRemove]) swiper.slides.eq(indexToRemove).remove();\n if (indexToRemove < newActiveIndex) newActiveIndex -= 1;\n newActiveIndex = Math.max(newActiveIndex, 0);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n\n if (!params.observer) {\n swiper.update();\n }\n\n if (params.loop) {\n swiper.slideTo(newActiveIndex + swiper.loopedSlides, 0, false);\n } else {\n swiper.slideTo(newActiveIndex, 0, false);\n }\n }\n\n function removeAllSlides() {\n const swiper = this;\n const slidesIndexes = [];\n\n for (let i = 0; i < swiper.slides.length; i += 1) {\n slidesIndexes.push(i);\n }\n\n swiper.removeSlide(slidesIndexes);\n }\n\n function Manipulation({swiper}) {\n Object.assign(swiper, {\n appendSlide: appendSlide.bind(swiper),\n prependSlide: prependSlide.bind(swiper),\n addSlide: addSlide.bind(swiper),\n removeSlide: removeSlide.bind(swiper),\n removeAllSlides: removeAllSlides.bind(swiper),\n });\n }\n\n function effectInit(params) {\n const {effect, swiper, on, setTranslate, setTransition, overwriteParams, perspective} = params;\n on('beforeInit', () => {\n if (swiper.params.effect !== effect) return;\n swiper.classNames.push(`${swiper.params.containerModifierClass}${effect}`);\n\n if (perspective && perspective()) {\n swiper.classNames.push(`${swiper.params.containerModifierClass}3d`);\n }\n\n const overwriteParamsResult = overwriteParams ? overwriteParams() : {};\n Object.assign(swiper.params, overwriteParamsResult);\n Object.assign(swiper.originalParams, overwriteParamsResult);\n });\n on('setTranslate', () => {\n if (swiper.params.effect !== effect) return;\n setTranslate();\n });\n on('setTransition', (_s, duration) => {\n if (swiper.params.effect !== effect) return;\n setTransition(duration);\n });\n }\n\n function effectTarget(effectParams, $slideEl) {\n if (effectParams.transformEl) {\n return $slideEl.find(effectParams.transformEl).css({\n 'backface-visibility': 'hidden',\n '-webkit-backface-visibility': 'hidden',\n });\n }\n\n return $slideEl;\n }\n\n function effectVirtualTransitionEnd({swiper, duration, transformEl, allSlides}) {\n const {slides, activeIndex, $wrapperEl} = swiper;\n\n if (swiper.params.virtualTranslate && duration !== 0) {\n let eventTriggered = false;\n let $transitionEndTarget;\n\n if (allSlides) {\n $transitionEndTarget = transformEl ? slides.find(transformEl) : slides;\n } else {\n $transitionEndTarget = transformEl ? slides.eq(activeIndex).find(transformEl) : slides.eq(activeIndex);\n }\n\n $transitionEndTarget.transitionEnd(() => {\n if (eventTriggered) return;\n if (!swiper || swiper.destroyed) return;\n eventTriggered = true;\n swiper.animating = false;\n const triggerEvents = ['webkitTransitionEnd', 'transitionend'];\n\n for (let i = 0; i < triggerEvents.length; i += 1) {\n $wrapperEl.trigger(triggerEvents[i]);\n }\n });\n }\n }\n\n function EffectFade({swiper, extendParams, on}) {\n extendParams({\n fadeEffect: {\n crossFade: false,\n transformEl: null,\n },\n });\n\n const setTranslate = () => {\n const {slides} = swiper;\n const params = swiper.params.fadeEffect;\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = swiper.slides.eq(i);\n const offset = $slideEl[0].swiperSlideOffset;\n let tx = -offset;\n if (!swiper.params.virtualTranslate) tx -= swiper.translate;\n let ty = 0;\n\n if (!swiper.isHorizontal()) {\n ty = tx;\n tx = 0;\n }\n\n const slideOpacity = swiper.params.fadeEffect.crossFade\n ? Math.max(1 - Math.abs($slideEl[0].progress), 0)\n : 1 + Math.min(Math.max($slideEl[0].progress, -1), 0);\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl\n .css({\n opacity: slideOpacity,\n })\n .transform(`translate3d(${tx}px, ${ty}px, 0px)`);\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.fadeEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements.transition(duration);\n effectVirtualTransitionEnd({\n swiper,\n duration,\n transformEl,\n allSlides: true,\n });\n };\n\n effectInit({\n effect: 'fade',\n swiper,\n on,\n setTranslate,\n setTransition,\n overwriteParams: () => ({\n slidesPerView: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n spaceBetween: 0,\n virtualTranslate: !swiper.params.cssMode,\n }),\n });\n }\n\n function EffectCube({swiper, extendParams, on}) {\n extendParams({\n cubeEffect: {\n slideShadows: true,\n shadow: true,\n shadowOffset: 20,\n shadowScale: 0.94,\n },\n });\n\n const setTranslate = () => {\n const {\n $el,\n $wrapperEl,\n slides,\n width: swiperWidth,\n height: swiperHeight,\n rtlTranslate: rtl,\n size: swiperSize,\n browser,\n } = swiper;\n const params = swiper.params.cubeEffect;\n const isHorizontal = swiper.isHorizontal();\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n let wrapperRotate = 0;\n let $cubeShadowEl;\n\n if (params.shadow) {\n if (isHorizontal) {\n $cubeShadowEl = $wrapperEl.find('.swiper-cube-shadow');\n\n if ($cubeShadowEl.length === 0) {\n $cubeShadowEl = $('
    ');\n $wrapperEl.append($cubeShadowEl);\n }\n\n $cubeShadowEl.css({\n height: `${swiperWidth}px`,\n });\n } else {\n $cubeShadowEl = $el.find('.swiper-cube-shadow');\n\n if ($cubeShadowEl.length === 0) {\n $cubeShadowEl = $('
    ');\n $el.append($cubeShadowEl);\n }\n }\n }\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n let slideIndex = i;\n\n if (isVirtual) {\n slideIndex = parseInt($slideEl.attr('data-swiper-slide-index'), 10);\n }\n\n let slideAngle = slideIndex * 90;\n let round = Math.floor(slideAngle / 360);\n\n if (rtl) {\n slideAngle = -slideAngle;\n round = Math.floor(-slideAngle / 360);\n }\n\n const progress = Math.max(Math.min($slideEl[0].progress, 1), -1);\n let tx = 0;\n let ty = 0;\n let tz = 0;\n\n if (slideIndex % 4 === 0) {\n tx = -round * 4 * swiperSize;\n tz = 0;\n } else if ((slideIndex - 1) % 4 === 0) {\n tx = 0;\n tz = -round * 4 * swiperSize;\n } else if ((slideIndex - 2) % 4 === 0) {\n tx = swiperSize + round * 4 * swiperSize;\n tz = swiperSize;\n } else if ((slideIndex - 3) % 4 === 0) {\n tx = -swiperSize;\n tz = 3 * swiperSize + swiperSize * 4 * round;\n }\n\n if (rtl) {\n tx = -tx;\n }\n\n if (!isHorizontal) {\n ty = tx;\n tx = 0;\n }\n\n const transform = `rotateX(${isHorizontal ? 0 : -slideAngle}deg) rotateY(${\n isHorizontal ? slideAngle : 0\n }deg) translate3d(${tx}px, ${ty}px, ${tz}px)`;\n\n if (progress <= 1 && progress > -1) {\n wrapperRotate = slideIndex * 90 + progress * 90;\n if (rtl) wrapperRotate = -slideIndex * 90 - progress * 90;\n }\n\n $slideEl.transform(transform);\n\n if (params.slideShadows) {\n // Set shadows\n let shadowBefore = isHorizontal\n ? $slideEl.find('.swiper-slide-shadow-left')\n : $slideEl.find('.swiper-slide-shadow-top');\n let shadowAfter = isHorizontal\n ? $slideEl.find('.swiper-slide-shadow-right')\n : $slideEl.find('.swiper-slide-shadow-bottom');\n\n if (shadowBefore.length === 0) {\n shadowBefore = $(`
    `);\n $slideEl.append(shadowBefore);\n }\n\n if (shadowAfter.length === 0) {\n shadowAfter = $(`
    `);\n $slideEl.append(shadowAfter);\n }\n\n if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0);\n if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0);\n }\n }\n\n $wrapperEl.css({\n '-webkit-transform-origin': `50% 50% -${swiperSize / 2}px`,\n 'transform-origin': `50% 50% -${swiperSize / 2}px`,\n });\n\n if (params.shadow) {\n if (isHorizontal) {\n $cubeShadowEl.transform(\n `translate3d(0px, ${swiperWidth / 2 + params.shadowOffset}px, ${\n -swiperWidth / 2\n }px) rotateX(90deg) rotateZ(0deg) scale(${params.shadowScale})`,\n );\n } else {\n const shadowAngle = Math.abs(wrapperRotate) - Math.floor(Math.abs(wrapperRotate) / 90) * 90;\n const multiplier =\n 1.5 - (Math.sin((shadowAngle * 2 * Math.PI) / 360) / 2 + Math.cos((shadowAngle * 2 * Math.PI) / 360) / 2);\n const scale1 = params.shadowScale;\n const scale2 = params.shadowScale / multiplier;\n const offset = params.shadowOffset;\n $cubeShadowEl.transform(\n `scale3d(${scale1}, 1, ${scale2}) translate3d(0px, ${swiperHeight / 2 + offset}px, ${\n -swiperHeight / 2 / scale2\n }px) rotateX(-90deg)`,\n );\n }\n }\n\n const zFactor = browser.isSafari || browser.isWebView ? -swiperSize / 2 : 0;\n $wrapperEl.transform(\n `translate3d(0px,0,${zFactor}px) rotateX(${swiper.isHorizontal() ? 0 : wrapperRotate}deg) rotateY(${\n swiper.isHorizontal() ? -wrapperRotate : 0\n }deg)`,\n );\n };\n\n const setTransition = (duration) => {\n const {$el, slides} = swiper;\n slides\n .transition(duration)\n .find(\n '.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left',\n )\n .transition(duration);\n\n if (swiper.params.cubeEffect.shadow && !swiper.isHorizontal()) {\n $el.find('.swiper-cube-shadow').transition(duration);\n }\n };\n\n effectInit({\n effect: 'cube',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => true,\n overwriteParams: () => ({\n slidesPerView: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n resistanceRatio: 0,\n spaceBetween: 0,\n centeredSlides: false,\n virtualTranslate: true,\n }),\n });\n }\n\n function createShadow(params, $slideEl, side) {\n const shadowClass = `swiper-slide-shadow${side ? `-${side}` : ''}`;\n const $shadowContainer = params.transformEl ? $slideEl.find(params.transformEl) : $slideEl;\n let $shadowEl = $shadowContainer.children(`.${shadowClass}`);\n\n if (!$shadowEl.length) {\n $shadowEl = $(`
    `);\n $shadowContainer.append($shadowEl);\n }\n\n return $shadowEl;\n }\n\n function EffectFlip({swiper, extendParams, on}) {\n extendParams({\n flipEffect: {\n slideShadows: true,\n limitRotation: true,\n transformEl: null,\n },\n });\n\n const setTranslate = () => {\n const {slides, rtlTranslate: rtl} = swiper;\n const params = swiper.params.flipEffect;\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n let progress = $slideEl[0].progress;\n\n if (swiper.params.flipEffect.limitRotation) {\n progress = Math.max(Math.min($slideEl[0].progress, 1), -1);\n }\n\n const offset = $slideEl[0].swiperSlideOffset;\n const rotate = -180 * progress;\n let rotateY = rotate;\n let rotateX = 0;\n let tx = swiper.params.cssMode ? -offset - swiper.translate : -offset;\n let ty = 0;\n\n if (!swiper.isHorizontal()) {\n ty = tx;\n tx = 0;\n rotateX = -rotateY;\n rotateY = 0;\n } else if (rtl) {\n rotateY = -rotateY;\n }\n\n $slideEl[0].style.zIndex = -Math.abs(Math.round(progress)) + slides.length;\n\n if (params.slideShadows) {\n // Set shadows\n let shadowBefore = swiper.isHorizontal()\n ? $slideEl.find('.swiper-slide-shadow-left')\n : $slideEl.find('.swiper-slide-shadow-top');\n let shadowAfter = swiper.isHorizontal()\n ? $slideEl.find('.swiper-slide-shadow-right')\n : $slideEl.find('.swiper-slide-shadow-bottom');\n\n if (shadowBefore.length === 0) {\n shadowBefore = createShadow(params, $slideEl, swiper.isHorizontal() ? 'left' : 'top');\n }\n\n if (shadowAfter.length === 0) {\n shadowAfter = createShadow(params, $slideEl, swiper.isHorizontal() ? 'right' : 'bottom');\n }\n\n if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0);\n if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0);\n }\n\n const transform = `translate3d(${tx}px, ${ty}px, 0px) rotateX(${rotateX}deg) rotateY(${rotateY}deg)`;\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl.transform(transform);\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.flipEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements\n .transition(duration)\n .find(\n '.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left',\n )\n .transition(duration);\n effectVirtualTransitionEnd({\n swiper,\n duration,\n transformEl,\n });\n };\n\n effectInit({\n effect: 'flip',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => true,\n overwriteParams: () => ({\n slidesPerView: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n spaceBetween: 0,\n virtualTranslate: !swiper.params.cssMode,\n }),\n });\n }\n\n function EffectCoverflow({swiper, extendParams, on}) {\n extendParams({\n coverflowEffect: {\n rotate: 50,\n stretch: 0,\n depth: 100,\n scale: 1,\n modifier: 1,\n slideShadows: true,\n transformEl: null,\n },\n });\n\n const setTranslate = () => {\n const {width: swiperWidth, height: swiperHeight, slides, slidesSizesGrid} = swiper;\n const params = swiper.params.coverflowEffect;\n const isHorizontal = swiper.isHorizontal();\n const transform = swiper.translate;\n const center = isHorizontal ? -transform + swiperWidth / 2 : -transform + swiperHeight / 2;\n const rotate = isHorizontal ? params.rotate : -params.rotate;\n const translate = params.depth; // Each slide offset from center\n\n for (let i = 0, length = slides.length; i < length; i += 1) {\n const $slideEl = slides.eq(i);\n const slideSize = slidesSizesGrid[i];\n const slideOffset = $slideEl[0].swiperSlideOffset;\n const offsetMultiplier = ((center - slideOffset - slideSize / 2) / slideSize) * params.modifier;\n let rotateY = isHorizontal ? rotate * offsetMultiplier : 0;\n let rotateX = isHorizontal ? 0 : rotate * offsetMultiplier; // var rotateZ = 0\n\n let translateZ = -translate * Math.abs(offsetMultiplier);\n let stretch = params.stretch; // Allow percentage to make a relative stretch for responsive sliders\n\n if (typeof stretch === 'string' && stretch.indexOf('%') !== -1) {\n stretch = (parseFloat(params.stretch) / 100) * slideSize;\n }\n\n let translateY = isHorizontal ? 0 : stretch * offsetMultiplier;\n let translateX = isHorizontal ? stretch * offsetMultiplier : 0;\n let scale = 1 - (1 - params.scale) * Math.abs(offsetMultiplier); // Fix for ultra small values\n\n if (Math.abs(translateX) < 0.001) translateX = 0;\n if (Math.abs(translateY) < 0.001) translateY = 0;\n if (Math.abs(translateZ) < 0.001) translateZ = 0;\n if (Math.abs(rotateY) < 0.001) rotateY = 0;\n if (Math.abs(rotateX) < 0.001) rotateX = 0;\n if (Math.abs(scale) < 0.001) scale = 0;\n const slideTransform = `translate3d(${translateX}px,${translateY}px,${translateZ}px) rotateX(${rotateX}deg) rotateY(${rotateY}deg) scale(${scale})`;\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl.transform(slideTransform);\n $slideEl[0].style.zIndex = -Math.abs(Math.round(offsetMultiplier)) + 1;\n\n if (params.slideShadows) {\n // Set shadows\n let $shadowBeforeEl = isHorizontal\n ? $slideEl.find('.swiper-slide-shadow-left')\n : $slideEl.find('.swiper-slide-shadow-top');\n let $shadowAfterEl = isHorizontal\n ? $slideEl.find('.swiper-slide-shadow-right')\n : $slideEl.find('.swiper-slide-shadow-bottom');\n\n if ($shadowBeforeEl.length === 0) {\n $shadowBeforeEl = createShadow(params, $slideEl, isHorizontal ? 'left' : 'top');\n }\n\n if ($shadowAfterEl.length === 0) {\n $shadowAfterEl = createShadow(params, $slideEl, isHorizontal ? 'right' : 'bottom');\n }\n\n if ($shadowBeforeEl.length) $shadowBeforeEl[0].style.opacity = offsetMultiplier > 0 ? offsetMultiplier : 0;\n if ($shadowAfterEl.length) $shadowAfterEl[0].style.opacity = -offsetMultiplier > 0 ? -offsetMultiplier : 0;\n }\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.coverflowEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements\n .transition(duration)\n .find(\n '.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left',\n )\n .transition(duration);\n };\n\n effectInit({\n effect: 'coverflow',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => true,\n overwriteParams: () => ({\n watchSlidesProgress: true,\n }),\n });\n }\n\n function EffectCreative({swiper, extendParams, on}) {\n extendParams({\n creativeEffect: {\n transformEl: null,\n limitProgress: 1,\n shadowPerProgress: false,\n progressMultiplier: 1,\n perspective: true,\n prev: {\n translate: [0, 0, 0],\n rotate: [0, 0, 0],\n opacity: 1,\n scale: 1,\n },\n next: {\n translate: [0, 0, 0],\n rotate: [0, 0, 0],\n opacity: 1,\n scale: 1,\n },\n },\n });\n\n const getTranslateValue = (value) => {\n if (typeof value === 'string') return value;\n return `${value}px`;\n };\n\n const setTranslate = () => {\n const {slides, $wrapperEl, slidesSizesGrid} = swiper;\n const params = swiper.params.creativeEffect;\n const {progressMultiplier: multiplier} = params;\n const isCenteredSlides = swiper.params.centeredSlides;\n\n if (isCenteredSlides) {\n const margin = slidesSizesGrid[0] / 2 - swiper.params.slidesOffsetBefore || 0;\n $wrapperEl.transform(`translateX(calc(50% - ${margin}px))`);\n }\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n const slideProgress = $slideEl[0].progress;\n const progress = Math.min(Math.max($slideEl[0].progress, -params.limitProgress), params.limitProgress);\n let originalProgress = progress;\n\n if (!isCenteredSlides) {\n originalProgress = Math.min(\n Math.max($slideEl[0].originalProgress, -params.limitProgress),\n params.limitProgress,\n );\n }\n\n const offset = $slideEl[0].swiperSlideOffset;\n const t = [swiper.params.cssMode ? -offset - swiper.translate : -offset, 0, 0];\n const r = [0, 0, 0];\n let custom = false;\n\n if (!swiper.isHorizontal()) {\n t[1] = t[0];\n t[0] = 0;\n }\n\n let data = {\n translate: [0, 0, 0],\n rotate: [0, 0, 0],\n scale: 1,\n opacity: 1,\n };\n\n if (progress < 0) {\n data = params.next;\n custom = true;\n } else if (progress > 0) {\n data = params.prev;\n custom = true;\n } // set translate\n\n t.forEach((value, index) => {\n t[index] = `calc(${value}px + (${getTranslateValue(data.translate[index])} * ${Math.abs(\n progress * multiplier,\n )}))`;\n }); // set rotates\n\n r.forEach((value, index) => {\n r[index] = data.rotate[index] * Math.abs(progress * multiplier);\n });\n $slideEl[0].style.zIndex = -Math.abs(Math.round(slideProgress)) + slides.length;\n const translateString = t.join(', ');\n const rotateString = `rotateX(${r[0]}deg) rotateY(${r[1]}deg) rotateZ(${r[2]}deg)`;\n const scaleString =\n originalProgress < 0\n ? `scale(${1 + (1 - data.scale) * originalProgress * multiplier})`\n : `scale(${1 - (1 - data.scale) * originalProgress * multiplier})`;\n const opacityString =\n originalProgress < 0\n ? 1 + (1 - data.opacity) * originalProgress * multiplier\n : 1 - (1 - data.opacity) * originalProgress * multiplier;\n const transform = `translate3d(${translateString}) ${rotateString} ${scaleString}`; // Set shadows\n\n if ((custom && data.shadow) || !custom) {\n let $shadowEl = $slideEl.children('.swiper-slide-shadow');\n\n if ($shadowEl.length === 0 && data.shadow) {\n $shadowEl = createShadow(params, $slideEl);\n }\n\n if ($shadowEl.length) {\n const shadowOpacity = params.shadowPerProgress ? progress * (1 / params.limitProgress) : progress;\n $shadowEl[0].style.opacity = Math.min(Math.max(Math.abs(shadowOpacity), 0), 1);\n }\n }\n\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl.transform(transform).css({\n opacity: opacityString,\n });\n\n if (data.origin) {\n $targetEl.css('transform-origin', data.origin);\n }\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.creativeEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements.transition(duration).find('.swiper-slide-shadow').transition(duration);\n effectVirtualTransitionEnd({\n swiper,\n duration,\n transformEl,\n allSlides: true,\n });\n };\n\n effectInit({\n effect: 'creative',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => swiper.params.creativeEffect.perspective,\n overwriteParams: () => ({\n watchSlidesProgress: true,\n virtualTranslate: !swiper.params.cssMode,\n }),\n });\n }\n\n function EffectCards({swiper, extendParams, on}) {\n extendParams({\n cardsEffect: {\n slideShadows: true,\n transformEl: null,\n },\n });\n\n const setTranslate = () => {\n const {slides, activeIndex} = swiper;\n const params = swiper.params.cardsEffect;\n const {startTranslate, isTouched} = swiper.touchEventsData;\n const currentTranslate = swiper.translate;\n\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n const slideProgress = $slideEl[0].progress;\n const progress = Math.min(Math.max(slideProgress, -4), 4);\n let offset = $slideEl[0].swiperSlideOffset;\n\n if (swiper.params.centeredSlides && !swiper.params.cssMode) {\n swiper.$wrapperEl.transform(`translateX(${swiper.minTranslate()}px)`);\n }\n\n if (swiper.params.centeredSlides && swiper.params.cssMode) {\n offset -= slides[0].swiperSlideOffset;\n }\n\n let tX = swiper.params.cssMode ? -offset - swiper.translate : -offset;\n let tY = 0;\n const tZ = -100 * Math.abs(progress);\n let scale = 1;\n let rotate = -2 * progress;\n let tXAdd = 8 - Math.abs(progress) * 0.75;\n const isSwipeToNext =\n (i === activeIndex || i === activeIndex - 1) &&\n progress > 0 &&\n progress < 1 &&\n (isTouched || swiper.params.cssMode) &&\n currentTranslate < startTranslate;\n const isSwipeToPrev =\n (i === activeIndex || i === activeIndex + 1) &&\n progress < 0 &&\n progress > -1 &&\n (isTouched || swiper.params.cssMode) &&\n currentTranslate > startTranslate;\n\n if (isSwipeToNext || isSwipeToPrev) {\n const subProgress = (1 - Math.abs((Math.abs(progress) - 0.5) / 0.5)) ** 0.5;\n rotate += -28 * progress * subProgress;\n scale += -0.5 * subProgress;\n tXAdd += 96 * subProgress;\n tY = `${-25 * subProgress * Math.abs(progress)}%`;\n }\n\n if (progress < 0) {\n // next\n tX = `calc(${tX}px + (${tXAdd * Math.abs(progress)}%))`;\n } else if (progress > 0) {\n // prev\n tX = `calc(${tX}px + (-${tXAdd * Math.abs(progress)}%))`;\n } else {\n tX = `${tX}px`;\n }\n\n if (!swiper.isHorizontal()) {\n const prevY = tY;\n tY = tX;\n tX = prevY;\n }\n\n const scaleString = progress < 0 ? `${1 + (1 - scale) * progress}` : `${1 - (1 - scale) * progress}`;\n const transform = `\n translate3d(${tX}, ${tY}, ${tZ}px)\n rotateZ(${rotate}deg)\n scale(${scaleString})\n `;\n\n if (params.slideShadows) {\n // Set shadows\n let $shadowEl = $slideEl.find('.swiper-slide-shadow');\n\n if ($shadowEl.length === 0) {\n $shadowEl = createShadow(params, $slideEl);\n }\n\n if ($shadowEl.length)\n $shadowEl[0].style.opacity = Math.min(Math.max((Math.abs(progress) - 0.5) / 0.5, 0), 1);\n }\n\n $slideEl[0].style.zIndex = -Math.abs(Math.round(slideProgress)) + slides.length;\n const $targetEl = effectTarget(params, $slideEl);\n $targetEl.transform(transform);\n }\n };\n\n const setTransition = (duration) => {\n const {transformEl} = swiper.params.cardsEffect;\n const $transitionElements = transformEl ? swiper.slides.find(transformEl) : swiper.slides;\n $transitionElements.transition(duration).find('.swiper-slide-shadow').transition(duration);\n effectVirtualTransitionEnd({\n swiper,\n duration,\n transformEl,\n });\n };\n\n effectInit({\n effect: 'cards',\n swiper,\n on,\n setTranslate,\n setTransition,\n perspective: () => true,\n overwriteParams: () => ({\n watchSlidesProgress: true,\n virtualTranslate: !swiper.params.cssMode,\n }),\n });\n }\n\n // Swiper Class\n const modules = [\n Virtual,\n Keyboard,\n Mousewheel,\n Navigation,\n Pagination,\n Scrollbar,\n Parallax,\n Zoom,\n Lazy,\n Controller,\n A11y,\n History,\n HashNavigation,\n Autoplay,\n Thumb,\n freeMode,\n Grid,\n Manipulation,\n EffectFade,\n EffectCube,\n EffectFlip,\n EffectCoverflow,\n EffectCreative,\n EffectCards,\n ];\n Swiper.use(modules);\n\n global.Swiper = Swiper;\n\n return Swiper;\n });\n //# sourceMappingURL=swiper-bundle.js.map\n};\n\nexport default swiper();\n"]} \ No newline at end of file diff --git a/source/fonts/AlumniSans-ExtraBold.woff b/source/fonts/AlumniSans-ExtraBold.woff new file mode 100644 index 0000000000000000000000000000000000000000..1d483428acedb770469124a16ff2c0be84f95a0d GIT binary patch literal 49584 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 literal 0 HcmV?d00001 diff --git a/source/fonts/AlumniSans-ExtraBold.woff2 b/source/fonts/AlumniSans-ExtraBold.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..493cd8ba01e14161fa7d0d73610b9d895f5a5543 GIT binary patch literal 35420 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

    i>q98*;|jmL;Bq2N4O2m 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 literal 0 HcmV?d00001 diff --git a/source/index.html b/source/index.html index e2700c5c2..9fb3b383c 100644 --- a/source/index.html +++ b/source/index.html @@ -1092,24 +1092,70 @@

    Анна Орлова

    -
    -

    Бесплатное занятие

    -
    -
    -
    -

    - - -

    +
    +
    +

    Бесплатное занятие

    -
    -

    - - -

    +
    + +
    +
    + +
    + +
    +
    +
    + +
    + +
    +
    +
    + +
    - - +
    +
    +
    +

    Контакты

    +
    +
    +
    +
    +

    Адрес:

    +
    +
    +

    г. Омск, ул. 60 лет Октября, 7

    +
    +
    +
    +
    +

    Телефон:

    +
    + 8-800-555-55-55 +
    +
    +
    +

    График работы:

    +
    +
    +

    Пн-Вс: с 8:00 до 22:00

    +
    +
    +
    +
    +

    Email:

    +
    + omsk@supergym.ru +
    +
    +
    diff --git a/source/js/main.js b/source/js/main.js index 4c6f57a90..11997e333 100644 --- a/source/js/main.js +++ b/source/js/main.js @@ -7,7 +7,7 @@ import {initAccordions} from './modules/accordions/init-accordion'; // --------------------------------- -const trainerSwiper = new Swiper('.trainer__swiper', { +export const trainerSwiper = new Swiper('.trainer__swiper', { direction: 'horizontal', loop: true, @@ -45,7 +45,7 @@ const trainerSwiper = new Swiper('.trainer__swiper', { }); -const reviewsSwiper = new Swiper('.reviews__swiper', { +export const reviewsSwiper = new Swiper('.reviews__swiper', { direction: 'horizontal', // loop: true, @@ -103,8 +103,18 @@ window.addEventListener('DOMContentLoaded', () => { initAccordions(); }); initTabs(); - trainerSwiper(); - reviewsSwiper(); +}); + +const inputName = document.querySelector('#data-name'); +const labelName = document.querySelector('label[for="data-name"]'); +inputName.addEventListener('focus', () => { + labelName.style.visibility = 'hidden'; +}); + +const inputPhone = document.querySelector('#data-phone'); +const labelPhone = document.querySelector('label[for="data-phone"]'); +inputPhone.addEventListener('focus', () => { + labelPhone.style.visibility = 'hidden'; }); diff --git a/source/sass/blocks/appointment.scss b/source/sass/blocks/appointment.scss new file mode 100644 index 000000000..b7cce0e9f --- /dev/null +++ b/source/sass/blocks/appointment.scss @@ -0,0 +1,9 @@ +.appointment{ + margin: 0 auto; + max-width: 1366px; +} + +.appointment__wrapper{ + display: grid; + grid-template-columns: 1fr 1fr; +} diff --git a/source/sass/blocks/contacts.scss b/source/sass/blocks/contacts.scss new file mode 100644 index 000000000..a709cff45 --- /dev/null +++ b/source/sass/blocks/contacts.scss @@ -0,0 +1,45 @@ +.contacts{ + padding-top: 55px; + padding-right: 159px; + padding-bottom: 60px; + padding-left: 123px; + border-top: 1px solid $color-grey; +} + +.contacts__title{ + font-family: $ff-Alumnisans; + font-size: 36px; + font-weight: 600; + line-height: normal; + letter-spacing: 1.62px; + color: $color-primary; + padding-bottom:36px; +} + +.contacts__address{ + display: grid; + grid-template-columns: 1fr 1fr; +column-gap: 46px; +row-gap: 14px; +} + +.contacts__subtitle{ + font-family: $ff-placeholder; + font-size: 14px; + font-weight: 700; + line-height: 1.5; + color: $color-primary; + font-style: normal; + padding-bottom: 3px; +} + +.contacts__text{ + font-family: $ff-placeholder; + font-size: 13px; + font-weight: 400; + line-height: 1.52; + color: $color-primary; + font-style: normal; + letter-spacing: -0.2px; +} + diff --git a/source/sass/blocks/custom-input.scss b/source/sass/blocks/custom-input.scss index 4d7f1aedf..73c36a475 100644 --- a/source/sass/blocks/custom-input.scss +++ b/source/sass/blocks/custom-input.scss @@ -1,65 +1,65 @@ .custom-input, .custom-textarea { - position: relative; - - display: flex; - width: 530px; - padding: 14px 0 28px; - - @media screen and (max-width: 767px) { - padding: 4px 0 48px; - width: 100%; - } - - label { - display: flex; - align-items: center; - width: 100%; - - @media screen and (max-width: 767px) { - align-items: flex-start; - flex-direction: column; - } - - input, - textarea { - flex-grow: 1; - max-width: 300px; - min-height: 48px; - margin-left: auto; - padding: 10px; - - border: 2px solid rgba(#000000, 0.2); - border-radius: 5px; - outline: none; - - transition: border 0.3s ease; - - @media screen and (max-width: 767px) { - max-width: unset; - width: 100%; - } - - &:hover { - border: 2px solid rgba(#000000, 0.5); - } - - &:focus { - border: 2px solid rgba(#000000, 0.8); - } - } - } - - &__label { - @media screen and (max-width: 767px) { - margin: 0 0 18px 0; - } - } + // position: relative; + + // display: flex; + // width: 530px; + // padding: 14px 0 28px; + + // @media screen and (max-width: 767px) { + // padding: 4px 0 48px; + // width: 100%; + // } + + // label { + // display: flex; + // align-items: center; + // width: 100%; + + // @media screen and (max-width: 767px) { + // align-items: flex-start; + // flex-direction: column; + // } + + // input, + // textarea { + // flex-grow: 1; + // max-width: 300px; + // min-height: 48px; + // margin-left: auto; + // padding: 10px; + + // border: 2px solid rgba(#000000, 0.2); + // border-radius: 5px; + // outline: none; + + // transition: border 0.3s ease; + + // @media screen and (max-width: 767px) { + // max-width: unset; + // width: 100%; + // } + + // &:hover { + // border: 2px solid rgba(#000000, 0.5); + // } + + // &:focus { + // border: 2px solid rgba(#000000, 0.8); + // } + // } + // } + + // &__label { + // @media screen and (max-width: 767px) { + // margin: 0 0 18px 0; + // } + // } &__error { position: absolute; right: 0; - bottom: 35px; + // bottom: 35px; color: #ff1553; @@ -75,25 +75,26 @@ &.is-invalid { input, textarea { - border: 2px solid #ff1553; + border-bottom: 2px solid #ff1553; &:focus, &:hover { - border: 2px solid rgba(#ff1553, 0.5); + border: 2px solid $color-transparent; + border-bottom: 2px solid rgba(#ff1553, 0.5); } } } - &.is-valid { - input { - border: 2px solid #22b259; + // &.is-valid { + // input { + // border: 2px solid #22b259; - &:focus, - &:hover { - border: 2px solid rgba(#22b259, 0.5); - } - } - } + // &:focus, + // &:hover { + // border: 2px solid rgba(#22b259, 0.5); + // } + // } + // } .input-message { position: absolute; @@ -104,8 +105,8 @@ color: #ff0000; } - &.is-valid { - color: #15ab07; - } + // &.is-valid { + // color: #15ab07; + // } } } diff --git a/source/sass/blocks/form.scss b/source/sass/blocks/form.scss new file mode 100644 index 000000000..b7cb353a8 --- /dev/null +++ b/source/sass/blocks/form.scss @@ -0,0 +1,59 @@ +.form__wrapper-data{ + display: grid; + grid-template-columns: 1fr 1fr; + gap: 16px; +} + +.form__input{ + padding-right: 10px; + padding-left: 10px; + width: 192px; + height: 36px; + background-color: $color-primary; + border: 1px solid $color-transparent; + border-bottom: 1px solid $color-default-white; + color: $color-default-white; + + &:hover{ + border-bottom: 2px solid $color-default-white; + } + + &:active, + &:focus{ + outline: 2px solid $color-default-white; + border: none; + color: $color-default-white; + } + + &:disabled{ + opacity: 0.3; + } +} + +.form__label{ + position: absolute; + padding-top: 11px; + font-family: $ff-placeholder; + font-size: 14px; + font-weight: 400; + line-height: 1.57; + color: $color-default-white; + letter-spacing: -1.4px; +} + +.form__button{ + margin-top: 28px; + width: 410px; + padding-top: 13px; + padding-bottom: 13px; + font-family: $ff-placeholder; + font-size: 14px; + font-weight: 700; + line-height: 1.57; + color: $color-default-white; + letter-spacing: 0.7px; + text-transform: uppercase; +} + + + diff --git a/source/sass/blocks/free-classe.scss b/source/sass/blocks/free-classe.scss new file mode 100644 index 000000000..e3a90ec6d --- /dev/null +++ b/source/sass/blocks/free-classe.scss @@ -0,0 +1,17 @@ +.free-classe{ + padding-top: 54px; + padding-right: 156px; + padding-bottom: 70px; + padding-left: 103px; + background-color: $color-primary; +} + +.free-classe__title{ + font-family: $ff-Alumnisans; + font-size: 36px; + font-weight: 800; + line-height: 1.56; + letter-spacing: 2.32px; + color: $color-default-white; + padding-bottom: 11px; +} diff --git a/source/sass/blocks/reviews.scss b/source/sass/blocks/reviews.scss index aa74a5da7..e1d24f5f2 100644 --- a/source/sass/blocks/reviews.scss +++ b/source/sass/blocks/reviews.scss @@ -6,7 +6,7 @@ .reviews__wrapper{ padding-top: 116px; padding-left: 103px; - padding-bottom: 120px; + padding-bottom: 122px; padding-right: 103px; } diff --git a/source/sass/global/fonts.scss b/source/sass/global/fonts.scss index 4fe792046..b8260bb29 100644 --- a/source/sass/global/fonts.scss +++ b/source/sass/global/fonts.scss @@ -1,19 +1,19 @@ @font-face { font-style: normal; - font-weight: 400; + font-weight: 300; font-family: "Roboto Condensed"; font-display: swap; - src: url("../fonts/RobotoCondensed.woff2") format("woff2"); + src: url("../fonts/RobotoCondensed-Light.woff2") format("woff2"); } @font-face { font-style: normal; - font-weight: 300; + font-weight: 400; font-family: "Roboto Condensed"; font-display: swap; - src: url("../fonts/RobotoCondensed-Light.woff2") format("woff2"); + src: url("../fonts/RobotoCondensed.woff2") format("woff2"); } @font-face { @@ -25,7 +25,6 @@ src: url("../fonts/RobotoCondensed-Bold.woff2") format("woff2"); } - @font-face { font-style: normal; font-weight: 600; @@ -34,3 +33,5 @@ font-display: swap; src: url("../fonts/AlumniSans-SemiBold.woff2") format("woff2"); } + + diff --git a/source/sass/style.scss b/source/sass/style.scss index 151b3a138..1028ba063 100644 --- a/source/sass/style.scss +++ b/source/sass/style.scss @@ -41,6 +41,10 @@ @import "blocks/accordion.scss"; @import "blocks/faq.scss"; @import "blocks/reviews.scss"; +@import "blocks/appointment.scss"; +@import "blocks/free-classe.scss"; +@import "blocks/form.scss"; +@import "blocks/contacts.scss"; // --------------------------------- diff --git a/source/sass/variables.scss b/source/sass/variables.scss index 01fff1681..ba9d326f7 100644 --- a/source/sass/variables.scss +++ b/source/sass/variables.scss @@ -25,6 +25,7 @@ $color-blue-for-text: #0041ca; $color-background-blue: #1c3374; $color-line-red: #d10a42; $color-shadow: rgba(28, 51, 116, 0.20); +$color-grey: #74819c; // Gradient