/* Approach screen — Camille Bardiau */ (function () { const NS = window.CamilleBardiauDesignSystem_92b58f; const { Button, Eyebrow, SectionHeading, Card, Divider } = NS; const Icon = (n, p) => window.CBKit.Icon(n, p); const D = window.CB_DATA; const Section = ({ children, bg }) => (
{children}
); // Inject step animation keyframes once (function injectStepCSS(){ if (typeof document === "undefined" || document.getElementById("cb-step-css")) return; var el = document.createElement("style"); el.id = "cb-step-css"; el.textContent = [ "@keyframes cbStepIn{from{opacity:0;transform:translateX(-18px)}to{opacity:1;transform:none}}", "@keyframes cbLineGrow{from{transform:scaleY(0)}to{transform:scaleY(1)}}", ".cb-step-card{transition:box-shadow .25s,border-color .25s,background .2s;}", ".cb-step-card:hover{box-shadow:var(--shadow-sm)!important;border-color:var(--clay-soft)!important;}", ".cb-step-card.cb-step-active{border-color:var(--clay)!important;background:var(--cream)!important;box-shadow:0 4px 20px rgba(178,126,95,.13)!important;}", ".cb-step-num{transition:background .3s,border-color .3s,color .3s,box-shadow .3s;}", ".cb-step-num.cb-step-num-active{background:var(--clay)!important;border-color:var(--clay)!important;color:var(--on-dark)!important;box-shadow:0 4px 12px rgba(178,126,95,.35)!important;}", ".cb-step-line{transform-origin:top;transition:background .4s;}", ".cb-step-line.cb-line-active{background:var(--clay-soft)!important;}", ".cb-step-body{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .35s;}", ".cb-step-body.cb-step-open{max-height:160px;opacity:1!important;}", ].join(""); document.head.appendChild(el); })(); function StepsSection() { const [active, setActive] = React.useState(null); const [hovered, setHovered] = React.useState(null); const [revealed, setRevealed] = React.useState([]); const rowRefs = React.useRef([]); const open = hovered !== null ? hovered : active; React.useEffect(() => { if (window.lucide) window.lucide.createIcons(); }, [revealed]); React.useEffect(() => { const observers = []; D.pillars.forEach((_, i) => { const el = rowRefs.current[i]; if (!el) return; const io = new IntersectionObserver(([entry]) => { if (entry.isIntersecting) { setTimeout(() => setRevealed(prev => prev.includes(i) ? prev : [...prev, i]), i * 100); io.disconnect(); } }, { threshold: 0.15 }); io.observe(el); observers.push(io); }); return () => observers.forEach(o => o.disconnect()); }, []); return (
{D.pillars.map((p, i) => { const isOpen = open === i; const isRevealed = revealed.includes(i); return (
rowRefs.current[i] = el} style={{ display: "flex", gap: 0, alignItems: "stretch", opacity: isRevealed ? 1 : 0, transform: isRevealed ? "none" : "translateX(-18px)", transition: "opacity .5s ease, transform .5s ease", transitionDelay: (i * 0.08) + "s", cursor: "pointer", }} onMouseEnter={() => setHovered(i)} onMouseLeave={() => setHovered(null)} onClick={() => setActive(active === i ? null : i)}> {/* Number + connector */}
{i + 1}
{i < D.pillars.length - 1 && (
)}
{/* Card */}
{Icon(p.icon, { style: { width: 16, height: 16 } })}

{p.title}

{p.desc}

); })}
); } function Approach({ onNavigate }) { return (
{/* Page header */}
La kinésiologie — un dialogue avec le corps} intro="Une approche qui prend en compte le corps et l'esprit, étroitement liés. Votre corps a un message à vous faire passer." />
{/* Story — real Camille copy */}
Qui suis-je

Je suis Camille Bardiau,
kinésiologue

Très tôt, je me suis intéressée à l'humain. Pourquoi certaines personnes réagissent-elles de cette façon ? Pourquoi les mêmes schémas se répètent-ils ? Pourquoi certaines maladies, émotions ou difficultés apparaissent-elles à un moment précis de la vie ?

Cette curiosité m'a naturellement amenée vers la kinésiologie, une approche qui considère que le corps, l'esprit et notre histoire sont intimement liés.

Aujourd'hui, j'accompagne celles et ceux qui souhaitent mieux comprendre ce qu'ils vivent, dépasser certains blocages et retrouver davantage de liberté intérieure.

Nîmes
11 bis rue de Genève
60 €
la séance
≈ 1h
par séance
{/* Real Camille portrait — reduced size per #25 */}
{D.photos.camille.alt}
{/* 5-step déroulement séance — #18 + #22 dynamic UI */}
Comment se déroule une séance ?} intro="Chaque séance suit un fil rassurant et personnalisé, à votre rythme." /> {D.pillarsNote && (

{D.pillarsNote}

)}
{/* Quote */}

« Chaque être porte en lui une histoire que le mental ne dit pas toujours, mais que le corps sait murmurer à qui sait écouter. »

); } window.CBScreens = window.CBScreens || {}; window.CBScreens.Approach = Approach; })();