Sacha VAUDEY 8b374cf8c4
Some checks failed
Build / build-check (pull_request) Failing after 47s
update CI
2025-09-14 12:27:19 +02:00

57 lines
1.8 KiB
TypeScript

import React from 'react';
import { ServiceCard } from '@/components/common/ServiceCard';
import { useTranslation } from '@/lib/hooks/useTranslation';
import type { Service } from '@/types/service';
interface ServicesSectionProps {
services: Service[];
onServiceClick: (service: Service) => void;
translations: {
discoverFeatures: string;
};
}
export const ServicesSection: React.FC<ServicesSectionProps> = ({
services,
onServiceClick,
translations
}) => {
const { t } = useTranslation();
return (
<section
id="services"
className="py-24 md:py-32 px-4 sm:px-6 lg:px-8 bg-gradient-to-br from-white via-blue-50/30 to-gray-50"
>
<div className="max-w-7xl mx-auto">
{/* Header de section moderne avec forte hiérarchie */}
<div className="text-center mb-20">
{/* Séparateur visuel moderne */}
<div className="w-24 h-1.5 bg-gradient-to-r from-blue-600 to-blue-400 rounded-full mx-auto mb-8" />
{/* Titre principal avec contraste fort */}
<h2 className="text-3xl md:text-4xl lg:text-5xl font-bold text-gray-900 mb-6 leading-tight">
{t.sections.ourServices}
</h2>
{/* Sous-titre avec bon contraste */}
<p className="text-lg md:text-xl text-gray-700 mx-auto max-w-3xl leading-relaxed font-medium">
{translations.discoverFeatures}
</p>
</div>
{/* Grille de services avec espacement généreux */}
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8 lg:gap-12">
{services.map((service) => (
<ServiceCard
key={service.name}
service={service}
onServiceClick={onServiceClick}
/>
))}
</div>
</div>
</section>
);
};