8 Commits

Author SHA1 Message Date
2f6e5a5ada Update theme fonts 2026-05-18 09:54:14 +00:00
71fe7d0d31 Update theme fonts 2026-05-18 09:54:13 +00:00
2d703e7338 Update theme fonts 2026-05-18 09:53:57 +00:00
4da2dc5278 Update theme fonts 2026-05-18 09:53:57 +00:00
53332229f8 Update src/app/styles/variables.css 2026-05-18 09:27:01 +00:00
eb7dd8b4bb Update src/app/page.tsx 2026-05-18 09:27:01 +00:00
e0b9cece5a Merge version_2 into main
Merge version_2 into main
2026-05-18 09:25:07 +00:00
6f83b6d787 Merge version_2 into main
Merge version_2 into main
2026-05-18 09:24:37 +00:00
4 changed files with 56 additions and 49 deletions

View File

@@ -7,6 +7,9 @@ import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag"; import Tag from "@/tag/Tag";
import { getVisualEditScript } from "@/utils/visual-edit-script"; import { getVisualEditScript } from "@/utils/visual-edit-script";
import { Public_Sans } from "next/font/google"; import { Public_Sans } from "next/font/google";
import { Manrope } from "next/font/google";
import { DM_Sans } from "next/font/google";
import { Montserrat } from "next/font/google";
@@ -20,8 +23,14 @@ export const metadata: Metadata = {
}, },
}; };
const publicSans = Public_Sans({
variable: "--font-public-sans",
const montserrat = Montserrat({
variable: "--font-montserrat",
subsets: ["latin"],
});
const inter = Inter({
variable: "--font-inter",
subsets: ["latin"], subsets: ["latin"],
}); });
@@ -33,7 +42,7 @@ export default function RootLayout({
return ( return (
<html lang="en" suppressHydrationWarning> <html lang="en" suppressHydrationWarning>
<ServiceWrapper> <ServiceWrapper>
<body className={`${publicSans.variable} antialiased`}> <body className={`${montserrat.variable} ${inter.variable} antialiased`}>
<Tag /> <Tag />
{children} {children}
<script <script

View File

@@ -10,7 +10,7 @@ import FaqSplitMedia from '@/components/sections/faq/FaqSplitMedia';
import ContactCTA from '@/components/sections/contact/ContactCTA'; import ContactCTA from '@/components/sections/contact/ContactCTA';
import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis'; import FooterLogoEmphasis from '@/components/sections/footer/FooterLogoEmphasis';
import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay'; import NavbarLayoutFloatingOverlay from '@/components/navbar/NavbarLayoutFloatingOverlay/NavbarLayoutFloatingOverlay';
import { CheckCircle } from "lucide-react"; import { CheckCircle, AlertTriangle, ShieldCheck, HardHat } from "lucide-react";
export default function LandingPage() { export default function LandingPage() {
return ( return (
@@ -20,9 +20,9 @@ export default function LandingPage() {
borderRadius="soft" borderRadius="soft"
contentWidth="medium" contentWidth="medium"
sizing="large" sizing="large"
background="noiseDiagonalGradient" background="noise"
cardStyle="glass-depth" cardStyle="glass-elevated"
primaryButtonStyle="diagonal-gradient" primaryButtonStyle="gradient"
secondaryButtonStyle="glass" secondaryButtonStyle="glass"
headingFontWeight="bold" headingFontWeight="bold"
> >
@@ -31,8 +31,8 @@ export default function LandingPage() {
<NavbarLayoutFloatingOverlay <NavbarLayoutFloatingOverlay
navItems={[ navItems={[
{ name: "Home", id: "/" }, { name: "Home", id: "/" },
{ name: "FIFO Support", id: "/workforce-support" }, { name: "Support", id: "/workforce-support" },
{ name: "Careers", id: "/join-esg" }, { name: "Join", id: "/join-esg" },
{ name: "About", id: "/about" }, { name: "About", id: "/about" },
{ name: "Contact", id: "/contact" }, { name: "Contact", id: "/contact" },
]} ]}
@@ -42,43 +42,41 @@ export default function LandingPage() {
<div id="hero" data-section="hero"> <div id="hero" data-section="hero">
<HeroSplitDualMedia <HeroSplitDualMedia
title="Rostered FIFO Workforce Support for Mining" title="Elite Mining Workforce, Rapidly Deployed"
description="Expert Support Group delivers elite HD Mechanics, LV Mechanics, and Welders for critical maintenance and site operations. Rapid, reliable deployment across Western Australia." description="ESG connects top-tier HD/LV Mechanics and specialized Welders to Western Australia's most critical mining operations. We power production stability through precision recruitment."
tag="Industrial Maintenance Experts" tag="Industrial Maintenance Support"
tagIcon={CheckCircle} tagIcon={HardHat}
background={{ variant: "radial-gradient" }} background={{ variant: "gradient-bars" }}
buttons={[{ text: "Request Workforce", href: "#contact" }, { text: "Join Team", href: "/join-esg" }]} buttons={[{ text: "Hire Workforce", href: "#contact" }, { text: "Join ESG", href: "/join-esg" }]}
mediaItems={[ mediaItems={[
{ imageSrc: "https://img.b2bpic.net/free-photo/industrial-plant-workers_1134-118.jpg", imageAlt: "Mining site support" }, { imageSrc: "https://img.b2bpic.net/free-photo/industrial-plant-workers_1134-118.jpg", imageAlt: "Industrial site support" },
{ imageSrc: "https://img.b2bpic.net/free-photo/mechanic-repairing-large-machinery_1134-122.jpg", imageAlt: "Mechanical maintenance" } { imageSrc: "https://img.b2bpic.net/free-photo/mechanic-repairing-large-machinery_1134-122.jpg", imageAlt: "Mining machinery repair" }
]} ]}
rating={5} rating={5}
ratingText="Preferred by top tier WA contractors" ratingText="Trusted by WA's largest contractors"
/> />
</div> </div>
<div id="services" data-section="services"> <div id="services" data-section="services">
<FeatureCardTwentyNine <FeatureCardTwentyNine
title="Our Industrial Solutions" title="Our Industrial Edge"
description="High-performance staffing designed to prevent downtime and optimize site efficiency." description="Solving critical skill shortages with reliable, safety-vetted professionals."
features={[ features={[
{ title: "FIFO Rostered Staff", description: "Consistent, high-caliber personnel for daily site operations.", imageSrc: "https://img.b2bpic.net/free-photo/workers-standing-factory_1134-135.jpg", titleImageSrc: "https://img.b2bpic.net/free-photo/factory-worker_1134-142.jpg", buttonText: "Learn More" }, { title: "Problem: Site Downtime", description: "Unplanned mechanical failures cost millions. We provide the expertise to fix them fast.", imageSrc: "https://img.b2bpic.net/free-photo/engineers-helmets-standing-by-factory_1157-35475.jpg", titleImageSrc: "https://img.b2bpic.net/free-photo/industrial-plant-workers_1134-118.jpg", buttonText: "Learn More" },
{ title: "Shutdown Management", description: "Rapidly deploy specialized crews for major maintenance events.", imageSrc: "https://img.b2bpic.net/free-photo/maintenance-crew_1134-155.jpg", titleImageSrc: "https://img.b2bpic.net/free-photo/welding-sparks_1134-160.jpg", buttonText: "Learn More" }, { title: "Solution: ESG Specialists", description: "Deploy our elite crew of HD and LV mechanics to restore production in record time.", imageSrc: "https://img.b2bpic.net/free-photo/mechanic-engine_1134-180.jpg", titleImageSrc: "https://img.b2bpic.net/free-photo/welding-sparks_1134-160.jpg", buttonText: "Partner With Us" }
{ title: "HD/LV Mechanical", description: "Specialized expertise for mining heavy and light vehicle fleets.", imageSrc: "https://img.b2bpic.net/free-photo/mechanic-engine_1134-180.jpg", titleImageSrc: "https://img.b2bpic.net/free-photo/engine-parts_1134-185.jpg", buttonText: "Learn More" },
{ title: "Qualified Trades", description: "Verified certified welders and fabricators for all site needs.", imageSrc: "https://img.b2bpic.net/free-photo/welder-at-work_1134-190.jpg", titleImageSrc: "https://img.b2bpic.net/free-photo/welding-metal_1134-195.jpg", buttonText: "Learn More" }
]} ]}
gridVariant="bento-grid" gridVariant="bento-grid"
animationType="slide-up" animationType="slide-up"
textboxLayout="split-description" textboxLayout="split-description"
useInvertedBackground={false} useInvertedBackground={true}
/> />
</div> </div>
<div id="why-esg" data-section="why-esg"> <div id="why-esg" data-section="why-esg">
<MetricSplitMediaAbout <MetricSplitMediaAbout
title="Uncompromising Safety & Quality" title="Proven Mining Reliability"
description="We don't just provide personnel; we provide operational continuity. ESG ensures every trade professional deployed is strictly compliant with WA safety standards." description="Our track record speaks for itself. ESG maintains high project availability through rigorous vetting and constant trade support."
metrics={[{ value: "100%", title: "Compliance Vetted" }, { value: "24/7", title: "Support" }, { value: "50+", title: "Active Projects" }]} metrics={[{ value: "48hr", title: "Avg. Mobilization" }, { value: "98%", title: "Compliance Rate" }, { value: "24/7", title: "Field Support" }]}
imageSrc="https://img.b2bpic.net/free-photo/mining-site-machinery_1134-210.jpg" imageSrc="https://img.b2bpic.net/free-photo/mining-site-machinery_1134-210.jpg"
mediaAnimation="blur-reveal" mediaAnimation="blur-reveal"
useInvertedBackground={false} useInvertedBackground={false}
@@ -87,19 +85,19 @@ export default function LandingPage() {
<div id="testimonial" data-section="testimonial"> <div id="testimonial" data-section="testimonial">
<TestimonialCardTwelve <TestimonialCardTwelve
cardTitle="Industry Trusted" cardTitle="Trusted Partner"
cardTag="Our Reputation" cardTag="Industry Reputation"
testimonials={[{ id: "1", name: "Mining Operations Lead", imageSrc: "https://img.b2bpic.net/free-photo/person-in-hard-hat_1134-220.jpg" }, { id: "2", name: "Procurement Director", imageSrc: "https://img.b2bpic.net/free-photo/site-manager_1134-225.jpg" }]} testimonials={[{ id: "1", name: "Operations Superintendent", imageSrc: "https://img.b2bpic.net/free-photo/person-in-hard-hat_1134-220.jpg" }, { id: "2", name: "Project Lead", imageSrc: "https://img.b2bpic.net/free-photo/site-manager_1134-225.jpg" }]}
cardAnimation="slide-up" cardAnimation="slide-up"
useInvertedBackground={false} useInvertedBackground={true}
/> />
</div> </div>
<div id="faq" data-section="faq"> <div id="faq" data-section="faq">
<FaqSplitMedia <FaqSplitMedia
title="Operational Questions" title="Getting Started"
description="Everything you need to know about partnering with us." description="How ESG transforms your on-site capabilities."
faqs={[{ id: "f1", title: "How fast is your deployment?", content: "We specialize in rapid mobilization, typically arriving on-site within 48 hours for critical shutdowns." }, { id: "f2", title: "Do you supply tools?", content: "Yes, all our tradespeople arrive site-ready with their own specialized tools and PPE." }]} faqs={[{ id: "f1", title: "Can you scale crews?", content: "Yes, we mobilize crews from single experts to complete maintenance teams depending on your shutdown requirements." }, { id: "f2", title: "Are crews trade-vetted?", content: "Every single ESG professional is rigorously checked for certifications, safety compliance, and site-readiness." }]}
imageSrc="https://img.b2bpic.net/free-photo/mine-logistics_1134-240.jpg" imageSrc="https://img.b2bpic.net/free-photo/mine-logistics_1134-240.jpg"
faqsAnimation="slide-up" faqsAnimation="slide-up"
textboxLayout="split" textboxLayout="split"
@@ -109,22 +107,22 @@ export default function LandingPage() {
<div id="contact" data-section="contact"> <div id="contact" data-section="contact">
<ContactCTA <ContactCTA
title="Ready for Reliable FIFO Support?" title="Secure Your Mining Project Today"
description="Contact our planning team today to secure the workforce your project requires." description="Don't let workforce gaps halt production. Partner with ESG."
tag="Get In Touch" tag="Contact ESG"
buttons={[{ text: "Submit Request" }]} buttons={[{ text: "Request a Call Back" }]}
background={{ variant: "sparkles-gradient" }} background={{ variant: "sparkles-gradient" }}
useInvertedBackground={false} useInvertedBackground={true}
/> />
</div> </div>
<div id="footer" data-section="footer"> <div id="footer" data-section="footer">
<FooterLogoEmphasis <FooterLogoEmphasis
logoText="ESG" logoText="Expert Support Group"
columns={[{ items: [{ label: "Home", href: "/" }, { label: "Support", href: "/workforce-support" }] }, { items: [{ label: "Contact", href: "/contact" }, { label: "Join", href: "/join-esg" }] }]} columns={[{ items: [{ label: "Home", href: "/" }, { label: "Support", href: "/workforce-support" }] }, { items: [{ label: "Contact", href: "/contact" }, { label: "Join", href: "/join-esg" }] }]}
/> />
</div> </div>
</ReactLenis> </ReactLenis>
</ThemeProvider> </ThemeProvider>
); );
} }

View File

@@ -11,7 +11,7 @@ html {
body { body {
background-color: var(--background); background-color: var(--background);
color: var(--foreground); color: var(--foreground);
font-family: var(--font-public-sans), sans-serif; font-family: var(--font-inter), sans-serif;
position: relative; position: relative;
min-height: 100vh; min-height: 100vh;
overscroll-behavior: none; overscroll-behavior: none;
@@ -24,5 +24,5 @@ h3,
h4, h4,
h5, h5,
h6 { h6 {
font-family: var(--font-public-sans), sans-serif; font-family: var(--font-montserrat), sans-serif;
} }

View File

@@ -10,15 +10,15 @@
--accent: #ffffff; --accent: #ffffff;
--background-accent: #ffffff; */ --background-accent: #ffffff; */
--background: #121212; --background: #1a1a1a;
--card: #1e1e1e; --card: #262626;
--foreground: #ffffff; --foreground: #f5f5f5;
--primary-cta: #f2c200; --primary-cta: #f2c200;
--primary-cta-text: #0b0f14; --primary-cta-text: #0b0f14;
--secondary-cta: #333333; --secondary-cta: #333333;
--secondary-cta-text: #ffffff; --secondary-cta-text: #ffffff;
--accent: #f2c200; --accent: #f2c200;
--background-accent: #252525; --background-accent: #333333;
/* text sizing - set by ThemeProvider */ /* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem); /* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);