import * as React from 'react'; import { Reveal } from './Reveal'; interface SectionProps { number?: string; title?: string; children: React.ReactNode; className?: string; delay?: number; variant?: 'white' | 'gray'; borderTop?: boolean; connector?: React.ReactNode; containerVariant?: 'narrow' | 'normal' | 'wide'; } export const Section: React.FC = ({ number, title, children, className = "", delay = 0, variant = 'white', borderTop = false, connector, containerVariant = 'narrow', }) => { const bgClass = variant === 'gray' ? 'bg-slate-50' : 'bg-white'; const borderClass = borderTop ? 'border-t border-slate-100' : ''; const containerClass = containerVariant === 'wide' ? 'wide-container' : containerVariant === 'normal' ? 'container' : 'narrow-container'; // If no number and title, or if we want to force a simple layout, we could add a prop. // But let's make it smart: if it's wide, maybe we want the title on top anyway? // The user specifically asked to move it above for the configurator. const isTopTitle = containerVariant === 'wide'; return (
{isTopTitle ? (
{(number || title) && (
{number && ( {number} )} {title && (

{title}

)}
)}
{children}
) : (
{/* Sidebar: Number & Title */}
{/* Connector Line */} {connector && (
{connector}
)}
{number && ( {number} )} {title && (

{title}

)}
{/* Main Content */}
{children}
)}
); };