diff --git a/.claude/scheduled_tasks.lock b/.claude/scheduled_tasks.lock new file mode 100644 index 0000000..eac5c77 --- /dev/null +++ b/.claude/scheduled_tasks.lock @@ -0,0 +1 @@ +{"sessionId":"77406333-d7f1-42db-8165-5bc95e384f14","pid":12092,"acquiredAt":1778249203574} \ No newline at end of file diff --git a/.gitignore b/.gitignore index 5ef6a52..9c8a03f 100644 --- a/.gitignore +++ b/.gitignore @@ -39,3 +39,5 @@ yarn-error.log* # typescript *.tsbuildinfo next-env.d.ts + +.vercel diff --git a/app/favicon.ico b/app/favicon.ico deleted file mode 100644 index 718d6fe..0000000 Binary files a/app/favicon.ico and /dev/null differ diff --git a/app/globals.css b/app/globals.css deleted file mode 100644 index a2dc41e..0000000 --- a/app/globals.css +++ /dev/null @@ -1,26 +0,0 @@ -@import "tailwindcss"; - -:root { - --background: #ffffff; - --foreground: #171717; -} - -@theme inline { - --color-background: var(--background); - --color-foreground: var(--foreground); - --font-sans: var(--font-geist-sans); - --font-mono: var(--font-geist-mono); -} - -@media (prefers-color-scheme: dark) { - :root { - --background: #0a0a0a; - --foreground: #ededed; - } -} - -body { - background: var(--background); - color: var(--foreground); - font-family: Arial, Helvetica, sans-serif; -} diff --git a/app/layout.tsx b/app/layout.tsx deleted file mode 100644 index 976eb90..0000000 --- a/app/layout.tsx +++ /dev/null @@ -1,33 +0,0 @@ -import type { Metadata } from "next"; -import { Geist, Geist_Mono } from "next/font/google"; -import "./globals.css"; - -const geistSans = Geist({ - variable: "--font-geist-sans", - subsets: ["latin"], -}); - -const geistMono = Geist_Mono({ - variable: "--font-geist-mono", - subsets: ["latin"], -}); - -export const metadata: Metadata = { - title: "Create Next App", - description: "Generated by create next app", -}; - -export default function RootLayout({ - children, -}: Readonly<{ - children: React.ReactNode; -}>) { - return ( - - {children} - - ); -} diff --git a/app/page.tsx b/app/page.tsx deleted file mode 100644 index 3f36f7c..0000000 --- a/app/page.tsx +++ /dev/null @@ -1,65 +0,0 @@ -import Image from "next/image"; - -export default function Home() { - return ( -
-
- Next.js logo -
-

- To get started, edit the page.tsx file. -

-

- Looking for a starting point or more instructions? Head over to{" "} - - Templates - {" "} - or the{" "} - - Learning - {" "} - center. -

-
-
- - Vercel logomark - Deploy Now - - - Documentation - -
-
-
- ); -} diff --git a/package-lock.json b/package-lock.json index e26d1ab..29dca4c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,34 +8,27 @@ "name": "linkedup", "version": "0.1.0", "dependencies": { + "aos": "^2.3.4", + "bootstrap": "^5.3.8", + "gsap": "^3.15.0", + "lucide-react": "^1.16.0", "next": "16.2.6", "react": "19.2.4", - "react-dom": "19.2.4" + "react-dom": "19.2.4", + "swiper": "^12.1.4" }, "devDependencies": { - "@tailwindcss/postcss": "^4", + "@types/aos": "^3.0.7", + "@types/bootstrap": "^5.2.10", "@types/node": "^20", "@types/react": "^19", "@types/react-dom": "^19", "eslint": "^9", "eslint-config-next": "16.2.6", - "tailwindcss": "^4", + "sass": "^1.99.0", "typescript": "^5" } }, - "node_modules/@alloc/quick-lru": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", - "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/@babel/code-frame": { "version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz", @@ -1240,6 +1233,340 @@ "node": ">=12.4.0" } }, + "node_modules/@parcel/watcher": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.6.tgz", + "integrity": "sha512-tmmZ3lQxAe/k/+rNnXQRawJ4NjxO2hqiOLTHvWchtGZULp4RyFeh6aU4XdOYBFe2KE1oShQTv4AblOs2iOrNnQ==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "dependencies": { + "detect-libc": "^2.0.3", + "is-glob": "^4.0.3", + "node-addon-api": "^7.0.0", + "picomatch": "^4.0.3" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.5.6", + "@parcel/watcher-darwin-arm64": "2.5.6", + "@parcel/watcher-darwin-x64": "2.5.6", + "@parcel/watcher-freebsd-x64": "2.5.6", + "@parcel/watcher-linux-arm-glibc": "2.5.6", + "@parcel/watcher-linux-arm-musl": "2.5.6", + "@parcel/watcher-linux-arm64-glibc": "2.5.6", + "@parcel/watcher-linux-arm64-musl": "2.5.6", + "@parcel/watcher-linux-x64-glibc": "2.5.6", + "@parcel/watcher-linux-x64-musl": "2.5.6", + "@parcel/watcher-win32-arm64": "2.5.6", + "@parcel/watcher-win32-ia32": "2.5.6", + "@parcel/watcher-win32-x64": "2.5.6" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.6.tgz", + "integrity": "sha512-YQxSS34tPF/6ZG7r/Ih9xy+kP/WwediEUsqmtf0cuCV5TPPKw/PQHRhueUo6JdeFJaqV3pyjm0GdYjZotbRt/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.6.tgz", + "integrity": "sha512-Z2ZdrnwyXvvvdtRHLmM4knydIdU9adO3D4n/0cVipF3rRiwP+3/sfzpAwA/qKFL6i1ModaabkU7IbpeMBgiVEA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.6.tgz", + "integrity": "sha512-HgvOf3W9dhithcwOWX9uDZyn1lW9R+7tPZ4sug+NGrGIo4Rk1hAXLEbcH1TQSqxts0NYXXlOWqVpvS1SFS4fRg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.6.tgz", + "integrity": "sha512-vJVi8yd/qzJxEKHkeemh7w3YAn6RJCtYlE4HPMoVnCpIXEzSrxErBW5SJBgKLbXU3WdIpkjBTeUNtyBVn8TRng==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.6.tgz", + "integrity": "sha512-9JiYfB6h6BgV50CCfasfLf/uvOcJskMSwcdH1PHH9rvS1IrNy8zad6IUVPVUfmXr+u+Km9IxcfMLzgdOudz9EQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-musl": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.6.tgz", + "integrity": "sha512-Ve3gUCG57nuUUSyjBq/MAM0CzArtuIOxsBdQ+ftz6ho8n7s1i9E1Nmk/xmP323r2YL0SONs1EuwqBp2u1k5fxg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.6.tgz", + "integrity": "sha512-f2g/DT3NhGPdBmMWYoxixqYr3v/UXcmLOYy16Bx0TM20Tchduwr4EaCbmxh1321TABqPGDpS8D/ggOTaljijOA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.6.tgz", + "integrity": "sha512-qb6naMDGlbCwdhLj6hgoVKJl2odL34z2sqkC7Z6kzir8b5W65WYDpLB6R06KabvZdgoHI/zxke4b3zR0wAbDTA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.6.tgz", + "integrity": "sha512-kbT5wvNQlx7NaGjzPFu8nVIW1rWqV780O7ZtkjuWaPUgpv2NMFpjYERVi0UYj1msZNyCzGlaCWEtzc+exjMGbQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.6.tgz", + "integrity": "sha512-1JRFeC+h7RdXwldHzTsmdtYR/Ku8SylLgTU/reMuqdVD7CtLwf0VR1FqeprZ0eHQkO0vqsbvFLXUmYm/uNKJBg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.6.tgz", + "integrity": "sha512-3ukyebjc6eGlw9yRt678DxVF7rjXatWiHvTXqphZLvo7aC5NdEgFufVwjFfY51ijYEWpXbqF5jtrK275z52D4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-ia32": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.6.tgz", + "integrity": "sha512-k35yLp1ZMwwee3Ez/pxBi5cf4AoBKYXj00CZ80jUz5h8prpiaQsiRPKQMxoLstNuqe2vR4RNPEAEcjEFzhEz/g==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.6.tgz", + "integrity": "sha512-hbQlYcCq5dlAX9Qx+kFb0FHue6vbjlf0FrNzSKdYK2APUf7tGfGxQCk2ihEREmbR6ZMc0MVAD5RIX/41gpUzTw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher/node_modules/picomatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", + "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, "node_modules/@rtsao/scc": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", @@ -1256,277 +1583,6 @@ "tslib": "^2.8.0" } }, - "node_modules/@tailwindcss/node": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.2.4.tgz", - "integrity": "sha512-Ai7+yQPxz3ddrDQzFfBKdHEVBg0w3Zl83jnjuwxnZOsnH9pGn93QHQtpU0p/8rYWxvbFZHneni6p1BSLK4DkGA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/remapping": "^2.3.5", - "enhanced-resolve": "^5.19.0", - "jiti": "^2.6.1", - "lightningcss": "1.32.0", - "magic-string": "^0.30.21", - "source-map-js": "^1.2.1", - "tailwindcss": "4.2.4" - } - }, - "node_modules/@tailwindcss/oxide": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.2.4.tgz", - "integrity": "sha512-9El/iI069DKDSXwTvB9J4BwdO5JhRrOweGaK25taBAvBXyXqJAX+Jqdvs8r8gKpsI/1m0LeJLyQYTf/WLrBT1Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 20" - }, - "optionalDependencies": { - "@tailwindcss/oxide-android-arm64": "4.2.4", - "@tailwindcss/oxide-darwin-arm64": "4.2.4", - "@tailwindcss/oxide-darwin-x64": "4.2.4", - "@tailwindcss/oxide-freebsd-x64": "4.2.4", - "@tailwindcss/oxide-linux-arm-gnueabihf": "4.2.4", - "@tailwindcss/oxide-linux-arm64-gnu": "4.2.4", - "@tailwindcss/oxide-linux-arm64-musl": "4.2.4", - "@tailwindcss/oxide-linux-x64-gnu": "4.2.4", - "@tailwindcss/oxide-linux-x64-musl": "4.2.4", - "@tailwindcss/oxide-wasm32-wasi": "4.2.4", - "@tailwindcss/oxide-win32-arm64-msvc": "4.2.4", - "@tailwindcss/oxide-win32-x64-msvc": "4.2.4" - } - }, - "node_modules/@tailwindcss/oxide-android-arm64": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.2.4.tgz", - "integrity": "sha512-e7MOr1SAn9U8KlZzPi1ZXGZHeC5anY36qjNwmZv9pOJ8E4Q6jmD1vyEHkQFmNOIN7twGPEMXRHmitN4zCMN03g==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">= 20" - } - }, - "node_modules/@tailwindcss/oxide-darwin-arm64": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.2.4.tgz", - "integrity": "sha512-tSC/Kbqpz/5/o/C2sG7QvOxAKqyd10bq+ypZNf+9Fi2TvbVbv1zNpcEptcsU7DPROaSbVgUXmrzKhurFvo5eDg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 20" - } - }, - "node_modules/@tailwindcss/oxide-darwin-x64": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.2.4.tgz", - "integrity": "sha512-yPyUXn3yO/ufR6+Kzv0t4fCg2qNr90jxXc5QqBpjlPNd0NqyDXcmQb/6weunH/MEDXW5dhyEi+agTDiqa3WsGg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 20" - } - }, - "node_modules/@tailwindcss/oxide-freebsd-x64": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.2.4.tgz", - "integrity": "sha512-BoMIB4vMQtZsXdGLVc2z+P9DbETkiopogfWZKbWwM8b/1Vinbs4YcUwo+kM/KeLkX3Ygrf4/PsRndKaYhS8Eiw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">= 20" - } - }, - "node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.2.4.tgz", - "integrity": "sha512-7pIHBLTHYRAlS7V22JNuTh33yLH4VElwKtB3bwchK/UaKUPpQ0lPQiOWcbm4V3WP2I6fNIJ23vABIvoy2izdwA==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 20" - } - }, - "node_modules/@tailwindcss/oxide-linux-arm64-gnu": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.2.4.tgz", - "integrity": "sha512-+E4wxJ0ZGOzSH325reXTWB48l42i93kQqMvDyz5gqfRzRZ7faNhnmvlV4EPGJU3QJM/3Ab5jhJ5pCRUsKn6OQw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 20" - } - }, - "node_modules/@tailwindcss/oxide-linux-arm64-musl": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.2.4.tgz", - "integrity": "sha512-bBADEGAbo4ASnppIziaQJelekCxdMaxisrk+fB7Thit72IBnALp9K6ffA2G4ruj90G9XRS2VQ6q2bCKbfFV82g==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 20" - } - }, - "node_modules/@tailwindcss/oxide-linux-x64-gnu": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.2.4.tgz", - "integrity": "sha512-7Mx25E4WTfnht0TVRTyC00j3i0M+EeFe7wguMDTlX4mRxafznw0CA8WJkFjWYH5BlgELd1kSjuU2JiPnNZbJDA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 20" - } - }, - "node_modules/@tailwindcss/oxide-linux-x64-musl": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.2.4.tgz", - "integrity": "sha512-2wwJRF7nyhOR0hhHoChc04xngV3iS+akccHTGtz965FwF0up4b2lOdo6kI1EbDaEXKgvcrFBYcYQQ/rrnWFVfA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 20" - } - }, - "node_modules/@tailwindcss/oxide-wasm32-wasi": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.2.4.tgz", - "integrity": "sha512-FQsqApeor8Fo6gUEklzmaa9994orJZZDBAlQpK2Mq+DslRKFJeD6AjHpBQ0kZFQohVr8o85PPh8eOy86VlSCmw==", - "bundleDependencies": [ - "@napi-rs/wasm-runtime", - "@emnapi/core", - "@emnapi/runtime", - "@tybys/wasm-util", - "@emnapi/wasi-threads", - "tslib" - ], - "cpu": [ - "wasm32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "@emnapi/core": "^1.8.1", - "@emnapi/runtime": "^1.8.1", - "@emnapi/wasi-threads": "^1.1.0", - "@napi-rs/wasm-runtime": "^1.1.1", - "@tybys/wasm-util": "^0.10.1", - "tslib": "^2.8.1" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@tailwindcss/oxide-win32-arm64-msvc": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.2.4.tgz", - "integrity": "sha512-L9BXqxC4ToVgwMFqj3pmZRqyHEztulpUJzCxUtLjobMCzTPsGt1Fa9enKbOpY2iIyVtaHNeNvAK8ERP/64sqGQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 20" - } - }, - "node_modules/@tailwindcss/oxide-win32-x64-msvc": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.2.4.tgz", - "integrity": "sha512-ESlKG0EpVJQwRjXDDa9rLvhEAh0mhP1sF7sap9dNZT0yyl9SAG6T7gdP09EH0vIv0UNTlo6jPWyujD6559fZvw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 20" - } - }, - "node_modules/@tailwindcss/postcss": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/@tailwindcss/postcss/-/postcss-4.2.4.tgz", - "integrity": "sha512-wgAVj6nUWAolAu8YFvzT2cTBIElWHkjZwFYovF+xsqKsW2ADxM/X2opxj5NsF/qVccAOjRNe8X2IdPzMsWyHTg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@alloc/quick-lru": "^5.2.0", - "@tailwindcss/node": "4.2.4", - "@tailwindcss/oxide": "4.2.4", - "postcss": "^8.5.6", - "tailwindcss": "4.2.4" - } - }, "node_modules/@tybys/wasm-util": { "version": "0.10.2", "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.2.tgz", @@ -1538,6 +1594,23 @@ "tslib": "^2.4.0" } }, + "node_modules/@types/aos": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@types/aos/-/aos-3.0.7.tgz", + "integrity": "sha512-sEhyFqvKauUJZDbvAB3Pggynrq6g+2PS4XB3tmUr+mDL1gfDJnwslUC4QQ7/l8UD+LWpr3RxZVR/rHoZrLqZVg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/bootstrap": { + "version": "5.2.10", + "resolved": "https://registry.npmjs.org/@types/bootstrap/-/bootstrap-5.2.10.tgz", + "integrity": "sha512-F2X+cd6551tep0MvVZ6nM8v7XgGN/twpdNDjqS1TUM7YFNEtQYWk+dKAnH+T1gr6QgCoGMPl487xw/9hXooa2g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@popperjs/core": "^2.9.2" + } + }, "node_modules/@types/estree": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.9.tgz", @@ -2209,6 +2282,17 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/aos": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/aos/-/aos-2.3.4.tgz", + "integrity": "sha512-zh/ahtR2yME4I51z8IttIt4lC1Nw0ktsFtmeDzID1m9naJnWXhCoARaCgNOGXb5CLy3zm+wqmRAEgMYB5E2HUw==", + "license": "MIT", + "dependencies": { + "classlist-polyfill": "^1.0.3", + "lodash.debounce": "^4.0.6", + "lodash.throttle": "^4.0.1" + } + }, "node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -2458,6 +2542,25 @@ "node": ">=6.0.0" } }, + "node_modules/bootstrap": { + "version": "5.3.8", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.8.tgz", + "integrity": "sha512-HP1SZDqaLDPwsNiqRqi5NcP0SSXciX2s9E+RyqJIIqGo+vJeN5AJVM98CXmW/Wux0nQ5L7jeWUdplCEf0Ee+tg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "license": "MIT", + "peerDependencies": { + "@popperjs/core": "^2.11.8" + } + }, "node_modules/brace-expansion": { "version": "1.1.14", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.14.tgz", @@ -2613,6 +2716,28 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/chokidar": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "readdirp": "^4.0.1" + }, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/classlist-polyfill": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/classlist-polyfill/-/classlist-polyfill-1.2.0.tgz", + "integrity": "sha512-GzIjNdcEtH4ieA2S8NmrSxv7DfEV5fmixQeyTmqmRmRJPGpRBaSnA2a0VrCjyT8iW8JjEdMbKzDotAJf+ajgaQ==", + "license": "Unlicense" + }, "node_modules/client-only": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", @@ -2801,8 +2926,8 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", - "devOptional": true, "license": "Apache-2.0", + "optional": true, "engines": { "node": ">=8" } @@ -2849,20 +2974,6 @@ "dev": true, "license": "MIT" }, - "node_modules/enhanced-resolve": { - "version": "5.21.2", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.21.2.tgz", - "integrity": "sha512-xe9vQb5kReirPUxgQrXA3ihgbCqssmTiM7cOZ+Gzu+VeGWgpV98lLZvp0dl4yriyAePcewxGUs9UpKD8PET9KQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.3.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, "node_modules/es-abstract": { "version": "1.24.2", "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.2.tgz", @@ -3797,12 +3908,11 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true, - "license": "ISC" + "node_modules/gsap": { + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/gsap/-/gsap-3.15.0.tgz", + "integrity": "sha512-dMW4CWBTUK1AEEDeZc1g4xpPGIrSf9fJF960qbTZmN/QwZIWY5wgliS6JWl9/25fpTGJrMRtSjGtOmPnfjZB+A==", + "license": "Standard 'no charge' license: https://gsap.com/standard-license." }, "node_modules/has-bigints": { "version": "1.1.0", @@ -3925,6 +4035,13 @@ "node": ">= 4" } }, + "node_modules/immutable": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.5.tgz", + "integrity": "sha512-t7xcm2siw+hlUM68I+UEOK+z84RzmN59as9DZ7P1l0994DKUWV7UXBMQZVxaoMSRQ+PBZbHCOoBt7a2wxOMt+A==", + "devOptional": true, + "license": "MIT" + }, "node_modules/import-fresh": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", @@ -4414,16 +4531,6 @@ "node": ">= 0.4" } }, - "node_modules/jiti": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.7.0.tgz", - "integrity": "sha512-AC/7JofJvZGrrneWNaEnJeOLUx+JlGt7tNa0wZiRPT4MY1wmfKjt2+6O2p2uz2+skll8OZZmJMNqeke7kKbNgQ==", - "dev": true, - "license": "MIT", - "bin": { - "jiti": "lib/jiti-cli.mjs" - } - }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -4551,267 +4658,6 @@ "node": ">= 0.8.0" } }, - "node_modules/lightningcss": { - "version": "1.32.0", - "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.32.0.tgz", - "integrity": "sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==", - "dev": true, - "license": "MPL-2.0", - "dependencies": { - "detect-libc": "^2.0.3" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "optionalDependencies": { - "lightningcss-android-arm64": "1.32.0", - "lightningcss-darwin-arm64": "1.32.0", - "lightningcss-darwin-x64": "1.32.0", - "lightningcss-freebsd-x64": "1.32.0", - "lightningcss-linux-arm-gnueabihf": "1.32.0", - "lightningcss-linux-arm64-gnu": "1.32.0", - "lightningcss-linux-arm64-musl": "1.32.0", - "lightningcss-linux-x64-gnu": "1.32.0", - "lightningcss-linux-x64-musl": "1.32.0", - "lightningcss-win32-arm64-msvc": "1.32.0", - "lightningcss-win32-x64-msvc": "1.32.0" - } - }, - "node_modules/lightningcss-android-arm64": { - "version": "1.32.0", - "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.32.0.tgz", - "integrity": "sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MPL-2.0", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-darwin-arm64": { - "version": "1.32.0", - "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz", - "integrity": "sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MPL-2.0", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-darwin-x64": { - "version": "1.32.0", - "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.32.0.tgz", - "integrity": "sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MPL-2.0", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-freebsd-x64": { - "version": "1.32.0", - "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.32.0.tgz", - "integrity": "sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MPL-2.0", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-arm-gnueabihf": { - "version": "1.32.0", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.32.0.tgz", - "integrity": "sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MPL-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-arm64-gnu": { - "version": "1.32.0", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.32.0.tgz", - "integrity": "sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MPL-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-arm64-musl": { - "version": "1.32.0", - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.32.0.tgz", - "integrity": "sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MPL-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-x64-gnu": { - "version": "1.32.0", - "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.32.0.tgz", - "integrity": "sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MPL-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-linux-x64-musl": { - "version": "1.32.0", - "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.32.0.tgz", - "integrity": "sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MPL-2.0", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-win32-arm64-msvc": { - "version": "1.32.0", - "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.32.0.tgz", - "integrity": "sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MPL-2.0", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "node_modules/lightningcss-win32-x64-msvc": { - "version": "1.32.0", - "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.32.0.tgz", - "integrity": "sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MPL-2.0", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, "node_modules/locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -4828,6 +4674,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "license": "MIT" + }, "node_modules/lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", @@ -4835,6 +4687,12 @@ "dev": true, "license": "MIT" }, + "node_modules/lodash.throttle": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", + "integrity": "sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==", + "license": "MIT" + }, "node_modules/loose-envify": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", @@ -4858,14 +4716,13 @@ "yallist": "^3.0.2" } }, - "node_modules/magic-string": { - "version": "0.30.21", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", - "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.5.5" + "node_modules/lucide-react": { + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-1.16.0.tgz", + "integrity": "sha512-dYwyPzb4MEKpGUmNYk3WKWPnMrHs3FKM+q94kAnJrcDIqqn1hq2xY8scaS2ovsOCM5D51ey2gaRG3PBb1vgoYQ==", + "license": "ISC", + "peerDependencies": { + "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, "node_modules/math-intrinsics": { @@ -5026,33 +4883,13 @@ } } }, - "node_modules/next/node_modules/postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", + "dev": true, "license": "MIT", - "dependencies": { - "nanoid": "^3.3.6", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } + "optional": true }, "node_modules/node-exports-info": { "version": "1.6.0", @@ -5341,10 +5178,9 @@ } }, "node_modules/postcss": { - "version": "8.5.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.14.tgz", - "integrity": "sha512-SoSL4+OSEtR99LHFZQiJLkT59C5B1amGO1NzTwj7TT1qCUgUO6hxOvzkOYxD+vMrXBM3XJIKzokoERdqQq/Zmg==", - "dev": true, + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", "funding": [ { "type": "opencollective", @@ -5361,9 +5197,9 @@ ], "license": "MIT", "dependencies": { - "nanoid": "^3.3.11", - "picocolors": "^1.1.1", - "source-map-js": "^1.2.1" + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" }, "engines": { "node": "^10 || ^12 || >=14" @@ -5450,6 +5286,20 @@ "dev": true, "license": "MIT" }, + "node_modules/readdirp": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", + "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">= 14.18.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, "node_modules/reflect.getprototypeof": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", @@ -5628,6 +5478,27 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/sass": { + "version": "1.99.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.99.0.tgz", + "integrity": "sha512-kgW13M54DUB7IsIRM5LvJkNlpH+WhMpooUcaWGFARkF1Tc82v9mIWkCbCYf+MBvpIUBSeSOTilpZjEPr2VYE6Q==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "chokidar": "^4.0.0", + "immutable": "^5.1.5", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + }, + "optionalDependencies": { + "@parcel/watcher": "^2.4.1" + } + }, "node_modules/scheduler": { "version": "0.27.0", "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz", @@ -6065,25 +5936,23 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/tailwindcss": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.2.4.tgz", - "integrity": "sha512-HhKppgO81FQof5m6TEnuBWCZGgfRAWbaeOaGT00KOy/Pf/j6oUihdvBpA7ltCeAvZpFhW3j0PTclkxsd4IXYDA==", - "dev": true, - "license": "MIT" - }, - "node_modules/tapable": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.3.3.tgz", - "integrity": "sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A==", - "dev": true, + "node_modules/swiper": { + "version": "12.1.4", + "resolved": "https://registry.npmjs.org/swiper/-/swiper-12.1.4.tgz", + "integrity": "sha512-bihiwoKMOQwW8FfdUbo1DgkVH25E+4ZELIq0oopL1KTKBteLuaTMi/wwFjMxtlhTkk45k3XQ89D1Fvv0spSqBA==", + "funding": [ + { + "type": "custom", + "url": "https://sponsors.nolimits4web.com" + }, + { + "type": "github", + "url": "https://github.com/sponsors/nolimits4web" + } + ], "license": "MIT", "engines": { - "node": ">=6" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "node": ">= 4.7.0" } }, "node_modules/tinyglobby": { diff --git a/package.json b/package.json index 40bfc65..f89f3a5 100644 --- a/package.json +++ b/package.json @@ -9,18 +9,24 @@ "lint": "eslint" }, "dependencies": { + "aos": "^2.3.4", + "bootstrap": "^5.3.8", + "gsap": "^3.15.0", + "lucide-react": "^1.16.0", "next": "16.2.6", "react": "19.2.4", - "react-dom": "19.2.4" + "react-dom": "19.2.4", + "swiper": "^12.1.4" }, "devDependencies": { - "@tailwindcss/postcss": "^4", + "@types/aos": "^3.0.7", + "@types/bootstrap": "^5.2.10", "@types/node": "^20", "@types/react": "^19", "@types/react-dom": "^19", "eslint": "^9", "eslint-config-next": "16.2.6", - "tailwindcss": "^4", + "sass": "^1.99.0", "typescript": "^5" } } diff --git a/postcss.config.mjs b/postcss.config.mjs deleted file mode 100644 index 61e3684..0000000 --- a/postcss.config.mjs +++ /dev/null @@ -1,7 +0,0 @@ -const config = { - plugins: { - "@tailwindcss/postcss": {}, - }, -}; - -export default config; diff --git a/public/assets/100people.png b/public/assets/100people.png new file mode 100644 index 0000000..6330ae7 Binary files /dev/null and b/public/assets/100people.png differ diff --git a/public/assets/3dvisualization.png b/public/assets/3dvisualization.png new file mode 100644 index 0000000..15fdfac Binary files /dev/null and b/public/assets/3dvisualization.png differ diff --git a/public/assets/AI-native.png b/public/assets/AI-native.png new file mode 100644 index 0000000..dcaeff2 Binary files /dev/null and b/public/assets/AI-native.png differ diff --git a/public/assets/AI-native1.png b/public/assets/AI-native1.png new file mode 100644 index 0000000..ef22bf5 Binary files /dev/null and b/public/assets/AI-native1.png differ diff --git a/public/assets/AI-native2.png b/public/assets/AI-native2.png new file mode 100644 index 0000000..f74ae8d Binary files /dev/null and b/public/assets/AI-native2.png differ diff --git a/public/assets/AI-native3.png b/public/assets/AI-native3.png new file mode 100644 index 0000000..6864c98 Binary files /dev/null and b/public/assets/AI-native3.png differ diff --git a/public/assets/AI-native4.png b/public/assets/AI-native4.png new file mode 100644 index 0000000..3e076a6 Binary files /dev/null and b/public/assets/AI-native4.png differ diff --git a/public/assets/AI-nativeback.png b/public/assets/AI-nativeback.png new file mode 100644 index 0000000..9137404 Binary files /dev/null and b/public/assets/AI-nativeback.png differ diff --git a/public/assets/Aaidea.png b/public/assets/Aaidea.png new file mode 100644 index 0000000..1d1dfee Binary files /dev/null and b/public/assets/Aaidea.png differ diff --git a/public/assets/AchievAR.png b/public/assets/AchievAR.png new file mode 100644 index 0000000..001ffd6 Binary files /dev/null and b/public/assets/AchievAR.png differ diff --git a/public/assets/AchievARstart.png b/public/assets/AchievARstart.png new file mode 100644 index 0000000..2c32c93 Binary files /dev/null and b/public/assets/AchievARstart.png differ diff --git a/public/assets/Aiidea.png b/public/assets/Aiidea.png new file mode 100644 index 0000000..1d1dfee Binary files /dev/null and b/public/assets/Aiidea.png differ diff --git a/public/assets/Camera.png b/public/assets/Camera.png new file mode 100644 index 0000000..066255c Binary files /dev/null and b/public/assets/Camera.png differ diff --git a/public/assets/Cloud_Infrastructure.png b/public/assets/Cloud_Infrastructure.png new file mode 100644 index 0000000..9717df0 Binary files /dev/null and b/public/assets/Cloud_Infrastructure.png differ diff --git a/public/assets/Color.png b/public/assets/Color.png new file mode 100644 index 0000000..471a941 Binary files /dev/null and b/public/assets/Color.png differ diff --git a/public/assets/Crm.png b/public/assets/Crm.png new file mode 100644 index 0000000..48b03a1 Binary files /dev/null and b/public/assets/Crm.png differ diff --git a/public/assets/Customsolutions.png b/public/assets/Customsolutions.png new file mode 100644 index 0000000..37ab9c8 Binary files /dev/null and b/public/assets/Customsolutions.png differ diff --git a/public/assets/Director.png b/public/assets/Director.png new file mode 100644 index 0000000..320a154 Binary files /dev/null and b/public/assets/Director.png differ diff --git a/public/assets/Fidux.png b/public/assets/Fidux.png new file mode 100644 index 0000000..9f76f92 Binary files /dev/null and b/public/assets/Fidux.png differ diff --git a/public/assets/Fidux1.png b/public/assets/Fidux1.png new file mode 100644 index 0000000..77badcb Binary files /dev/null and b/public/assets/Fidux1.png differ diff --git a/public/assets/Generation1.png b/public/assets/Generation1.png new file mode 100644 index 0000000..9e126b9 Binary files /dev/null and b/public/assets/Generation1.png differ diff --git a/public/assets/Generation2.png b/public/assets/Generation2.png new file mode 100644 index 0000000..f3f0c95 Binary files /dev/null and b/public/assets/Generation2.png differ diff --git a/public/assets/Generation3.png b/public/assets/Generation3.png new file mode 100644 index 0000000..3d0f76d Binary files /dev/null and b/public/assets/Generation3.png differ diff --git a/public/assets/Generation4.png b/public/assets/Generation4.png new file mode 100644 index 0000000..61c8106 Binary files /dev/null and b/public/assets/Generation4.png differ diff --git a/public/assets/Group 1597884267.png b/public/assets/Group 1597884267.png new file mode 100644 index 0000000..1d1dfee Binary files /dev/null and b/public/assets/Group 1597884267.png differ diff --git a/public/assets/Infrastructure.png b/public/assets/Infrastructure.png new file mode 100644 index 0000000..48b03a1 Binary files /dev/null and b/public/assets/Infrastructure.png differ diff --git a/public/assets/Infrastructure1.png b/public/assets/Infrastructure1.png new file mode 100644 index 0000000..9e126b9 Binary files /dev/null and b/public/assets/Infrastructure1.png differ diff --git a/public/assets/Infrastructure2.png b/public/assets/Infrastructure2.png new file mode 100644 index 0000000..f3f0c95 Binary files /dev/null and b/public/assets/Infrastructure2.png differ diff --git a/public/assets/Infrastructure3.png b/public/assets/Infrastructure3.png new file mode 100644 index 0000000..3d0f76d Binary files /dev/null and b/public/assets/Infrastructure3.png differ diff --git a/public/assets/Infrastructure4.png b/public/assets/Infrastructure4.png new file mode 100644 index 0000000..61c8106 Binary files /dev/null and b/public/assets/Infrastructure4.png differ diff --git a/public/assets/LinkedUp.png b/public/assets/LinkedUp.png new file mode 100644 index 0000000..76ee5f9 Binary files /dev/null and b/public/assets/LinkedUp.png differ diff --git a/public/assets/LinkedUplogo.png b/public/assets/LinkedUplogo.png new file mode 100644 index 0000000..7b0ecc7 Binary files /dev/null and b/public/assets/LinkedUplogo.png differ diff --git a/public/assets/Marcus.png b/public/assets/Marcus.png new file mode 100644 index 0000000..0930c29 Binary files /dev/null and b/public/assets/Marcus.png differ diff --git a/public/assets/Visualization.png b/public/assets/Visualization.png new file mode 100644 index 0000000..c4d4339 Binary files /dev/null and b/public/assets/Visualization.png differ diff --git a/public/assets/Visualization1.png b/public/assets/Visualization1.png new file mode 100644 index 0000000..c1f306e Binary files /dev/null and b/public/assets/Visualization1.png differ diff --git a/public/assets/Visualization2.png b/public/assets/Visualization2.png new file mode 100644 index 0000000..2de5dc6 Binary files /dev/null and b/public/assets/Visualization2.png differ diff --git a/public/assets/Visualization3.png b/public/assets/Visualization3.png new file mode 100644 index 0000000..c832fb5 Binary files /dev/null and b/public/assets/Visualization3.png differ diff --git a/public/assets/Visualization4.png b/public/assets/Visualization4.png new file mode 100644 index 0000000..48c8b04 Binary files /dev/null and b/public/assets/Visualization4.png differ diff --git a/public/assets/Whoabout.png b/public/assets/Whoabout.png new file mode 100644 index 0000000..0b56ad8 Binary files /dev/null and b/public/assets/Whoabout.png differ diff --git a/public/assets/about1.png b/public/assets/about1.png new file mode 100644 index 0000000..2002136 Binary files /dev/null and b/public/assets/about1.png differ diff --git a/public/assets/about2.png b/public/assets/about2.png new file mode 100644 index 0000000..318c6c0 Binary files /dev/null and b/public/assets/about2.png differ diff --git a/public/assets/about_section_bodypower.html b/public/assets/about_section_bodypower.html new file mode 100644 index 0000000..8249e98 --- /dev/null +++ b/public/assets/about_section_bodypower.html @@ -0,0 +1,162 @@ + + + +
+
+
+ + +
+
About Our Conference
+

One of the most advanced fitness conferences ever created

+

BodyPower presents a next-generation fitness conference bringing together elite trainers, wellness innovators, and world-class speakers. Creating cutting-edge events since 2008 with unmatched energy, learning, and networking opportunities.

+ +
+
+
+ +
+
Since 2008
+

Our mission is to inspire and empower individuals to live healthier, stronger lives through expert fitness

+
Industry Leading Events
+
+
+
+ +
+
World-Class Speakers
+

Learn directly from elite athletes, global coaches, fitness entrepreneurs, and performance experts.

+
Industry Leading Events
+
+
+ +
+ + More About us +
+ +
+
+
+
+
FE
+
+
+

Fitness Experts

+

Global Industry Leaders

+
+
+
+
+ + +
+
+ + +
+
+
+
👤
+
Speaker Image
+
+
+
+ + +
+ +
+
+
+ ABCD +
+
+
+ +
4.9/5
+
★★★★★
+
+
Based on 250 review
+
+ + +
+
+
🏃‍♂️🏃‍♀️
Fitness Image
+
+
+
+ + +
+
+ +
+
+
ExCeL London
+

UK's Premier Conference Venue

+
+
+ +
+
+ +
+
+
diff --git a/public/assets/aboutback.png b/public/assets/aboutback.png new file mode 100644 index 0000000..4a7b9ac Binary files /dev/null and b/public/assets/aboutback.png differ diff --git a/public/assets/ainative.png b/public/assets/ainative.png new file mode 100644 index 0000000..3d7d0ea Binary files /dev/null and b/public/assets/ainative.png differ diff --git a/public/assets/aithist.png b/public/assets/aithist.png new file mode 100644 index 0000000..c0ca4f8 Binary files /dev/null and b/public/assets/aithist.png differ diff --git a/public/assets/arrowservice.svg b/public/assets/arrowservice.svg new file mode 100644 index 0000000..6d0b983 --- /dev/null +++ b/public/assets/arrowservice.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/assets/auto.png b/public/assets/auto.png new file mode 100644 index 0000000..0fed024 Binary files /dev/null and b/public/assets/auto.png differ diff --git a/public/assets/autoflow.png b/public/assets/autoflow.png new file mode 100644 index 0000000..e4172f8 Binary files /dev/null and b/public/assets/autoflow.png differ diff --git a/public/assets/bluebg.png b/public/assets/bluebg.png new file mode 100644 index 0000000..bb48fa9 Binary files /dev/null and b/public/assets/bluebg.png differ diff --git a/public/assets/brand.png b/public/assets/brand.png new file mode 100644 index 0000000..1b6a0e9 Binary files /dev/null and b/public/assets/brand.png differ diff --git a/public/assets/brand3d.png b/public/assets/brand3d.png new file mode 100644 index 0000000..672f09b Binary files /dev/null and b/public/assets/brand3d.png differ diff --git a/public/assets/brandback.png b/public/assets/brandback.png new file mode 100644 index 0000000..4a7b9ac Binary files /dev/null and b/public/assets/brandback.png differ diff --git a/public/assets/brandthist.png b/public/assets/brandthist.png new file mode 100644 index 0000000..2cb64e8 Binary files /dev/null and b/public/assets/brandthist.png differ diff --git a/public/assets/buttonarrow.svg b/public/assets/buttonarrow.svg new file mode 100644 index 0000000..2300f84 --- /dev/null +++ b/public/assets/buttonarrow.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/assets/callcontact.svg b/public/assets/callcontact.svg new file mode 100644 index 0000000..f4d423c --- /dev/null +++ b/public/assets/callcontact.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/assets/card1.png b/public/assets/card1.png new file mode 100644 index 0000000..878c244 Binary files /dev/null and b/public/assets/card1.png differ diff --git a/public/assets/card2.png b/public/assets/card2.png new file mode 100644 index 0000000..4b102ee Binary files /dev/null and b/public/assets/card2.png differ diff --git a/public/assets/card3.png b/public/assets/card3.png new file mode 100644 index 0000000..969e171 Binary files /dev/null and b/public/assets/card3.png differ diff --git a/public/assets/case1.png b/public/assets/case1.png new file mode 100644 index 0000000..31cb7b4 Binary files /dev/null and b/public/assets/case1.png differ diff --git a/public/assets/case2.png b/public/assets/case2.png new file mode 100644 index 0000000..708df2d Binary files /dev/null and b/public/assets/case2.png differ diff --git a/public/assets/case3.png b/public/assets/case3.png new file mode 100644 index 0000000..5094019 Binary files /dev/null and b/public/assets/case3.png differ diff --git a/public/assets/center-logo.png b/public/assets/center-logo.png new file mode 100644 index 0000000..e25264f Binary files /dev/null and b/public/assets/center-logo.png differ diff --git a/public/assets/cinema.png b/public/assets/cinema.png new file mode 100644 index 0000000..9137404 Binary files /dev/null and b/public/assets/cinema.png differ diff --git a/public/assets/cinemathist.png b/public/assets/cinemathist.png new file mode 100644 index 0000000..f1b2c5e Binary files /dev/null and b/public/assets/cinemathist.png differ diff --git a/public/assets/contact.png b/public/assets/contact.png new file mode 100644 index 0000000..29e2972 Binary files /dev/null and b/public/assets/contact.png differ diff --git a/public/assets/contactbACK1.png b/public/assets/contactbACK1.png new file mode 100644 index 0000000..29e2972 Binary files /dev/null and b/public/assets/contactbACK1.png differ diff --git a/public/assets/contactback.png b/public/assets/contactback.png new file mode 100644 index 0000000..da798ee Binary files /dev/null and b/public/assets/contactback.png differ diff --git a/public/assets/contactimage.png b/public/assets/contactimage.png new file mode 100644 index 0000000..14eb162 Binary files /dev/null and b/public/assets/contactimage.png differ diff --git a/public/assets/crmthist.png b/public/assets/crmthist.png new file mode 100644 index 0000000..17fe44c Binary files /dev/null and b/public/assets/crmthist.png differ diff --git a/public/assets/custom-solutions.png b/public/assets/custom-solutions.png new file mode 100644 index 0000000..5095603 Binary files /dev/null and b/public/assets/custom-solutions.png differ diff --git a/public/assets/custom-solutions1.png b/public/assets/custom-solutions1.png new file mode 100644 index 0000000..34e3218 Binary files /dev/null and b/public/assets/custom-solutions1.png differ diff --git a/public/assets/custom-solutions2.png b/public/assets/custom-solutions2.png new file mode 100644 index 0000000..37a576f Binary files /dev/null and b/public/assets/custom-solutions2.png differ diff --git a/public/assets/custom-solutions3.png b/public/assets/custom-solutions3.png new file mode 100644 index 0000000..a509ca8 Binary files /dev/null and b/public/assets/custom-solutions3.png differ diff --git a/public/assets/custom-solutions4.png b/public/assets/custom-solutions4.png new file mode 100644 index 0000000..5aa557d Binary files /dev/null and b/public/assets/custom-solutions4.png differ diff --git a/public/assets/customerlyn.png b/public/assets/customerlyn.png new file mode 100644 index 0000000..e826a3c Binary files /dev/null and b/public/assets/customerlyn.png differ diff --git a/public/assets/decision.png b/public/assets/decision.png new file mode 100644 index 0000000..f70eeda Binary files /dev/null and b/public/assets/decision.png differ diff --git a/public/assets/discovery.png b/public/assets/discovery.png new file mode 100644 index 0000000..90b78a0 Binary files /dev/null and b/public/assets/discovery.png differ diff --git a/public/assets/discovery1.png b/public/assets/discovery1.png new file mode 100644 index 0000000..4e6e62a Binary files /dev/null and b/public/assets/discovery1.png differ diff --git a/public/assets/discovery2.png b/public/assets/discovery2.png new file mode 100644 index 0000000..ba0e554 Binary files /dev/null and b/public/assets/discovery2.png differ diff --git a/public/assets/discovery3.png b/public/assets/discovery3.png new file mode 100644 index 0000000..abc55d9 Binary files /dev/null and b/public/assets/discovery3.png differ diff --git a/public/assets/dropresume.svg b/public/assets/dropresume.svg new file mode 100644 index 0000000..ff944a5 --- /dev/null +++ b/public/assets/dropresume.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/public/assets/email.svg b/public/assets/email.svg new file mode 100644 index 0000000..ac00da1 --- /dev/null +++ b/public/assets/email.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/assets/fidux-logo.png b/public/assets/fidux-logo.png new file mode 100644 index 0000000..b8ec539 Binary files /dev/null and b/public/assets/fidux-logo.png differ diff --git a/public/assets/footer.png b/public/assets/footer.png new file mode 100644 index 0000000..fcf0002 Binary files /dev/null and b/public/assets/footer.png differ diff --git a/public/assets/herovideo.mp4 b/public/assets/herovideo.mp4 new file mode 100644 index 0000000..1ff1ca3 Binary files /dev/null and b/public/assets/herovideo.mp4 differ diff --git a/public/assets/housecoin.png b/public/assets/housecoin.png new file mode 100644 index 0000000..e584446 Binary files /dev/null and b/public/assets/housecoin.png differ diff --git a/public/assets/hvac.png b/public/assets/hvac.png new file mode 100644 index 0000000..9e2b8b8 Binary files /dev/null and b/public/assets/hvac.png differ diff --git a/public/assets/icons/Bengalurulocation.svg b/public/assets/icons/Bengalurulocation.svg new file mode 100644 index 0000000..6c88cba --- /dev/null +++ b/public/assets/icons/Bengalurulocation.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/assets/icons/Family.svg b/public/assets/icons/Family.svg new file mode 100644 index 0000000..fcad9c3 --- /dev/null +++ b/public/assets/icons/Family.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/assets/icons/INTERN.svg b/public/assets/icons/INTERN.svg new file mode 100644 index 0000000..f06df63 --- /dev/null +++ b/public/assets/icons/INTERN.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/assets/icons/INTERN1.svg b/public/assets/icons/INTERN1.svg new file mode 100644 index 0000000..885a0fc --- /dev/null +++ b/public/assets/icons/INTERN1.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/assets/icons/INTERN2.svg b/public/assets/icons/INTERN2.svg new file mode 100644 index 0000000..529feba --- /dev/null +++ b/public/assets/icons/INTERN2.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/assets/icons/INTERN3.svg b/public/assets/icons/INTERN3.svg new file mode 100644 index 0000000..d83c419 --- /dev/null +++ b/public/assets/icons/INTERN3.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/public/assets/icons/INTERN4.svg b/public/assets/icons/INTERN4.svg new file mode 100644 index 0000000..fab1e29 --- /dev/null +++ b/public/assets/icons/INTERN4.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/assets/icons/Licensed.svg b/public/assets/icons/Licensed.svg new file mode 100644 index 0000000..50ecba0 --- /dev/null +++ b/public/assets/icons/Licensed.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/assets/icons/Python.svg b/public/assets/icons/Python.svg new file mode 100644 index 0000000..ecf7887 --- /dev/null +++ b/public/assets/icons/Python.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/assets/icons/Same-Day.svg b/public/assets/icons/Same-Day.svg new file mode 100644 index 0000000..2787619 --- /dev/null +++ b/public/assets/icons/Same-Day.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/assets/icons/Years.svg b/public/assets/icons/Years.svg new file mode 100644 index 0000000..b35ea8d --- /dev/null +++ b/public/assets/icons/Years.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/assets/icons/email.svg b/public/assets/icons/email.svg new file mode 100644 index 0000000..546df62 --- /dev/null +++ b/public/assets/icons/email.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/assets/icons/faceboook.svg b/public/assets/icons/faceboook.svg new file mode 100644 index 0000000..aae087d --- /dev/null +++ b/public/assets/icons/faceboook.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/assets/icons/fulltime.svg b/public/assets/icons/fulltime.svg new file mode 100644 index 0000000..78e112e --- /dev/null +++ b/public/assets/icons/fulltime.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/assets/icons/global.svg b/public/assets/icons/global.svg new file mode 100644 index 0000000..c5a7908 --- /dev/null +++ b/public/assets/icons/global.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/public/assets/icons/icon1.svg b/public/assets/icons/icon1.svg new file mode 100644 index 0000000..443f9f9 --- /dev/null +++ b/public/assets/icons/icon1.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/public/assets/icons/icon1we.svg b/public/assets/icons/icon1we.svg new file mode 100644 index 0000000..8528beb --- /dev/null +++ b/public/assets/icons/icon1we.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/public/assets/icons/icon2.svg b/public/assets/icons/icon2.svg new file mode 100644 index 0000000..2a55ba4 --- /dev/null +++ b/public/assets/icons/icon2.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/assets/icons/icon2we.svg b/public/assets/icons/icon2we.svg new file mode 100644 index 0000000..50beaef --- /dev/null +++ b/public/assets/icons/icon2we.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/public/assets/icons/icon3.svg b/public/assets/icons/icon3.svg new file mode 100644 index 0000000..dd6ab7c --- /dev/null +++ b/public/assets/icons/icon3.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/assets/icons/icon3we.svg b/public/assets/icons/icon3we.svg new file mode 100644 index 0000000..d79c257 --- /dev/null +++ b/public/assets/icons/icon3we.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/public/assets/icons/icon4.svg b/public/assets/icons/icon4.svg new file mode 100644 index 0000000..9e30103 --- /dev/null +++ b/public/assets/icons/icon4.svg @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/assets/icons/icon4we.svg b/public/assets/icons/icon4we.svg new file mode 100644 index 0000000..c982937 --- /dev/null +++ b/public/assets/icons/icon4we.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/public/assets/icons/icon5.svg b/public/assets/icons/icon5.svg new file mode 100644 index 0000000..7afdedd --- /dev/null +++ b/public/assets/icons/icon5.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/public/assets/icons/icon6.svg b/public/assets/icons/icon6.svg new file mode 100644 index 0000000..a9cde39 --- /dev/null +++ b/public/assets/icons/icon6.svg @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/public/assets/icons/instgram.svg b/public/assets/icons/instgram.svg new file mode 100644 index 0000000..38459af --- /dev/null +++ b/public/assets/icons/instgram.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/assets/icons/linkedin.svg b/public/assets/icons/linkedin.svg new file mode 100644 index 0000000..147fcc5 --- /dev/null +++ b/public/assets/icons/linkedin.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/assets/icons/location.svg b/public/assets/icons/location.svg new file mode 100644 index 0000000..143c604 --- /dev/null +++ b/public/assets/icons/location.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/assets/icons/locationheader.svg b/public/assets/icons/locationheader.svg new file mode 100644 index 0000000..59fded9 --- /dev/null +++ b/public/assets/icons/locationheader.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/assets/icons/next.svg b/public/assets/icons/next.svg new file mode 100644 index 0000000..c5eac48 --- /dev/null +++ b/public/assets/icons/next.svg @@ -0,0 +1,7 @@ + +
+ + + + +
diff --git a/public/assets/icons/prev.svg b/public/assets/icons/prev.svg new file mode 100644 index 0000000..7b8edff --- /dev/null +++ b/public/assets/icons/prev.svg @@ -0,0 +1,7 @@ + +
+ + + + +
diff --git a/public/assets/icons/sayhello.svg b/public/assets/icons/sayhello.svg new file mode 100644 index 0000000..4a96f3a --- /dev/null +++ b/public/assets/icons/sayhello.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/public/assets/icons/star.svg b/public/assets/icons/star.svg new file mode 100644 index 0000000..635cc96 --- /dev/null +++ b/public/assets/icons/star.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/public/assets/icons/startarrow.svg b/public/assets/icons/startarrow.svg new file mode 100644 index 0000000..f91d71b --- /dev/null +++ b/public/assets/icons/startarrow.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/assets/icons/togglemenu.svg b/public/assets/icons/togglemenu.svg new file mode 100644 index 0000000..2b34909 --- /dev/null +++ b/public/assets/icons/togglemenu.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/assets/icons/twiiter.svg b/public/assets/icons/twiiter.svg new file mode 100644 index 0000000..314ec69 --- /dev/null +++ b/public/assets/icons/twiiter.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/assets/icons/voice.svg b/public/assets/icons/voice.svg new file mode 100644 index 0000000..eaeeea2 --- /dev/null +++ b/public/assets/icons/voice.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/assets/icons/youtube.svg b/public/assets/icons/youtube.svg new file mode 100644 index 0000000..eff8a84 --- /dev/null +++ b/public/assets/icons/youtube.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/assets/idea1.png b/public/assets/idea1.png new file mode 100644 index 0000000..2c54302 Binary files /dev/null and b/public/assets/idea1.png differ diff --git a/public/assets/idea2.png b/public/assets/idea2.png new file mode 100644 index 0000000..3441ae4 Binary files /dev/null and b/public/assets/idea2.png differ diff --git a/public/assets/idea4.png b/public/assets/idea4.png new file mode 100644 index 0000000..f29fc85 Binary files /dev/null and b/public/assets/idea4.png differ diff --git a/public/assets/idea5.png b/public/assets/idea5.png new file mode 100644 index 0000000..31aeaf7 Binary files /dev/null and b/public/assets/idea5.png differ diff --git a/public/assets/idea6.png b/public/assets/idea6.png new file mode 100644 index 0000000..92e8c6a Binary files /dev/null and b/public/assets/idea6.png differ diff --git a/public/assets/idea7.png b/public/assets/idea7.png new file mode 100644 index 0000000..ef30391 Binary files /dev/null and b/public/assets/idea7.png differ diff --git a/public/assets/intersection.png b/public/assets/intersection.png new file mode 100644 index 0000000..f170079 Binary files /dev/null and b/public/assets/intersection.png differ diff --git a/public/assets/kohler.png b/public/assets/kohler.png new file mode 100644 index 0000000..d179aa3 Binary files /dev/null and b/public/assets/kohler.png differ diff --git a/public/assets/layer.svg b/public/assets/layer.svg new file mode 100644 index 0000000..93ea4fa --- /dev/null +++ b/public/assets/layer.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/public/assets/leader1.png b/public/assets/leader1.png new file mode 100644 index 0000000..a5cefe7 Binary files /dev/null and b/public/assets/leader1.png differ diff --git a/public/assets/leader2.png b/public/assets/leader2.png new file mode 100644 index 0000000..b4a7d1c Binary files /dev/null and b/public/assets/leader2.png differ diff --git a/public/assets/line.png b/public/assets/line.png new file mode 100644 index 0000000..028e6ba Binary files /dev/null and b/public/assets/line.png differ diff --git a/public/assets/logo.png b/public/assets/logo.png new file mode 100644 index 0000000..7759cd6 Binary files /dev/null and b/public/assets/logo.png differ diff --git a/public/assets/logo1.png b/public/assets/logo1.png new file mode 100644 index 0000000..2ef032f Binary files /dev/null and b/public/assets/logo1.png differ diff --git a/public/assets/logo2.png b/public/assets/logo2.png new file mode 100644 index 0000000..42e621a Binary files /dev/null and b/public/assets/logo2.png differ diff --git a/public/assets/lutron.png b/public/assets/lutron.png new file mode 100644 index 0000000..b295500 Binary files /dev/null and b/public/assets/lutron.png differ diff --git a/public/assets/lynkeduppro.png b/public/assets/lynkeduppro.png new file mode 100644 index 0000000..242f492 Binary files /dev/null and b/public/assets/lynkeduppro.png differ diff --git a/public/assets/nest.png b/public/assets/nest.png new file mode 100644 index 0000000..ad9436b Binary files /dev/null and b/public/assets/nest.png differ diff --git a/public/assets/nest.svg b/public/assets/nest.svg new file mode 100644 index 0000000..70bfae0 --- /dev/null +++ b/public/assets/nest.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/public/assets/production1.png b/public/assets/production1.png new file mode 100644 index 0000000..edbbbb4 Binary files /dev/null and b/public/assets/production1.png differ diff --git a/public/assets/production2.png b/public/assets/production2.png new file mode 100644 index 0000000..253fceb Binary files /dev/null and b/public/assets/production2.png differ diff --git a/public/assets/production3.png b/public/assets/production3.png new file mode 100644 index 0000000..8f1b3d6 Binary files /dev/null and b/public/assets/production3.png differ diff --git a/public/assets/production4.png b/public/assets/production4.png new file mode 100644 index 0000000..16ee298 Binary files /dev/null and b/public/assets/production4.png differ diff --git a/public/assets/production5.png b/public/assets/production5.png new file mode 100644 index 0000000..a96a42f Binary files /dev/null and b/public/assets/production5.png differ diff --git a/public/assets/promotions1.png b/public/assets/promotions1.png new file mode 100644 index 0000000..64cb413 Binary files /dev/null and b/public/assets/promotions1.png differ diff --git a/public/assets/promotions2.png b/public/assets/promotions2.png new file mode 100644 index 0000000..4624b82 Binary files /dev/null and b/public/assets/promotions2.png differ diff --git a/public/assets/promotions3.png b/public/assets/promotions3.png new file mode 100644 index 0000000..8a23984 Binary files /dev/null and b/public/assets/promotions3.png differ diff --git a/public/assets/promotions4.png b/public/assets/promotions4.png new file mode 100644 index 0000000..f9922e7 Binary files /dev/null and b/public/assets/promotions4.png differ diff --git a/public/assets/promotionsback.png b/public/assets/promotionsback.png new file mode 100644 index 0000000..b4ad797 Binary files /dev/null and b/public/assets/promotionsback.png differ diff --git a/public/assets/ring.png b/public/assets/ring.png new file mode 100644 index 0000000..0eca20f Binary files /dev/null and b/public/assets/ring.png differ diff --git a/public/assets/samsung.png b/public/assets/samsung.png new file mode 100644 index 0000000..9cb5bd7 Binary files /dev/null and b/public/assets/samsung.png differ diff --git a/public/assets/service1.png b/public/assets/service1.png new file mode 100644 index 0000000..06587e9 Binary files /dev/null and b/public/assets/service1.png differ diff --git a/public/assets/service2.png b/public/assets/service2.png new file mode 100644 index 0000000..d3b60b7 Binary files /dev/null and b/public/assets/service2.png differ diff --git a/public/assets/service3.png b/public/assets/service3.png new file mode 100644 index 0000000..355d478 Binary files /dev/null and b/public/assets/service3.png differ diff --git a/public/assets/service4.png b/public/assets/service4.png new file mode 100644 index 0000000..0023fcb Binary files /dev/null and b/public/assets/service4.png differ diff --git a/public/assets/service5.png b/public/assets/service5.png new file mode 100644 index 0000000..16e7e70 Binary files /dev/null and b/public/assets/service5.png differ diff --git a/public/assets/service6.png b/public/assets/service6.png new file mode 100644 index 0000000..3aeff38 Binary files /dev/null and b/public/assets/service6.png differ diff --git a/public/assets/service7.png b/public/assets/service7.png new file mode 100644 index 0000000..bd133aa Binary files /dev/null and b/public/assets/service7.png differ diff --git a/public/assets/service8.png b/public/assets/service8.png new file mode 100644 index 0000000..e229696 Binary files /dev/null and b/public/assets/service8.png differ diff --git a/public/assets/sherwin.png b/public/assets/sherwin.png new file mode 100644 index 0000000..48f8f07 Binary files /dev/null and b/public/assets/sherwin.png differ diff --git a/public/assets/solutionimg.png b/public/assets/solutionimg.png new file mode 100644 index 0000000..d5d535c Binary files /dev/null and b/public/assets/solutionimg.png differ diff --git a/public/assets/sucess.svg b/public/assets/sucess.svg new file mode 100644 index 0000000..a544f8f --- /dev/null +++ b/public/assets/sucess.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/public/assets/team-lead.png b/public/assets/team-lead.png new file mode 100644 index 0000000..9cd3384 Binary files /dev/null and b/public/assets/team-lead.png differ diff --git a/public/assets/thesis-img.png b/public/assets/thesis-img.png new file mode 100644 index 0000000..62b6d93 Binary files /dev/null and b/public/assets/thesis-img.png differ diff --git a/public/assets/thesis-logo.png b/public/assets/thesis-logo.png new file mode 100644 index 0000000..4f0a9b6 Binary files /dev/null and b/public/assets/thesis-logo.png differ diff --git a/public/assets/user1.png b/public/assets/user1.png new file mode 100644 index 0000000..196173d Binary files /dev/null and b/public/assets/user1.png differ diff --git a/public/assets/user2.png b/public/assets/user2.png new file mode 100644 index 0000000..da936ca Binary files /dev/null and b/public/assets/user2.png differ diff --git a/public/assets/user3.png b/public/assets/user3.png new file mode 100644 index 0000000..41e0655 Binary files /dev/null and b/public/assets/user3.png differ diff --git a/public/assets/whatsaap.svg b/public/assets/whatsaap.svg new file mode 100644 index 0000000..53e3175 --- /dev/null +++ b/public/assets/whatsaap.svg @@ -0,0 +1,3 @@ + + + diff --git a/public/assets/why1.png b/public/assets/why1.png new file mode 100644 index 0000000..53f8a6f Binary files /dev/null and b/public/assets/why1.png differ diff --git a/public/file.svg b/public/file.svg deleted file mode 100644 index 004145c..0000000 --- a/public/file.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/public/globe.svg b/public/globe.svg deleted file mode 100644 index 567f17b..0000000 --- a/public/globe.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/public/next.svg b/public/next.svg deleted file mode 100644 index 5174b28..0000000 --- a/public/next.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/public/vercel.svg b/public/vercel.svg deleted file mode 100644 index 7705396..0000000 --- a/public/vercel.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/public/window.svg b/public/window.svg deleted file mode 100644 index b2b2a44..0000000 --- a/public/window.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/src/app/3d-visualization/page.tsx b/src/app/3d-visualization/page.tsx new file mode 100644 index 0000000..645df21 --- /dev/null +++ b/src/app/3d-visualization/page.tsx @@ -0,0 +1,650 @@ +"use client"; + +import Image from "next/image"; +import Header from "@/components/layout/Header"; +import Footer from "@/components/layout/Footer"; +import { Layers3 } from "lucide-react"; +import { Swiper, SwiperSlide } from "swiper/react"; +import { Autoplay } from "swiper/modules"; + +import "swiper/css"; + +import { useEffect, useRef } from "react"; + +export default function CustomSolutionsSection() { + + const cardsRef = useRef<(HTMLDivElement | null)[]>([]); + + const processData = [ + { + week: "Week 1 — 3", + title: "Brief, story, mood", + desc: "CD reads the brief, writes the story, builds a mood film, locks the visual direction with one client meeting.", + tags: ["Mood film", "Treatment", "Visual reference"], + image: + "/assets/Visualization.png", + }, + { + week: "Week 3 — 6", + title: "Storyboard & previz", + desc: "Hand-drawn boards, low-res previz, camera and pacing decisions. Approval gate before assets.", + tags: ["Retrieval API", "Citation UX", "Quality dashboard"], + image: + "/assets/Visualization1.png", + }, + { + week: "Week 7 — 14", + title: "Asset, look, light", + desc: "Modeling, materials, lighting setups. Three rounds of look-dev on a designated hero shot.", + tags: ["Live workflow", "Telemetry", "Feedback UX"], + image: + "/assets/Visualization2.png", + }, + { + week: "Week 15 — 22", + title: "Render & FX", + desc: "Final passes rendered on a 240-node farm. Multi-pass for max flexibility downstream.", + tags: ["Multi-workflow", "Cost governance", "Red-team report"], + image: + "/assets/Visualization3.png", + }, + { + week: "Week 23 —", + title: "Comp, grade, deliver", + desc: "Multi-pass compositing in Nuke, DaVinci grade, audio mix where applicable, full deliverable pack.", + tags: ["Managed evals", "Quarterly model review", "Distilled models"], + image: + "/assets/Visualization4.png", + }, + ]; + + useEffect(() => { + + const cards = cardsRef.current; + + const observer = new IntersectionObserver( + (entries) => { + + entries.forEach((entry) => { + + if (entry.isIntersecting) { + + cards.forEach((card) => { + card?.classList.remove("active"); + }); + + entry.target.classList.add("active"); + } + + }); + + }, + { + threshold: 0.5, + } + ); + + cards.forEach((card) => { + if (card) observer.observe(card); + }); + + return () => { + cards.forEach((card) => { + if (card) observer.unobserve(card); + }); + }; + + }, []); + + return ( + <> + {/* Header */} +
+ + {/* Hero Section */} +
+
+
+
+
+ + + {/* Top Left Users */} +
+
+ + + +
+ +

+ 100+ people already joined the
+ Lynkedup Technologies +

+
+ + {/* Floating Card */} +
+
+ + +
+ LET’S TALK +
Marcus Lien
+

LEAD ARCHITECT

+
+ + +
+
+ + {/* Bottom Content */} +
+
+
+

+ Worlds, rendered with
+the discipline of a film studio. +

+
+ +
+

+ Architectural CGI, AR/VR walkthroughs, and cinematic motion — crafted with cinematic lighting, composition, and detail beyond the render.

+
+
+
+ +
+
+
+
+
+ +
+
+ +
+ + {/* Left Side */} +
+
+ +

+ THE THESIS +

+ +
+ +
+ +
+
+ + {/* Right Side */} +
+ +
+ +

+ The cheapest CGI is easy to recognize — not because of render quality, but because of weak composition and lifeless lighting. Great visualization shapes emotion and tells a story through every frame. The render is only the result of those creative decisions. + +

+ +

+ Our 3D practice is run by a creative director with twenty years in cinema, not a render farm with an Instagram. Every shot is storyboarded, every lens is justified, every light has a job. The pixels follow. +

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

Core features

+ +

+ A film-grade pipeline. End-to- +
+ end, in-house, frame-locked. +

+

+ Every project, regardless of scope, ships through the same nine-stage pipeline. No outsourced links, no surprises in the final cut. + +

+
+
+ + + +
+ + {/* Cards */} +
+ + {/* Card 1 */} +
+
+ +
+ +
+ +

Creative direction

+ +

+ A senior CD reads the brief, writes the story, owns the rooms. +

+ + On every project +
+
+ + {/* Card 2 */} +
+
+ +
+ +
+ +

Storyboard & previz

+ +

+ Hand-drawn boards plus low-res previz for camera and timing decisions. + +

+ + Approve before render +
+
+ + {/* Card 3 */} +
+
+ +
+ +
+ +

Asset & modeling

+ +

+ Bespoke modeling, photogrammetry, on-site scanning, scan-to-CAD pipelines. +

+ + Lidar-ready +
+
+ + {/* Card 4 */} +
+
+ +
+ +
+ +

Look development

+ +

+ Material libraries authored on the project, calibrated to physical samples. +

+ + PBR · spectral +
+
+ + {/* Card 5 */} +
+
+ +
+ +
+ +

Lighting & rendering

+ +

+ Path-traced, multi-pass, fully physically based. No engine shortcuts. +

+ + Cycles · Octane · Arnold +
+
+ + {/* Card 6 */} +
+
+ +
+ +
+ +

Animation & FX

+ +

+ Cinematic camera moves, crowd sims, motion design, particle FX, atmospheric work. + +

+ + 24/30/60 fps +
+
+ + {/* Card 7 */} +
+
+ +
+ +
+ +

Comp & grade

+ +

+ Multi-pass compositing in Nuke, DaVinci grade, 10-bit DCI-P3 delivery. + +

+ + Theater-ready +
+
+
+
+ +
+ +
+ +

Immersive output

+ +

+ Realtime export for Unreal, Unity and WebGL. Same assets, multiple destinations.

+ + USD pipeline +
+
+
+
+ +
+ +
+ +

Configurator-ready

+ +

+ Hero CGI flipped into interactive 3D configurators for product sales. + + +

+ + Three.js · Babylon +
+
+ + +
+
+ + +
+
+
+ + {/* TOP */} +
+
+

+ BENEFITS & OUTCOMES +

+ +

+ AI that earns its place in +
+ the P&L. +

+
+ +
+ {/* SWIPER */} + + + {/* CARD 1 */} + +
+

3.1×

+ +

Conversion lift on configured products

+ +

+ Average uplift across nine product launches that adopted our hero CGI in place of photo. +

+
+
+ + {/* CARD 2 */} + +
+

+ +

Cheaper inference

+ +

+ Average cost reduction after applying our model-mesh routing and prompt-cache discipline. +

+
+
+ + {/* ACTIVE CARD */} + +
+

8K

+ +

Native master resolution

+ +

+ All hero films delivered in 8K and DCI-P3 for theater and OOH placements. +

+
+
+ + {/* CARD 4 */} + +
+

−42%

+ +

Cost vs. live-action equivalent

+ +

+ For a hero campaign with vehicles, location, talent and weather risk. +

+
+
+ + {/* CARD 5 */} + +
+

12

+ +

Languages localized per master

+ +

+ Same shots, 12 voice-overs, 12 supers, 12 territory grades — built into the pipeline. +

+
+
+ +
+ +
+
+ +
+ +
+ +
+ + {/* LEFT SIDE */} +
+ +
+ + + Process · 14 – 28 weeks · 5 phases + + +

+ An end-to-end operating model. +

+ +

+ A real operating model, not a giant chart. + Every phase ends with a working artifact — + not a deliverable on a slide. +

+ + {/* BIG LOGO */} +
+ +
+ +
+ +
+ + {/* RIGHT SIDE */} +
+ + {/* CENTER LINE */} +
+ + {processData.map((item, index) => ( + +
{ + cardsRef.current[index] = el; +}} + className={`process-card ${index === 0 ? "active" : ""}`} + > + + {/* NUMBER */} +
+ {index + 1} +
+ + {/* IMAGE */} +
+ +
+ + {/* CONTENT */} + {/* CONTENT */} +
+ +
+ +

{item.title}

+ + {item.week} + +
+ +

{item.desc}

+ +
+ + {item.tags.map((tag, i) => ( + {tag} + ))} + +
+ +
+ +
+ + ))} + +
+ +
+ +
+ +
+ + {/* Footer */} +