1/*! 2 * ScrollTrigger 3.14.2 3 * https://gsap.com 4 * 5 * @license Copyright 2025, GreenSock. All rights reserved. 6 * Subject to the terms at https://gsap.com/standard-license. 7 * @author: Jack Doyle, [email protected] 8 */ 9 10!(function (e, t) { 11 "object" == typeof exports && "undefined" != typeof module 12 ? t(exports) 13 : "function" == typeof define && define.amd 14 ? define(["exports"], t) 15 : t(((e = e || self).window = e.window || {})); 16})(this, function (e) { 17 "use strict"; 18 function _defineProperties(e, t) { 19 for (var r = 0; r < t.length; r++) { 20 var n = t[r]; 21 (n.enumerable = n.enumerable || !1), 22 (n.configurable = !0), 23 "value" in n && (n.writable = !0), 24 Object.defineProperty(e, n.key, n); 25 } 26 } 27 function r() { 28 return ( 29 Se || 30 ("undefined" != typeof window && 31 (Se = window.gsap) && 32 Se.registerPlugin && 33 Se) 34 ); 35 } 36 function z(e, t) { 37 return ~Le.indexOf(e) && Le[Le.indexOf(e) + 1][t]; 38 } 39 function A(e) { 40 return !!~t.indexOf(e); 41 } 42 function B(e, t, r, n, i) { 43 return e.addEventListener(t, r, { passive: !1 !== n, capture: !!i }); 44 } 45 function C(e, t, r, n) { 46 return e.removeEventListener(t, r, !!n); 47 } 48 function F() { 49 return (Re && Re.isPressed) || ze.cache++; 50 } 51 function G(r, n) { 52 function fd(e) { 53 if (e || 0 === e) { 54 i && (Ce.history.scrollRestoration = "manual"); 55 var t = Re && Re.isPressed; 56 (e = fd.v = Math.round(e) || (Re && Re.iOS ? 1 : 0)), 57 r(e), 58 (fd.cacheID = ze.cache), 59 t && o("ss", e); 60 } else (n || ze.cache !== fd.cacheID || o("ref")) && ((fd.cacheID = ze.cache), (fd.v = r())); 61 return fd.v + fd.offset; 62 } 63 return (fd.offset = 0), r && fd; 64 } 65 function J(e, t) { 66 return ( 67 ((t && t._ctx && t._ctx.selector) || Se.utils.toArray)(e)[0] || 68 ("string" == typeof e && !1 !== Se.config().nullTargetWarn 69 ? console.warn("Element not found:", e) 70 : null) 71 ); 72 } 73 function L(t, e) { 74 var r = e.s, 75 n = e.sc; 76 A(t) && (t = ke.scrollingElement || Me); 77 var i = ze.indexOf(t), 78 o = n === Xe.sc ? 1 : 2; 79 ~i || (i = ze.push(t) - 1), ze[i + o] || B(t, "scroll", F); 80 var a = ze[i + o], 81 s = 82 a || 83 (ze[i + o] = 84 G(z(t, r), !0) || 85 (A(t) 86 ? n 87 : G(function (e) { 88 return arguments.length ? (t[r] = e) : t[r]; 89 }))); 90 return ( 91 (s.target = t), 92 a || (s.smooth = "smooth" === Se.getProperty(t, "scrollBehavior")), 93 s 94 ); 95 } 96 function M(e, t, i) { 97 function Hd(e, t) { 98 var r = Ye(); 99 t || n < r - s 100 ? ((a = o), (o = e), (l = s), (s = r)) 101 : i 102 ? (o += e) 103 : (o = a + ((e - a) / (r - l)) * (s - l)); 104 } 105 var o = e, 106 a = e, 107 s = Ye(), 108 l = s, 109 n = t || 50, 110 c = Math.max(500, 3 * n); 111 return { 112 update: Hd, 113 reset: function reset() { 114 (a = o = i ? 0 : o), (l = s = 0); 115 }, 116 getVelocity: function getVelocity(e) { 117 var t = l, 118 r = a, 119 n = Ye(); 120 return ( 121 (!e && 0 !== e) || e === o || Hd(e), 122 s === l || c < n - l 123 ? 0 124 : ((o + (i ? r : -r)) / ((i ? n : s) - t)) * 1e3 125 ); 126 }, 127 }; 128 } 129 function N(e, t) { 130 return ( 131 t && !e._gsapAllow && e.preventDefault(), 132 e.changedTouches ? e.changedTouches[0] : e 133 ); 134 } 135 function O(e) { 136 var t = Math.max.apply(Math, e), 137 r = Math.min.apply(Math, e); 138 return Math.abs(t) >= Math.abs(r) ? t : r; 139 } 140 function P() { 141 (Ae = Se.core.globals().ScrollTrigger) && 142 Ae.core && 143 (function _integrate() { 144 var e = Ae.core, 145 r = e.bridge || {}, 146 t = e._scrollers, 147 n = e._proxies; 148 t.push.apply(t, ze), 149 n.push.apply(n, Le), 150 (ze = t), 151 (Le = n), 152 (o = function _bridge(e, t) { 153 return r[e](t); 154 }); 155 })(); 156 } 157 function Q(e) { 158 return ( 159 (Se = e || r()), 160 !Te && 161 Se && 162 "undefined" != typeof document && 163 document.body && 164 ((Ce = window), 165 (Me = (ke = document).documentElement), 166 (Ee = ke.body), 167 (t = [Ce, ke, Me, Ee]), 168 Se.utils.clamp, 169 (Ie = Se.core.context || function () {}), 170 (Oe = "onpointerenter" in Ee ? "pointer" : "mouse"), 171 (Pe = k.isTouch = 172 Ce.matchMedia && 173 Ce.matchMedia("(hover: none), (pointer: coarse)").matches 174 ? 1 175 : "ontouchstart" in Ce || 176 0 < navigator.maxTouchPoints || 177 0 < navigator.msMaxTouchPoints 178 ? 2 179 : 0), 180 (De = k.eventTypes = 181 ( 182 "ontouchstart" in Me 183 ? "touchstart,touchmove,touchcancel,touchend" 184 : "onpointerdown" in Me 185 ? "pointerdown,pointermove,pointercancel,pointerup" 186 : "mousedown,mousemove,mouseup,mouseup" 187 ).split(",")), 188 setTimeout(function () { 189 return (i = 0); 190 }, 500), 191 P(), 192 (Te = 1)), 193 Te 194 ); 195 } 196 var Se, 197 Te, 198 Ce, 199 ke, 200 Me, 201 Ee, 202 Pe, 203 Oe, 204 Ae, 205 t, 206 Re, 207 De, 208 Ie, 209 i = 1, 210 Be = [], 211 ze = [], 212 Le = [], 213 Ye = Date.now, 214 o = function _bridge(e, t) { 215 return t; 216 }, 217 n = "scrollLeft", 218 a = "scrollTop", 219 Ne = { 220 s: n, 221 p: "left", 222 p2: "Left", 223 os: "right", 224 os2: "Right", 225 d: "width", 226 d2: "Width", 227 a: "x", 228 sc: G(function (e) { 229 return arguments.length 230 ? Ce.scrollTo(e, Xe.sc()) 231 : Ce.pageXOffset || ke[n] || Me[n] || Ee[n] || 0; 232 }), 233 }, 234 Xe = { 235 s: a, 236 p: "top", 237 p2: "Top", 238 os: "bottom", 239 os2: "Bottom", 240 d: "height", 241 d2: "Height", 242 a: "y", 243 op: Ne, 244 sc: G(function (e) { 245 return arguments.length 246 ? Ce.scrollTo(Ne.sc(), e) 247 : Ce.pageYOffset || ke[a] || Me[a] || Ee[a] || 0; 248 }), 249 }; 250 (Ne.op = Xe), (ze.cache = 0); 251 var k = 252 ((Observer.prototype.init = function init(e) { 253 Te || Q(Se) || console.warn("Please gsap.registerPlugin(Observer)"), 254 Ae || P(); 255 var i = e.tolerance, 256 a = e.dragMinimum, 257 t = e.type, 258 o = e.target, 259 r = e.lineHeight, 260 n = e.debounce, 261 s = e.preventDefault, 262 l = e.onStop, 263 c = e.onStopDelay, 264 u = e.ignore, 265 f = e.wheelSpeed, 266 d = e.event, 267 p = e.onDragStart, 268 g = e.onDragEnd, 269 h = e.onDrag, 270 v = e.onPress, 271 b = e.onRelease, 272 m = e.onRight, 273 y = e.onLeft, 274 x = e.onUp, 275 _ = e.onDown, 276 w = e.onChangeX, 277 S = e.onChangeY, 278 T = e.onChange, 279 k = e.onToggleX, 280 E = e.onToggleY, 281 R = e.onHover, 282 D = e.onHoverEnd, 283 I = e.onMove, 284 z = e.ignoreCheck, 285 Y = e.isNormalizer, 286 X = e.onGestureStart, 287 q = e.onGestureEnd, 288 U = e.onWheel, 289 H = e.onEnable, 290 W = e.onDisable, 291 V = e.onClick, 292 G = e.scrollSpeed, 293 K = e.capture, 294 j = e.allowClicks, 295 $ = e.lockAxis, 296 Z = e.onLockAxis; 297 function hf() { 298 return (xe = Ye()); 299 } 300 function jf(e, t) { 301 return ( 302 ((se.event = e) && 303 u && 304 (function _isWithin(e, t) { 305 for (var r = t.length; r--; ) 306 if (t[r] === e || t[r].contains(e)) return !0; 307 return !1; 308 })(e.target, u)) || 309 (t && he && "touch" !== e.pointerType) || 310 (z && z(e, t)) 311 ); 312 } 313 function lf() { 314 var e = (se.deltaX = O(me)), 315 t = (se.deltaY = O(ye)), 316 r = Math.abs(e) >= i, 317 n = Math.abs(t) >= i; 318 T && (r || n) && T(se, e, t, me, ye), 319 r && 320 (m && 0 < se.deltaX && m(se), 321 y && se.deltaX < 0 && y(se), 322 w && w(se), 323 k && se.deltaX < 0 != le < 0 && k(se), 324 (le = se.deltaX), 325 (me[0] = me[1] = me[2] = 0)), 326 n && 327 (_ && 0 < se.deltaY && _(se), 328 x && se.deltaY < 0 && x(se), 329 S && S(se), 330 E && se.deltaY < 0 != ce < 0 && E(se), 331 (ce = se.deltaY), 332 (ye[0] = ye[1] = ye[2] = 0)), 333 (ne || re) && 334 (I && I(se), 335 re && (p && 1 === re && p(se), h && h(se), (re = 0)), 336 (ne = !1)), 337 oe && !(oe = !1) && Z && Z(se), 338 ie && (U(se), (ie = !1)), 339 (ee = 0); 340 } 341 function mf(e, t, r) { 342 (me[r] += e), 343 (ye[r] += t), 344 se._vx.update(e), 345 se._vy.update(t), 346 n ? (ee = ee || requestAnimationFrame(lf)) : lf(); 347 } 348 function nf(e, t) { 349 $ && 350 !ae && 351 ((se.axis = ae = Math.abs(e) > Math.abs(t) ? "x" : "y"), (oe = !0)), 352 "y" !== ae && ((me[2] += e), se._vx.update(e, !0)), 353 "x" !== ae && ((ye[2] += t), se._vy.update(t, !0)), 354 n ? (ee = ee || requestAnimationFrame(lf)) : lf(); 355 } 356 function of(e) { 357 if (!jf(e, 1)) { 358 var t = (e = N(e, s)).clientX, 359 r = e.clientY, 360 n = t - se.x, 361 i = r - se.y, 362 o = se.isDragging; 363 (se.x = t), 364 (se.y = r), 365 (o || 366 ((n || i) && 367 (Math.abs(se.startX - t) >= a || 368 Math.abs(se.startY - r) >= a))) && 369 ((re = re || (o ? 2 : 1)), o || (se.isDragging = !0), nf(n, i)); 370 } 371 } 372 function rf(e) { 373 return ( 374 e.touches && 375 1 < e.touches.length && 376 (se.isGesturing = !0) && 377 X(e, se.isDragging) 378 ); 379 } 380 function sf() { 381 return (se.isGesturing = !1) || q(se); 382 } 383 function tf(e) { 384 if (!jf(e)) { 385 var t = fe(), 386 r = de(); 387 mf((t - pe) * G, (r - ge) * G, 1), 388 (pe = t), 389 (ge = r), 390 l && te.restart(!0); 391 } 392 } 393 function uf(e) { 394 if (!jf(e)) { 395 (e = N(e, s)), U && (ie = !0); 396 var t = 397 (1 === e.deltaMode ? r : 2 === e.deltaMode ? Ce.innerHe
397ight : 1) * 398 f; 399 mf(e.deltaX * t, e.deltaY * t, 0), l && !Y && te.restart(!0); 400 } 401 } 402 function vf(e) { 403 if (!jf(e)) { 404 var t = e.clientX, 405 r = e.clientY, 406 n = t - se.x, 407 i = r - se.y; 408 (se.x = t), 409 (se.y = r), 410 (ne = !0), 411 l && te.restart(!0), 412 (n || i) && nf(n, i); 413 } 414 } 415 function wf(e) { 416 (se.event = e), R(se); 417 } 418 function xf(e) { 419 (se.event = e), D(se); 420 } 421 function yf(e) { 422 return jf(e) || (N(e, s) && V(se)); 423 } 424 (this.target = o = J(o) || Me), 425 (this.vars = e), 426 (u = u && Se.utils.toArray(u)), 427 (i = i || 1e-9), 428 (a = a || 0), 429 (f = f || 1), 430 (G = G || 1), 431 (t = t || "wheel,touch,pointer"), 432 (n = !1 !== n), 433 (r = r || parseFloat(Ce.getComputedStyle(Ee).lineHeight) || 22); 434 var ee, 435 te, 436 re, 437 ne, 438 ie, 439 oe, 440 ae, 441 se = this, 442 le = 0, 443 ce = 0, 444 ue = e.passive || (!s && !1 !== e.passive), 445 fe = L(o, Ne), 446 de = L(o, Xe), 447 pe = fe(), 448 ge = de(), 449 he = 450 ~t.indexOf("touch") && 451 !~t.indexOf("pointer") && 452 "pointerdown" === De[0], 453 ve = A(o), 454 be = o.ownerDocument || ke, 455 me = [0, 0, 0], 456 ye = [0, 0, 0], 457 xe = 0, 458 _e = (se.onPress = function (e) { 459 jf(e, 1) || 460 (e && e.button) || 461 ((se.axis = ae = null), 462 te.pause(), 463 (se.isPressed = !0), 464 (e = N(e)), 465 (le = ce = 0), 466 (se.startX = se.x = e.clientX), 467 (se.startY = se.y = e.clientY), 468 se._vx.reset(), 469 se._vy.reset(), 470 B(Y ? o : be, De[1], of, ue, !0), 471 (se.deltaX = se.deltaY = 0), 472 v && v(se)); 473 }), 474 we = (se.onRelease = function (t) { 475 if (!jf(t, 1)) { 476 C(Y ? o : be, De[1], of, !0); 477 var e = !isNaN(se.y - se.startY), 478 r = se.isDragging, 479 n = 480 r && 481 (3 < Math.abs(se.x - se.startX) || 482 3 < Math.abs(se.y - se.startY)), 483 i = N(t); 484 !n && 485 e && 486 (se._vx.reset(), 487 se._vy.reset(), 488 s && 489 j && 490 Se.delayedCall(0.08, function () { 491 if (300 < Ye() - xe && !t.defaultPrevented) 492 if (t.target.click) t.target.click(); 493 else if (be.createEvent) { 494 var e = be.createEvent("MouseEvents"); 495 e.initMouseEvent( 496 "click", 497 !0, 498 !0, 499 Ce, 500 1, 501 i.screenX, 502 i.screenY, 503 i.clientX, 504 i.clientY, 505 !1, 506 !1, 507 !1, 508 !1, 509 0, 510 null 511 ), 512 t.target.dispatchEvent(e); 513 } 514 })), 515 (se.isDragging = se.isGesturing = se.isPressed = !1), 516 l && r && !Y && te.restart(!0), 517 re && lf(), 518 g && r && g(se), 519 b && b(se, n); 520 } 521 }); 522 (te = se._dc = 523 Se.delayedCall(c || 0.25, function onStopFunc() { 524 se._vx.reset(), se._vy.reset(), te.pause(), l && l(se); 525 }).pause()), 526 (se.deltaX = se.deltaY = 0), 527 (se._vx = M(0, 50, !0)), 528 (se._vy = M(0, 50, !0)), 529 (se.scrollX = fe), 530 (se.scrollY = de), 531 (se.isDragging = se.isGesturing = se.isPressed = !1), 532 Ie(this), 533 (se.enable = function (e) { 534 return ( 535 se.isEnabled || 536 (B(ve ? be : o, "scroll", F), 537 0 <= t.indexOf("scroll") && B(ve ? be : o, "scroll", tf, ue, K), 538 0 <= t.indexOf("wheel") && B(o, "wheel", uf, ue, K), 539 ((0 <= t.indexOf("touch") && Pe) || 0 <= t.indexOf("pointer")) && 540 (B(o, De[0], _e, ue, K), 541 B(be, De[2], we), 542 B(be, De[3], we), 543 j && B(o, "click", hf, !0, !0), 544 V && B(o, "click", yf), 545 X && B(be, "gesturestart", rf), 546 q && B(be, "gestureend", sf), 547 R && B(o, Oe + "enter", wf), 548 D && B(o, Oe + "leave", xf),
549 I && B(o, Oe + "move", vf)), 550 (se.isEnabled = !0), 551 (se.isDragging = se.isGesturing = se.isPressed = ne = re = !1), 552 se._vx.reset(), 553 se._vy.reset(), 554 (pe = fe()), 555 (ge = de()), 556 e && e.type && _e(e), 557 H && H(se)), 558 se 559 ); 560 }), 561 (se.disable = function () { 562 se.isEnabled && 563 (Be.filter(function (e) { 564 return e !== se && A(e.target); 565 }).length || C(ve ? be : o, "scroll", F), 566 se.isPressed && 567 (se._vx.reset(), se._vy.reset(), C(Y ? o : be, De[1], of, !0)), 568 C(ve ? be : o, "scroll", tf, K), 569 C(o, "wheel", uf, K), 570 C(o, De[0], _e, K), 571 C(be, De[2], we), 572 C(be, De[3], we), 573 C(o, "click", hf, !0), 574 C(o, "click", yf), 575 C(be, "gesturestart", rf), 576 C(be, "gestureend", sf), 577 C(o, Oe + "enter", wf), 578 C(o, Oe + "leave", xf), 579 C(o, Oe + "move", vf), 580 (se.isEnabled = se.isPressed = se.isDragging = !1), 581 W && W(se)); 582 }), 583 (se.kill = se.revert = 584 function () { 585 se.disable(); 586 var e = Be.indexOf(se); 587 0 <= e && Be.splice(e, 1), Re === se && (Re = 0); 588 }), 589 Be.push(se), 590 Y && A(o) && (Re = se), 591 se.enable(d); 592 }), 593 (function _createClass(e, t, r) { 594 return ( 595 t && _defineProperties(e.prototype, t), r && _defineProperties(e, r), e 596 ); 597 })(Observer, [ 598 { 599 key: "velocityX", 600 get: function get() { 601 return this._vx.getVelocity(); 602 }, 603 }, 604 { 605 key: "velocityY", 606 get: function get() { 607 return this._vy.getVelocity(); 608 }, 609 }, 610 ]), 611 Observer); 612 function Observer(e) { 613 this.init(e); 614 } 615 (k.version = "3.14.2"), 616 (k.create = function (e) { 617 return new k(e); 618 }), 619 (k.register = Q), 620 (k.getAll = function () { 621 return Be.slice(); 622 }), 623 (k.getById = function (t) { 624 return Be.filter(function (e) { 625 return e.vars.id === t; 626 })[0]; 627 }), 628 r() && Se.registerPlugin(k); 629 function Da(e, t, r) { 630 var n = ct(e) && ("clamp(" === e.substr(0, 6) || -1 < e.indexOf("max")); 631 return (r["_" + t + "Clamp"] = n) ? e.substr(6, e.length - 7) : e; 632 } 633 function Ea(e, t) { 634 return !t || (ct(e) && "clamp(" === e.substr(0, 6)) 635 ? e 636 : "clamp(" + e + ")"; 637 } 638 function Ga() { 639 return (je = 1); 640 } 641 function Ha() { 642 return (je = 0); 643 } 644 function Ia(e) { 645 return e; 646 } 647 function Ja(e) { 648 return Math.round(1e5 * e) / 1e5 || 0; 649 } 650 function Ka() { 651 return "undefined" != typeof window; 652 } 653 function La() { 654 return qe || (Ka() && (qe = window.gsap) && qe.registerPlugin && qe); 655 } 656 function Ma(e) { 657 return !!~l.indexOf(e); 658 } 659 function Na(e) { 660 return ( 661 ("Height" === e ? S : Fe["inner" + e]) || 662 He["client" + e] || 663 We["client" + e] 664 ); 665 } 666 function Oa(e) { 667 return ( 668 z(e, "getBoundingClientRect") || 669 (Ma(e) 670 ? function () { 671 return (Ot.width = Fe.innerWidth), (Ot.height = S), Ot; 672 } 673 : function () { 674 return _t(e); 675 }) 676 ); 677 } 678 function Ra(e, t) { 679 var r = t.s, 680 n = t.d2, 681 i = t.d, 682 o = t.a; 683 return Math.max( 684 0, 685 (r = "scroll" + n) && (o = z(e, r)) 686 ? o() - Oa(e)()[i] 687 : Ma(e) 688 ? (He[r] || We[r]) - Na(n) 689 : e[r] - e["offset" + n] 690 ); 691 } 692 function Sa(e, t) { 693 for (var r = 0; r < g.length; r += 3) 694 (t && !~t.indexOf(g[r + 1])) || e(g[r], g[r + 1], g[r + 2]); 695 } 696 function Ua(e) { 697 return "function" == typeof e; 698 } 699 function Va(e) { 700 return "number" == typeof e; 701 } 702 function Wa(e) { 703 return "object" == typeof e; 704 } 705 function Xa(e, t, r) { 706 return e && e.progress(t ? 0 : 1) && r && e.pause(); 707 } 708 function Ya(e, t) { 709 if (e.enabled) { 710 var r = e._ctx 711 ? e._ctx.add(function () { 712 return t(e); 713 }) 714 : t(e);
715 r && r.totalTime && (e.callbackAnimation = r); 716 } 717 } 718 function nb(e) { 719 return Fe.getComputedStyle(e); 720 } 721 function pb(e, t) { 722 for (var r in t) r in e || (e[r] = t[r]); 723 return e; 724 } 725 function rb(e, t) { 726 var r = t.d2; 727 return e["offset" + r] || e["client" + r] || 0; 728 } 729 function sb(e) { 730 var t, 731 r = [], 732 n = e.labels, 733 i = e.duration(); 734 for (t in n) r.push(n[t] / i); 735 return r; 736 } 737 function ub(i) { 738 var o = qe.utils.snap(i), 739 a = 740 Array.isArray(i) && 741 i.slice(0).sort(function (e, t) { 742 return e - t; 743 }); 744 return a 745 ? function (e, t, r) { 746 var n; 747 if ((void 0 === r && (r = 0.001), !t)) return o(e); 748 if (0 < t) { 749 for (e -= r, n = 0; n < a.length; n++) if (a[n] >= e) return a[n]; 750 return a[n - 1]; 751 } 752 for (n = a.length, e += r; n--; ) if (a[n] <= e) return a[n]; 753 return a[0]; 754 } 755 : function (e, t, r) { 756 void 0 === r && (r = 0.001); 757 var n = o(e); 758 return !t || Math.abs(n - e) < r || n - e < 0 == t < 0 759 ? n 760 : o(t < 0 ? e - i : e + i); 761 }; 762 } 763 function wb(t, r, e, n) { 764 return e.split(",").forEach(function (e) { 765 return t(r, e, n); 766 }); 767 } 768 function xb(e, t, r, n, i) { 769 return e.addEventListener(t, r, { passive: !n, capture: !!i }); 770 } 771 function yb(e, t, r, n) { 772 return e.removeEventListener(t, r, !!n); 773 } 774 function zb(e, t, r) { 775 (r = r && r.wheelHandler) && (e(t, "wheel", r), e(t, "touchmove", r)); 776 } 777 function Db(e, t) { 778 if (ct(e)) { 779 var r = e.indexOf("="), 780 n = ~r ? (e.charAt(r - 1) + 1) * parseFloat(e.substr(r + 1)) : 0; 781 ~r && (e.indexOf("%") > r && (n *= t / 100), (e = e.substr(0, r - 1))), 782 (e = 783 n + 784 (e in q 785 ? q[e] * t 786 : ~e.indexOf("%") 787 ? (parseFloat(e) * t) / 100 788 : parseFloat(e) || 0)); 789 } 790 return e; 791 } 792 function Eb(e, t, r, n, i, o, a, s) { 793 var l = i.startColor, 794 c = i.endColor, 795 u = i.fontSize, 796 f = i.indent, 797 d = i.fontWeight, 798 p = Ue.createElement("div"), 799 g = Ma(r) || "fixed" === z(r, "pinType"), 800 h = -1 !== e.indexOf("scroller"), 801 v = g ? We : r, 802 b = -1 !== e.indexOf("start"), 803 m = b ? l : c, 804 y = 805 "border-color:" + 806 m + 807 ";font-size:" + 808 u + 809 ";color:" + 810 m + 811 ";font-weight:" + 812 d + 813 ";pointer-events:none;white-space:nowrap;font-family:sans-serif,Arial;z-index:1000;padding:4px 8px;border-width:0;border-style:solid;"; 814 return ( 815 (y += "position:" + ((h || s) && g ? "fixed;" : "absolute;")), 816 (!h && !s && g) || 817 (y += (n === Xe ? I : Y) + ":" + (o + parseFloat(f)) + "px;"), 818 a && 819 (y += 820 "box-sizing:border-box;text-align:left;width:" + 821 a.offsetWidth + 822 "px;"), 823 (p._isStart = b), 824 p.setAttribute("class", "gsap-marker-" + e + (t ? " marker-" + t : "")), 825 (p.style.cssText = y), 826 (p.innerText = t || 0 === t ? e + "-" + t : e), 827 v.children[0] ? v.insertBefore(p, v.children[0]) : v.appendChild(p), 828 (p._offset = p["offset" + n.op.d2]), 829 U(p, 0, n, b), 830 p 831 ); 832 } 833 function Jb() { 834 return 34 < at() - st && (R = R || requestAnimationFrame($)); 835 } 836 function Kb() { 837 (v && v.isPressed && !(v.startX > We.clientWidth)) || 838 (ze.cache++, 839 v ? (R = R || requestAnimationFrame($)) : $(), 840 st || V("scrollStart"), 841 (st = at())); 842 } 843 function Lb() { 844 (y = Fe.innerWidth), (m = Fe.innerHeight); 845 } 846 function Mb(e) { 847 ze.cache++, 848 (!0 !== e && 849 (Ke || 850 h || 851 Ue.fullscreenElement || 852 Ue.webkitFullscreenElement || 853 (b && 854 y === Fe.innerWidth && 855 !(Math.abs(Fe.innerHeight - m) > 0.25 * Fe.innerHeight)))) || 856 c.restart(!0); 857 } 858 function Pb() {
859 return yb(ne, "scrollEnd", Pb) || Mt(!0); 860 } 861 function Sb(e) { 862 for (var t = 0; t < K.length; t += 5) 863 (!e || (K[t + 4] && K[t + 4].query === e)) && 864 ((K[t].style.cssText = K[t + 1]), 865 K[t].getBBox && K[t].setAttribute("transform", K[t + 2] || ""), 866 (K[t + 3].uncache = 1)); 867 } 868 function Tb() { 869 return ze.forEach(function (e) { 870 return Ua(e) && ++e.cacheID && (e.rec = e()); 871 }); 872 } 873 function Ub(e, t) { 874 var r; 875 for ($e = 0; $e < Tt.length; $e++) 876 !(r = Tt[$e]) || 877 (t && r._ctx !== t) || 878 (e ? r.kill(1) : r.revert(!0, !0)); 879 (T = !0), t && Sb(t), t || V("revert"); 880 } 881 function Vb(e, t) { 882 ze.cache++, 883 (!t && rt) || 884 ze.forEach(function (e) { 885 return Ua(e) && e.cacheID++ && (e.rec = 0); 886 }), 887 ct(e) && (Fe.history.scrollRestoration = _ = e); 888 } 889 function $b() { 890 We.appendChild(w), 891 (S = (!v && w.offsetHeight) || Fe.innerHeight), 892 We.removeChild(w); 893 } 894 function _b(t) { 895 return Ve( 896 ".gsap-marker-start, .gsap-marker-end, .gsap-marker-scroller-start, .gsap-marker-scroller-end" 897 ).forEach(function (e) { 898 return (e.style.display = t ? "none" : "block"); 899 }); 900 } 901 function ic(e, t, r, n) { 902 if (!e._gsap.swappedIn) { 903 for (var i, o = Z.length, a = t.style, s = e.style; o--; ) 904 a[(i = Z[o])] = r[i]; 905 (a.position = "absolute" === r.position ? "absolute" : "relative"), 906 "inline" === r.display && (a.display = "inline-block"), 907 (s[Y] = s[I] = "auto"), 908 (a.flexBasis = r.flexBasis || "auto"), 909 (a.overflow = "visible"), 910 (a.boxSizing = "border-box"), 911 (a[ft] = rb(e, Ne) + xt), 912 (a[dt] = rb(e, Xe) + xt), 913 (a[bt] = s[mt] = s.top = s.left = "0"), 914 Pt(n), 915 (s[ft] = s.maxWidth = r[ft]), 916 (s[dt] = s.maxHeight = r[dt]), 917 (s[bt] = r[bt]), 918 e.parentNode !== t && 919 (e.parentNode.insertBefore(t, e), t.appendChild(e)), 920 (e._gsap.swappedIn = !0); 921 } 922 } 923 function lc(e) { 924 for (var t = ee.length, r = e.style, n = [], i = 0; i < t; i++) 925 n.push(ee[i], r[ee[i]]); 926 return (n.t = e), n; 927 } 928 function oc(e, t, r, n, i, o, a, s, l, c, u, f, d, p) { 929 Ua(e) && (e = e(s)), 930 ct(e) && 931 "max" === e.substr(0, 3) && 932 (e = f + ("=" === e.charAt(4) ? Db("0" + e.substr(3), r) : 0)); 933 var g, 934 h, 935 v, 936 b = d ? d.time() : 0; 937 if ((d && d.seek(0), isNaN(e) || (e = +e), Va(e))) 938 d && 939 (e = qe.utils.mapRange( 940 d.scrollTrigger.start, 941 d.scrollTrigger.end, 942 0, 943 f, 944 e 945 )), 946 a && U(a, r, n, !0); 947 else { 948 Ua(t) && (t = t(s)); 949 var m, 950 y, 951 x, 952 _, 953 w = (e || "0").split(" "); 954 (v = J(t, s) || We), 955 ((m = _t(v) || {}) && (m.left || m.top)) || 956 "none" !== nb(v).display || 957 ((_ = v.style.display), 958 (v.style.display = "block"), 959 (m = _t(v)), 960 _ ? (v.style.display = _) : v.style.removeProperty("display")), 961 (y = Db(w[0], m[n.d])), 962 (x = Db(w[1] || "0", r)), 963 (e = m[n.p] - l[n.p] - c + y + i - x), 964 a && U(a, x, n, r - x < 20 || (a._isStart && 20 < x)), 965 (r -= r - x); 966 } 967 if ((p && ((s[p] = e || -0.001), e < 0 && (e = 0)), o)) { 968 var S = e + r, 969 T = o._isStart; 970 (g = "scroll" + n.d2), 971 U( 972 o, 973 S, 974 n, 975 (T && 20 < S) || 976 (!T && (u ? Math.max(We[g], He[g]) : o.parentNode[g]) <= S + 1) 977 ), 978 u && 979 ((l = _t(a)), 980 u && (o.style[n.op.p] = l[n.op.p] - n.op.m - o._offset + xt)); 981 } 982 return ( 983 d && 984 v && 985 ((g = _t(v)), 986 d.seek(f), 987 (h = _t(v)), 988 (d._caScrollDist = g[n.p] - h[n.p]), 989 (e = (e / d._caScrollDist) * f)), 990 d && d.seek(b), 991 d ? e : Math.round(e) 992 ); 993 } 994 function qc(e, t, r, n) { 995 if (e.parentNode !== t) { 996 var i, 997 o, 998 a = e.style; 999 if (t === We) { 1000 for (i in ((e._stOrig = a.cssText), (o = nb(e)))) 1001 +i || 1002 re.test(i) || 1003 !o[i] || 1004 "string" != typeof a[i] || 1005 "0" === i || 1006 (a[i] = o[i]); 1007 (a.top = r), (a.left = n); 1008 } else a.cssText = e._stOrig; 1009 (qe.core.getCache(e).uncache = 1), t.appendChild(e); 1010 } 1011 } 1012 function rc(r, e, n) { 1013 var i = e, 1014 o = i; 1015 return function (e) { 1016 var t = Math.round(r()); 1017 return ( 1018 t !== i && 1019 t !== o && 1020 3 < Math.abs(t - i) && 1021 3 < Math.abs(t - o) && 1022 ((e = t), n && n()), 1023 (o = i), 1024 (i = Math.round(e)) 1025 ); 1026 }; 1027 } 1028 function sc(e, t, r) { 1029 var n = {}; 1030 (n[t.p] = "+=" + r), qe.set(e, n); 1031 } 1032 function tc(c, e) { 1033 function Ik(e, t, r, n, i) { 1034 var o = Ik.tween, 1035 a = t.onComplete, 1036 s = {}; 1037 r = r || u(); 1038 var l = rc(u, r, function () { 1039 o.kill(), (Ik.tween = 0); 1040 }); 1041 return ( 1042 (i = (n && i) || 0), 1043 (n = n || e - r), 1044 o && o.kill(), 1045 (t[f] = e), 1046 (t.inherit = !1),
1047 ((t.modifiers = s)[f] = function () { 1048 return l(r + n * o.ratio + i * o.ratio * o.ratio); 1049 }), 1050 (t.onUpdate = function () { 1051 ze.cache++, Ik.tween && $(); 1052 }), 1053 (t.onComplete = function () { 1054 (Ik.tween = 0), a && a.call(o); 1055 }), 1056 (o = Ik.tween = qe.to(c, t)) 1057 ); 1058 } 1059 var u = L(c, e), 1060 f = "_scroll" + e.p2; 1061 return ( 1062 ((c[f] = u).wheelHandler = function () { 1063 return Ik.tween && Ik.tween.kill() && (Ik.tween = 0); 1064 }), 1065 xb(c, "wheel", u.wheelHandler), 1066 ne.isTouch && xb(c, "touchmove", u.wheelHandler), 1067 Ik 1068 ); 1069 } 1070 var qe, 1071 s, 1072 Fe, 1073 Ue, 1074 He, 1075 We, 1076 l, 1077 c, 1078 Ve, 1079 Je, 1080 Ge, 1081 u, 1082 Ke, 1083 je, 1084 f, 1085 $e, 1086 d, 1087 p, 1088 g, 1089 Qe, 1090 Ze, 1091 h, 1092 v, 1093 b, 1094 m, 1095 y, 1096 E, 1097 x, 1098 _, 1099 w, 1100 S, 1101 T, 1102 et, 1103 tt, 1104 R, 1105 rt, 1106 nt, 1107 it, 1108 ot = 1, 1109 at = Date.now, 1110 D = at(), 1111 st = 0, 1112 lt = 0, 1113 ct = function _isString(e) { 1114 return "string" == typeof e; 1115 }, 1116 ut = Math.abs, 1117 I = "right", 1118 Y = "bottom", 1119 ft = "width", 1120 dt = "height", 1121 pt = "Right", 1122 gt = "Left", 1123 ht = "Top", 1124 vt = "Bottom", 1125 bt = "padding", 1126 mt = "margin", 1127 yt = "Width", 1128 X = "Height", 1129 xt = "px", 1130 _t = function _getBounds(e, t) { 1131 var r = 1132 t && 1133 "matrix(1, 0, 0, 1, 0, 0)" !== nb(e)[f] && 1134 qe 1135 .to(e, { 1136 x: 0, 1137 y: 0, 1138 xPercent: 0, 1139 yPercent: 0, 1140 rotation: 0, 1141 rotationX: 0, 1142 rotationY: 0, 1143 scale: 1, 1144 skewX: 0, 1145 skewY: 0, 1146 }) 1147 .progress(1), 1148 n = e.getBoundingClientRect(); 1149 return r && r.progress(0).kill(), n; 1150 }, 1151 wt = { 1152 startColor: "green", 1153 endColor: "red", 1154 indent: 0, 1155 fontSize: "16px", 1156 fontWeight: "normal", 1157 }, 1158 St = { toggleActions: "play", anticipatePin: 0 }, 1159 q = { top: 0, left: 0, center: 0.5, bottom: 1, right: 1 }, 1160 U = function _positionMarker(e, t, r, n) { 1161 var i = { display: "block" }, 1162 o = r[n ? "os2" : "p2"], 1163 a = r[n ? "p2" : "os2"]; 1164 (e._isFlipped = n), 1165 (i[r.a + "Percent"] = n ? -100 : 0), 1166 (i[r.a] = n ? "1px" : 0), 1167 (i["border" + o + yt] = 1), 1168 (i["border" + a + yt] = 0), 1169 (i[r.p] = t + "px"), 1170 qe.set(e, i); 1171 }, 1172 Tt = [], 1173 Ct = {}, 1174 H = {}, 1175 W = [], 1176 V = function _dispatch(e) { 1177 return ( 1178 (H[e] && 1179 H[e].map(function (e) { 1180 return e(); 1181 })) || 1182 W 1183 ); 1184 }, 1185 K = [], 1186 kt = 0, 1187 Mt = function _refreshAll(e, t) { 1188 if ( 1189 ((He = Ue.documentElement), 1190 (We = Ue.body), 1191 (l = [Fe, Ue, He, We]), 1192 !st || e || T) 1193 ) { 1194 $b(), (rt = ne.isRefreshing = !0), T || Tb(); 1195 var r = V("refreshInit"); 1196 Qe && ne.sort(), 1197 t || Ub(), 1198 ze.forEach(function (e) { 1199 Ua(e) && 1200 (e.smooth && (e.target.style.scrollBehavior = "auto"), e(0)); 1201 }), 1202 Tt.slice(0).forEach(function (e) { 1203 return e.refresh(); 1204 }), 1205 (T = !1), 1206 Tt.forEach(function (e) { 1207 if (e._subPinOffset && e.pin) { 1208 var t = e.vars.horizontal ? "offsetWidth" : "offsetHeight", 1209 r = e.pin[t]; 1210 e.revert(!0, 1), e.adjustPinSpacing(e.pin[t] - r), e.refresh(); 1211 } 1212 }), 1213 (et = 1), 1214 _b(!0), 1215 Tt.forEach(function (e) { 1216 var t = Ra(e.scroller, e._dir), 1217 r = "max" === e.vars.end || (e._endClamp && e.end > t), 1218 n = e._startClamp && e.start >= t; 1219 (r || n) && 1220 e.setPositions( 1221 n ? t - 1 : e.start, 1222 r ? Math.max(n ? t : e.start + 1, t) : e.end, 1223 !0 1224 ); 1225 }), 1226 _b(!1), 1227 (et = 0), 1228 r.forEach(function (e) { 1229 return e && e.render && e.render(-1); 1230 }), 1231 ze.forEach(function (e) { 1232 Ua(e) && 1233 (e.smooth && 1234 requestAnimationFrame(function () { 1235 return (e.target.style.scrollBehavior = "smooth"); 1236 }), 1237 e.rec && e(e.rec)); 1238 }), 1239 Vb(_, 1), 1240 c.pause(), 1241 kt++, 1242 $((rt = 2)), 1243 Tt.forEach(function (e) { 1244 return Ua(e.vars.onRefresh) && e.vars.onRefresh(e); 1245 }), 1246 (rt = ne.isRefreshing = !1), 1247 V("refresh"); 1248 } else xb(ne, "scrollEnd", Pb); 1249 }, 1250 j = 0, 1251 Et = 1, 1252 $ = function _updateAll(e) { 1253 if (2 === e || (!rt && !T)) { 1254 (ne.isUpdating = !0), it && it.update(0); 1255 var t = Tt.length, 1256 r = at(), 1257 n = 50 <= r - D, 1258 i = t && Tt[0].scroll(); 1259 if ( 1260 ((Et = i < j ? -1 : 1), 1261 rt || (j = i), 1262 n && 1263 (st && !je && 200 < r - st && ((st = 0), V("scrollEnd")), 1264 (Ge = D), 1265 (D = r)), 1266 Et < 0) 1267 ) { 1268 for ($e = t; 0 < $e--; ) Tt[$e] && Tt[$e].update(0, n); 1269 Et = 1; 1270 } else for ($e = 0; $e < t; $e++) Tt[$e] && Tt[$e].update(0, n); 1271 ne.isUpdating = !1; 1272 } 1273 R = 0; 1274 }, 1275 Z = [ 1276 "left", 1277 "top", 1278 Y, 1279 I, 1280 mt + vt, 1281 mt + pt, 1282 mt + ht, 1283 mt + gt, 1284 "display", 1285 "flexShrink", 1286 "float", 1287 "zIndex", 1288 "gridColumnStart", 1289 "gridColumnEnd", 1290 "gridRowStart", 1291 "gridRowEnd", 1292 "gridArea", 1293 "justifySelf", 1294 "alignSelf", 1295 "placeSelf", 1296 "order", 1297 ], 1298 ee = Z.concat([ 1299 ft, 1300 dt, 1301 "boxSizing", 1302 "max" + yt, 1303 "max" + X, 1304 "position", 1305 mt, 1306 bt, 1307 bt + ht, 1308 bt + pt, 1309 bt + vt, 1310 bt + gt, 1311 ]), 1312 te = /([A-Z])/g, 1313 Pt = function _setState(e) { 1314 if (e) { 1315 var t, 1316 r, 1317 n = e.t.style, 1318 i = e.length, 1319 o = 0; 1320 for ((e.t._gsap || qe.core.getCache(e.t)).uncache = 1; o < i; o += 2) 1321 (r = e[o + 1]), 1322 (t = e[o]), 1323 r 1324 ? (n[t] = r) 1325 : n[t] && n.removeProperty(t.replace(te, "-$1").toLowerCase()); 1326 } 1327 }, 1328 Ot = { left: 0, top: 0 }, 1329 re = /(webkit|moz|length|cssText|inset)/i, 1330 ne = 1331 ((ScrollTrigger.prototype.init = function init(P, O) { 1332 if ( 1333 ((this.progress = this.start = 0), this.vars && this.kill(!0, !0), lt) 1334 ) { 1335 var A, 1336 n, 1337 p, 1338 R, 1339 D, 1340 I, 1341 B, 1342 Y, 1343 N, 1344 X, 1345 q, 1346 e, 1347 F, 1348 U, 1349 H, 1350 W, 1351 V, 1352 G, 1353 t, 1354 K, 1355 b, 1356 j, 1357 $, 1358 m, 1359 Q, 1360 y, 1361 Z, 1362 x, 1363 r, 1364 _, 1365 w, 1366 ee, 1367 i, 1368 g, 1369 te, 1370 re, 1371 ne, 1372 S, 1373 o, 1374 T = (P = pb(ct(P) || Va(P) || P.nodeType ? { trigger: P } : P, St)) 1375 .onUpdate, 1376 C = P.toggleClass, 1377 a = P.id, 1378 k = P.onToggle, 1379 ie = P.onRefresh, 1380 M = P.scrub, 1381 oe = P.trigger, 1382 ae = P.pin, 1383 se = P.pinSpacing, 1384 le = P.invalidateOnRefresh, 1385 E = P.anticipatePin, 1386 s = P.onScrubComplete, 1387 h = P.onSnapComplete, 1388 ce = P.once, 1389 ue = P.snap, 1390 fe = P.pinReparent, 1391 l = P.pinSpacer, 1392 de = P.containerAnimation, 1393 pe = P.fastScrollEnd, 1394 ge = P.preventOverlaps, 1395 he = 1396 P.horizontal || (P.containerAnimation && !1 !== P.horizontal) 1397 ? Ne 1398 : Xe, 1399 ve = !M && 0 !== M, 1400 be = J(P.scroller || Fe), 1401 c = qe.core.getCache(be),
1402 me = Ma(be), 1403 ye = 1404 "fixed" === 1405 ("pinType" in P 1406 ? P.pinType 1407 : z(be, "pinType") || (me && "fixed")), 1408 xe = [P.onEnter, P.onLeave, P.onEnterBack, P.onLeaveBack], 1409 _e = ve && P.toggleActions.split(" "), 1410 we = "markers" in P ? P.markers : St.markers, 1411 Se = me ? 0 : parseFloat(nb(be)["border" + he.p2 + yt]) || 0, 1412 Te = this, 1413 Ce = 1414 P.onRefreshInit && 1415 function () { 1416 return P.onRefreshInit(Te); 1417 }, 1418 ke = (function _getSizeFunc(e, t, r) { 1419 var n = r.d, 1420 i = r.d2, 1421 o = r.a; 1422 return (o = z(e, "getBoundingClientRect")) 1423 ? function () { 1424 return o()[n]; 1425 } 1426 : function () { 1427 return (t ? Na(i) : e["client" + i]) || 0; 1428 }; 1429 })(be, me, he), 1430 Me = (function _getOffsetsFunc(e, t) { 1431 return !t || ~Le.indexOf(e) 1432 ? Oa(e) 1433 : function () { 1434 return Ot; 1435 }; 1436 })(be, me), 1437 Ee = 0, 1438 Pe = 0, 1439 Oe = 0, 1440 Ae = L(be, he); 1441 if ( 1442 ((Te._startClamp = Te._endClamp = !1), 1443 (Te._dir = he), 1444 (E *= 45), 1445 (Te.scroller = be), 1446 (Te.scroll = de ? de.time.bind(de) : Ae), 1447 (R = Ae()), 1448 (Te.vars = P), 1449 (O = O || P.animation), 1450 "refreshPriority" in P && 1451 ((Qe = 1), -9999 === P.refreshPriority && (it = Te)), 1452 (c.tweenScroll = c.tweenScroll || { 1453 top: tc(be, Xe), 1454 left: tc(be, Ne), 1455 }), 1456 (Te.tweenTo = A = c.tweenScroll[he.p]), 1457 (Te.scrubDuration = function (e) { 1458 (i = Va(e) && e) 1459 ? ee 1460 ? ee.duration(e) 1461 : (ee = qe.to(O, { 1462 ease: "expo", 1463 totalProgress: "+=0", 1464 inherit: !1, 1465 duration: i, 1466 paused: !0, 1467 onComplete: function onComplete() { 1468 return s && s(Te); 1469 }, 1470 })) 1471 : (ee && ee.progress(1).kill(), (ee = 0)); 1472 }), 1473 O && 1474 ((O.vars.lazy = !1), 1475 (O._initted && !Te.isReverted) || 1476 (!1 !== O.vars.immediateRender && 1477 !1 !== P.immediateRender && 1478 O.duration() && 1479 O.render(0, !0, !0)), 1480 (Te.animation = O.pause()), 1481 (O.scrollTrigger = Te).scrubDuration(M), 1482 (_ = 0), 1483 (a = a || O.vars.id)), 1484 ue && 1485 ((Wa(ue) && !ue.push) || (ue = { snapTo: ue }), 1486 "scrollBehavior" in We.style && 1487 qe.set(me ? [We, He] : be, { scrollBehavior: "auto" }), 1488 ze.forEach(function (e) { 1489 return ( 1490 Ua(e) && 1491 e.target === (me ? Ue.scrollingElement || He : be) && 1492 (e.smooth = !1) 1493 ); 1494 }), 1495 (p = Ua(ue.snapTo) 1496 ? ue.snapTo 1497 : "labels" === ue.snapTo 1498 ? (function _getClosestLabel(t) { 1499 return function (e) { 1500 return qe.utils.snap(sb(t), e); 1501 }; 1502 })(O) 1503 : "labelsDirectional" === ue.snapTo 1504 ? (function _getLabelAtDirection(r) { 1505 return function (e, t) { 1506 return ub(sb(r))(e, t.direction); 1507 }; 1508 })(O) 1509 : !1 !== ue.directional 1510 ? function (e, t) { 1511 return ub(ue.snapTo)(e, at() - Pe < 500 ? 0 : t.direction); 1512 }
1513 : qe.utils.snap(ue.snapTo)), 1514 (g = ue.duration || { min: 0.1, max: 2 }), 1515 (g = Wa(g) ? Je(g.min, g.max) : Je(g, g)), 1516 (te = qe 1517 .delayedCall(ue.delay || i / 2 || 0.1, function () { 1518 var e = Ae(), 1519 t = at() - Pe < 500, 1520 r = A.tween; 1521 if ( 1522 !(t || Math.abs(Te.getVelocity()) < 10) || 1523 r || 1524 je || 1525 Ee === e 1526 ) 1527 Te.isActive && Ee !== e && te.restart(!0); 1528 else { 1529 var n, 1530 i, 1531 o = (e - I) / U, 1532 a = O && !ve ? O.totalProgress() : o, 1533 s = t ? 0 : ((a - w) / (at() - Ge)) * 1e3 || 0, 1534 l = qe.utils.clamp(-o, 1 - o, (ut(s / 2) * s) / 0.185), 1535 c = o + (!1 === ue.inertia ? 0 : l), 1536 u = ue.onStart, 1537 f = ue.onInterrupt, 1538 d = ue.onComplete; 1539 if ( 1540 ((n = p(c, Te)), 1541 Va(n) || (n = c), 1542 (i = Math.max(0, Math.round(I + n * U))), 1543 e <= B && I <= e && i !== e) 1544 ) { 1545 if (r && !r._initted && r.data <= ut(i - e)) return; 1546 !1 === ue.inertia && (l = n - o), 1547 A( 1548 i, 1549 { 1550 duration: g( 1551 ut( 1552 (0.185 * Math.max(ut(c - a), ut(n - a))) / 1553 s / 1554 0.05 || 0 1555 ) 1556 ), 1557 ease: ue.ease || "power3", 1558 data: ut(i - e), 1559 onInterrupt: function onInterrupt() { 1560 return te.restart(!0) && f && f(Te); 1561 }, 1562 onComplete: function onComplete() { 1563 Te.update(), 1564 (Ee = Ae()), 1565 O && 1566 !ve && 1567 (ee 1568 ? ee.resetTo( 1569 "totalProgress", 1570 n, 1571 O._tTime / O._tDur 1572 ) 1573 : O.progress(n)), 1574 (_ = w = 1575 O && !ve ? O.totalProgress() : Te.progress), 1576 h && h(Te), 1577 d && d(Te); 1578 }, 1579 }, 1580 e, 1581 l * U, 1582 i - e - l * U 1583 ), 1584 u && u(Te, A.tween); 1585 } 1586 } 1587 }) 1588 .pause())), 1589 a && (Ct[a] = Te), 1590 (o = 1591 (o = 1592 (oe = Te.trigger = J(oe || (!0 !== ae && ae))) && 1593 oe._gsap && 1594 oe._gsap.stRevert) && o(Te)), 1595 (ae = !0 === ae ? oe : J(ae)), 1596 ct(C) && (C = { targets: oe, className: C }), 1597 ae && 1598 (!1 === se || 1599 se === mt || 1600 (se = 1601 !( 1602 !se && 1603 ae.parentNode && 1604 ae.parentNode.style && 1605 "flex" === nb(ae.parentNode).display 1606 ) && bt), 1607 (Te.pin = ae), 1608 (n = qe.core.getCache(ae)).spacer 1609 ? (H = n.pinState) 1610 : (l && 1611 ((l = J(l)) && 1612 !l.nodeType && 1613 (l = l.current || l.nativeElement), 1614 (n.spacerIsNative = !!l), 1615 l && (n.spacerState = lc(l))), 1616 (n.spacer = G = l || Ue.createElement("div")), 1617 G.classList.add("pin-spacer"), 1618 a && G.classList.add("pin-spacer-" + a), 1619 (n.pinState = H = lc(ae))), 1620 !1 !== P.force3D && qe.set(ae, { force3D: !0 }), 1621 (Te.spacer = G = n.spacer), 1622 (r = nb(ae)), 1623 (m = r[se + he.os2]), 1624 (K = qe.getProperty(ae)), 1625 (b = qe.quickSetter(ae, he.a, xt)), 1626 ic(ae, G, r),
1627 (V = lc(ae))), 1628 we) 1629 ) { 1630 (e = Wa(we) ? pb(we, wt) : wt), 1631 (X = Eb("scroller-start", a, be, he, e, 0)), 1632 (q = Eb("scroller-end", a, be, he, e, 0, X)), 1633 (t = X["offset" + he.op.d2]); 1634 var u = J(z(be, "content") || be); 1635 (Y = this.markerStart = Eb("start", a, u, he, e, t, 0, de)), 1636 (N = this.markerEnd = Eb("end", a, u, he, e, t, 0, de)), 1637 de && (S = qe.quickSetter([Y, N], he.a, xt)), 1638 ye || 1639 (Le.length && !0 === z(be, "fixedMarkers")) || 1640 ((function _makePositionable(e) { 1641 var t = nb(e).position; 1642 e.style.position = 1643 "absolute" === t || "fixed" === t ? t : "relative"; 1644 })(me ? We : be), 1645 qe.set([X, q], { force3D: !0 }), 1646 (y = qe.quickSetter(X, he.a, xt)), 1647 (x = qe.quickSetter(q, he.a, xt))); 1648 } 1649 if (de) { 1650 var f = de.vars.onUpdate, 1651 d = de.vars.onUpdateParams; 1652 de.eventCallback("onUpdate", function () { 1653 Te.update(0, 0, 1), f && f.apply(de, d || []); 1654 }); 1655 } 1656 if ( 1657 ((Te.previous = function () { 1658 return Tt[Tt.indexOf(Te) - 1]; 1659 }), 1660 (Te.next = function () { 1661 return Tt[Tt.indexOf(Te) + 1]; 1662 }), 1663 (Te.revert = function (e, t) { 1664 if (!t) return Te.kill(!0); 1665 var r = !1 !== e || !Te.enabled, 1666 n = Ke; 1667 r !== Te.isReverted && 1668 (r && 1669 ((re = Math.max(Ae(), Te.scroll.rec || 0)), 1670 (Oe = Te.progress), 1671 (ne = O && O.progress())), 1672 Y && 1673 [Y, N, X, q].forEach(function (e) { 1674 return (e.style.display = r ? "none" : "block"); 1675 }), 1676 r && (Ke = Te).update(r), 1677 !ae || 1678 (fe && Te.isActive) || 1679 (r 1680 ? (function _swapPinOut(e, t, r) { 1681 Pt(r); 1682 var n = e._gsap; 1683 if (n.spacerIsNative) Pt(n.spacerState); 1684 else if (e._gsap.swappedIn) { 1685 var i = t.parentNode; 1686 i && (i.insertBefore(e, t), i.removeChild(t)); 1687 } 1688 e._gsap.swappedIn = !1; 1689 })(ae, G, H) 1690 : ic(ae, G, nb(ae), Q)), 1691 r || Te.update(r), 1692 (Ke = n), 1693 (Te.isReverted = r)); 1694 }), 1695 (Te.refresh = function (e, t, r, n) { 1696 if ((!Ke && Te.enabled) || t) 1697 if (ae && e && st) xb(ScrollTrigger, "scrollEnd", Pb); 1698 else { 1699 !rt && Ce && Ce(Te), 1700 (Ke = Te), 1701 A.tween && !r && (A.tween.kill(), (A.tween = 0)), 1702 ee && ee.pause(), 1703 le && 1704 O && 1705 (O.revert({ kill: !1 }).invalidate(), 1706 O.getChildren 1707 ? O.getChildren(!0, !0, !1).forEach(function (e) { 1708 return ( 1709 e.vars.immediateRender && e.render(0, !0, !0) 1710 ); 1711 }) 1712 : O.vars.immediateRender && O.render(0, !0, !0)), 1713 Te.isReverted || Te.revert(!0, !0), 1714 (Te._subPinOffset = !1); 1715 var i, 1716 o, 1717 a, 1718 s, 1719 l, 1720 c, 1721 u, 1722 f, 1723 d, 1724 p, 1725 g, 1726 h, 1727 v, 1728 b = ke(), 1729 m = Me(), 1730 y = de ? de.duration() : Ra(be, he), 1731 x = U <= 0.01 || !U, 1732 _ = 0, 1733 w = n || 0, 1734 S = Wa(r) ? r.end : P.end, 1735 T = P.endTrigger || oe, 1736 C = Wa(r) 1737 ? r.start 1738 : P.start || 1739 (0 !== P.start && oe ? (ae ? "0 0" : "0 100%") : 0), 1740 k = (Te.pinnedContainer = 1741 P.pinnedContainer && J(P.pinnedContainer, Te)), 1742 M = (oe && Math.max(0, Tt.indexOf(Te))) || 0, 1743 E = M; 1744 for ( 1745 we && 1746 Wa(r) && 1747 ((h = qe.getProperty(X, he.p)), 1748 (v = qe.getProperty(q, he.p))); 1749 0 < E--; 1750 1751 ) 1752 (c = Tt[E]).end || c.refresh(0, 1) || (Ke = Te), 1753 !(u = c.pin) || 1754 (u !== oe && u !== ae && u !== k) || 1755 c.isReverted || 1756 ((p = p || []).unshift(c), c.revert(!0, !0)), 1757 c !== Tt[E] && (M--, E--); 1758 for ( 1759 Ua(C) && (C = C(Te)), 1760 C = Da(C, "start", Te), 1761 I = 1762 oc( 1763 C, 1764 oe, 1765 b, 1766 he, 1767 Ae(), 1768 Y, 1769 X, 1770 Te, 1771 m, 1772 Se, 1773 ye, 1774 y, 1775 de, 1776 Te._startClamp && "_startClamp" 1777 ) || (ae ? -0.001 : 0), 1778 Ua(S) && (S = S(Te)), 1779 ct(S) && 1780 !S.indexOf("+=") && 1781 (~S.indexOf(" ")
1782 ? (S = (ct(C) ? C.split(" ")[0] : "") + S) 1783 : ((_ = Db(S.substr(2), b)), 1784 (S = ct(C) 1785 ? C 1786 : (de 1787 ? qe.utils.mapRange( 1788 0, 1789 de.duration(), 1790 de.scrollTrigger.start, 1791 de.scrollTrigger.end, 1792 I 1793 ) 1794 : I) + _), 1795 (T = oe))), 1796 S = Da(S, "end", Te), 1797 B = 1798 Math.max( 1799 I, 1800 oc( 1801 S || (T ? "100% 0" : y), 1802 T, 1803 b, 1804 he, 1805 Ae() + _, 1806 N, 1807 q, 1808 Te, 1809 m, 1810 Se, 1811 ye, 1812 y, 1813 de, 1814 Te._endClamp && "_endClamp" 1815 ) 1816 ) || -0.001, 1817 _ = 0, 1818 E = M; 1819 E--; 1820 1821 ) 1822 (u = (c = Tt[E] || {}).pin) && 1823 c.start - c._pinPush <= I && 1824 !de && 1825 0 < c.end && 1826 ((i = 1827 c.end - 1828 (Te._startClamp ? Math.max(0, c.start) : c.start)), 1829 ((u === oe && c.start - c._pinPush < I) || u === k) && 1830 isNaN(C) && 1831 (_ += i * (1 - c.progress)), 1832 u === ae && (w += i)); 1833 if ( 1834 ((I += _), 1835 (B += _), 1836 Te._startClamp && (Te._startClamp += _), 1837 Te._endClamp && 1838 !rt && 1839 ((Te._endClamp = B || -0.001), 1840 (B = Math.min(B, Ra(be, he)))), 1841 (U = B - I || ((I -= 0.01) && 0.001)), 1842 x && 1843 (Oe = qe.utils.clamp(0, 1, qe.utils.normalize(I, B, re))), 1844 (Te._pinPush = w), 1845 Y && 1846 _ && 1847 (((i = {})[he.a] = "+=" + _), 1848 k && (i[he.p] = "-=" + Ae()), 1849 qe.set([Y, N], i)), 1850 !ae || (et && Te.end >= Ra(be, he))) 1851 ) { 1852 if (oe && Ae() && !de) 1853 for (o = oe.parentNode; o && o !== We; ) 1854 o._pinOffset && 1855 ((I -= o._pinOffset), (B -= o._pinOffset)), 1856 (o = o.parentNode); 1857 } else 1858 (i = nb(ae)), 1859 (s = he === Xe), 1860 (a = Ae()), 1861 (j = parseFloat(K(he.a)) + w), 1862 !y && 1863 1 < B && 1864 ((g = { 1865 style: (g = (me ? Ue.scrollingElement || He : be) 1866 .style), 1867 value: g["overflow" + he.a.toUpperCase()], 1868 }), 1869 me && 1870 "scroll" !== 1871 nb(We)["overflow" + he.a.toUpperCase()] && 1872 (g.style["overflow" + he.a.toUpperCase()] = 1873 "scroll")), 1874 ic(ae, G, i), 1875 (V = lc(ae)), 1876 (o = _t(ae, !0)), 1877 (f = ye && L(be, s ? Ne : Xe)()), 1878 se 1879 ? (((Q = [se + he.os2, U + w + xt]).t = G), 1880 (E = se === bt ? rb(ae, he) + U + w : 0) && 1881 (Q.push(he.d, E + xt), 1882 "auto" !== G.style.flexBasis && 1883 (G.style.flexBasis = E + xt)), 1884 Pt(Q), 1885 k && 1886 Tt.forEach(function (e) {
1887 e.pin === k && 1888 !1 !== e.vars.pinSpacing && 1889 (e._subPinOffset = !0); 1890 }), 1891 ye && Ae(re)) 1892 : (E = rb(ae, he)) && 1893 "auto" !== G.style.flexBasis && 1894 (G.style.flexBasis = E + xt), 1895 ye && 1896 (((l = { 1897 top: o.top + (s ? a - I : f) + xt, 1898 left: o.left + (s ? f : a - I) + xt, 1899 boxSizing: "border-box", 1900 position: "fixed", 1901 })[ft] = l.maxWidth = 1902 Math.ceil(o.width) + xt), 1903 (l[dt] = l.maxHeight = Math.ceil(o.height) + xt), 1904 (l[mt] = 1905 l[mt + ht] = 1906 l[mt + pt] = 1907 l[mt + vt] = 1908 l[mt + gt] = 1909 "0"), 1910 (l[bt] = i[bt]), 1911 (l[bt + ht] = i[bt + ht]), 1912 (l[bt + pt] = i[bt + pt]), 1913 (l[bt + vt] = i[bt + vt]), 1914 (l[bt + gt] = i[bt + gt]), 1915 (W = (function _copyState(e, t, r) { 1916 for ( 1917 var n, i = [], o = e.length, a = r ? 8 : 0; 1918 a < o; 1919 a += 2 1920 ) 1921 (n = e[a]), i.push(n, n in t ? t[n] : e[a + 1]); 1922 return (i.t = e.t), i; 1923 })(H, l, fe)), 1924 rt && Ae(0)), 1925 O 1926 ? ((d = O._initted), 1927 Ze(1), 1928 O.render(O.duration(), !0, !0), 1929 ($ = K(he.a) - j + U + w), 1930 (Z = 1 < Math.abs(U - $)), 1931 ye && Z && W.splice(W.length - 2, 2), 1932 O.render(0, !0, !0), 1933 d || O.invalidate(!0), 1934 O.parent || O.totalTime(O.totalTime()), 1935 Ze(0)) 1936 : ($ = U), 1937 g && 1938 (g.value 1939 ? (g.style["overflow" + he.a.toUpperCase()] = g.value) 1940 : g.style.removeProperty("overflow-" + he.a)); 1941 p && 1942 p.forEach(function (e) { 1943 return e.revert(!1, !0); 1944 }), 1945 (Te.start = I), 1946 (Te.end = B), 1947 (R = D = rt ? re : Ae()), 1948 de || rt || (R < re && Ae(re), (Te.scroll.rec = 0)), 1949 Te.revert(!1, !0), 1950 (Pe = at()), 1951 te && ((Ee = -1), te.restart(!0)), 1952 (Ke = 0), 1953 O && 1954 ve && 1955 (O._initted || ne) && 1956 O.progress() !== ne && 1957 O.progress(ne || 0, !0).render(O.time(), !0, !0), 1958 (x || 1959 Oe !== Te.progress || 1960 de || 1961 le || 1962 (O && !O._initted)) && 1963 (O && 1964 !ve && 1965 (O._initted || Oe || !1 !== O.vars.immediateRender) && 1966 O.totalProgress( 1967 de && I < -0.001 && !Oe 1968 ? qe.utils.normalize(I, B, 0) 1969 : Oe, 1970 !0 1971 ), 1972 (Te.progress = x || (R - I) / U === Oe ? 0 : Oe)), 1973 ae && se && (G._pinOffset = Math.round(Te.progress * $)), 1974 ee && ee.invalidate(), 1975 isNaN(h) || 1976 ((h -= qe.getProperty(X, he.p)), 1977 (v -= qe.getProperty(q, he.p)), 1978 sc(X, he, h), 1979 sc(Y, he, h - (n || 0)), 1980 sc(q, he, v), 1981 sc(N, he, v - (n || 0))),
1982 x && !rt && Te.update(), 1983 !ie || rt || F || ((F = !0), ie(Te), (F = !1)); 1984 } 1985 }), 1986 (Te.getVelocity = function () { 1987 return ((Ae() - D) / (at() - Ge)) * 1e3 || 0; 1988 }), 1989 (Te.endAnimation = function () { 1990 Xa(Te.callbackAnimation), 1991 O && 1992 (ee 1993 ? ee.progress(1) 1994 : O.paused() 1995 ? ve || Xa(O, Te.direction < 0, 1) 1996 : Xa(O, O.reversed())); 1997 }), 1998 (Te.labelToScroll = function (e) { 1999 return ( 2000 (O && 2001 O.labels && 2002 (I || Te.refresh() || I) + 2003 (O.labels[e] / O.duration()) * U) || 2004 0 2005 ); 2006 }), 2007 (Te.getTrailing = function (t) { 2008 var e = Tt.indexOf(Te), 2009 r = 2010 0 < Te.direction ? Tt.slice(0, e).reverse() : Tt.slice(e + 1); 2011 return ( 2012 ct(t) 2013 ? r.filter(function (e) { 2014 return e.vars.preventOverlaps === t; 2015 }) 2016 : r 2017 ).filter(function (e) { 2018 return 0 < Te.direction ? e.end <= I : e.start >= B; 2019 }); 2020 }), 2021 (Te.update = function (e, t, r) { 2022 if (!de || r || e) { 2023 var n, 2024 i, 2025 o, 2026 a, 2027 s, 2028 l, 2029 c, 2030 u = !0 === rt ? re : Te.scroll(), 2031 f = e ? 0 : (u - I) / U, 2032 d = f < 0 ? 0 : 1 < f ? 1 : f || 0, 2033 p = Te.progress; 2034 if ( 2035 (t && 2036 ((D = R), 2037 (R = de ? Ae() : u), 2038 ue && ((w = _), (_ = O && !ve ? O.totalProgress() : d))), 2039 E && 2040 ae && 2041 !Ke && 2042 !ot && 2043 st && 2044 (!d && I < u + ((u - D) / (at() - Ge)) * E 2045 ? (d = 1e-4) 2046 : 1 === d && 2047 B > u + ((u - D) / (at() - Ge)) * E && 2048 (d = 0.9999)), 2049 d !== p && Te.enabled) 2050 ) { 2051 if ( 2052 ((a = 2053 (s = 2054 (n = Te.isActive = !!d && d < 1) != (!!p && p < 1)) || 2055 !!d != !!p), 2056 (Te.direction = p < d ? 1 : -1), 2057 (Te.progress = d), 2058 a && 2059 !Ke && 2060 ((i = d && !p ? 0 : 1 === d ? 1 : 1 === p ? 2 : 3), 2061 ve && 2062 ((o = 2063 (!s && "none" !== _e[i + 1] && _e[i + 1]) || _e[i]), 2064 (c = 2065 O && ("complete" === o || "reset" === o || o in O)))), 2066 ge && 2067 (s || c) && 2068 (c || M || !O) && 2069 (Ua(ge) 2070 ? ge(Te) 2071 : Te.getTrailing(ge).forEach(function (e) { 2072 return e.endAnimation(); 2073 })), 2074 ve || 2075 (!ee || Ke || ot 2076 ? O && O.totalProgress(d, !(!Ke || (!Pe && !e))) 2077 : (ee._dp._time - ee._start !== ee._time && 2078 ee.render(ee._dp._time - ee._start), 2079 ee.resetTo 2080 ? ee.resetTo("totalProgress", d, O._tTime / O._tDur) 2081 : ((ee.vars.totalProgress = d), 2082 ee.invalidate().restart()))), 2083 ae) 2084 ) 2085 if ((e && se && (G.style[se + he.os2] = m), ye)) { 2086 if (a) { 2087 if ( 2088 ((l = 2089 !e && p < d && u < B + 1 && u + 1 >= Ra(be, he)), 2090 fe) 2091 ) 2092 if (e || (!n && !l)) qc(ae, G); 2093 else { 2094 var g = _t(ae, !0), 2095 h = u - I; 2096 qc( 2097 ae, 2098 We, 2099 g.top + (he === Xe ? h : 0) + xt, 2100 g.left + (he === Xe ? 0 : h) + xt 2101 ); 2102 } 2103 Pt(n || l ? W : V), 2104 (Z && d < 1 && n) || b(j + (1 !== d || l ? 0 : $)); 2105 } 2106 } else b(Ja(j + $ * d)); 2107 !ue || A.tween || Ke || ot || te.restart(!0), 2108 C && 2109 (s || (ce && d && (d < 1 || !tt))) &&
2110 Ve(C.targets).forEach(function (e) { 2111 return e.classList[n || ce ? "add" : "remove"]( 2112 C.className 2113 ); 2114 }), 2115 !T || ve || e || T(Te), 2116 a && !Ke 2117 ? (ve && 2118 (c && 2119 ("complete" === o 2120 ? O.pause().totalProgress(1) 2121 : "reset" === o 2122 ? O.restart(!0).pause() 2123 : "restart" === o 2124 ? O.restart(!0) 2125 : O[o]()), 2126 T && T(Te)), 2127 (!s && tt) || 2128 (k && s && Ya(Te, k), 2129 xe[i] && Ya(Te, xe[i]), 2130 ce && (1 === d ? Te.kill(!1, 1) : (xe[i] = 0)), 2131 s || (xe[(i = 1 === d ? 1 : 3)] && Ya(Te, xe[i]))), 2132 pe && 2133 !n && 2134 Math.abs(Te.getVelocity()) > (Va(pe) ? pe : 2500) && 2135 (Xa(Te.callbackAnimation), 2136 ee 2137 ? ee.progress(1) 2138 : Xa(O, "reverse" === o ? 1 : !d, 1))) 2139 : ve && T && !Ke && T(Te); 2140 } 2141 if (x) { 2142 var v = de 2143 ? (u / de.duration()) * (de._caScrollDist || 0) 2144 : u; 2145 y(v + (X._isFlipped ? 1 : 0)), x(v); 2146 } 2147 S && S((-u / de.duration()) * (de._caScrollDist || 0)); 2148 } 2149 }), 2150 (Te.enable = function (e, t) { 2151 Te.enabled || 2152 ((Te.enabled = !0), 2153 xb(be, "resize", Mb), 2154 me || xb(be, "scroll", Kb), 2155 Ce && xb(ScrollTrigger, "refreshInit", Ce), 2156 !1 !== e && ((Te.progress = Oe = 0), (R = D = Ee = Ae())), 2157 !1 !== t && Te.refresh()); 2158 }), 2159 (Te.getTween = function (e) { 2160 return e && A ? A.tween : ee; 2161 }), 2162 (Te.setPositions = function (e, t, r, n) { 2163 if (de) { 2164 var i = de.scrollTrigger, 2165 o = de.duration(), 2166 a = i.end - i.start; 2167 (e = i.start + (a * e) / o), (t = i.start + (a * t) / o); 2168 } 2169 Te.refresh( 2170 !1, 2171 !1, 2172 { 2173 start: Ea(e, r && !!Te._startClamp), 2174 end: Ea(t, r && !!Te._endClamp), 2175 }, 2176 n 2177 ), 2178 Te.update(); 2179 }), 2180 (Te.adjustPinSpacing = function (e) { 2181 if (Q && e) { 2182 var t = Q.indexOf(he.d) + 1; 2183 (Q[t] = parseFloat(Q[t]) + e + xt), 2184 (Q[1] = parseFloat(Q[1]) + e + xt), 2185 Pt(Q); 2186 } 2187 }), 2188 (Te.disable = function (e, t) { 2189 if ( 2190 (!1 !== e && Te.revert(!0, !0), 2191 Te.enabled && 2192 ((Te.enabled = Te.isActive = !1), 2193 t || (ee && ee.pause()), 2194 (re = 0), 2195 n && (n.uncache = 1), 2196 Ce && yb(ScrollTrigger, "refreshInit", Ce), 2197 te && 2198 (te.pause(), A.tween && A.tween.kill() && (A.tween = 0)), 2199 !me)) 2200 ) { 2201 for (var r = Tt.length; r--; ) 2202 if (Tt[r].scroller === be && Tt[r] !== Te) return; 2203 yb(be, "resize", Mb), me || yb(be, "scroll", Kb); 2204 } 2205 }), 2206 (Te.kill = function (e, t) { 2207 Te.disable(e, t), ee && !t && ee.kill(), a && delete Ct[a]; 2208 var r = Tt.indexOf(Te); 2209 0 <= r && Tt.splice(r, 1), 2210 r === $e && 0 < Et && $e--, 2211 (r = 0), 2212 Tt.forEach(function (e) { 2213 return e.scroller === Te.scroller && (r = 1); 2214 }), 2215 r || rt || (Te.scroll.rec = 0), 2216 O && 2217 ((O.scrollTrigger = null),
2218 e && O.revert({ kill: !1 }), 2219 t || O.kill()), 2220 Y && 2221 [Y, N, X, q].forEach(function (e) { 2222 return e.parentNode && e.parentNode.removeChild(e); 2223 }), 2224 it === Te && (it = 0), 2225 ae && 2226 (n && (n.uncache = 1), 2227 (r = 0), 2228 Tt.forEach(function (e) { 2229 return e.pin === ae && r++; 2230 }), 2231 r || (n.spacer = 0)), 2232 P.onKill && P.onKill(Te); 2233 }), 2234 Tt.push(Te), 2235 Te.enable(!1, !1), 2236 o && o(Te), 2237 O && O.add && !U) 2238 ) { 2239 var v = Te.update; 2240 (Te.update = function () { 2241 (Te.update = v), ze.cache++, I || B || Te.refresh(); 2242 }), 2243 qe.delayedCall(0.01, Te.update), 2244 (U = 0.01), 2245 (I = B = 0); 2246 } else Te.refresh(); 2247 ae && 2248 (function _queueRefreshAll() { 2249 if (nt !== kt) { 2250 var e = (nt = kt); 2251 requestAnimationFrame(function () { 2252 return e === kt && Mt(!0); 2253 }); 2254 } 2255 })(); 2256 } else this.update = this.refresh = this.kill = Ia; 2257 }), 2258 (ScrollTrigger.register = function register(e) { 2259 return ( 2260 s || 2261 ((qe = e || La()), 2262 Ka() && window.document && ScrollTrigger.enable(), 2263 (s = lt)), 2264 s 2265 ); 2266 }), 2267 (ScrollTrigger.defaults = function defaults(e) { 2268 if (e) for (var t in e) St[t] = e[t]; 2269 return St; 2270 }), 2271 (ScrollTrigger.disable = function disable(t, r) { 2272 (lt = 0), 2273 Tt.forEach(function (e) { 2274 return e[r ? "kill" : "disable"](t); 2275 }), 2276 yb(Fe, "wheel", Kb), 2277 yb(Ue, "scroll", Kb), 2278 clearInterval(u), 2279 yb(Ue, "touchcancel", Ia), 2280 yb(We, "touchstart", Ia), 2281 wb(yb, Ue, "pointerdown,touchstart,mousedown", Ga), 2282 wb(yb, Ue, "pointerup,touchend,mouseup", Ha), 2283 c.kill(), 2284 Sa(yb); 2285 for (var e = 0; e < ze.length; e += 3) 2286 zb(yb, ze[e], ze[e + 1]), zb(yb, ze[e], ze[e + 2]); 2287 }), 2288 (ScrollTrigger.enable = function enable() { 2289 if ( 2290 ((Fe = window), 2291 (Ue = document), 2292 (He = Ue.documentElement), 2293 (We = Ue.body), 2294 qe && 2295 ((Ve = qe.utils.toArray), 2296 (Je = qe.utils.clamp), 2297 (x = qe.core.context || Ia), 2298 (Ze = qe.core.suppressOverwrites || Ia), 2299 (_ = Fe.history.scrollRestoration || "auto"), 2300 (j = Fe.pageYOffset || 0), 2301 qe.core.globals("ScrollTrigger", ScrollTrigger), 2302 We)) 2303 ) { 2304 (lt = 1), 2305 ((w = document.createElement("div")).style.height = "100vh"), 2306 (w.style.position = "absolute"), 2307 $b(), 2308 (function _rafBugFix() { 2309 return lt && requestAnimationFrame(_rafBugFix); 2310 })(), 2311 k.register(qe), 2312 (ScrollTrigger.isTouch = k.isTouch), 2313 (E = 2314 k.isTouch && /(iPad|iPhone|iPod|Mac)/g.test(navigator.userAgent)), 2315 (b = 1 === k.isTouch), 2316 xb(Fe, "wheel", Kb), 2317 (l = [Fe, Ue, He, We]), 2318 qe.matchMedia 2319 ? ((ScrollTrigger.matchMedia = function (e) { 2320 var t, 2321 r = qe.matchMedia(); 2322 for (t in e) r.add(t, e[t]); 2323 return r; 2324 }), 2325 qe.addEventListener("matchMediaInit", function () { 2326 Tb(), Ub(); 2327 }), 2328 qe.addEventListener("matchMediaRevert", function () { 2329 return Sb(); 2330 }), 2331 qe.addEventListener("matchMedia", function () { 2332 Mt(0, 1), V("matchMedia"); 2333 }), 2334 qe.matchMedia().add("(orientation: portrait)", function () { 2335 return Lb(), Lb; 2336 })) 2337 : console.warn("Requires GSAP 3.11.0 or later"), 2338 Lb(), 2339 xb(Ue, "scroll", Kb); 2340 var e, 2341 t, 2342 r = We.hasAttribute("style"), 2343 n = We.style, 2344 i = n.borderTopStyle, 2345 o = qe.core.Animation.prototype; 2346 for ( 2347 o.revert || 2348 Object.defineProperty(o, "revert", { 2349 value: function value() { 2350 return this.time(-0.01, !0); 2351 }, 2352 }), 2353 n.borderTopStyle = "solid", 2354 e = _t(We), 2355 Xe.m = Math.round(e.top + Xe.sc()) || 0, 2356 Ne.m = Math.round(e.left + Ne.sc()) || 0, 2357 i ? (n.borderTopStyle = i) : n.removeProperty("border-top-style"), 2358 r || (We.setAttribute("style", ""), We.removeAttribute("style")), 2359 u = setInterval(Jb, 250), 2360 qe.delayedCall(0.5, function () { 2361 return (ot = 0); 2362 }), 2363 xb(Ue, "touchcancel", Ia), 2364 xb(We, "touchstart", Ia), 2365 wb(xb, Ue, "pointerdown,touchstart,mousedown", Ga), 2366 wb(xb, Ue, "pointerup,touchend,mouseup", Ha), 2367 f = qe.utils.checkPrefix("transform"), 2368 ee.push(f), 2369 s = at(), 2370 c = qe.delayedCall(0.2, Mt).pause(), 2371 g = [ 2372 Ue, 2373 "visibilitychange", 2374 function () { 2375 var e = Fe.innerWidth,
2376 t = Fe.innerHeight; 2377 Ue.hidden ? ((d = e), (p = t)) : (d === e && p === t) || Mb(); 2378 }, 2379 Ue, 2380 "DOMContentLoaded", 2381 Mt, 2382 Fe, 2383 "load", 2384 Mt, 2385 Fe, 2386 "resize", 2387 Mb, 2388 ], 2389 Sa(xb), 2390 Tt.forEach(function (e) { 2391 return e.enable(0, 1); 2392 }), 2393 t = 0; 2394 t < ze.length; 2395 t += 3 2396 ) 2397 zb(yb, ze[t], ze[t + 1]), zb(yb, ze[t], ze[t + 2]); 2398 } 2399 }), 2400 (ScrollTrigger.config = function config(e) { 2401 "limitCallbacks" in e && (tt = !!e.limitCallbacks); 2402 var t = e.syncInterval; 2403 (t && clearInterval(u)) || ((u = t) && setInterval(Jb, t)), 2404 "ignoreMobileResize" in e && 2405 (b = 1 === ScrollTrigger.isTouch && e.ignoreMobileResize), 2406 "autoRefreshEvents" in e && 2407 (Sa(yb) || Sa(xb, e.autoRefreshEvents || "none"), 2408 (h = -1 === (e.autoRefreshEvents + "").indexOf("resize"))); 2409 }), 2410 (ScrollTrigger.scrollerProxy = function scrollerProxy(e, t) { 2411 var r = J(e), 2412 n = ze.indexOf(r), 2413 i = Ma(r); 2414 ~n && ze.splice(n, i ? 6 : 2), 2415 t && (i ? Le.unshift(Fe, t, We, t, He, t) : Le.unshift(r, t)); 2416 }), 2417 (ScrollTrigger.clearMatchMedia = function clearMatchMedia(t) { 2418 Tt.forEach(function (e) { 2419 return e._ctx && e._ctx.query === t && e._ctx.kill(!0, !0); 2420 }); 2421 }), 2422 (ScrollTrigger.isInViewport = function isInViewport(e, t, r) { 2423 var n = (ct(e) ? J(e) : e).getBoundingClientRect(), 2424 i = n[r ? ft : dt] * t || 0; 2425 return r 2426 ? 0 < n.right - i && n.left + i < Fe.innerWidth 2427 : 0 < n.bottom - i && n.top + i < Fe.innerHeight; 2428 }), 2429 (ScrollTrigger.positionInViewport = function positionInViewport(e, t, r) { 2430 ct(e) && (e = J(e)); 2431 var n = e.getBoundingClientRect(), 2432 i = n[r ? ft : dt], 2433 o = 2434 null == t 2435 ? i / 2 2436 : t in q 2437 ? q[t] * i 2438 : ~t.indexOf("%") 2439 ? (parseFloat(t) * i) / 100 2440 : parseFloat(t) || 0; 2441 return r ? (n.left + o) / Fe.innerWidth : (n.top + o) / Fe.innerHeight; 2442 }), 2443 (ScrollTrigger.killAll = function killAll(e) { 2444 if ( 2445 (Tt.slice(0).forEach(function (e) { 2446 return "ScrollSmoother" !== e.vars.id && e.kill(); 2447 }), 2448 !0 !== e) 2449 ) { 2450 var t = H.killAll || []; 2451 (H = {}), 2452 t.forEach(function (e) { 2453 return e(); 2454 }); 2455 } 2456 }), 2457 ScrollTrigger); 2458 function ScrollTrigger(e, t) { 2459 s || 2460 ScrollTrigger.register(qe) || 2461 console.warn("Please gsap.registerPlugin(ScrollTrigger)"), 2462 x(this), 2463 this.init(e, t); 2464 } 2465 (ne.version = "3.14.2"), 2466 (ne.saveStyles = function (e) { 2467 return e 2468 ? Ve(e).forEach(function (e) { 2469 if (e && e.style) { 2470 var t = K.indexOf(e); 2471 0 <= t && K.splice(t, 5), 2472 K.push( 2473 e, 2474 e.style.cssText, 2475 e.getBBox && e.getAttribute("transform"), 2476 qe.core.getCache(e), 2477 x() 2478 ); 2479 } 2480 }) 2481 : K; 2482 }), 2483 (ne.revert = function (e, t) { 2484 return Ub(!e, t); 2485 }), 2486 (ne.create = function (e, t) { 2487 return new ne(e, t); 2488 }), 2489 (ne.refresh = function (e) { 2490 return e ? Mb(!0) : (s || ne.register()) && Mt(!0); 2491 }), 2492 (ne.update = function (e) { 2493 return ++ze.cache && $(!0 === e ? 2 : 0); 2494 }), 2495 (ne.clearScrollMemory = Vb), 2496 (ne.maxScroll = function (e, t) { 2497 return Ra(e, t ? Ne : Xe); 2498 }), 2499 (ne.getScrollFunc = function (e, t) { 2500 return L(J(e), t ? Ne : Xe); 2501 }), 2502 (ne.getById = function (e) { 2503 return Ct[e]; 2504 }), 2505 (ne.getAll = function () { 2506 return Tt.filter(function (e) { 2507 return "ScrollSmoother" !== e.vars.id; 2508 }); 2509 }), 2510 (ne.isScrolling = function () { 2511 return !!st; 2512 }), 2513 (ne.snapDirectional = ub), 2514 (ne.addEventListener = function (e, t) { 2515 var r = H[e] || (H[e] = []); 2516 ~r.indexOf(t) || r.push(t); 2517 }), 2518 (ne.removeEventListener = function (e, t) { 2519 var r = H[e], 2520 n = r && r.indexOf(t); 2521 0 <= n && r.splice(n, 1); 2522 }), 2523 (ne.batch = function (e, t) { 2524 function Kp(e, t) { 2525 var r = [], 2526 n = [], 2527 i = qe 2528 .delayedCall(o, function () { 2529 t(r, n), (r = []), (n = []); 2530 }) 2531 .pause(); 2532 return function (e) { 2533 r.length || i.restart(!0), 2534 r.push(e.trigger), 2535 n.push(e), 2536 a <= r.length && i.progress(1); 2537 }; 2538 } 2539 var r, 2540 n = [], 2541 i = {}, 2542 o = t.interval || 0.016,
2543 a = t.batchMax || 1e9; 2544 for (r in t) 2545 i[r] = 2546 "on" === r.substr(0, 2) && Ua(t[r]) && "onRefreshInit" !== r 2547 ? Kp(0, t[r]) 2548 : t[r]; 2549 return ( 2550 Ua(a) && 2551 ((a = a()), 2552 xb(ne, "refresh", function () { 2553 return (a = t.batchMax()); 2554 })), 2555 Ve(e).forEach(function (e) { 2556 var t = {}; 2557 for (r in i) t[r] = i[r]; 2558 (t.trigger = e), n.push(ne.create(t)); 2559 }), 2560 n 2561 ); 2562 }); 2563 function vc(e, t, r, n) { 2564 return ( 2565 n < t ? e(n) : t < 0 && e(0), 2566 n < r ? (n - t) / (r - t) : r < 0 ? t / (t - r) : 1 2567 ); 2568 } 2569 function wc(e, t) { 2570 !0 === t 2571 ? e.style.removeProperty("touch-action") 2572 : (e.style.touchAction = 2573 !0 === t 2574 ? "auto" 2575 : t 2576 ? "pan-" + t + (k.isTouch ? " pinch-zoom" : "") 2577 : "none"), 2578 e === He && wc(We, t); 2579 } 2580 function yc(e) { 2581 var t, 2582 r = e.event, 2583 n = e.target, 2584 i = e.axis, 2585 o = (r.changedTouches ? r.changedTouches[0] : r).target, 2586 a = o._gsap || qe.core.getCache(o), 2587 s = at(); 2588 if (!a._isScrollT || 2e3 < s - a._isScrollT) { 2589 for ( 2590 ; 2591 o && 2592 o !== We && 2593 ((o.scrollHeight <= o.clientHeight && o.scrollWidth <= o.clientWidth) || 2594 (!oe[(t = nb(o)).overflowY] && !oe[t.overflowX])); 2595 2596 ) 2597 o = o.parentNode; 2598 (a._isScroll = 2599 o && 2600 o !== n && 2601 !Ma(o) && 2602 (oe[(t = nb(o)).overflowY] || oe[t.overflowX])), 2603 (a._isScrollT = s); 2604 } 2605 (!a._isScroll && "x" !== i) || (r.stopPropagation(), (r._gsapAllow = !0)); 2606 } 2607 function zc(e, t, r, n) { 2608 return k.create({ 2609 target: e, 2610 capture: !0, 2611 debounce: !1, 2612 lockAxis: !0, 2613 type: t, 2614 onWheel: (n = n && yc), 2615 onPress: n, 2616 onDrag: n, 2617 onScroll: n, 2618 onEnable: function onEnable() { 2619 return r && xb(Ue, k.eventTypes[0], se, !1, !0); 2620 }, 2621 onDisable: function onDisable() {
2622 return yb(Ue, k.eventTypes[0], se, !0); 2623 }, 2624 }); 2625 } 2626 function Dc(e) { 2627 function Hq() { 2628 return (i = !1); 2629 } 2630 function Kq() { 2631 (o = Ra(p, Xe)), 2632 (C = Je(E ? 1 : 0, o)), 2633 f && (T = Je(0, Ra(p, Ne))), 2634 (l = kt); 2635 } 2636 function Lq() { 2637 (v._gsap.y = Ja(parseFloat(v._gsap.y) + b.offset) + "px"), 2638 (v.style.transform = 2639 "matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, " + 2640 parseFloat(v._gsap.y) + 2641 ", 0, 1)"), 2642 (b.offset = b.cacheID = 0); 2643 } 2644 function Rq() { 2645 Kq(), 2646 a.isActive() && 2647 a.vars.scrollY > o && 2648 (b() > o ? a.progress(1) && b(o) : a.resetTo("scrollY", o)); 2649 } 2650 Wa(e) || (e = {}), 2651 (e.preventDefault = e.isNormalizer = e.allowClicks = !0), 2652 e.type || (e.type = "wheel,touch"), 2653 (e.debounce = !!e.debounce), 2654 (e.id = e.id || "normalizer"); 2655 var n, 2656 o, 2657 l, 2658 i, 2659 a, 2660 c, 2661 u, 2662 s, 2663 f = e.normalizeScrollX, 2664 t = e.momentum, 2665 r = e.allowNestedScroll, 2666 d = e.onRelease, 2667 p = J(e.target) || He, 2668 g = qe.core.globals().ScrollSmoother, 2669 h = g && g.get(), 2670 v = 2671 E && 2672 ((e.content && J(e.content)) || 2673 (h && !1 !== e.content && !h.smooth() && h.content())), 2674 b = L(p, Xe), 2675 m = L(p, Ne), 2676 y = 1, 2677 x =
2678 (k.isTouch && Fe.visualViewport 2679 ? Fe.visualViewport.scale * Fe.visualViewport.width 2680 : Fe.outerWidth) / Fe.innerWidth, 2681 _ = 0, 2682 w = Ua(t) 2683 ? function () { 2684 return t(n); 2685 } 2686 : function () { 2687 return t || 2.8; 2688 }, 2689 S = zc(p, e.type, !0, r), 2690 T = Ia, 2691 C = Ia; 2692 return ( 2693 v && qe.set(v, { y: "+=0" }), 2694 (e.ignoreCheck = function (e) { 2695 return ( 2696 (E && 2697 "touchmove" === e.type && 2698 (function ignoreDrag() { 2699 if (i) { 2700 requestAnimationFrame(Hq); 2701 var e = Ja(n.deltaY / 2), 2702 t = C(b.v - e); 2703 if (v && t !== b.v + b.offset) { 2704 b.offset = t - b.v; 2705 var r = Ja((parseFloat(v && v._gsap.y) || 0) - b.offset); 2706 (v.style.transform = 2707 "matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, " + 2708 r + 2709 ", 0, 1)"), 2710 (v._gsap.y = r + "px"), 2711 (b.cacheID = ze.cache), 2712 $(); 2713 } 2714 return !0; 2715 } 2716 b.offset && Lq(), (i = !0); 2717 })()) || 2718 (1.05 < y && "touchstart" !== e.type) || 2719 n.isGesturing || 2720 (e.touches && 1 < e.touches.length) 2721 ); 2722 }), 2723 (e.onPress = function () { 2724 i = !1; 2725 var e = y;
2726 (y = Ja(((Fe.visualViewport && Fe.visualViewport.scale) || 1) / x)), 2727 a.pause(), 2728 e !== y && wc(p, 1.01 < y || (!f && "x")), 2729 (c = m()), 2730 (u = b()), 2731 Kq(), 2732 (l = kt); 2733 }), 2734 (e.onRelease = e.onGestureStart = 2735 function (e, t) { 2736 if ((b.offset && Lq(), t)) { 2737 ze.cache++; 2738 var r, 2739 n, 2740 i = w(); 2741 f && 2742 ((n = (r = m()) + (0.05 * i * -e.velocityX) / 0.227), 2743 (i *= vc(m, r, n, Ra(p, Ne))), 2744 (a.vars.scrollX = T(n))), 2745 (n = (r = b()) + (0.05 * i * -e.velocityY) / 0.227), 2746 (i *= vc(b, r, n, Ra(p, Xe))), 2747 (a.vars.scrollY = C(n)), 2748 a.invalidate().duration(i).play(0.01), 2749 ((E && a.vars.scrollY >= o) || o - 1 <= r) && 2750 qe.to({}, { onUpdate: Rq, duration: i }); 2751 } else s.restart(!0); 2752 d && d(e); 2753 }), 2754 (e.onWheel = function () { 2755 a._ts && a.pause(), 1e3 < at() - _ && ((l = 0), (_ = at())); 2756 }), 2757 (e.onChange = function (e, t, r, n, i) { 2758 if ( 2759 (kt !== l && Kq(), 2760 t && f && m(T(n[2] === t ? c + (e.startX - e.x) : m() + t - n[1])), 2761 r) 2762 ) { 2763 b.offset && Lq(); 2764 var o = i[2] === r, 2765 a = o ? u + e.startY - e.y : b() + r - i[1], 2766 s = C(a); 2767 o && a !== s && (u += s - a), b(s); 2768 } 2769 (r || t) && $(); 2770 }), 2771 (e.onEnable = function () { 2772 wc(p, !f && "x"), 2773 ne.addEventListener("refresh", Rq), 2774 xb(Fe, "resize", Rq), 2775 b.smooth && 2776 ((b.target.style.scrollBehavior = "auto"), 2777 (b.smooth = m.smooth = !1)), 2778 S.enable(); 2779 }), 2780 (e.onDisable = function () { 2781 wc(p, !0), 2782 yb(Fe, "resize", Rq), 2783 ne.removeEventListener("refresh", Rq), 2784 S.kill(); 2785 }), 2786 (e.lockAxis = !1 !== e.lockAxis), 2787 ((n = new k(e)).iOS = E) && !b() && b(1), 2788 E && qe.ticker.add(Ia), 2789 (s = n._dc), 2790 (a = qe.to(n, { 2791 ease: "power4", 2792 paused: !0, 2793 inherit: !1, 2794 scrollX: f ? "+=0.1" : "+=0", 2795 scrollY: "+=0.1", 2796 modifiers: { 2797 scrollY: rc(b, b(), function () { 2798 return a.pause(); 2799 }), 2800 }, 2801 onUpdate: $, 2802 onComplete: s.vars.onComplete, 2803 })), 2804 n 2805 ); 2806 } 2807 var ie, 2808 oe = { auto: 1, scroll: 1 }, 2809 ae = /(input|label|select|textarea)/i, 2810 se = function _captureInputs(e) { 2811 var t = ae.test(e.target.tagName); 2812 (t || ie) && ((e._gsapAllow = !0), (ie = t)); 2813 }; 2814 (ne.sort = function (e) { 2815 if (Ua(e)) return Tt.sort(e); 2816 var t = Fe.pageYOffset || 0; 2817 return ( 2818 ne.getAll().forEach(function (e) { 2819 return (e._sortY = e.trigger 2820 ? t + e.trigger.getBoundingClientRect().top 2821 : e.start + Fe.innerHeight); 2822 }), 2823 Tt.sort( 2824 e || 2825 function (e, t) { 2826 return ( 2827 -1e6 * (e.vars.refreshPriority || 0) + 2828 (e.vars.containerAnimation ? 1e6 : e._sortY) - 2829 ((t.vars.containerAnimation ? 1e6 : t._sortY) + 2830 -1e6 * (t.vars.refreshPriority || 0)) 2831 ); 2832 } 2833 ) 2834 ); 2835 }), 2836 (ne.observe = function (e) { 2837 return new k(e); 2838 }), 2839 (ne.normalizeScroll = function (e) { 2840 if (void 0 === e) return v; 2841 if (!0 === e && v) return v.enable(); 2842 if (!1 === e) return v && v.kill(), void (v = e); 2843 var t = e instanceof k ? e : Dc(e); 2844 return v && v.target === t.target && v.kill(), Ma(t.target) && (v = t), t; 2845 }), 2846 (ne.core = { 2847 _getVelocityProp: M, 2848 _inputObserver: zc, 2849 _scrollers: ze, 2850 _proxies: Le, 2851 bridge: { 2852 ss: function ss() { 2853 st || V("scrollStart"), (st = at()); 2854 }, 2855 ref: function ref() { 2856 return Ke; 2857 }, 2858 }, 2859 }), 2860 La() && qe.registerPlugin(ne), 2861 (e.ScrollTrigger = ne), 2862 (e.default = ne); 2863 if (typeof window === "undefined" || window !== e) { 2864 Object.defineProperty(e, "__esModule", { value: !0 }); 2865 } else { 2866 delete e.default; 2867 } 2868});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.