Root cause: Wrong prop check
- Was checking: child.props['data-section-id']
- Should check: child.props.id
Why this matters:
- FormSection receives 'id' as a React prop
- 'data-section-id' is only a DOM attribute
- React.Children.map sees React props, not DOM attributes
- So child.props['data-section-id'] was always undefined
- Condition never matched, no hidden class applied
- All sections stayed visible
Fix:
- Check child.props.id instead
- Cast to string for type safety
- Now condition matches correctly
- Hidden class applied to inactive sections
Result:
✅ Only active section visible
✅ Works on desktop and mobile
✅ Simple one-line fix per location