// Translations (English + Arabic) and language context.

const I18N = {
  en: {
    dir: 'ltr',
    lang: 'en',
    nav: {
      map: 'Map',
      residences: 'Residences',
      guides: 'Guides',
      about: 'About Hamza',
      contact: 'Contact',
    },
    chooser: {
      tagline: 'Private Real Estate · UAE',
      title: 'Choose your language',
      en: 'English',
      ar: 'العربية',
      enter: 'Enter',
    },
    hero: {
      kicker: 'The UAE · by appointment',
      title1: 'A private map',
      title2: 'of the Emirates,',
      title3: 'shown quietly.',
      body: 'Select a neighborhood. I will walk you through the residences I am currently representing there, and the ones I have chosen not to.',
      counterA: 'Book, spring',
      counterB: 'active listings',
      counterC: 'Off-market',
      counterD: 'by introduction',
      tap: 'Tap any pin',
    },
    mapUI: {
      clickPin: 'Click pin to explore',
      listings: 'Listings',
      typical: 'Typical',
      viewRes: 'View residences →',
      dubai: 'Dubai',
      abuDhabi: 'Abu Dhabi',
      areas: 'areas',
    },
    drawer: {
      available: (n) => `${n} ${n === 1 ? 'residence available' : 'residences available'}`,
      back: (name) => `← Back to ${name}`,
      ref: 'Ref',
      price: 'Price',
      beds: 'Bedrooms',
      baths: 'Bathrooms',
      interior: 'Interior',
      plot: 'Plot',
      view: 'View',
      tenure: 'Tenure',
      defines: 'What defines it',
      bed: 'bed',
      bath: 'bath',
      sqft: 'sqft',
    },
    inquiry: {
      yourAgent: 'Your agent',
      agentName: 'Hamza Eleiwat',
      agentSub: 'Replies personally · typically within the hour',
      lead: 'The fastest way to hear back. I answer WhatsApp myself. No assistants, no bots.',
      preview: 'Message preview',
      waBtn: 'Message on WhatsApp',
      emailBtn: 'Prefer email? Send a form',
      name: 'Full name',
      email: 'Email',
      phone: 'Phone',
      message: 'Message',
      send: 'Send inquiry',
      backBtn: 'Back',
      received: 'Received',
      thanks: (n) => `Thank you, ${n || 'friend'}.`,
      sentLine: 'Hamza has been notified and will be in touch within the hour. If you\u2019d like to skip the wait, his direct line is below.',
      direct: 'Direct',
      emailLabel: 'Email',
      greeting: (title, ref) => `Hello Hamza, I'd like to arrange a viewing of ${title} (Ref HM-${ref}).`,
    },
    featured: {
      kicker: 'Currently on the book',
      title: 'Five residences I\u2019m quietly presenting this season.',
      aside: 'A small selection. Twenty-three more are available privately, and a further eleven off-market, by introduction.',
    },
    about: {
      kicker: 'A word from Hamza',
      title: 'I represent one client at a time, so the search is never crowded.',
      p1: 'For fifteen years I have arranged private transactions across Dubai and Abu Dhabi, for residents of the UAE and those making it a second home. I keep a small book, no more than a dozen active briefs, because a real estate decision is personal, and a personal decision deserves a phone that is always answered.',
      p2: 'What I look for in a property is what I\u2019d want in my own: honest construction, generous light, a view that rewards a second look. What I offer, beyond the listings, is access: to the off-market homes that are never publicly listed, to developers I trust, to a network of lawyers, bankers, and interior architects I have used for a decade.',
      sig: 'Hamza',
      est: 'Est. 2011',
      stat1: ['15', 'years', 'Practicing the market'],
      stat2: ['AED 3.8B', '+', 'Closed transactions'],
      stat3: ['92', '%', 'Client repeat rate'],
      stat4: ['RERA', '/ ADREC', 'Licensed in both emirates'],
    },
    quotes: {
      kicker: 'In their words',
      items: [
        { q: 'He said no to four apartments I liked. He was right on all of them. I bought the fifth, and it has been home for three years.', who: 'A.S.', where: 'Executive, private equity · Downtown' },
        { q: 'The transaction itself took two weeks. The relationship is now eight years long. That tells you enough.', who: 'M.K.', where: 'Founder · Palm Jumeirah & Saadiyat' },
        { q: 'I trusted Hamza with a sight-unseen purchase from London. I have since sent three friends. All three bought.', who: 'R.N.', where: 'Family office principal · Emirates Hills' },
      ],
    },
    guides: {
      kicker: 'Notes from the practice',
      title1: 'What I wish every',
      title2: 'buyer knew first.',
      intro: 'A short library I keep for clients: the fees, the process, how to choose between areas, and how to read an off-plan contract. I update these whenever the regulations change.',
    },
    contact: {
      kicker: 'Begin the conversation',
      title1: 'A home',
      title2: 'in the Emirates,',
      title3: 'chosen together.',
      body: 'If you\u2019re beginning to look, or have already been looking and want someone to make sense of it, a short first call tells us both whether we\u2019re the right fit.',
      waBtn: 'Message on WhatsApp',
      directLine: 'Direct line',
      emailLabel: 'Email',
      office: 'Office',
      officeAddr: <>Shati Al Saadiyat St 41a<br/>Saadiyat Island, Abu Dhabi</>,
      appt: 'By appointment',
      apptAddr: <>Private viewings across Dubai<br/>on request</>,
      hours: 'Hours',
      hoursVal: '07:00 – 23:00 · every day',
      langs: 'Languages',
      langsVal: 'English · العربية · Français',
      tagline: 'Private Real Estate · UAE · Established 2011',
      rera: 'RERA Broker ID · 58921',
      adrec: 'ADREC License · 202109-AM',
      copy: '© 2026 Hamza Eleiwat. All rights reserved.',
    },
  },

  ar: {
    dir: 'rtl',
    lang: 'ar',
    nav: {
      map: 'الخريطة',
      residences: 'المساكن',
      guides: 'الإرشادات',
      about: 'عن حمزة',
      contact: 'التواصل',
    },
    chooser: {
      tagline: 'عقارات خاصة · الإمارات',
      title: 'اختر لغتك',
      en: 'English',
      ar: 'العربية',
      enter: 'الدخول',
    },
    hero: {
      kicker: 'الإمارات · بموعد مسبق',
      title1: 'خريطة خاصة',
      title2: 'للإمارات،',
      title3: 'تُكشف بهدوء.',
      body: 'اختر منطقة، وسأصحبك بين العقارات التي أمثّلها فيها، وتلك التي فضّلت ألّا أمثّلها.',
      counterA: 'هذا الموسم',
      counterB: 'عقاراً معروضاً',
      counterC: 'خارج السوق',
      counterD: 'بالتعريف فقط',
      tap: 'اضغط على أي دبّوس',
    },
    mapUI: {
      clickPin: 'اضغط الدبّوس لاستكشاف المنطقة',
      listings: 'العقارات',
      typical: 'السعر المعتاد',
      viewRes: '← عرض العقارات',
      dubai: 'دبي',
      abuDhabi: 'أبوظبي',
      areas: 'مناطق',
    },
    drawer: {
      available: (n) => `${n} ${n === 1 ? 'عقار متاح' : 'عقارات متاحة'}`,
      back: (name) => `→ العودة إلى ${name}`,
      ref: 'المرجع',
      price: 'السعر',
      beds: 'غرف النوم',
      baths: 'الحمّامات',
      interior: 'المساحة الداخلية',
      plot: 'مساحة الأرض',
      view: 'الإطلالة',
      tenure: 'نوع الملكية',
      defines: 'ما يميّزه',
      bed: 'غرفة',
      bath: 'حمّام',
      sqft: 'قدم²',
    },
    inquiry: {
      yourAgent: 'وسيطك',
      agentName: 'حمزة عليوات',
      agentSub: 'يردّ بنفسه · عادةً خلال ساعة',
      lead: 'أسرع طريقة للوصول إليّ. أردّ على الواتساب بنفسي، دون مساعدين أو روبوتات.',
      preview: 'معاينة الرسالة',
      waBtn: 'راسلني على واتساب',
      emailBtn: 'تفضّل البريد الإلكتروني؟ أرسل نموذجاً',
      name: 'الاسم الكامل',
      email: 'البريد الإلكتروني',
      phone: 'الهاتف',
      message: 'الرسالة',
      send: 'إرسال الاستفسار',
      backBtn: 'رجوع',
      received: 'تمّ الاستلام',
      thanks: (n) => `شكراً لك، ${n || 'صديقي'}.`,
      sentLine: 'وصل الإشعار إلى حمزة، وسيتواصل معك خلال ساعة. وإن أردت عدم الانتظار، فخطّه المباشر مذكور أدناه.',
      direct: 'الخط المباشر',
      emailLabel: 'البريد الإلكتروني',
      greeting: (title, ref) => `مرحباً حمزة، أودّ ترتيب معاينة لـ ${title} (المرجع HM-${ref}).`,
    },
    featured: {
      kicker: 'ضمن القائمة حالياً',
      title: 'خمسة عقارات أقدّمها بهدوء هذا الموسم.',
      aside: 'مجموعة مختارة. ثلاثة وعشرون عقاراً آخر متاحة بشكل خاص، وأحد عشر عقاراً خارج السوق، بالتعريف فقط.',
    },
    about: {
      kicker: 'كلمة من حمزة',
      title: 'أمثّل عميلاً واحداً في كلّ مرة، حتى يبقى البحث هادئاً وغير مزدحم.',
      p1: 'على مدى خمسة عشر عاماً، أنجزتُ صفقات خاصة في دبي وأبوظبي، لمقيمين في الإمارات ولمن اتّخذوها وطناً ثانياً. أحرص على أن يبقى سجلّي صغيراً، لا يتجاوز اثني عشر ملفاً نشطاً، لأنّ القرار العقاري قرار شخصي، والقرار الشخصي يستحقّ هاتفاً يُردّ عليه دائماً.',
      p2: 'ما أبحث عنه في أيّ عقار هو نفسه ما أطلبه لنفسي: بناء صادق، إضاءة وافرة، وإطلالة تستحقّ النظرة الثانية. وما أقدّمه، إلى جانب العقارات، هو الوصول: إلى بيوت لا تُطرح علناً، ومطوّرين أثق بهم، وشبكة من المحامين والمصرفيّين ومصمّمي الديكور رافقتُها أكثر من عشر سنوات.',
      sig: 'حمزة',
      est: 'تأسّست 2011',
      stat1: ['15', 'سنة', 'خبرة في السوق'],
      stat2: ['3.8 مليار', 'درهم+', 'صفقات مُنجَزة'],
      stat3: ['92', '٪', 'نسبة العملاء المتكرّرين'],
      stat4: ['ريرا', '/ أدريك', 'مرخّص في الإمارتين'],
    },
    quotes: {
      kicker: 'بكلماتهم',
      items: [
        { q: 'رفض أربع شققٍ أعجبتني. كان محقّاً في كلّها. اشتريت الخامسة، وها هي بيتي منذ ثلاث سنوات.', who: 'أ. س.', where: 'مسؤول تنفيذي، أسهم خاصة · وسط مدينة دبي' },
        { q: 'الصفقة استغرقت أسبوعين، أمّا العلاقة فعمرها ثماني سنوات. وهذا يكفي.', who: 'م. ك.', where: 'مؤسّس · نخلة جميرا والسعديّات' },
        { q: 'ائتمنتُ حمزة على صفقة أنجزتها من لندن دون معاينة. أرسلت إليه ثلاثة أصدقاء بعدها، واشتروا جميعاً.', who: 'ر. ن.', where: 'رئيس مكتب عائلي · تلال الإمارات' },
      ],
    },
    guides: {
      kicker: 'ملاحظات من الممارسة',
      title1: 'ما أتمنّى أن يعرفه',
      title2: 'كلّ مشترٍ أوّلاً.',
      intro: 'مكتبة صغيرة أحتفظ بها للعملاء: الرسوم، الإجراءات، كيف تختار بين المناطق، وكيف تقرأ عقد عقار على الخارطة. أحدّثها كلّما تغيّرت الأنظمة.',
    },
    contact: {
      kicker: 'لنبدأ الحديث',
      title1: 'بيتٌ',
      title2: 'في الإمارات،',
      title3: 'نختاره معاً.',
      body: 'إن كنت في بداية البحث، أو بحثتَ من قبل وتودّ من يُعينك على فهم السوق، فاتصال قصير أوّل يكفي ليُخبرنا إن كنّا الخيار المناسب لبعضنا.',
      waBtn: 'راسلني على واتساب',
      directLine: 'الخط المباشر',
      emailLabel: 'البريد الإلكتروني',
      office: 'المكتب',
      officeAddr: <>شارع شاطئ السعديّات 41a<br/>جزيرة السعديّات، أبوظبي</>,
      appt: 'بموعد مسبق',
      apptAddr: <>معاينات خاصة في دبي<br/>عند الطلب</>,
      hours: 'الدوام',
      hoursVal: '07:00 – 23:00 · كل يوم',
      langs: 'اللغات',
      langsVal: 'العربية · English · Français',
      tagline: 'عقارات خاصة · الإمارات · تأسّست 2011',
      rera: 'ترخيص ريرا · 58921',
      adrec: 'ترخيص أدريك · 202109-AM',
      copy: '© 2026 حمزة عليوات. جميع الحقوق محفوظة.',
    },
  },
};

// Arabic neighborhood names / tags / blurbs
const I18N_NEIGHBORHOODS = {
  'palm':           { name: 'نخلة جميرا',       tag: 'واجهة بحرية أيقونية',            blurb: 'السعف، شواطئ خاصة، فلل مطلّة على البحر، وإطلالات على أفق المدينة عبر الخليج.' },
  'downtown':       { name: 'وسط مدينة دبي',    tag: 'قلب المدينة',                     blurb: 'إطلالات برج خليفة، حيّ دار الأوبرا، بنتهاوسات فوق النافورة وخدمات كونسيرج.' },
  'marina':         { name: 'مرسى دبي',          tag: 'قناة الأفق',                       blurb: 'أبراج زجاجيّة على قناة صناعيّة. مراسٍ لليخوت، مسابح علويّة، وشرفات تطلّ على الغروب.' },
  'emirates-hills': { name: 'تلال الإمارات',     tag: 'بيفرلي هيلز دبي',                 blurb: 'قصور محاطة بالبوّابات وملاعب الغولف. العنوان السكني الأرقى في الإمارة.' },
  'jumeirah-bay':   { name: 'جزيرة جميرا باي',  tag: 'ملاذٌ على هيئة فرس البحر',         blurb: 'ملاذ بولغاري. مرسى خاص، مقياس صغير، ومساكن منتقاة بعناية.' },
  'hills-estate':   { name: 'دبي هيلز إستيت',    tag: 'فلل على الحديقة',                 blurb: 'فلل عائليّة حول ملعب غولف من 18 حفرة وحديقة مركزيّة.' },
  'saadiyat':       { name: 'جزيرة السعديّات',   tag: 'جزيرة الثقافة',                    blurb: 'لوفر أبوظبي، وغوغنهايم قريباً. فلل على الشاطئ بعين القيِّم الفنيّ.' },
  'al-reem':        { name: 'جزيرة الريم',        tag: 'واجهة بحريّة حضريّة',             blurb: 'أبراج عصريّة مطلّة على الخور، قريبة من قلب العاصمة ومشيٌ في كلّ اتجاه.' },
  'yas':            { name: 'جزيرة ياس',          tag: 'الحياة المنتجعيّة',                blurb: 'فلل على المرسى، ملعب ياس لينكس للغولف، قرب مدن الترفيه وهدوء حين يُطلَب.' },
};

// Guides — Arabic version
const I18N_GUIDES = {
  'fees': {
    title: 'التكلفة الحقيقيّة للشراء في الإمارات',
    summary: 'كلّ رسم، مفصّلاً. يدفع المشتري عادةً 6–8% فوق السعر المطلوب. وفيما يلي توزيع هذه الرسوم.',
    items: [
      { label: 'رسم التحويل، دائرة أراضي دبي', value: '4% من السعر', note: 'يُقسَّم عرفاً 2% / 2%، ويُدفَع كاملاً يوم التحويل.' },
      { label: 'رسم التحويل، بلديّة أبوظبي', value: '2% من السعر', note: 'أقلّ بشكل ملحوظ من دبي. وهي ميزة هادئة من مزايا أبوظبي.' },
      { label: 'رسم المُناوِل / التسجيل', value: '4,000 درهم (أقلّ من 500 ألف) أو 4,200', note: 'يُدفَع لمكتب التسجيل يوم التحويل.' },
      { label: 'عمولة الوساطة', value: '2% + 5% ضريبة قيمة مضافة', note: 'يدفعها المشتري عرفاً في دبي.' },
      { label: 'تسجيل الرهن (عند التمويل)', value: '0.25% من القرض + 290 درهم', note: 'فقط إن كنت تتموّل عبر قرض.' },
      { label: 'شهادة عدم ممانعة من المطوّر', value: '500 – 5,000 درهم', note: 'تتفاوت بحسب المطوّر. أتولّاها عنك.' },
      { label: 'خدمات المحاماة (اختياريّة)', value: '6,000 – 12,000 درهم', note: 'أنصح بها في عقود ما قبل التسليم أو التحويلات المعقّدة.' },
    ],
  },
  'process': {
    title: 'من المعاينة الأولى إلى المفاتيح في يدك',
    summary: 'تُغلق الصفقة النقديّة عادةً خلال 14 إلى 30 يوماً، والممَوَّلة بين 30 و60. وهذا تسلسلها أسبوعاً بأسبوع.',
    items: [
      { label: 'الأسبوع 0: التحديد والقائمة المختصرة', value: '1–3 أيام', note: 'نحدّد الميزانيّة والمناطق وما لا يُتنازَل عنه. أرسل قائمة مختارة، من 5 إلى 8 عقارات.' },
      { label: 'الأسبوع 1: المعاينات الخاصّة', value: '2–5 أيام', note: 'أرتّب كلّ المعاينات متتاليةً. لا جولات عامّة. أقود بنفسي.' },
      { label: 'الأسبوع 1 و2: العرض ومذكّرة التفاهم (نموذج F)', value: '1–2 يوم', note: 'إيداع 10% بشيك للبائع. يوقّع الطرفان المذكّرة.' },
      { label: 'الأسبوع 2 إلى 4: شهادة عدم الممانعة والبنك (إن مُوّل)', value: '7–21 يوماً', note: 'تصدر شهادة المطوّر. وعند التمويل، نحصل على خطاب العرض النهائي من البنك.' },
      { label: 'يوم التحويل في مكتب المُناوِل', value: '1–2 ساعة', note: 'يوقّع الطرفان. تُتبادَل الشيكات المصدّقة. ويصدر سند الملكيّة في اليوم ذاته.' },
      { label: 'التسليم', value: 'اليوم نفسه', note: 'المفاتيح، بطاقات الوصول، نقل ديوا. أهلاً بك في بيتك.' },
    ],
  },
  'areas': {
    title: 'كيف تختار بين المناطق',
    summary: 'تصنيف مختصر أستعمله مع كلّ عميل. ابدأ من هنا، ثمّ نُنقّح معاً وجهاً لوجه.',
    items: [
      { label: 'إن كنت تبحث عن عائد إيجاري', value: 'المرسى، قرية جميرا، الخليج التجاري', note: 'عوائد إجماليّة من 6 إلى 8%. وحدات صغيرة جاهزة.' },
      { label: 'إن كنت تبحث عن بيت مُتوَّج', value: 'النخلة، تلال الإمارات، جميرا باي', note: 'العوائد أقلّ (2 إلى 4%)، لكنّ النموّ الرأسمالي الأقوى هنا.' },
      { label: 'إن كنت تبحث عن حياة عائليّة', value: 'دبي هيلز، المرابع العربيّة، السعديّات', note: 'مدارس خلال 10 دقائق، حدائق، مجمّعات عائليّة.' },
      { label: 'إن كنت قادماً من الخارج', value: 'وسط المدينة، مركز دبي المالي، الريم', note: 'جاهزة، مخدومة، قابلة للمشي. فصل أوّل سهل.' },
      { label: 'إن كنت تطلب الهدوء', value: 'البراري، محميّة السعديّات، ياس', note: 'كثافة أقلّ، زرع ناضج، إيقاع متّزن.' },
      { label: 'إن كنت تطلب فرص ما قبل التسليم', value: 'جزر دبي، جزيرة رمحان، جنوب ياس', note: 'مخاطرة أعلى، والتسليم بين 2026 و2028. لا أُوصي إلا بمطوّرين سبق أن أنجزتُ معهم صفقتين.' },
    ],
  },
  'offplan': {
    title: 'بين ما قبل التسليم والعقار الجاهز: كيف أُشير',
    summary: 'قائمة مراجعة أتتبّعها قبل إيداع أيّ دفعة على مشروع قيد الإنشاء.',
    items: [
      { label: 'سجلّ المطوّر', value: 'ثلاثة مشاريع مُسلَّمة كحدّ أدنى', note: 'أحتفظ بقائمة خاصّة بالمطوّرين الذين التزموا بمواعيد التسليم خلال 90 يوماً، مرّتين.' },
      { label: 'حساب الضمان', value: 'يجب أن يكون مسجّلاً لدى ريرا', note: 'أتحقّق من الحالة وأرى خطاب البنك قبل التوقيع.' },
      { label: 'جدول السداد', value: 'تجنّب الجداول المُحمَّلة أماميّاً', note: 'جدول 30/70 أو 40/60 عند التسليم منطقي. وأيّ 60/40 في غير مصلحتك إشارة حمراء.' },
      { label: 'ورقة المواصفات', value: 'اقرأ كلّ صفحة', note: 'درجات التشطيب، علامات الأجهزة، ارتفاعات الأسقف. أترجمها لك.' },
      { label: 'خطّة الخروج', value: 'اعرفها قبل الشراء', note: 'عند أيّ مرحلة ستخرج إن تغيّرت الخطّة؟ أدرج ذلك في الحساب.' },
    ],
  },
  'foreign': {
    title: 'الشراء بوصفك أجنبيّاً: الإقامة والتأشيرات',
    summary: 'تعديلات 2022 جعلت عقار الإمارات من أوضح طرق الإقامة طويلة الأمد في المنطقة.',
    items: [
      { label: 'الأهليّة للتملّك الحرّ', value: 'أيّ جنسيّة', note: 'في المناطق المخصّصة للتملّك الحرّ، وهي تشمل عمليّاً كلّ ما أبيع.' },
      { label: 'تأشيرة المستثمر لسنتين', value: '750,000 درهم فأكثر', note: 'يجب أن يكون العقار مستلماً. قابلة للتجديد.' },
      { label: 'التأشيرة الذهبيّة لعشر سنوات', value: '2,000,000 درهم فأكثر', note: 'عقار واحد أو محفظة. تكفّل العائلة.' },
      { label: 'سقف الرهن لغير المقيم', value: '50 إلى 65% من القيمة', note: 'الفائدة من نحو 4.5% ثابت. أربطك بمصرفي خاص.' },
      { label: 'الضريبة', value: '0% على الإيجار والأرباح الرأسماليّة', note: 'لا ضريبة دخل على الأفراد. والقيمة المضافة (5%) للتجاريّ فقط.' },
    ],
  },
};

window.I18N = I18N;
window.I18N_NEIGHBORHOODS = I18N_NEIGHBORHOODS;
window.I18N_GUIDES = I18N_GUIDES;

// Global lang state + helpers.
window.LANG = localStorage.getItem('hm-lang') || null;

window.setLang = function(lang) {
  window.LANG = lang;
  localStorage.setItem('hm-lang', lang);
  const cfg = I18N[lang];
  document.documentElement.setAttribute('lang', cfg.lang);
  document.documentElement.setAttribute('dir', cfg.dir);
};

window.T = function() {
  // Returns the translation bundle for the current language (defaults to 'en').
  return I18N[window.LANG || 'en'];
};

// Apply immediately if already set
if (window.LANG) window.setLang(window.LANG);
