Cookie policy
Last updated: 26 October 2026. We do not load Google Tag Manager or Google Analytics before you press Accept. Reject keeps analytics off. Google Maps loads only after you ask to show the map.
What we set
| Name | Type | Purpose | Duration |
|---|---|---|---|
| hoc-locale | Cookie and local storage | Remembers Arabic or English from the page path. | 365 days |
| hoc-theme | Local storage | Remembers light or dark appearance. | Until you clear it |
| hoc-consent | Local storage | Stores Accept or Reject for analytics. | Until you clear or change it |
| hoc-attribution | Session storage, then local storage after Accept | Stores utm_source, utm_medium, utm_campaign, utm_term, utm_content, gclid, and fbclid to send with the contact form. | This tab before Accept, 30 days after |
Only after Accept
Google may set its own analytics cookies after Google Tag Manager or Google Analytics loads. Those files are not loaded before Accept, and we do not ask for ad storage.
What this page cannot switch off
Cloudflare can inject a performance beacon (beacon.min.js and a POST to /cdn-cgi/rum) before you choose and after Reject. Turning off Web Analytics / RUM is done in the Cloudflare dashboard. This page does not claim that beacon is already off.
Sentry, when configured at build time, sends error reports without cookies and without a plain email address. Google Maps waits for Show map.