// Facette — Treatments page
const { TREATMENT_CATEGORIES: CATS } = window.FacetteData;
function Treatments({ branch, openBook, isMobile }) {
const [active, setActive] = React.useState(CATS[0].id);
const refs = React.useRef({});
const scrollTo = (id) => {
setActive(id);
const el = refs.current[id];
if (el) {
// scroll within the closest scroll container
const container = el.closest('.stage-desktop, .ios-scroll, .site') || document.scrollingElement;
if (container && container !== document.scrollingElement) {
const containerRect = container.getBoundingClientRect();
const elRect = el.getBoundingClientRect();
const offset = elRect.top - containerRect.top + container.scrollTop - 140;
container.scrollTo({ top: offset, behavior: 'smooth' });
} else {
el.scrollIntoView({ block: 'start' });
}
}
};
return (
No JPG menus, no “DM for price.” Pick a category to jump in.
Every row is bookable — tap to open the calendar.
All prices in AED. Prices include VAT. “Price on request” rows are signature facials priced after a complimentary consultation —
no surprise add-ons, no commission upsell.
Members save 20% on every facial booked outside their plan, and 10% on retail products in-branch.
Every facial,
every price.&') }} />