mirror of
https://github.com/OwethuManagedServices/oms-website-nextjs.git
synced 2026-02-04 15:47:39 +00:00
Merge branch 'dev' of https://github.com/OwethuManagedServices/oms-website-nextjs into dev
This commit is contained in:
@ -17,7 +17,7 @@ const CallToActionSection: React.FC<CallToActionSectionProps> = ({
|
||||
}) => {
|
||||
return (
|
||||
// Use primary background, primary-foreground for text
|
||||
<section className="bg-primary text-primary-foreground py-16 md:py-20">
|
||||
<section className="bg-[linear-gradient(to_right,#e6cd4b,#fff8b3,#e0b843)] text-primary-foreground py-16 md:py-20">
|
||||
{" "}
|
||||
{/* Adjusted padding */}
|
||||
<div className="container mx-auto px-4 sm:px-6 lg:px-8 text-center">
|
||||
@ -30,7 +30,7 @@ const CallToActionSection: React.FC<CallToActionSectionProps> = ({
|
||||
</p>{" "}
|
||||
{/* Slightly less emphasis */}
|
||||
{/* Button needs contrast on primary bg. Use a secondary/outline/custom variant */}
|
||||
<Button href={buttonHref} variant="secondary" size="lg">
|
||||
<Button href={buttonHref} variant="black" size="lg" >
|
||||
{/* Example: Using 'secondary' which uses light/dark gray bg defined in globals */}
|
||||
{/* OR custom class: className="bg-background text-foreground hover:bg-background/90" */}
|
||||
{buttonText}
|
||||
|
||||
@ -22,7 +22,7 @@ const ClientLogosSection: React.FC<ClientLogosSectionProps> = ({
|
||||
title,
|
||||
description,
|
||||
clients = [], // Default to empty array
|
||||
speed = 50, //Default speed in seconds for one full cycle
|
||||
speed = 40, //Default speed in seconds for one full cycle
|
||||
squareSize = 120, // Default size for the square container (e.g., 120px)
|
||||
}) => {
|
||||
// Need at least one client to render the marquee
|
||||
|
||||
@ -16,15 +16,15 @@ const HeroSection: React.FC<HeroSectionProps> = ({
|
||||
title,
|
||||
subtitle,
|
||||
buttonText,
|
||||
buttonHref,
|
||||
//buttonHref,
|
||||
imageUrl = "/hero-bg-2.jpg", // Default background image
|
||||
}) => {
|
||||
return (
|
||||
<section className="relative h-[70vh] md:h-[85vh] flex items-center justify-center text-center bg-gradient-to-b from-black/10 to-black/40 text-white overflow-hidden">
|
||||
<section className="relative h-[70vh] md:h-[85vh] flex items-center justify-center text-center text-white overflow-hidden">
|
||||
{" "}
|
||||
{/* Adjusted background */}
|
||||
{/* Adjusted background bg-gradient-to-b from-black/10 to-black/40*/}
|
||||
{/* Background Image/Video */}
|
||||
<div className="absolute inset-0 z-0 opacity-40 dark:opacity-30">
|
||||
<div className="absolute inset-0 z-0 opacity-100 dark:opacity-30">
|
||||
{" "}
|
||||
{/* Adjusted opacity */}
|
||||
{imageUrl && (
|
||||
@ -52,7 +52,7 @@ const HeroSection: React.FC<HeroSectionProps> = ({
|
||||
{subtitle}
|
||||
</p>
|
||||
<Button
|
||||
href={buttonHref}
|
||||
href="/obse"
|
||||
variant="primary" // Use primary variant defined in Button component
|
||||
size="lg"
|
||||
className="animate-fade-in-up animation-delay-600"
|
||||
|
||||
@ -21,6 +21,7 @@ const HeroSectionModern: React.FC<HeroSectionProps> = ({
|
||||
}) => {
|
||||
return (
|
||||
// Use min-h-screen for full viewport height adjust if needed
|
||||
//bg-[linear-gradient(to_right,#f0e18a,#f9f4c3,#ecd973)]
|
||||
<section className="relative flex flex-col md:flex-row items-center bg-background min-h-[80vh] md:min-h-screen overflow-hidden">
|
||||
{/* Background Image/Video Layer */}
|
||||
<div className="absolute inset-0 z-0">
|
||||
|
||||
@ -511,7 +511,7 @@ export default function AboutUsPage() {
|
||||
*/}
|
||||
{/* Section 10: Commitment to Impact (Optional, but adds value) */}
|
||||
<section
|
||||
className="py-16 md:py-24 bg-gold-500 text-gray-900 dark:bg-gold-600 dark:text-gray-900"
|
||||
className="py-16 md:py-24 bg-[linear-gradient(to_right,#e6cd4b,#fff8b3,#e0b843)] text-gray-900 dark:bg-gold-600 dark:text-gray-900"
|
||||
style={{ backgroundColor: "#e1c44a" }}
|
||||
>
|
||||
<div className="container mx-auto px-6 text-center">
|
||||
|
||||
@ -130,10 +130,10 @@ export default function ContactPage() {
|
||||
Phone
|
||||
</h3>
|
||||
<a
|
||||
href="tel:+27120513282"
|
||||
href="tel:+27684855721"
|
||||
className="text-gray-600 hover:text-gray-800 dark:text-gray-300 dark:hover:text-gray-100 transition text-sm font-poppins"
|
||||
>
|
||||
(012) 051 3282
|
||||
+27 68 485 5721
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -242,10 +242,10 @@ export default function ObsePage() {
|
||||
{/* <Image src="/oms-logo-white.png" alt="OMS Logo" width={150} height={50} className="mx-auto mb-6" /> */}
|
||||
<h1
|
||||
className="text-3xl md:text-5xl lg:text-6xl font-bold mb-4 font-poppins drop-shadow-md leading-tight"
|
||||
|
||||
style={{ color: COLORS.primary }}
|
||||
>
|
||||
Revolutionize Your Lending and <br />Credit Processes with OBSE
|
||||
Revolutionize Your Lending and <br />
|
||||
Credit Processes with OBSE
|
||||
</h1>
|
||||
<p className="text-lg md:text-xl max-w-4xl mx-auto leading-relaxed text-gray-200 dark:text-gray-300 mb-8">
|
||||
Automate data extraction, enhance accuracy, detect fraud, and
|
||||
@ -254,13 +254,14 @@ export default function ObsePage() {
|
||||
</p>
|
||||
<div className="flex flex-col sm:flex-row justify-center items-center gap-4">
|
||||
<Link
|
||||
href="#how-it-works" // Link to the "How it Works" section
|
||||
className="inline-flex items-center justify-center bg-gold-500 text-gray-900 font-bold py-3 px-8 rounded-md hover:bg-gold-600 transition-colors duration-300"
|
||||
href="https://youtu.be/Sd3TnvoLtDA?si=UOeXScbosM5LZxbg" // Link to the "How it Works" section
|
||||
className="inline-flex items-center justify-center bg-[linear-gradient(to_right,#e6cd4b,#fff8b3,#e0b843)] text-gray-900 font-bold py-3 px-8 rounded-md hover:bg-gold-600 transition-colors duration-300"
|
||||
style={{ backgroundColor: COLORS.primary }}
|
||||
>
|
||||
<FaPlayCircle className="inline mr-2 text-red-400" /> See How It
|
||||
Works
|
||||
</Link>
|
||||
|
||||
{/* Optional Mini-CTA */}
|
||||
{/* <Link href="#overview-video" className="inline-flex items-center text-gold-400 hover:text-gold-300 transition-colors duration-300">
|
||||
<FaPlayCircle className="mr-2" /> Watch a Quick Overview
|
||||
@ -718,7 +719,7 @@ export default function ObsePage() {
|
||||
|
||||
{/* 12. Call to Action (CTA) Section */}
|
||||
<section
|
||||
className="py-16 md:py-24 bg-gold-500 text-gray-900"
|
||||
className="py-16 md:py-24 bg-[linear-gradient(to_right,#e6cd4b,#fff8b3,#e0b843)] text-gray-900"
|
||||
style={{ backgroundColor: COLORS.primary }}
|
||||
>
|
||||
<div className="container mx-auto px-6 text-center">
|
||||
@ -732,13 +733,13 @@ export default function ObsePage() {
|
||||
</p>
|
||||
<div className="flex flex-col sm:flex-row justify-center items-center gap-4">
|
||||
<Link
|
||||
href="/contact?subject=OBSE Demo Request" // Pre-fill subject for contact form
|
||||
href="/contact" // Pre-fill subject for contact form
|
||||
className="inline-block bg-gray-800 text-white font-bold py-3 px-8 rounded-md hover:bg-gray-900 dark:bg-gray-900 dark:hover:bg-black transition-colors duration-300"
|
||||
>
|
||||
Request a Personalized Demo
|
||||
</Link>
|
||||
<Link
|
||||
href="/contact?subject=OBSE Sales Inquiry" // Pre-fill subject
|
||||
href="/contact" // Pre-fill subject
|
||||
className="inline-block bg-transparent border-2 border-gray-800 text-gray-800 font-bold py-3 px-8 rounded-md hover:bg-gray-800 hover:text-white transition-colors duration-300"
|
||||
>
|
||||
Contact Sales Team
|
||||
|
||||
@ -62,7 +62,7 @@ export default async function HomePage() {
|
||||
description="Our advanced Optimized Bank Statement Extractor automates data aggregation, reduces errors, and provides deep financial insights."
|
||||
features={defaultObseFeatures}
|
||||
buttonText="Learn More & Demo"
|
||||
buttonHref="/products/obse" // Link to the OBSE product page
|
||||
buttonHref="/obse" // Link to the OBSE product page
|
||||
imageUrl="/images/obse.svg" // **IMPORTANT: Create or find a relevant image**
|
||||
imageAlt="OBSE Product Interface Mockup"
|
||||
/>
|
||||
|
||||
@ -24,11 +24,11 @@ import {
|
||||
FaChartLine, // For Growth/Scalability
|
||||
FaTasks, // For QA
|
||||
FaComments, // For Feedback
|
||||
FaPhone,
|
||||
FaEnvelope,
|
||||
//FaPhone,
|
||||
//FaEnvelope,
|
||||
} from "react-icons/fa";
|
||||
import { COLORS } from "@/constants";
|
||||
import ContactForm from "@/components/ContactForm";
|
||||
//import ContactForm from "@/components/ContactForm";
|
||||
|
||||
// SEO Metadata
|
||||
export const metadata: Metadata = {
|
||||
@ -323,13 +323,13 @@ export default function ProductDevelopmentPage() {
|
||||
<div className="flex flex-col sm:flex-row justify-center items-center gap-4">
|
||||
<Link
|
||||
href="#how-we-deliver"
|
||||
className="inline-flex items-center justify-center bg-gold-500 text-gray-900 font-bold py-3 px-8 rounded-md hover:bg-gold-600 transition-colors duration-300"
|
||||
className="inline-flex items-center justify-center bg-[linear-gradient(to_right,#e6cd4b,#fff8b3,#e0b843)] text-gray-900 font-bold py-3 px-8 rounded-md hover:bg-gold-600 transition-colors duration-300"
|
||||
style={{ backgroundColor: COLORS.primary }}
|
||||
>
|
||||
How We Deliver
|
||||
</Link>
|
||||
<Link
|
||||
href="#contact"
|
||||
href="/contact"
|
||||
className="inline-flex items-center text-gold-400 hover:text-gold-300 transition-colors duration-300"
|
||||
style={{ color: COLORS.primary }}
|
||||
>
|
||||
@ -511,7 +511,7 @@ export default function ProductDevelopmentPage() {
|
||||
|
||||
{/* 10. Call to Action (CTA) Section */}
|
||||
<section
|
||||
className="py-16 md:py-24 bg-gold-500 text-gray-900"
|
||||
className="py-16 md:py-24 bg-[linear-gradient(to_right,#e6cd4b,#fff8b3,#e0b843)] text-gray-900"
|
||||
style={{ backgroundColor: COLORS.primary }}
|
||||
>
|
||||
<div className="container mx-auto px-6 text-center">
|
||||
@ -525,13 +525,13 @@ export default function ProductDevelopmentPage() {
|
||||
</p>
|
||||
<div className="flex flex-col sm:flex-row justify-center items-center gap-4">
|
||||
<Link
|
||||
href="/contact?subject=Product Development Inquiry" // Pre-fill subject
|
||||
href="/contact" // Pre-fill subject
|
||||
className="inline-block bg-gray-800 text-white font-bold py-3 px-8 rounded-md hover:bg-gray-900 dark:bg-gray-900 dark:hover:bg-black transition-colors duration-300"
|
||||
>
|
||||
Request a Consultation
|
||||
</Link>
|
||||
<Link
|
||||
href="#contact" // Link to contact section below
|
||||
href="/contact" // Link to contact section below
|
||||
className="inline-block bg-transparent border-2 border-gray-800 text-gray-800 font-bold py-3 px-8 rounded-md hover:bg-gray-800 hover:text-white transition-colors duration-300"
|
||||
>
|
||||
Contact Us
|
||||
@ -541,7 +541,7 @@ export default function ProductDevelopmentPage() {
|
||||
</section>
|
||||
|
||||
{/* 11. Contact Information Section */}
|
||||
<section
|
||||
{/* <section
|
||||
id="contact"
|
||||
className="py-16 md:py-24 bg-gray-100 dark:bg-gray-800"
|
||||
>
|
||||
@ -556,7 +556,7 @@ export default function ProductDevelopmentPage() {
|
||||
</p>
|
||||
</div>
|
||||
<div className="max-w-4xl mx-auto grid grid-cols-1 md:grid-cols-2 gap-8 items-start">
|
||||
{/* Contact Details */}
|
||||
|
||||
<div className="space-y-6">
|
||||
<div className="flex items-center space-x-4">
|
||||
<FaPhone
|
||||
@ -601,7 +601,7 @@ export default function ProductDevelopmentPage() {
|
||||
</Link>
|
||||
</div>
|
||||
|
||||
{/* Contact Form */}
|
||||
|
||||
<div className="bg-white dark:bg-gray-700 p-6 rounded-lg shadow-md">
|
||||
<h3 className="text-xl font-semibold font-poppins text-gray-900 dark:text-white mb-4">
|
||||
Send Us Your Inquiry
|
||||
@ -610,7 +610,9 @@ export default function ProductDevelopmentPage() {
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</section> */}
|
||||
|
||||
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
@ -390,7 +390,7 @@ export default function ResourceAugmentationPage() {
|
||||
<div className="flex flex-col sm:flex-row justify-center items-center gap-4">
|
||||
<Link
|
||||
href="#service-models" // Link to the service models section
|
||||
className="inline-flex items-center justify-center bg-gold-500 text-gray-900 font-bold py-3 px-8 rounded-md hover:bg-gold-600 transition-colors duration-300"
|
||||
className="inline-flex items-center justify-center bg-[linear-gradient(to_right,#e6cd4b,#fff8b3,#e0b843)] text-gray-900 font-bold py-3 px-8 rounded-md hover:bg-gold-600 transition-colors duration-300"
|
||||
style={{ backgroundColor: COLORS.primary }}
|
||||
>
|
||||
Explore Our Models <FaArrowRight className="ml-2" />
|
||||
@ -807,7 +807,7 @@ export default function ResourceAugmentationPage() {
|
||||
|
||||
{/* 10. Call to Action (CTA) Section */}
|
||||
<section
|
||||
className="py-16 md:py-24 bg-gold-500 text-gray-900"
|
||||
className="py-16 md:py-24 bg-[linear-gradient(to_right,#e6cd4b,#fff8b3,#e0b843)] text-gray-900"
|
||||
style={{ backgroundColor: COLORS.primary }}
|
||||
>
|
||||
<div className="container mx-auto px-6 text-center">
|
||||
|
||||
@ -50,7 +50,7 @@ const TechTalkPage = async () => {
|
||||
</p>
|
||||
</div>
|
||||
{/* Blog Post Grid */}
|
||||
{posts.length > 0 ? (
|
||||
{false && posts.length > 0 ? (
|
||||
<div className="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-8 md:gap-10">
|
||||
{posts.map((post: Post) => (
|
||||
<BlogPostCard
|
||||
|
||||
Reference in New Issue
Block a user