/* global React, Icon, Logo, useReveal, CTA */ const { useState, useEffect, useRef, useMemo, useCallback } = React; // ─── Hero ─── function Hero() { return (

Você não precisa decorar protocolos quando aprende a pensar como uma cosmetóloga.

Aprenda a analisar fórmulas, montar estratégias personalizadas, conduzir consultorias e tomar decisões com segurança sem depender da opinião dos outros.

); } // ─── Prática (cream) ─── function Pratica() { const data = window.CCA_DATA.practicePoints; return (

O CCA na prática

Um método estruturado para quem quer parar de improvisar e entregar consultoria de skincare com autoridade clínica.

{data.map((p, i) => { const IconEl = Icon[p.icon] || Icon.check; return (

{p.title}

{p.body}

); })}
); } // ─── Testimonials carousel ─── function Testimonials() { const items = window.CCA_DATA.testimonials; const [page, setPage] = useState(0); const [perPage, setPerPage] = useState(3); useEffect(() => { const update = () => { const w = window.innerWidth; setPerPage(w < 800 ? 1 : w < 1100 ? 2 : 3); }; update(); window.addEventListener("resize", update); return () => window.removeEventListener("resize", update); }, []); const pages = Math.max(1, Math.ceil(items.length / perPage)); useEffect(() => { setPage(p => Math.min(p, pages - 1)); }, [pages]); const visible = items.slice(page * perPage, page * perPage + perPage); return (

O que as alunas estão dizendo

+1.200 profissionais já aplicam o método CCA nos seus atendimentos.

{visible.map((t, i) => (
{Array.from({length: t.stars}).map((_, k) => ( ))}
{t.quote}
{t.initials}
{t.name} {t.role}
))}
{Array.from({length: pages}).map((_, i) => (
); } // ─── Resultados (infinite marquee of real before/after) ─── function Resultados() { const cases = window.CCA_DATA.cases; // Duplicate the array 2x so the CSS animation translateX(-50%) loops seamlessly const loop = [...cases, ...cases]; return (

Resultados do método CCA

Antes e depois de alunas que seguiram protocolos personalizados elaborados através da Cosmetologia Consciente Aplicada, de forma online e sem procedimentos estéticos.

{loop.map((c, i) => (
= cases.length}> {`Antes
Antes Depois
{c.label} {c.duration}
))}
); } // ─── Video Testimonials (3 × 9:16, click → fullscreen lightbox) ─── function VideoTestimonials() { const items = window.CCA_DATA.videoTestimonials || []; const [openIdx, setOpenIdx] = useState(null); const videoRefs = useRef([]); const lightboxVideoRef = useRef(null); // Lock body scroll while lightbox open + ESC to close useEffect(() => { if (openIdx === null) return; const prev = document.body.style.overflow; document.body.style.overflow = "hidden"; const onKey = (e) => { if (e.key === "Escape") setOpenIdx(null); }; window.addEventListener("keydown", onKey); // auto-play when opens requestAnimationFrame(() => { const v = lightboxVideoRef.current; if (v) { try { v.currentTime = 0; v.play(); } catch (_) {} } }); return () => { document.body.style.overflow = prev; window.removeEventListener("keydown", onKey); }; }, [openIdx]); const open = (i) => { // pause any inline preview videoRefs.current.forEach((vid) => { if (vid) { try { vid.pause(); } catch(_) {} } }); setOpenIdx(i); }; const close = () => setOpenIdx(null); return (

Quem aplica o método CCA

Profissionais reais contando como o método mudou a forma de conduzir consultoria.

{items.map((v, i) => (
{v.name} {v.role}
))}
{openIdx !== null && items[openIdx] && (
e.stopPropagation()}>
)}
); } Object.assign(window, {Hero, Pratica, Testimonials, Resultados, VideoTestimonials});