{"version":3,"file":"index-DYE9X5T9.js","sources":["../../src/javascripts/script.js"],"sourcesContent":["gsap.registerPlugin(ScrollToPlugin);\ngsap.registerPlugin(TextPlugin);\n// Initialize Lenis\nfunction smoothScroll() {\n\n const lenis = new Lenis({\n duration: 2,\n smooth: true,\n autoRaf: true,\n easing: (t) => Math.min(1, 1.001 - Math.pow(2, -10 * t))\n });\n window.scrollTo(0, 0);\n lenis.scrollTo(0);\n\n function raf(time) {\n lenis.raf(time);\n requestAnimationFrame(raf);\n }\n\n requestAnimationFrame(raf);\n}\nsmoothScroll()\nconst allProjectData = [\n\n {\n poster: \"/projects/Casa Carigar/cc_cover.webp\",\n hoverImg: \"/projects/Casa Carigar/cc_hover.webp\",\n title: \"Casa Carigar\",\n desc: \"Luxuary Furniture Marketplace\",\n sector: \"Life Style\",\n service: [\"Shopify eCom Development\", \"Multi-Vendor eCom marketplace\", \"UI Design\", \"UX Design\"]\n },\n {\n poster: \"/projects/Dhamaka Record/dhamaka_records_cover.webp\",\n hovervideo: \"/projects/Dhamaka Record/Dhamaka_Records_Hover.webm\",\n title: \"Dhamaka Records\",\n desc: \"Marketing Agency\",\n sector: \"Life Style\",\n service: [\"UI Design\", \"UX Design\", \"Frontend Development\", \"GSAP Web Animations\"]\n },\n {\n poster: \"/projects/Esquire India/esquire_india_cover.webp\",\n hoverImg: \"/projects/Esquire India/esquire_hover.webp\",\n title: \"Esquire India\",\n desc: \"Man at his best\",\n sector: \"Media\",\n service: [\"Custom CMS\", \"UI Design\", \"UX Design\", \"Frontend Development\", \"GSAP Web Animations\", \"Backend Development\", \"SEO Services\"]\n },\n {\n poster: \"/projects/Greek Life/greek_life_cover.webp\",\n hovervideo: \"/projects/Greek Life/Greek_Life_Hover.webm\",\n title: \"The Greek Life\",\n desc: \"Destination Management Services\",\n sector: \"Hospitality\",\n service: [\"UI Design\", \"UX Design\", \"Frontend Development\", \"Backend Development\"]\n },\n {\n poster: \"/projects/Hefty Art/hefty_art_cover.webp\",\n hovervideo: \"/projects/Hefty Art/Heafty_Art_Hover.webm\",\n title: \"Heafty Art\",\n desc: \"Web 3.0\",\n sector: \"ART\",\n service: [\"UI Design\", \"Frontend Development\", \"GSAP Web Animations\"]\n },\n {\n poster: \"/projects/Indian Gaming League/indian_cover.webp\",\n hoverImg: \"/projects/Indian Gaming League/indian_hover.webp\",\n title: \"Indian Gaming League\",\n desc: \"eSport Platform\",\n sector: \"Life Style\",\n service: [\"UI Design\", \"UX Design\", \"Frontend Development\", \"Backend Development\", \"Custom CMS\"]\n },\n {\n poster: \"/projects/iWhiteKorea/iWhiteKorea_cover.webp\",\n hovervideo: \"/projects/iWhiteKorea/iwhitekorea_hover.webm\",\n title: \"I White Korea\",\n desc: \"Korean Beauty Essentials\",\n sector: \"Beauty\",\n service: [\"UI Design\", \"UX Design\", \"Custom eCom Development\", \"SEO Services\"]\n },\n {\n poster: \"/projects/JustNosh/just_nosh_cover.webp\",\n title: \"JustNosh\",\n desc: \"Gourmet Snacks\",\n sector: \"Food\",\n service: [\"Shopify eCom Development\", \"E-Commerce Optimizations\"]\n },\n {\n poster: \"/projects/Khelo Esports/khelo_esports_cover.webp\",\n hovervideo: \"/projects/Khelo Esports/Khelo_Esports_Hover.mp4\",\n title: \"Khelo Esports\",\n desc: \"Esports Events\",\n sector: \"Life Style\",\n service: [\"UI Design\", \"UX Design\", \"Frontend Development\", \"Backend Development\", \"GSAP Web Animations\"]\n },\n {\n poster: \"/projects/Manifest/manifest_cover.webp\",\n title: \"Manifest\",\n desc: \"Wedding Magazine\",\n sector: \"Media\",\n service: [\"Custom CMS\", \"UI Design\", \"UX Design\", \"Frontend Development\", \"Backend Development\", \"GSAP Web Animations\"]\n },\n {\n poster: \"/projects/Mr. and Mrs/mr_and_mrs_cover.webp\",\n hovervideo: \"/projects/Mr. and Mrs/Mr_and_Mrs_Hover_2.webm\",\n title: \"Mr. & Mrs.\",\n desc: \"Ads Production & Events\",\n sector: \"Advertising\",\n service: [\"UI Design\", \"UX Design\", \"Frontend Development\", \"GSAP Web Animations\"]\n },\n {\n poster: \"/projects/Point Of/po_cover.webp\",\n hovervideo: \"/projects/Point Of/Point_Of_Hover.webm\",\n title: \"Point Of\",\n desc: \"Creative Agency\",\n sector: \"Advertising\",\n service: [\"UI Design\", \"UX Design\", \"Frontend Development\", \"Backend Development\", \"GSAP Web Animations\"]\n },\n {\n poster: \"/projects/Rage Media/rage_cover.webp\",\n hovervideo: \"/projects/Rage Media/Rage_Media_Hover_2.webm\",\n title: \"Rage Media\",\n desc: \"Marketing Agency\",\n sector: \"Advertising\",\n service: [\"UI Design\", \"UX Design\", \"Frontend Development\", \"GSAP Web Animations\"]\n },\n {\n poster: \"/projects/ResideInBeing/RIB_Cover.webp\",\n hovervideo: \"/projects/ResideInBeing/RIB_Hover.webm\",\n title: \"ResideInBeing\",\n desc: \"Clothing Label\",\n sector: \"Fashion\",\n service: [\"Shopify eCom Development\", \"UI Design\", \"UX Design\", \"SEO Services\"]\n },\n {\n poster: \"/projects/RPSG Group/rpsg_group_cover.webp\",\n title: \"RPSG Group\",\n desc: \"Indian Multinational Conglomerate\",\n sector: \"Media\",\n service: [\"Custom CMS\", \"UI Design\", \"UX Design\", \"Frontend Development\", \"Backend Development\", \"GSAP Web Animations\"]\n },\n {\n poster: \"/projects/Sensei Store/sensei_store_cover.webp\",\n hovervideo: \"/projects/Sensei Store/Sensei_Store_Hover.webm\",\n title: \"The Senseis Store\",\n desc: \"eCommerce Store\",\n sector: \"Fashion\",\n service: [\"Custom eCom Development\"]\n },\n {\n poster: \"/projects/RPSG Lifestyle Media/rpsg_media_cover.webp\",\n hoverImg: \"/projects/RPSG Lifestyle Media/rpsg_hover.webp\",\n title: \"RPSG Lifestyle Media\",\n desc: \"Media Powerhouse\",\n sector: \"Media\",\n service: [\"UI Design\", \"UX Design\", \"Frontend Development\", \"GSAP Web Animations\", \"SEO Services\"]\n },\n {\n poster: \"/projects/THR India/thr_cover.webp\",\n hoverImg: \"/projects/THR India/THR_hover.webp\",\n title: \"THR India\",\n desc: \"Bollywood News & Entertainment\",\n sector: \"Media\",\n service: [\"UI Design\", \"UX Design\", \"SEO Services\", \"Frontend Development\", \"Backend Development\", \"GSAP Web Animations\"]\n },\n {\n poster: \"/projects/WineeMedia/wineemedia_cover.webp\",\n hovervideo: \"/projects/WineeMedia/Winee_Media_hover.webm\",\n title: \"WineeMedia\",\n desc: \"Social Media Marketing Agency\",\n sector: \"Advertising\",\n service: [\"UI Design\", \"UX Design\", \"Frontend Development\", \"Backend Development\", \"GSAP Web Animations\", \"SEO Services\"]\n },\n {\n poster: \"/projects/Wealth Fusion/wealth_fusion_cover.webp\",\n title: \"Wealth Fusion\",\n desc: \"Wealth Management Firm\",\n sector: \"Finance\",\n service: [\"UI Design\", \"UX Design\", \"Frontend Development\", \"GSAP Web Animations\"]\n },\n\n];\n\nfunction allProjectRender() {\n var projectContainer = document.getElementById(\"all-project\");\n projectRenderer(allProjectData, projectContainer)\n}\nallProjectRender()\n\nfunction projectRenderer(data, container) {\n const isSmallScreen = window.innerWidth <= 576;\n\n data.forEach(project => {\n const projectElement = document.createElement(\"a\");\n projectElement.href = \"/details\";\n projectElement.classList.add(\"project\", \"project-small\");\n\n const showcaseDiv = document.createElement(\"div\");\n showcaseDiv.classList.add(\"showcase\");\n\n if (!isSmallScreen) {\n if (project.hovervideo) {\n // const showcaseOverDiv = document.createElement(\"div\");\n // showcaseOverDiv.classList.add(\"showcase-over\");\n\n // const video = document.createElement(\"video\");\n // video.src = project.hovervideo;\n // video.autoplay = true;\n // video.muted = true;\n // video.loop = true;\n // video.setAttribute(\"playsinline\", \"\");\n\n // showcaseOverDiv.appendChild(video);\n // showcaseDiv.appendChild(showcaseOverDiv);\n // showcaseDiv.addEventListener(\"mouseenter\", () => {\n // showcaseOverDiv.style.opacity = \"1\";\n // });\n\n // showcaseDiv.addEventListener(\"mouseleave\", () => {\n // showcaseOverDiv.style.opacity = \"0\";\n // });\n } else if (project.hoverImg) {\n const showcaseOverDiv = document.createElement(\"div\");\n showcaseOverDiv.classList.add(\"showcase-over\");\n\n const img = document.createElement(\"img\");\n img.src = project.hoverImg;\n img.alt = \"hover-image\";\n\n showcaseOverDiv.appendChild(img);\n showcaseDiv.appendChild(showcaseOverDiv);\n showcaseDiv.addEventListener(\"mouseenter\", () => {\n showcaseOverDiv.style.opacity = \"1\";\n });\n\n showcaseDiv.addEventListener(\"mouseleave\", () => {\n showcaseOverDiv.style.opacity = \"0\";\n });\n }\n }\n\n const img = document.createElement(\"img\");\n img.src = project.poster;\n img.alt = \"project-banner\";\n img.loading = \"lazy\";\n showcaseDiv.appendChild(img);\n\n const title = document.createElement(\"h3\");\n title.textContent = project.title || \"Project Title\";\n\n const desc = document.createElement(\"h4\");\n desc.textContent = project.desc || \"Project Description\";\n\n projectElement.appendChild(showcaseDiv);\n projectElement.appendChild(title);\n projectElement.appendChild(desc);\n\n container.appendChild(projectElement);\n });\n projectAnimation();\n}\n\n\nconst porjectData = [\n {\n sectors: [\n {\n name: \"ART\",\n projects: [1]\n },\n {\n name: \"Advertising\",\n projects: [1, 2, 3, 4]\n },\n {\n name: \"Beauty\",\n projects: [1]\n },\n {\n name: \"Fashion\",\n projects: [1, 2]\n },\n {\n name: \"Food\",\n projects: [1]\n },\n {\n name: \"Finance\",\n projects: [1]\n },\n {\n name: \"Life Style\",\n projects: [1, 2, 3, 4]\n },\n {\n name: \"Hospitality\",\n projects: [1]\n },\n {\n name: \"Media\",\n projects: [1, 2, 3, 4, 5]\n }\n ]\n },\n {\n clients: [\n {\n client: \"MoMA\",\n projects: [1, 2, 3, 4]\n },\n {\n client: \"Gucci\",\n projects: [1, 2, 3, 4]\n },\n {\n client: \"Marriott International\",\n projects: [1, 2, 3, 4]\n },\n {\n client: \"Tesla\",\n projects: [1, 2, 3, 4]\n },\n {\n client: \"L'Oréal\",\n projects: [1, 2, 3, 4]\n },\n {\n client: \"Goldman Sachs\",\n projects: [1, 2, 3, 4]\n },\n {\n client: \"Nike\",\n projects: [1, 2, 3, 4]\n },\n {\n client: \"Google\",\n projects: [1, 2, 3, 4]\n },\n {\n client: \"Netflix\",\n projects: [1, 2, 3, 4]\n },\n {\n client: \"Starbucks\",\n projects: [1, 2, 3, 4]\n },\n {\n client: \"Adidas\",\n projects: [1, 2, 3, 4]\n }\n ]\n },\n {\n services: [\n {\n service: \"UI Design\",\n projects: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18]\n },\n {\n service: \"UX Design\",\n projects: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17]\n },\n {\n service: \"Frontend Development\",\n projects: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]\n },\n {\n service: \"GSAP Web Animations\",\n projects: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]\n },\n {\n service: \"Backend Development\",\n projects: [1, 2, 3, 4, 5, 6, 7, 8, 9]\n },\n {\n service: \"SEO Services\",\n projects: [1, 2, 3, 4, 5, 6]\n },\n {\n service: \"Shopify eCom Development\",\n projects: [1, 2, 3]\n },\n {\n service: \"Custom eCom Development\",\n projects: [1, 2]\n },\n {\n service: \"Multi-Vendor eCom marketplace\",\n projects: [1]\n },\n {\n service: \"E-Commerce Optimizations\",\n projects: [1]\n },\n {\n service: \"Custom CMS\",\n projects: [1, 2, 3, 4]\n }\n ]\n }\n]\n\nfunction textEffectAnimation() {\n document.querySelectorAll(\".text-effect .effect\").forEach(function (element) {\n var clutter2 = \"\"\n element.textContent.split(\"\").forEach(function (letter) {\n if (letter === \" \") {\n clutter2 += \" \"\n } else {\n clutter2 += `${letter}`\n }\n })\n element.innerHTML = clutter2\n })\n\n document.querySelectorAll(\".text-effect\").forEach(function (elem) {\n elem.addEventListener(\"mouseenter\", function (e) {\n gsap.fromTo(e.currentTarget.children[0].querySelectorAll(\"span\"), {\n y: \"0%\",\n }, {\n y: \"-100%\",\n // duration: .8,\n stagger: {\n amount: .2\n },\n })\n gsap.fromTo(e.currentTarget.children[1].querySelectorAll(\"span\"), {\n y: \"0%\",\n }, {\n y: \"-100%\",\n // duration: .8,\n stagger: {\n amount: .2\n },\n })\n })\n })\n}\ntextEffectAnimation()\n\n\nfunction homeLoader() {\n // Detect if the page was refreshed (not navigated via routes)\n const isReload = performance.navigation.type === 1; \n\n // If it's a reload, remove the sessionStorage flag\n if (isReload) {\n sessionStorage.removeItem(\"homeLoaderPlayed\");\n }\n\n // Check if the loader has already played in this session\n if (sessionStorage.getItem(\"homeLoaderPlayed\")) return;\n\n var loader = gsap.timeline();\n loader\n .from(\".upper\", {\n opacity: 0,\n duration: 0.8,\n ease: \"ease-in-out\",\n delay: 2,\n stagger: {\n from: \"center\",\n amount: 0.2\n }\n }, \"a\")\n\n .from(\".lower\", {\n opacity: 0,\n duration: 0.8,\n ease: \"ease-in-out\",\n stagger: {\n amount: 0.2\n },\n delay: 2.1,\n }, \"a\")\n\n .from(\"#main\", {\n backgroundColor: \"#F5E31A\",\n duration: 0.8,\n ease: \"ease-in-out\",\n }, \"b\")\n\n .from(\".header-text\", {\n bottom: \"0%\",\n duration: 0.6,\n }, \"b\")\n\n .from(\"#page2\", {\n opacity: 0,\n y: 30,\n duration: 1,\n delay: -0.5,\n ease: \"power3.out\",\n }, \"c\")\n\n .from(\"#filter-container\", {\n opacity: 0,\n y: 10,\n duration: 1,\n delay: -0.5,\n ease: \"power3.out\",\n }, \"c\")\n\n .from(\"nav\", {\n opacity: 0,\n duration: 1,\n delay: -0.5,\n ease: \"power3.out\",\n }, \"c\");\n\n // Set flag in sessionStorage so the loader doesn't play again when navigating back\n sessionStorage.setItem(\"homeLoaderPlayed\", \"true\");\n}\n\n// Run the loader when the page loads\nhomeLoader();\n\n\nfunction serviceListingAnimation() {\n const serviceDets = [\n \"Digging deep to define your audience, vision, and what sets you apart.\",\n \"Positioning your brand with a clear mission and a bold identity.\",\n \"Crafting a voice and visual language that actually speaks to people.\",\n \"Designing logos, color palettes, and typography that make you instantly recognizable.\",\n \"Creating high-impact visuals that bring your brand to life.\",\n \"Writing words that don’t just fill space but make people feel something.\",\n \"Designing everything from business cards to billboards—cohesive, striking, and unforgettable.\",\n \"Designing experiences that feel intuitive, effortless, and built for engagement.\",\n \"Crafting sleek, high-end visuals that make your brand look like a million bucks.\",\n \"Fast, fluid, and pixel-perfect—our websites don’t just work; they impress.\",\n \"This is our playground. We craft mind-blowing GSAP animations that make websites feel alive.\",\n \"Powering your site with solid, scalable, and headache-free architecture.\",\n \"From technical SEO to on-page magic, we help you rank higher and get seen by the right people.\",\n \"Rock-solid hosting that keeps your website lightning-fast and always online.\",\n \"No compromises—enterprise-grade security to keep your data locked down.\",\n \"Because the internet never sleeps, and neither do we when it comes to keeping your site running.\",\n \"Powering high-performance Shopify stores with custom design, seamless UX, and rock-solid scalability.\",\n \"Ditch the templates—our tailor-made GSAP-enhanced stores deliver next-level design, freedom, and immersive shopping experiences.\",\n \"Building dynamic platforms where multiple vendors, customers, and cutting-edge features come together for a seamless ecosystem.\",\n \"Fine-tuning online stores with intuitive UX, frictionless checkouts, and data-driven strategies to boost conversions.\",\n \"Designing and developing sleek, high-performance apps that people actually love using.\",\n \"We don’t do cookie-cutter solutions—we build CMS platforms tailored to your needs.\",\n \"Whether it's niche or mass-market, we build digital marketplaces that stand out and scale up.\",\n \"High-traffic, high-functionality platforms designed for brands that want to be heard.\",\n \"Analyzing speed, security, and infrastructure to keep your platform fast, safe, and ahead of the game.\",\n \"Expert guidance on bespoke digital solutions, from choosing the right tech stack to building scalable, future-ready systems.\",\n \"A squad of elite developers, designers, and strategists working as an extension of your in-house team.\"\n ]\n\n document.querySelectorAll(\".service-wrap .text-effect\").forEach(function (textEffect) {\n textEffect.addEventListener(\"mouseenter\", function (e) {\n const text = serviceDets[e.target.dataset.index]\n\n gsap.to(document.querySelector(\"#about-service-text\"), {\n text: text,\n duration: 1,\n ease: \"power3.out\",\n overwrite: \"auto\"\n })\n })\n textEffect.addEventListener(\"mouseleave\", function () {\n gsap.to(document.querySelector(\"#about-service-text\"), {\n text: \"\",\n duration: 1,\n ease: \"power3.out\",\n overwrite: \"auto\"\n })\n })\n })\n}\nserviceListingAnimation()\n\nvar isMenuService = false;\nvar isService = false;\nfunction serviceAnimation() {\n var previousLink = \"\"\n\n document.querySelectorAll(\".service-open-btn\").forEach(function (btn) {\n btn.addEventListener(\"click\", function (e) {\n document.querySelector(\"#nav-service\").classList.add(\"active\");\n // document.querySelector(\"#studio-btn\").classList.remove(\"active\");\n isService = !isService;\n openService()\n })\n })\n document.querySelector(\"#closeService\").addEventListener(\"click\", function () {\n isService = !isService;\n openService()\n document.querySelector(\"#menu-button\").textContent = \"close\"\n isMenuService = false;\n this.classList.remove(\"active\");\n // document.querySelector(\"#studio-btn\").classList.add(\"active\");\n })\n\n\n}\nfunction openService() {\n if (isService) {\n gsap.set(\"nav\", { backgroundColor: \"#fff\" })\n gsap.to(\"#main\", {\n top: \"calc(100% - 40px)\",\n ease: \"power3.out\",\n duration: 1.2\n })\n gsap.to(\"#service-page\", {\n top: \"-40px\",\n ease: \"power3.out\",\n duration: 1.2,\n onComplete: () => {\n gsap.set(\"body\", { overflow: \"hidden\" })\n }\n })\n } else {\n document.querySelector(\"#nav-service\").classList.remove(\"active\")\n gsap.set(\"nav\", { backgroundColor: \"transparent\" })\n gsap.to(\"#main\", {\n top: \"0%\",\n ease: \"power3.out\",\n duration: 1.2\n })\n gsap.to(\"#service-page\", {\n top: \"-100%\",\n ease: \"power3.out\",\n duration: 1.2,\n onComplete: () => {\n gsap.set(\"body\", { overflow: \"auto\" })\n setTimeout(() => {\n ScrollTrigger.refresh();\n }, 200);\n }\n })\n }\n}\nserviceAnimation()\n\nvar currentCategory = \"#featured-project\"\n// window.onload = function () {\n// const urlParams = new URLSearchParams(window.location.search);\n// const mainFilter = urlParams.get('mainFilter');\n\n// // If mainFilter exists\n// if (mainFilter) {\n// // Fade out the #featured-project element\n\n// currentCategory = \"#all-project\"\n// var allFilter = document.querySelectorAll(\"#filter-container p\")\n// allFilter.forEach(function (filter) {\n// filter.classList.remove(\"active\");\n// if (filter.textContent.toLowerCase() === \"all\") {\n// filter.classList.add(\"active\");\n// }\n// })\n// var navLink = document.querySelectorAll(\"nav p\")\n// navLink.forEach(function (link) {\n// link.classList.remove(\"active\");\n// })\n// document.querySelector(\"#nav-project\").classList.add(\"active\");\n\n\n// document.querySelector(\"#featured-project\").style.opacity = 0;\n\n// // Use setTimeout to delay hiding it until opacity transition is complete\n// setTimeout(function () {\n// // Hide #featured-project after it fades out\n// document.querySelector(\"#featured-project\").style.display = 'none';\n\n// // Show #all-project\n// const allProject = document.querySelector(\"#all-project\");\n// allProject.style.display = 'flex'; // Show it immediately\n// setTimeout(() => {\n// allProject.style.opacity = 1; // Fade it in\n// }, 50); // Delay for smooth transition\n// }, 500); // Match the duration of opacity transition\n// }\n// };\n\nconst filterList = document.querySelector(\"#flip-filter-container\")\nconst sectorBtn = document.querySelector(\"#sectors-btn\")\n// const clientBtn = document.querySelector(\"#client-btn\")\nconst serviceBtn = document.querySelector(\"#service-btn\")\n\nfunction filterAnimation() {\n const allFilter = document.querySelectorAll(\"#filter-container p\")\n allFilter.forEach(function (filter) {\n filter.addEventListener(\"click\", function () {\n allFilter.forEach(function (item) {\n item.classList.remove(\"active\");\n });\n if (this.textContent.toLowerCase() === \"all\") {\n filterList.style.opacity = \"0\";\n filterList.style.height = \"0\";\n filterList.style.padding = \"0\"\n // document.querySelector(\"#nav-project\").classList.add(\"active\");\n }\n // else {\n // // document.querySelector(\"#nav-project\").classList.remove(\"active\");\n // history.pushState(null, '', '/');\n // }\n this.classList.add(\"active\");\n })\n })\n\n const navLink = document.querySelectorAll(\"nav p\")\n navLink.forEach(function (link) {\n link.addEventListener(\"click\", function () {\n navLink.forEach(function (item) {\n item.classList.remove(\"active\");\n });\n this.classList.add(\"active\");\n })\n })\n\n // ALL PROJECT FILTER\n document.querySelectorAll(\".all-project-button\").forEach(function (btn) {\n btn.addEventListener(\"click\", function () {\n\n document.querySelectorAll(\".listing-filter\").forEach(function (p) {\n p.querySelector(\".name-space\").textContent = ``\n p.querySelector(\".name-project-count\").textContent = ``\n p.querySelector(\".filter-close\").innerHTML = ``\n })\n filterList.style.opacity = \"0\";\n filterList.style.height = \"0\";\n filterList.style.padding = \"0\"\n\n const page2Height = document.querySelector(\"#page2\").getBoundingClientRect().top\n const currentContainer = document.querySelector(currentCategory)\n const projectContainer = document.querySelector(\"#all-project\")\n\n if (currentCategory === '#all-project') {\n gsap.to(window, {\n scrollTo: { y: 0, autoKill: false },\n duration: 1\n })\n return; // Exit early, skipping the timeline\n }\n\n var tl = gsap.timeline()\n tl\n .to(currentContainer, {\n onStart: function () {\n gsap.to(window, {\n scrollTo: { y: 0, autoKill: false },\n duration: 1\n })\n },\n opacity: 0,\n ease: \"power3.out\",\n duration: .5,\n onComplete: function () {\n gsap.set(currentContainer, { display: \"none\" })\n }\n })\n .to(projectContainer, {\n opacity: 1,\n ease: \"power3.out\",\n duration: .5,\n onStart: function () {\n gsap.set(projectContainer, { display: \"flex\" })\n },\n onComplete: function () {\n currentCategory = \"#all-project\"\n setTimeout(() => {\n ScrollTrigger.refresh();\n }, 200);\n }\n })\n })\n })\n\n //FEATURED PROJECT FILTER\n document.querySelector(\"#featured-btn\").addEventListener(\"click\", function () {\n\n document.querySelectorAll(\".listing-filter\").forEach(function (p) {\n p.querySelector(\".name-space\").textContent = ``\n p.querySelector(\".name-project-count\").textContent = ``\n p.querySelector(\".filter-close\").innerHTML = ``\n })\n\n filterList.style.opacity = \"0\";\n filterList.style.height = \"0\";\n filterList.style.padding = \"0\"\n\n const page2Height = document.querySelector(\"#page2\").getBoundingClientRect().top\n const currentContainer = document.querySelector(currentCategory)\n const projectContainer = document.querySelector(\"#featured-project\")\n\n if (currentCategory === '#featured-project') {\n gsap.to(window, {\n scrollTo: { y: 0, autoKill: false },\n duration: 1\n })\n return; // Exit early, skipping the timeline\n }\n\n var tl = gsap.timeline()\n tl\n .to(currentContainer, {\n onStart: function () {\n gsap.to(window, {\n scrollTo: { y: 0, autoKill: false },\n duration: 1\n })\n },\n opacity: 0,\n ease: \"power3.out\",\n duration: .5,\n onComplete: function () {\n gsap.set(currentContainer, { display: \"none\" })\n }\n })\n .to(projectContainer, {\n opacity: 1,\n ease: \"power3.out\",\n duration: .5,\n onStart: function () {\n gsap.set(projectContainer, { display: \"flex\" })\n },\n onComplete: function () {\n currentCategory = \"#featured-project\"\n setTimeout(() => {\n ScrollTrigger.refresh();\n }, 200);\n }\n })\n })\n\n // LISTING FILTER\n document.querySelector(\"#flip-filter-container\").addEventListener(\"click\", function (e) {\n\n if (e.target.tagName === \"P\") {\n filterList.style.opacity = \"0\";\n filterList.style.height = \"0\";\n filterList.style.padding = \"0\";\n\n const currentContainer = document.querySelector(currentCategory);\n var projectContainer = document.querySelector(\"#filter-project\");\n const filterBy = e.target.textContent.trim();\n\n function renderProjects(filterBy) {\n projectContainer.innerHTML = \"\"; // Clear previous content\n\n const filteredProjects = allProjectData.filter(project =>\n project.sector === filterBy || (project.service && project.service.includes(filterBy))\n );\n allFilter.forEach(function (filter) {\n if (filter.classList.contains(\"active\")) {\n filter.querySelector(\".name-space\").textContent = ` : ${e.target.textContent.trim()}`\n filter.querySelector(\".name-project-count\").textContent = `(${filteredProjects.length})`\n filter.querySelector(\".filter-close\").innerHTML = ``\n }\n });\n\n\n projectRenderer(filteredProjects, projectContainer)\n }\n\n var tl = gsap.timeline();\n tl.to(currentContainer, {\n opacity: 0,\n ease: \"power3.out\",\n duration: 0.5,\n onComplete: function () {\n gsap.set(currentContainer, { display: \"none\" });\n renderProjects(filterBy);\n }\n })\n .to(projectContainer, {\n opacity: 1,\n ease: \"power3.out\",\n duration: 0.5,\n onStart: function () {\n gsap.set(projectContainer, { display: \"flex\" });\n },\n onComplete: function () {\n currentCategory = \"#filter-project\";\n setTimeout(() => {\n ScrollTrigger.refresh();\n }, 200);\n }\n });\n }\n });\n\n\n}\nfilterAnimation()\n\n\nfunction backToFeatured(btn){\n const currentContainer = document.querySelector(\"#filter-project\")\n const projectContainer = document.querySelector(\"#featured-project\")\n\n gsap.to(window, {\n scrollTo: { y: 0, autoKill: false },\n duration: 1\n })\n var tl = gsap.timeline()\n tl\n .to(currentContainer, {\n onStart: function () {\n gsap.to(window, {\n scrollTo: { y: 0, autoKill: false },\n duration: 1\n })\n },\n opacity: 0,\n ease: \"power3.out\",\n duration: .5,\n onComplete: function () {\n gsap.set(currentContainer, { display: \"none\" })\n }\n })\n .to(projectContainer, {\n opacity: 1,\n ease: \"power3.out\",\n duration: .5,\n onStart: function () {\n gsap.set(projectContainer, { display: \"flex\" })\n document.querySelector(btn).classList.remove(\"active\")\n document.querySelector(\"#featured-btn\").classList.add(\"active\")\n },\n onComplete: function () {\n currentCategory = \"#featured-project\"\n setTimeout(() => {\n ScrollTrigger.refresh();\n }, 200);\n }\n })\n\n}\n\n\nfunction filterListing() {\n var isOpen = null;\n\n sectorBtn.addEventListener(\"click\", function () {\n\n if (isOpen === \"sector\") {\n console.log(\"yes it is\");\n\n document.querySelectorAll(\".listing-filter\").forEach(function (p) {\n p.querySelector(\".name-space\").textContent = ``\n p.querySelector(\".name-project-count\").textContent = ``\n p.querySelector(\".filter-close\").innerHTML = ``\n })\n\n filterList.style.opacity = \"0\";\n filterList.style.height = \"0\";\n filterList.style.padding = \"0\"\n\n backToFeatured(\"#sectors-btn\")\n isOpen = null;\n return;\n }\n\n document.querySelectorAll(\".listing-filter\").forEach(function (p) {\n p.querySelector(\".name-space\").textContent = ``\n p.querySelector(\".name-project-count\").textContent = ``\n p.querySelector(\".filter-close\").innerHTML = ``\n })\n\n if (window.innerWidth < 575) {\n filterList.style.height = \"500px\";\n } else if (window.innerHeight < 1199) {\n filterList.style.height = \"170px\";\n } else if (window.innerHeight < 991) {\n filterList.style.height = \"180px\";\n } else if (window.innerHeight < 767) {\n filterList.style.height = \"220px\";\n } else {\n filterList.style.height = \"150px\";\n }\n isOpen = \"sector\";\n filterList.style.padding = \"13px 13px 50px 13px\"\n filterList.style.opacity = \"1\";\n\n filterList.innerHTML = \"\";\n porjectData[0].sectors.forEach(function (sector) {\n var divw = document.createElement(\"div\")\n var div = document.createElement(\"div\")\n var span = document.createElement(\"span\")\n var p = document.createElement(\"p\")\n p.textContent = sector.name\n span.textContent = `(${sector.projects.length})`\n divw.classList.add(\"options-fl-main\")\n div.classList.add(\"options-fl\")\n div.appendChild(p)\n div.appendChild(span)\n divw.appendChild(div)\n filterList.appendChild(divw)\n })\n })\n\n // clientBtn.addEventListener(\"click\", function () {\n // if (isOpen === \"client\") {\n // document.querySelectorAll(\".listing-filter\").forEach(function (p) {\n // p.querySelector(\".name-space\").textContent = ``\n // p.querySelector(\".name-project-count\").textContent = ``\n // p.querySelector(\".filter-close\").innerHTML = ``\n // })\n\n // filterList.style.opacity = \"0\";\n // filterList.style.height = \"0\";\n // filterList.style.padding = \"0\"\n // isOpen = null;\n // return;\n // }\n\n // document.querySelectorAll(\".listing-filter\").forEach(function (p) {\n // p.querySelector(\".name-space\").textContent = ``\n // p.querySelector(\".name-project-count\").textContent = ``\n // p.querySelector(\".filter-close\").innerHTML = ``\n // })\n\n // if (window.innerWidth < 575) {\n // filterList.style.height = \"500px\";\n // } else if (window.innerHeight < 1199) {\n // filterList.style.height = \"170px\";\n // } else if (window.innerHeight < 991) {\n // filterList.style.height = \"180px\";\n // } else if (window.innerHeight < 767) {\n // filterList.style.height = \"220px\";\n // } else {\n // filterList.style.height = \"150px\";\n // }\n // isOpen = \"client\";\n // filterList.style.padding = \"13px 13px 50px 13px\"\n // filterList.style.opacity = \"1\";\n\n // filterList.innerHTML = \"\";\n // porjectData[1].clients.forEach(function (client) {\n // var divw = document.createElement(\"div\")\n // var div = document.createElement(\"div\");\n // var span = document.createElement(\"span\");\n // var p = document.createElement(\"p\")\n // p.textContent = client.client\n // span.textContent = `(${client.projects.length})`\n // divw.classList.add(\"options-fl-main\")\n // div.classList.add(\"options-fl\")\n // div.appendChild(p)\n // div.appendChild(span)\n // divw.appendChild(div)\n // filterList.appendChild(divw)\n // })\n // })\n\n serviceBtn.addEventListener(\"click\", function () {\n\n if (isOpen === \"service\") {\n document.querySelectorAll(\".listing-filter\").forEach(function (p) {\n p.querySelector(\".name-space\").textContent = ``\n p.querySelector(\".name-project-count\").textContent = ``\n p.querySelector(\".filter-close\").innerHTML = ``\n })\n\n filterList.style.opacity = \"0\";\n filterList.style.height = \"0\";\n filterList.style.padding = \"0\"\n backToFeatured(\"#service-btn\")\n isOpen = null;\n return;\n }\n\n document.querySelectorAll(\".listing-filter\").forEach(function (p) {\n p.querySelector(\".name-space\").textContent = ``\n p.querySelector(\".name-project-count\").textContent = ``\n p.querySelector(\".filter-close\").innerHTML = ``\n })\n\n if (window.innerWidth < 575) {\n filterList.style.height = \"500px\";\n } else if (window.innerHeight < 1199) {\n filterList.style.height = \"170px\";\n } else if (window.innerHeight < 991) {\n filterList.style.height = \"180px\";\n } else if (window.innerHeight < 767) {\n filterList.style.height = \"220px\";\n } else {\n filterList.style.height = \"150px\";\n }\n isOpen = \"service\";\n filterList.style.padding = \"13px 13px 50px 13px\"\n filterList.style.opacity = \"1\";\n\n filterList.innerHTML = \"\";\n porjectData[2].services.forEach(function (service) {\n var divw = document.createElement(\"div\")\n var div = document.createElement(\"div\")\n var span = document.createElement(\"span\")\n var p = document.createElement(\"p\")\n p.textContent = service.service\n span.textContent = `(${service.projects.length})`\n divw.classList.add(\"options-fl-main\")\n div.classList.add(\"options-fl\")\n div.appendChild(p)\n div.appendChild(span)\n divw.appendChild(div)\n filterList.appendChild(divw)\n })\n })\n\n}\nfilterListing()\n\n\nfunction projectAnimation() {\n document.querySelectorAll(\".project\").forEach(function (project) {\n project.addEventListener(\"mouseover\", function () {\n project.classList.add(\"active\");\n let video = project.querySelector(\"video\");\n if (video) { // Ensure video exists before accessing properties\n video.currentTime = 0;\n video.play();\n }\n })\n project.addEventListener(\"mouseleave\", function () {\n project.classList.remove(\"active\");\n })\n })\n}\nprojectAnimation()\n\nfunction footerAnimation() {\n\n const updateTime = () => {\n const date = new Date();\n let hours = date.getHours();\n let minutes = date.getMinutes();\n const ampm = hours >= 12 ? 'PM' : 'AM';\n\n hours = hours % 12 || 12; // Convert 24-hour to 12-hour format\n minutes = minutes.toString().padStart(2, '0'); // Ensure two-digit minutes\n\n const timeString = `${hours}:${minutes} ${ampm}`;\n\n document.querySelector(\"#time\").textContent = timeString; // Update the DOM\n\n return timeString; // Return the formatted time string\n };\n updateTime();\n setInterval(updateTime, 60000);\n\n if (window.innerWidth > 991) {\n var ft = gsap.timeline({\n scrollTrigger: {\n trigger: \"footer\",\n scroller: \"body\",\n start: \"top 0%\",\n end: \"top -80%\",\n scrub: 1,\n pin: true\n }\n })\n\n ft\n .to(\".footer-layer\", {\n opacity: .9,\n }, \"a\")\n .to(\"#footer-content\", {\n transform: \"translateY(0%)\",\n delay: .5\n }, \"a\")\n }\n\n\n\n}\nfooterAnimation()\n\n\nvar isMenu = false;\ndocument.querySelector(\"#menu-button\").addEventListener(\"click\", function () {\n if (isMenuService) {\n isService = false;\n openService()\n document.querySelector(\"#menu-button\").textContent = \"close\"\n isMenuService = false;\n return;\n }\n if (!isMenu) {\n gsap.set(\"#menu-container\", { display: \"flex\" })\n document.querySelector(\"#menu-button\").textContent = \"close\"\n var tl = gsap.timeline()\n tl\n .to(\"#menu-container\", {\n opacity: 1,\n duration: 0.5\n })\n .from(\".menu-top, .menu-btm\", {\n y: \"30\",\n opacity: 0,\n duration: 0.3,\n stagger: 0.1\n })\n isMenu = true;\n }\n else {\n gsap.to(\"#menu-container\", {\n opacity: 0,\n duration: 0.5,\n onComplete: function () {\n gsap.set(\"#menu-container\", { display: \"none\" })\n document.querySelector(\"#menu-button\").textContent = \"menu\"\n\n }\n })\n isMenu = false;\n }\n})\n\ndocument.querySelector(\"#menu-service\").addEventListener(\"click\", function () {\n if (!isMenuService) {\n document.querySelector(\"#menu-button\").textContent = \"menu\"\n isMenuService = true;\n }\n})"],"names":["smoothScroll","lenis","t","raf","time","allProjectData","allProjectRender","projectContainer","projectRenderer","data","container","isSmallScreen","project","projectElement","showcaseDiv","showcaseOverDiv","img","title","desc","projectAnimation","porjectData","textEffectAnimation","element","clutter2","letter","elem","homeLoader","loader","serviceListingAnimation","serviceDets","textEffect","e","text","isMenuService","isService","serviceAnimation","btn","openService","currentCategory","filterList","sectorBtn","serviceBtn","filterAnimation","allFilter","filter","item","navLink","link","p","currentContainer","tl","renderProjects","filterBy","filteredProjects","backToFeatured","filterListing","isOpen","sector","divw","div","span","service","video","footerAnimation","updateTime","date","hours","minutes","ampm","timeString","ft","isMenu"],"mappings":"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"}