21 Commits

Author SHA1 Message Date
1c09058653 Merge version_12_1782740842420 into main
Merge version_12_1782740842420 into main
2026-06-29 13:47:25 +00:00
99c49dfa7e Update theme colors 2026-06-29 13:47:22 +00:00
b869f5278f Merge version_11_1782740836134 into main
Merge version_11_1782740836134 into main
2026-06-29 13:47:19 +00:00
ee4a6aed6e Update theme colors 2026-06-29 13:47:16 +00:00
3a3ef14253 Merge version_10_1782740831400 into main
Merge version_10_1782740831400 into main
2026-06-29 13:47:14 +00:00
16af1c316d Update theme colors 2026-06-29 13:47:11 +00:00
74e9c4c103 Merge version_9_1782740827731 into main
Merge version_9_1782740827731 into main
2026-06-29 13:47:11 +00:00
ad10156a5a Merge version_8_1782740825579 into main
Merge version_8_1782740825579 into main
2026-06-29 13:47:09 +00:00
ce29b96016 Update theme colors 2026-06-29 13:47:08 +00:00
133e56d2fc Update theme colors 2026-06-29 13:47:06 +00:00
f13823ebae Merge version_7_1782740815244 into main
Merge version_7_1782740815244 into main
2026-06-29 13:46:58 +00:00
42bd5a40d0 Update theme colors 2026-06-29 13:46:55 +00:00
61d1a55f38 Merge version_6_1782740812318 into main
Merge version_6_1782740812318 into main
2026-06-29 13:46:55 +00:00
f718955ffb Update theme colors 2026-06-29 13:46:52 +00:00
a8d6c67cc2 Merge version_5_1782740799444 into main
Merge version_5_1782740799444 into main
2026-06-29 13:46:42 +00:00
edd9ee1d2f Update theme colors 2026-06-29 13:46:39 +00:00
1bebdc35b1 Merge version_4_1782740299231 into main
Merge version_4_1782740299231 into main
2026-06-29 13:39:41 +00:00
kudinDmitriyUp
31e9a6909e Bob AI: Changed navbar to sticky NavbarFloating with Get Started but 2026-06-29 13:38:56 +00:00
eeb27f8961 Merge version_3_1782739706621 into main
Merge version_3_1782739706621 into main
2026-06-29 13:30:29 +00:00
kudinDmitriyUp
37c4d97ac0 Bob AI: Add dedicated case studies section to showcase ROI 2026-06-29 13:29:45 +00:00
98f398f20e Merge version_2_1782739074653 into main
Merge version_2_1782739074653 into main
2026-06-29 13:20:47 +00:00
4 changed files with 90 additions and 10 deletions

View File

@@ -1,5 +1,5 @@
import FooterMinimal from '@/components/sections/footer/FooterMinimal';
import NavbarCentered from '@/components/ui/NavbarCentered';
import NavbarFloating from '@/components/ui/NavbarFloating';
import SectionErrorBoundary from "@/components/ui/SectionErrorBoundary";
import SiteBackgroundSlot from "@/components/ui/SiteBackgroundSlot";
import { Instagram, Linkedin, Twitter } from "lucide-react";
@@ -42,7 +42,7 @@ export default function Layout() {
<StyleProvider buttonVariant="magnetic" siteBackground="noise" heroBackground="gradientBars">
<SiteBackgroundSlot />
<SectionErrorBoundary name="navbar">
<NavbarCentered
<NavbarFloating
logo="MADAR"
ctaButton={{
text: "Join Now",

View File

@@ -5,15 +5,15 @@
:root {
/* @colorThemes/lightTheme/grayNavyBlue */
--background: #f5faff;
--background: #fffafa;
--card: #ffffff;
--foreground: #001122;
--primary-cta: #15479c;
--primary-cta-text: #f5faff;
--foreground: #1a0000;
--primary-cta: #e63946;
--primary-cta-text: #fffafa;
--secondary-cta: #ffffff;
--secondary-cta-text: #001122;
--accent: #a8cce8;
--background-accent: #7ba3cf;
--secondary-cta-text: #1a0000;
--accent: #f5c4c7;
--background-accent: #f09199;
/* @layout/border-radius/rounded */
--radius: 0.5rem;

View File

@@ -15,7 +15,8 @@ import PricingSection from './HomePage/sections/Pricing';
import ContactSection from './HomePage/sections/Contact';
import TrustedBySection from './HomePage/sections/TrustedBy';export default function HomePage(): React.JSX.Element {
import TrustedBySection from './HomePage/sections/TrustedBy';
import CaseStudiesSection from './HomePage/sections/CaseStudies';export default function HomePage(): React.JSX.Element {
return (
<>
<HeroSection />
@@ -30,6 +31,7 @@ import TrustedBySection from './HomePage/sections/TrustedBy';export default func
<FactoryBenefitsSection />
<ProviderBenefitsSection />
<CaseStudiesSection />
<TestimonialsSection />

View File

@@ -0,0 +1,78 @@
import { motion } from "motion/react"
import TextAnimation from "@/components/ui/TextAnimation"
import ScrollReveal from "@/components/ui/ScrollReveal"
import ImageOrVideo from "@/components/ui/ImageOrVideo"
import Tag from "@/components/ui/Tag"
export default function CaseStudies() {
const cases = [
{
title: "50% Reduction in Downtime for Riyadh Plastics",
description: "By utilizing MADAR's rapid deployment of verified technicians, Riyadh Plastics minimized their machine downtime and saved over 200,000 SAR in lost production.",
imageSrc: "https://picsum.photos/seed/429735176/1200/800",
tags: ["Manufacturing", "ROI: 200k SAR", "Downtime"]
},
{
title: "3x Revenue Growth for Al-Jubail Maintenance Co.",
description: "A local service provider expanded their client base across the Eastern Province, leveraging our national coverage to secure long-term contracts.",
imageSrc: "https://picsum.photos/seed/733726084/1200/800",
tags: ["Service Provider", "Growth: 300%", "Expansion"]
},
{
title: "Optimized Spare Parts Sourcing for Jeddah Steel",
description: "Jeddah Steel streamlined their procurement process, reducing spare parts delivery times by 40% and cutting inventory holding costs.",
imageSrc: "https://picsum.photos/seed/1902011918/1200/800",
tags: ["Procurement", "Efficiency: +40%", "Logistics"]
}
];
return (
<section data-webild-section="case-studies" id="case-studies" className="relative w-full py-24 bg-background">
<div className="w-content-width mx-auto">
<div className="flex flex-col items-center text-center mb-16">
<ScrollReveal variant="fade">
<Tag text="Case Studies" className="mb-4" />
</ScrollReveal>
<TextAnimation
text="Proven ROI for Saudi Industries"
variant="fade-blur"
tag="h2"
gradientText={false}
className="text-4xl md:text-5xl font-bold text-foreground mb-6"
/>
<ScrollReveal variant="fade" delay={0.2}>
<p className="text-lg text-accent max-w-2xl mx-auto">
See how MADAR is transforming maintenance and operations for leading factories and service providers across the Kingdom.
</p>
</ScrollReveal>
</div>
<div className="grid grid-cols-1 md:grid-cols-3 gap-8">
{cases.map((item, index) => (
<ScrollReveal variant="fade" key={index} delay={0.1 * (index + 1)} className="h-full">
<div className="card h-full flex flex-col overflow-hidden rounded-lg">
<div className="relative h-48 w-full overflow-hidden">
<ImageOrVideo
imageSrc={item.imageSrc}
className="w-full h-full object-cover transition-transform duration-500 hover:scale-105"
/>
</div>
<div className="p-6 flex flex-col flex-grow">
<div className="flex flex-wrap gap-2 mb-4">
{item.tags.map((tag, i) => (
<span key={i} className="text-xs font-medium px-2 py-1 bg-background-accent/20 text-foreground rounded-full">
{tag}
</span>
))}
</div>
<h3 className="text-xl font-bold text-foreground mb-3">{item.title}</h3>
<p className="text-accent text-sm flex-grow">{item.description}</p>
</div>
</div>
</ScrollReveal>
))}
</div>
</div>
</section>
);
}