{review.text}
-- Support mission{" "} + Support mission
Get access to AI workforce training, healthcare guidance, and @@ -93,6 +124,21 @@ export function MissionBridgeSection() {
diff --git a/package.json b/package.json
index 51195ca..9ede417 100644
--- a/package.json
+++ b/package.json
@@ -37,6 +37,7 @@
"dotenv": "^17.4.2",
"drizzle-orm": "^0.45.2",
"lucide-react": "^1.17.0",
+ "motion": "^12.42.0",
"next": "16.2.6",
"next-themes": "^0.4.6",
"pg": "^8.21.0",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 8cb746e..9b16853 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -68,6 +68,9 @@ importers:
lucide-react:
specifier: ^1.17.0
version: 1.20.0(react@19.2.4)
+ motion:
+ specifier: ^12.42.0
+ version: 12.42.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
next:
specifier: 16.2.6
version: 16.2.6(@babel/core@7.29.7)(@opentelemetry/api@1.9.1)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
@@ -3781,6 +3784,20 @@ packages:
resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==}
engines: {node: '>= 0.6'}
+ framer-motion@12.42.0:
+ resolution: {integrity: sha512-wp7EJnfWaaEScVygKv3e20udoRz+LbtxScsuTkakAxfXmt+ReC6WyPW2nINRAGvd+hG9odwcjBLyOTPjH5pBRA==}
+ peerDependencies:
+ '@emotion/is-prop-valid': '*'
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
+ peerDependenciesMeta:
+ '@emotion/is-prop-valid':
+ optional: true
+ react:
+ optional: true
+ react-dom:
+ optional: true
+
fresh@2.0.0:
resolution: {integrity: sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==}
engines: {node: '>= 0.8'}
@@ -4450,6 +4467,26 @@ packages:
module-details-from-path@1.0.4:
resolution: {integrity: sha512-EGWKgxALGMgzvxYF1UyGTy0HXX/2vHLkw6+NvDKW2jypWbHpjQuj4UMcqQWXHERJhVGKikolT06G3bcKe4fi7w==}
+ motion-dom@12.42.0:
+ resolution: {integrity: sha512-M63h4n8R+quJdNhBwuLlgxM+OLYa9+I/T2pzDRboB9fLXRdbou+Gw7Zury+SkpaCyACP1JHSjHgZ1EgTkBr30w==}
+
+ motion-utils@12.39.0:
+ resolution: {integrity: sha512-8nadJAJjTtqRkmRF36FoJTrywK9nnFmnPwnSMyxaOCU7GDjN9RTMJIxx9De8ErM+vpPhMccr/6fo5WciyQLnMQ==}
+
+ motion@12.42.0:
+ resolution: {integrity: sha512-Qhwvu9sVl5/URSq5CNzwMCpSKK8Uhnrwb6VO977kZyj/wOCS7mWebJUnBoHx5cZU1Zv8a9BD5CSICWKAlrLJgA==}
+ peerDependencies:
+ '@emotion/is-prop-valid': '*'
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
+ peerDependenciesMeta:
+ '@emotion/is-prop-valid':
+ optional: true
+ react:
+ optional: true
+ react-dom:
+ optional: true
+
ms@2.1.3:
resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
@@ -9238,6 +9275,15 @@ snapshots:
forwarded@0.2.0: {}
+ framer-motion@12.42.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4):
+ dependencies:
+ motion-dom: 12.42.0
+ motion-utils: 12.39.0
+ tslib: 2.8.1
+ optionalDependencies:
+ react: 19.2.4
+ react-dom: 19.2.4(react@19.2.4)
+
fresh@2.0.0: {}
fs-extra@11.3.5:
@@ -9821,6 +9867,20 @@ snapshots:
module-details-from-path@1.0.4: {}
+ motion-dom@12.42.0:
+ dependencies:
+ motion-utils: 12.39.0
+
+ motion-utils@12.39.0: {}
+
+ motion@12.42.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4):
+ dependencies:
+ framer-motion: 12.42.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4)
+ tslib: 2.8.1
+ optionalDependencies:
+ react: 19.2.4
+ react-dom: 19.2.4(react@19.2.4)
+
ms@2.1.3: {}
nanoid@3.3.12: {}
diff --git a/src/features/marketing/components/contact-hero-section.tsx b/src/features/marketing/components/contact-hero-section.tsx
index 757a470..4b7175d 100644
--- a/src/features/marketing/components/contact-hero-section.tsx
+++ b/src/features/marketing/components/contact-hero-section.tsx
@@ -167,10 +167,13 @@ export function ContactHeroSection() {
diff --git a/src/features/marketing/components/course-detail-content-section.tsx b/src/features/marketing/components/course-detail-content-section.tsx
index 7f9bdc7..1c89416 100644
--- a/src/features/marketing/components/course-detail-content-section.tsx
+++ b/src/features/marketing/components/course-detail-content-section.tsx
@@ -1,9 +1,10 @@
+"use client"
+
import Image from "next/image"
import Link from "next/link"
import {
ArrowRight,
ChevronDown,
- ChevronUp,
Clock,
Languages,
Layers,
@@ -11,6 +12,7 @@ import {
Star,
User,
} from "lucide-react"
+import { useState } from "react"
import { Button } from "@/shared/ui/button"
@@ -28,17 +30,105 @@ const modules = [
"Beginner-friendly digital business models",
],
},
- { title: "Week 2: AI Productivity & Prompting" },
- { title: "Week 3: Business Validation & Fast Monetization Planning" },
- { title: "Week 4: Branding & Digital Presence" },
- { title: "Week 5: Product & Service Creation" },
- { title: "Week 6: Marketing & Public Launch" },
- { title: "Week 7: Client Acquisition & Sales Systems" },
- { title: "Week 8: Revenue Optimization & Sustainability" },
- { title: "Week 9: Automation & Efficiency" },
- { title: "Week 10: Portfolio & Authority Building" },
- { title: "Week 11: Scaling Small Businesses" },
- { title: "Week 12: Demo Day & Graduation" },
+ {
+ title: "Week 2: AI Productivity & Prompting",
+ topics: [
+ "Crafting effective AI prompts",
+ "Automating daily workflows with AI",
+ "AI tools for task management",
+ "Integrating AI into existing tools",
+ ],
+ },
+ {
+ title: "Week 3: Business Validation & Fast Monetization Planning",
+ topics: [
+ "Identifying market problems & opportunities",
+ "Lean validation techniques",
+ "Fast monetization strategies",
+ "Building a minimum viable offer",
+ ],
+ },
+ {
+ title: "Week 4: Branding & Digital Presence",
+ topics: [
+ "Defining your brand identity",
+ "Building a simple website",
+ "Social media positioning",
+ "Content creation fundamentals",
+ ],
+ },
+ {
+ title: "Week 5: Product & Service Creation",
+ topics: [
+ "Designing digital products",
+ "Service packaging and pricing",
+ "AI-assisted product development",
+ "Testing and iterating your offer",
+ ],
+ },
+ {
+ title: "Week 6: Marketing & Public Launch",
+ topics: [
+ "Launch campaign planning",
+ "Organic marketing channels",
+ "Paid advertising basics",
+ "Building launch momentum",
+ ],
+ },
+ {
+ title: "Week 7: Client Acquisition & Sales Systems",
+ topics: [
+ "Sales funnel fundamentals",
+ "Lead generation strategies",
+ "CRM and follow-up systems",
+ "Closing techniques for beginners",
+ ],
+ },
+ {
+ title: "Week 8: Revenue Optimization & Sustainability",
+ topics: [
+ "Pricing strategy refinement",
+ "Upselling and cross-selling",
+ "Customer retention tactics",
+ "Financial management basics",
+ ],
+ },
+ {
+ title: "Week 9: Automation & Efficiency",
+ topics: [
+ "Workflow automation tools",
+ "AI chatbots for customer support",
+ "Email marketing automation",
+ "Analytics and performance tracking",
+ ],
+ },
+ {
+ title: "Week 10: Portfolio & Authority Building",
+ topics: [
+ "Creating a professional portfolio",
+ "Publishing thought leadership content",
+ "Speaking and networking opportunities",
+ "Building social proof",
+ ],
+ },
+ {
+ title: "Week 11: Scaling Small Businesses",
+ topics: [
+ "Hiring and delegation basics",
+ "Systems and SOPs for growth",
+ "Expanding product lines",
+ "Partnership and collaboration strategies",
+ ],
+ },
+ {
+ title: "Week 12: Demo Day & Graduation",
+ topics: [
+ "Presenting your business pitch",
+ "Demo day preparation",
+ "Graduation and next steps",
+ "Community and alumni network",
+ ],
+ },
]
const reviews = [
@@ -66,51 +156,62 @@ const courseInformation = [
function CourseModule({
title,
topics,
- open = false,
+ open: defaultOpen = false,
}: {
title: string
topics?: string[]
open?: boolean
}) {
+ const [open, setOpen] = useState(defaultOpen)
+
return (
- Topics:
+
+
- {topics ? (
-
- {topics.map((topic) => (
-
-
Topics:
+{review.text}
-Get access to AI workforce training, healthcare guidance, and @@ -93,6 +124,21 @@ export function MissionBridgeSection() {