// Agora DreamFinder — guided form to commission a search across the network. const DreamFinder = ({ setRoute }) => { const [step, setStep] = useState(1); const [brand, setBrand] = useState('Hermès'); const [model, setModel] = useState('Kelly'); const [size, setSize] = useState('28'); const [color, setColor] = useState('etoupe'); const [hardware, setHardware] = useState('palladium'); const [cond, setCond] = useState('Excellent'); const [year, setYear] = useState([2018, 2026]); const [budget, setBudget] = useState(12000); const palettes = window.AG_DATA.palettes; const colorOpts = [ { id:'etoupe', label:'Etoupe', p: palettes.etoupe }, { id:'noir', label:'Noir', p: palettes.noir }, { id:'gold', label:'Gold', p: palettes.cognac }, { id:'rouge', label:'Rouge H', p: palettes.rouge }, { id:'cream', label:'Craie', p: palettes.cream }, { id:'forest', label:'Vert', p: palettes.bottega }, ]; return (
Dream Finder · We hunt it for you

You want it.
We find it.

Tell us the piece. We'll send a brief to our 1,284 sellers worldwide and message you when matches surface. Median time to first match: 11 days.

{/* Stepper */}
{[ { n: 1, l:'Piece' }, { n: 2, l:'Specification' }, { n: 3, l:'Budget & contact' }, { n: 4, l:'Brief sent' }, ].map((s, i, arr) => (
= s.n ? '#fff' : 'transparent', color: step >= s.n ? 'var(--ag-ink)' : 'rgba(255,255,255,0.6)', border:'1px solid '+(step >= s.n ? '#fff' : 'rgba(255,255,255,0.3)'), display:'flex', alignItems:'center', justifyContent:'center', fontFamily:'var(--ag-font-mono)', fontSize: 12, fontWeight: 600 }}> {step > s.n ? : s.n}
= s.n ? '#fff' : 'rgba(255,255,255,0.5)', fontSize: 11 }}>{s.l}
{i < arr.length-1 &&
}
))}
{step === 1 && (
01 · The piece

What are you looking for?

{window.AG_DATA.brands.slice(0,10).map(b => ( setBrand(b)} className={`ag-chip${brand===b?' ag-chip--active':''}`}>{b} ))}
setModel(e.target.value)}/>
{['Kelly','Birkin','Constance','Mini Kelly','Picotin'].map(m => ( setModel(m)} className={`ag-chip${model===m?' ag-chip--active':''}`}>{m} ))}
{['Mini','25','28','32','35'].map(s => ( setSize(s)} className={`ag-chip${size===s?' ag-chip--active':''}`}>{s} ))}
)} {step === 2 && (
02 · Specification

How exactly?

{colorOpts.map(c => (
setColor(c.id)} style={{ cursor:'pointer' }}>
{c.label}
))}
{['Palladium','Gold','Rose gold','Black hardware'].map(h => ( setHardware(h.toLowerCase())} className={`ag-chip${hardware===h.toLowerCase()?' ag-chip--active':''}`}>{h} ))}
{['New','Excellent','Very Good','Good'].map(c => ( setCond(c)} className={`ag-chip${cond===c?' ag-chip--active':''}`}>{c} ))}
20102026
)} {step === 3 && (
03 · Budget & contact

At what number?

€{budget.toLocaleString()}
· ¥{Math.round(budget*161).toLocaleString()} JPY
setBudget(+e.target.value)} style={{ width:'100%', marginTop: 16, accentColor:'var(--ag-ink)' }}/>