1(()=>{var p=3.36;function u(n){let i=document.getElementById("estimate-result");if(!i)return;let t=n*p,e=new Intl.NumberFormat(navigator.language||"en-US",{style:"currency",currency:"USD"}).format(t);i.innerText=e.replace(".00","")}function g(n,i){let t=null;return function(e){let r=this;clearTimeout(t),t=setTimeout(()=>{n.apply(r,e)},i)}}function m(){let n=document.getElementById("navbar");n&&(window.scrollY>0?n.classList.add("sticky"):n.classList.remove("sticky"))}function v(){let n=document.getElementById("navbar");if(!n)return;let i=n.querySelectorAll(".nav-primary-item"),t=n.querySelector(".nav-menu-trigger"),e=n.querySelector(".nav-menu-panel"),r=window.matchMedia("(prefers-reduced-motion: reduce)"),c=null,a=function(o){if(!(!t||!e)){if(window.clearTimeout(c),o){i.forEach(s=>s.removeAttribute("open")),e.hidden=!1,t.setAttribute("aria-expanded","true"),document.body.classList.add("nav-menu-is-open"),window.requestAnimationFrame(function(){e.classList.add("is-open")});return}if(e.classList.remove("is-open"),t.setAttribute("aria-expanded","false"),document.body.classList.remove("nav-menu-is-open"),r.matches){e.hidden=!0;return}c=window.setTimeout(function(){t.getAttribute("aria-expanded")!=="true"&&(e.hidden=!0)},280)}};i.forEach(o=>{o.addEventListener("toggle",function(){o.open&&(a(!1),i.forEach(s=>{s!==o&&s.removeAttribute("open")}))})}),n.querySelectorAll(".nav-helper-item").forEach(o=>{o.addEventListener("click",function(){i.forEach(s=>s.removeAttribute("open"))})}),t&&e&&(t.addEventListener("click",function(o){o.preventDefault(),a(t.getAttribute("aria-expanded")!=="true")}),e.querySelectorAll("a").forEach(o=>{o.addEventListener("click",function(){a(!1)})}),e.addEventListener("click",function(o){o.target===e&&a(!1)})),document.addEventListener("click",function(o){n.contains(o.target)||(i.forEach(s=>s.removeAttribute("open")),a(!1))}),document.addEventListener("keydown",function(o){o.key==="Escape"&&(i.forEach(s=>s.removeAttribute("open")),a(!1))})}function y(){let n=document.querySelector(".home-hero");
1if(!n||window.matchMedia("(prefers-reduced-motion: reduce)").matches)return;let t=!1,e=function(){let c=n.getBoundingClientRect(),a=window.innerHeight||document.documentElement.clientHeight;if(c.bottom<0||c.top>a){t=!1;return}let o=Math.max(0,-c.top),s=c.height*.44,d=Math.min(s,o*.56);n.style.setProperty("--home-hero-parallax-y",d.toFixed(2)+"px"),t=!1},r=function(){t||(t=!0,window.requestAnimationFrame(e))};e(),window.addEventListener("scroll",r,{passive:!0}),window.addEventListener("resize",r)}function w(){let n=document.querySelector(".home-hero-scroll");n&&n.addEventListener("click",function(i){let t=n.getAttribute("href");if(!t||t.charAt(0)!=="#")return;let e=document.getElementById(t.slice(1));if(!e)return;i.preventDefault();let r=window.matchMedia("(prefers-reduced-motion: reduce)"),c=document.getElementById("navbar")||document.querySelector(".site-header"),a=c?c.getBoundingClientRect().height:0,o=e.getBoundingClientRect().top+window.pageYOffset-a;window.scrollTo({top:Math.max(0,o),behavior:r.matches?"auto":"smooth"}),window.history&&window.history.pushState?window.history.pushState(null,"",t):window.location.hash=t})}document.addEventListener("scroll",function(){g(m,100)()});function E(){let n=document.querySelectorAll(".section, .feature-item, .news-item, .partner-inner"),i=new IntersectionObserver(e=>{e.forEach(r=>{r.isIntersecting&&r.target.classList.add("is-visible")})},{threshold:.1,rootMargin:"0px 0px -50px 0px"});n.forEach(e=>{e.classList.add("bp-animate-on-scroll"),i.observe(e)}),document.querySelectorAll(".features-inner, .features-grid-inner, .news-inner, .partner-divider, .home-section-divider").forEach(e=>{i.observe(e)})}function b(){document.querySelectorAll(".section-illustration").forEach(function(i){let t=i.querySelector("img"),e=i.querySelector(".coord-label.mouse-coord");!t||!e||(i.addEventListener("mousemove",function(r){let c=t.getBoundingClientRect(),a=Math.round(r.clientX-c.left),o=Math.round(r.clientY-c.top),s=Math.max(0,Math.min(a,Math.round(c.width))),d=Math.max(0,Math.min(o,Math.round(c.height)));e.textContent="[ "+s+", "+d+" ]";let l=i.getBoundingClientRect(),f=r.clientX-l.left+12,h=r.clientY-l.top-20;e.style.left=f+"px",e.style.top=h+"px",e.style.opacity="1"}),i.addEventListener("mouseleave",function(){e.style.opacity="0"}))})}document.addEventListener("DOMContentLoaded",function(){if(m(),v(),location.search&&location.search.indexOf("hide_nav")!==-1){let e=document.getElementById("navbar"),r=document.querySelector(".footer");e&&(e.style.display="none"),r&&(r.style.display="none")}if(E(),b(),y(),w(),new RegExp(/^\/(en|zh|zh_tw|ja)?\/?$/).test(location.pathname)){let e=document.querySelector(".estimate-input");e&&(e.value===""&&(e.value="5000"),u(e.value),e.addEventListener("input",function(){let s=e.value||0;u(s)}),e.addEventListener("focus",function(){e.select()}));let r=location.pathname.split("/")[1]||"en",c=document.querySelector(`.language-switch-item[data-lang="${r}"]`);c&&(c.classList.add("q-c-dark"),c.classList.remove("q-c-dark-3"));let a=document.getElementById("cookies-bar"),o=document.getElementById("cookies-bar-accept-btn");a&&o&&(o.addEventListener("click",function(){localStorage.setItem("cookies-bar-accepted","1"),a.classList.remove("show")}),localStorage.getItem("cookies-bar-accepted")!=="1"&&a.classList.add("show"))}});})();
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.