Merge version_2_1782003016726 into main

Merge version_2_1782003016726 into main
This commit was merged in pull request #1.
This commit is contained in:
2026-06-21 00:51:48 +00:00
10 changed files with 279 additions and 211 deletions

View File

@@ -10,16 +10,15 @@ export default function Layout() {
<StyleProvider buttonVariant="default" siteBackground="none" heroBackground="none">
<SiteBackgroundSlot />
<NavbarCentered
logo="Elite Detail"
logo="China Importados Brasil"
navItems={[
{ name: "Services", href: "#services" },
{ name: "Testimonials", href: "#testimonials" },
{ name: "Why Us", href: "#why-us" },
{ name: "Team", href: "#team" },
{ name: "FAQ", href: "#faq" },
{ name: "Contact", href: "#contact" },
{ name: "Início", href: "#" },
{ name: "Categorias", href: "#categorias" },
{ name: "Ofertas", href: "#ofertas" },
{ name: "Sobre Nós", href: "#sobre" },
{ name: "Contato", href: "#contato" },
]}
ctaButton={{ text: "Book Now", href: "#contact" }}
ctaButton={{ text: "Ver Ofertas", href: "#ofertas" }}
/>
<main className="flex-grow">
<Outlet />

View File

@@ -5,15 +5,15 @@
:root {
/* @colorThemes/darkTheme/premiumOrange */
--background: #0a0a0a;
--card: #1a1a1a;
--background: #0a192f;
--card: #112240;
--foreground: #f5f5f5;
--primary-cta: #ff7a1a;
--primary-cta: #d4af37;
--primary-cta-text: #ffffff;
--secondary-cta: #1a1a1a;
--secondary-cta: #112240;
--secondary-cta-text: #f5f5f5;
--accent: #ff7a1a;
--background-accent: #e8651a;
--accent: #d4af37;
--background-accent: #b5952f;
/* @layout/border-radius/soft */
--radius: 1.5rem;

View File

@@ -1,211 +1,36 @@
import { StyleProvider } from "@/components/ui/StyleProvider";
import HeroBillboardFeatures from "@/components/sections/hero/HeroBillboardFeatures";
import FeaturesStickyCards from "@/components/sections/features/FeaturesStickyCards";
import TestimonialMarqueeOverlayCards from "@/components/sections/testimonial/TestimonialMarqueeOverlayCards";
import FeaturesComparison from "@/components/sections/features/FeaturesComparison";
import TeamOverlayCards from "@/components/sections/team/TeamOverlayCards";
import FaqSimple from "@/components/sections/faq/FaqSimple";
import ContactSplitForm from "@/components/sections/contact/ContactSplitForm";
// AUTO-GENERATED shell by per-section-migrate.
// Section bodies live in ./<PageBase>/sections/<X>.tsx. Edit the section
// files directly. Non-block content (wrappers, non-inlinable sections) is
// preserved inline; extracted section blocks become <XSection/> refs.
export default function HomePage() {
import { StyleProvider } from "@/components/ui/StyleProvider";
import React from 'react';
import HeroSection from './HomePage/sections/Hero';
import ServicesSection from './HomePage/sections/Services';
import TestimonialsSection from './HomePage/sections/Testimonials';
import WhyUsSection from './HomePage/sections/WhyUs';
import TeamSection from './HomePage/sections/Team';
import FaqSection from './HomePage/sections/Faq';
import ContactSection from './HomePage/sections/Contact';
export default function HomePage(): React.JSX.Element {
return (
<StyleProvider siteBackground="none" heroBackground="lightRaysCenter" buttonVariant="expand">
<HeroBillboardFeatures
badge="Now Booking"
title="Your Car Deserves the Best"
description="Professional detailing services that restore your vehicle's showroom finish. We use premium products and proven techniques to protect and enhance every surface."
primaryButton={{ text: "Book Now", href: "#contact" }}
secondaryButton={{ text: "Our Services", href: "#services" }}
videoSrc="https://storage.googleapis.com/webild/default/templates/detailing/hero/hero.mp4"
features={[
{
icon: "Shield",
title: "Ceramic Protection",
description: "Industry-leading coating with 5-year warranty",
},
{
icon: "Star",
title: "5-Star Rated",
description: "Trusted by 500+ happy customers",
},
{
icon: "Award",
title: "Certified Detailers",
description: "IDA certified professionals on every job",
},
]}
/>
<HeroSection />
<div id="services">
<FeaturesStickyCards
items={[
{
title: "Interior Detail",
description: "Deep cleaning of seats, carpets, dashboard, and all interior surfaces. Leather conditioning and fabric protection included.",
primaryButton: { text: "Book Interior", href: "#contact" },
leftImageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/features/feature1.webp",
rightImageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/team/team1.webp",
},
{
title: "Exterior Detail",
description: "Hand wash, clay bar treatment, polish, and premium wax application for a mirror-like finish that lasts.",
primaryButton: { text: "Book Exterior", href: "#contact" },
leftImageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/team/team2.webp",
rightImageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/features/features2.webp",
},
{
title: "Ceramic Coating",
description: "Long-lasting ceramic protection that shields your paint from UV rays, chemicals, and minor scratches for years.",
primaryButton: { text: "Book Ceramic", href: "#contact" },
leftImageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/features/features2.webp",
rightImageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/team/team3.webp",
},
]}
/>
</div>
<ServicesSection />
<div id="testimonials">
<TestimonialMarqueeOverlayCards
tag="Testimonials"
title="Hear It From Our Clients"
description="Real results from real customers who trust us with their vehicles"
primaryButton={{ text: "Book Now", href: "#contact" }}
secondaryButton={{ text: "View Gallery", href: "#services" }}
testimonials={[
{
name: "James Wilson",
role: "BMW Owner",
company: "Miami, FL",
rating: 5,
imageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/testimonials/testimonial1.webp",
},
{
name: "Maria Santos",
role: "Tesla Owner",
company: "Coral Gables, FL",
rating: 5,
imageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/testimonials/testimonial2.webp",
},
{
name: "David Chen",
role: "Porsche Owner",
company: "Brickell, FL",
rating: 5,
imageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/testimonials/testimonial3.webp",
},
{
name: "Sarah Thompson",
role: "Mercedes Owner",
company: "South Beach, FL",
rating: 4,
imageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/testimonials/testimonial4.webp",
},
{
name: "Michael Johnson",
role: "Audi Owner",
company: "Coconut Grove, FL",
rating: 5,
imageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/testimonials/testimonial5.webp",
},
]}
/>
</div>
<TestimonialsSection />
<div id="why-us">
<FeaturesComparison
tag="Why Us"
title="The Detailing Difference"
description="See why professional detailing is worth the investment"
primaryButton={{ text: "Get Started", href: "#contact" }}
negativeItems={[
"Automatic car washes scratch paint",
"DIY products leave swirl marks",
"No protection against UV damage",
"Interior stains and odors linger",
"Resale value drops over time",
]}
positiveItems={[
"Hand wash and paint correction",
"Flawless, swirl-free finish",
"Ceramic coating blocks UV rays",
"Deep interior sanitization",
"Maintains and boosts resale value",
]}
/>
</div>
<WhyUsSection />
<div id="team">
<TeamOverlayCards
tag="Our Experts"
title="Meet the Team"
description="Passionate detailers dedicated to perfection"
members={[
{
name: "Marcus Rivera",
role: "Lead Detailer",
imageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/testimonials/testimonial3.webp",
},
{
name: "Jake Thompson",
role: "Ceramic Specialist",
imageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/testimonials/testimonial4.webp",
},
{
name: "Daniel Cruz",
role: "Interior Expert",
imageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/testimonials/testimonial1.webp",
},
]}
/>
</div>
<TeamSection />
<div id="faq">
<FaqSimple
tag="FAQ"
title="Frequently Asked Questions"
description="Everything you need to know about our detailing services"
items={[
{
question: "How long does a full detail take?",
answer: "A full interior and exterior detail typically takes 4-6 hours depending on the size and condition of your vehicle. Ceramic coating applications may require an additional day for proper curing.",
},
{
question: "How often should I get my car detailed?",
answer: "We recommend a full detail every 3-4 months to maintain your vehicle's appearance and protect its surfaces. Ceramic coated vehicles can go longer between details.",
},
{
question: "What is ceramic coating and how long does it last?",
answer: "Ceramic coating is a liquid polymer applied to your vehicle's exterior that creates a permanent bond with the paint. It provides superior protection against UV rays, chemicals, and minor scratches, lasting 2-5 years depending on the package.",
},
{
question: "Do you offer mobile detailing services?",
answer: "Yes, we offer mobile detailing for your convenience. Our fully equipped team can come to your home or office. Mobile service availability depends on your location and the package selected.",
},
{
question: "What products do you use?",
answer: "We exclusively use premium, professional-grade products that are safe for all vehicle surfaces. Our ceramic coatings are sourced from industry-leading manufacturers with proven durability and performance.",
},
]}
/>
</div>
<FaqSection />
<div id="contact">
<ContactSplitForm
tag="Contact"
title="Get Your Free Estimate"
description="Tell us about your project and we'll get back to you within 24 hours."
inputs={[
{ name: "name", type: "text", placeholder: "Full Name", required: true },
{ name: "email", type: "email", placeholder: "Email Address", required: true },
{ name: "phone", type: "tel", placeholder: "Phone Number" },
]}
textarea={{ name: "message", placeholder: "Tell us about your vehicle...", rows: 4, required: true }}
buttonText="Send Message"
videoSrc="https://storage.googleapis.com/webild/default/templates/detailing/contact/cta-video.mp4"
/>
</div>
<ContactSection />
</StyleProvider>

View File

@@ -0,0 +1,25 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "contact" section.
import React from 'react';
import ContactSplitForm from "@/components/sections/contact/ContactSplitForm";
export default function ContactSection(): React.JSX.Element {
return (
<div id="contact">
<ContactSplitForm
tag="Contact"
title="Get Your Free Estimate"
description="Tell us about your project and we'll get back to you within 24 hours."
inputs={[
{ name: "name", type: "text", placeholder: "Full Name", required: true },
{ name: "email", type: "email", placeholder: "Email Address", required: true },
{ name: "phone", type: "tel", placeholder: "Phone Number" },
]}
textarea={{ name: "message", placeholder: "Tell us about your vehicle...", rows: 4, required: true }}
buttonText="Send Message"
videoSrc="https://storage.googleapis.com/webild/default/templates/detailing/contact/cta-video.mp4"
/>
</div>
);
}

View File

@@ -0,0 +1,39 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "faq" section.
import React from 'react';
import FaqSimple from "@/components/sections/faq/FaqSimple";
export default function FaqSection(): React.JSX.Element {
return (
<div id="faq">
<FaqSimple
tag="FAQ"
title="Frequently Asked Questions"
description="Everything you need to know about our detailing services"
items={[
{
question: "How long does a full detail take?",
answer: "A full interior and exterior detail typically takes 4-6 hours depending on the size and condition of your vehicle. Ceramic coating applications may require an additional day for proper curing.",
},
{
question: "How often should I get my car detailed?",
answer: "We recommend a full detail every 3-4 months to maintain your vehicle's appearance and protect its surfaces. Ceramic coated vehicles can go longer between details.",
},
{
question: "What is ceramic coating and how long does it last?",
answer: "Ceramic coating is a liquid polymer applied to your vehicle's exterior that creates a permanent bond with the paint. It provides superior protection against UV rays, chemicals, and minor scratches, lasting 2-5 years depending on the package.",
},
{
question: "Do you offer mobile detailing services?",
answer: "Yes, we offer mobile detailing for your convenience. Our fully equipped team can come to your home or office. Mobile service availability depends on your location and the package selected.",
},
{
question: "What products do you use?",
answer: "We exclusively use premium, professional-grade products that are safe for all vehicle surfaces. Our ceramic coatings are sourced from industry-leading manufacturers with proven durability and performance.",
},
]}
/>
</div>
);
}

View File

@@ -0,0 +1,21 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "hero" section.
import React from 'react';
import HeroBillboardFeatures from "@/components/sections/hero/HeroBillboardFeatures";
export default function HeroSection(): React.JSX.Element {
return (
<div id="hero" data-section="hero">
<HeroBillboardFeatures
badge="Frete Grátis para todo o Brasil"
title="Os Melhores Produtos Importados a um Clique de Você"
description="Produtos importados diretamente da China com qualidade premium, preços competitivos e entrega garantida. Descubra as melhores ofertas em eletrônicos, moda e muito mais."
primaryButton={{"text":"Comprar Agora","href":"#ofertas"}}
secondaryButton={{"href":"#categorias","text":"Ver Categorias"}}
videoSrc="https://storage.googleapis.com/webild/default/templates/detailing/hero/hero.mp4"
features={[{"title":"Pagamento Seguro","icon":"ShieldCheck","description":"Pagamentos via Pix, Cartão e Boleto"},{"icon":"Truck","description":"Acompanhe seu pedido até a entrega","title":"Rastreamento"},{"title":"Suporte Dedicado","icon":"MessageCircle","description":"Atendimento rápido via WhatsApp"}]}
/>
</div>
);
}

View File

@@ -0,0 +1,37 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "services" section.
import React from 'react';
import FeaturesStickyCards from "@/components/sections/features/FeaturesStickyCards";
export default function ServicesSection(): React.JSX.Element {
return (
<div id="services">
<FeaturesStickyCards
items={[
{
title: "Interior Detail",
description: "Deep cleaning of seats, carpets, dashboard, and all interior surfaces. Leather conditioning and fabric protection included.",
primaryButton: { text: "Book Interior", href: "#contact" },
leftImageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/features/feature1.webp",
rightImageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/team/team1.webp",
},
{
title: "Exterior Detail",
description: "Hand wash, clay bar treatment, polish, and premium wax application for a mirror-like finish that lasts.",
primaryButton: { text: "Book Exterior", href: "#contact" },
leftImageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/team/team2.webp",
rightImageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/features/features2.webp",
},
{
title: "Ceramic Coating",
description: "Long-lasting ceramic protection that shields your paint from UV rays, chemicals, and minor scratches for years.",
primaryButton: { text: "Book Ceramic", href: "#contact" },
leftImageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/features/features2.webp",
rightImageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/team/team3.webp",
},
]}
/>
</div>
);
}

View File

@@ -0,0 +1,34 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "team" section.
import React from 'react';
import TeamOverlayCards from "@/components/sections/team/TeamOverlayCards";
export default function TeamSection(): React.JSX.Element {
return (
<div id="team">
<TeamOverlayCards
tag="Our Experts"
title="Meet the Team"
description="Passionate detailers dedicated to perfection"
members={[
{
name: "Marcus Rivera",
role: "Lead Detailer",
imageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/testimonials/testimonial3.webp",
},
{
name: "Jake Thompson",
role: "Ceramic Specialist",
imageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/testimonials/testimonial4.webp",
},
{
name: "Daniel Cruz",
role: "Interior Expert",
imageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/testimonials/testimonial1.webp",
},
]}
/>
</div>
);
}

View File

@@ -0,0 +1,56 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "testimonials" section.
import React from 'react';
import TestimonialMarqueeOverlayCards from "@/components/sections/testimonial/TestimonialMarqueeOverlayCards";
export default function TestimonialsSection(): React.JSX.Element {
return (
<div id="testimonials">
<TestimonialMarqueeOverlayCards
tag="Testimonials"
title="Hear It From Our Clients"
description="Real results from real customers who trust us with their vehicles"
primaryButton={{ text: "Book Now", href: "#contact" }}
secondaryButton={{ text: "View Gallery", href: "#services" }}
testimonials={[
{
name: "James Wilson",
role: "BMW Owner",
company: "Miami, FL",
rating: 5,
imageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/testimonials/testimonial1.webp",
},
{
name: "Maria Santos",
role: "Tesla Owner",
company: "Coral Gables, FL",
rating: 5,
imageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/testimonials/testimonial2.webp",
},
{
name: "David Chen",
role: "Porsche Owner",
company: "Brickell, FL",
rating: 5,
imageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/testimonials/testimonial3.webp",
},
{
name: "Sarah Thompson",
role: "Mercedes Owner",
company: "South Beach, FL",
rating: 4,
imageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/testimonials/testimonial4.webp",
},
{
name: "Michael Johnson",
role: "Audi Owner",
company: "Coconut Grove, FL",
rating: 5,
imageSrc: "https://storage.googleapis.com/webild/default/templates/detailing/testimonials/testimonial5.webp",
},
]}
/>
</div>
);
}

View File

@@ -0,0 +1,32 @@
// AUTO-GENERATED by per-section-migrate. Edit freely — Bob will treat this
// file as the canonical source for the "why-us" section.
import React from 'react';
import FeaturesComparison from "@/components/sections/features/FeaturesComparison";
export default function WhyUsSection(): React.JSX.Element {
return (
<div id="why-us">
<FeaturesComparison
tag="Why Us"
title="The Detailing Difference"
description="See why professional detailing is worth the investment"
primaryButton={{ text: "Get Started", href: "#contact" }}
negativeItems={[
"Automatic car washes scratch paint",
"DIY products leave swirl marks",
"No protection against UV damage",
"Interior stains and odors linger",
"Resale value drops over time",
]}
positiveItems={[
"Hand wash and paint correction",
"Flawless, swirl-free finish",
"Ceramic coating blocks UV rays",
"Deep interior sanitization",
"Maintains and boosts resale value",
]}
/>
</div>
);
}