{"id":5529,"date":"2025-09-10T21:07:11","date_gmt":"2025-09-10T18:07:11","guid":{"rendered":"https:\/\/lumiquestdental.com\/?page_id=5529"},"modified":"2026-01-14T17:28:37","modified_gmt":"2026-01-14T15:28:37","slug":"invisalign-vs-braces","status":"publish","type":"page","link":"https:\/\/lumiquestdental.com\/ar\/dubai\/orthodontics\/invisalign-vs-braces\/","title":{"rendered":"Invisalign \u0645\u0642\u0627\u0628\u0644 \u0627\u0644\u062a\u0642\u0648\u064a\u0645 \u0627\u0644\u062b\u0627\u0628\u062a \u0641\u064a \u062f\u0628\u064a \u2014 \u062f\u0644\u064a\u0644 \u0645\u0642\u0627\u0631\u0646\u0629 \u0648\u0627\u0636\u062d"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"5529\" class=\"elementor elementor-5529\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-cefef2c e-flex e-con-boxed e-con e-parent\" data-id=\"cefef2c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-262c1c1 elementor-widget elementor-widget-html\" data-id=\"262c1c1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section id=\"vs-hero\" class=\"lq lq-hero\">\r\n  <style>\r\n    \/* Desktop\/tablet: lock layout LTR so items don\u2019t flip in RTL *\/\r\n    #vs-hero .lq-hero-inner {\r\n      display: flex;\r\n      align-items: center;\r\n      justify-content: space-between;\r\n      gap: 24px;\r\n      direction: ltr; \/* text left, image right *\/\r\n    }\r\n\r\n    \/* TEXT column: follow page language *\/\r\n    html[dir=\"rtl\"] #vs-hero .lq-hero-text { direction: rtl; text-align: right; }\r\n    html[dir=\"ltr\"] #vs-hero .lq-hero-text { direction: ltr; text-align: left; }\r\n\r\n    #vs-hero .lq-hero-text { flex: 1; order: 1; }\r\n    #vs-hero .lq-hero-image { flex: 1; order: 2; text-align: center; }\r\n\r\n    \/* Heading with animated orange underline *\/\r\n    #vs-hero .lq-hero-text h1 {\r\n      margin: 0 0 14px;\r\n      line-height: 1.25;\r\n      position: relative;\r\n      text-align: inherit;\r\n      display: inline-block;\r\n    }\r\n    #vs-hero .lq-hero-text h1::after {\r\n      content: \"\";\r\n      position: absolute;\r\n      bottom: -8px;\r\n      inset-inline-start: 0; \/* left in EN, right in AR *\/\r\n      width: 70px;\r\n      height: 3px;\r\n      background: linear-gradient(\r\n        90deg,\r\n        var(--lq-brand, #ff7a00),\r\n        #ff8c42,\r\n        var(--lq-brand, #ff7a00)\r\n      );\r\n      border-radius: 4px;\r\n      box-shadow: 0 2px 8px rgba(255, 122, 0, 0.3),\r\n                  0 0 20px rgba(255, 122, 0, 0.15);\r\n      animation: subtlePulseVs 3s ease-in-out infinite;\r\n    }\r\n    @keyframes subtlePulseVs {\r\n      0%, 100% {\r\n        box-shadow: 0 2px 8px rgba(255,122,0,.3),\r\n                    0 0 20px rgba(255,122,0,.15);\r\n        transform: scaleX(1);\r\n      }\r\n      50% {\r\n        box-shadow: 0 2px 12px rgba(255,122,0,.4),\r\n                    0 0 25px rgba(255,122,0,.2);\r\n        transform: scaleX(1.05);\r\n      }\r\n    }\r\n\r\n    #vs-hero .lq-hero-text p {\r\n      margin-block: 12px;\r\n      margin-inline: 0;\r\n      text-indent: 0;\r\n      font-size: 16px;\r\n      line-height: 1.7;\r\n      color: var(--lq-text);\r\n    }\r\n\r\n    #vs-hero .lq-hero-image img {\r\n      max-width: 100%;\r\n      height: auto;\r\n      border-radius: 10px;\r\n      box-shadow: var(--lq-shadow);\r\n    }\r\n\r\n    \/* \u2705 Mobile: stack with text first *\/\r\n    @media (max-width: 768px) {\r\n      #vs-hero .lq-hero-inner { flex-direction: column; gap: 12px; }\r\n      #vs-hero .lq-hero-text  { order: 1; margin-inline: 0 !important; }\r\n      #vs-hero .lq-hero-image { order: 2; margin-inline: 0 !important; }\r\n      #vs-hero .lq-hero-text h1 { margin: 0 0 8px; }\r\n      #vs-hero .lq-hero-text h1::after { bottom: -6px; }\r\n      #vs-hero .lq-hero-text p { margin: 10px 0; }\r\n    }\r\n  <\/style>\r\n\r\n  <div class=\"lq-hero-inner\">\r\n    <!-- Text -->\r\n    <div class=\"lq-hero-text\">\r\n      <h1 dir=\"auto\">Invisalign vs Braces in Dubai \u2014 Clear, Honest Comparison<\/h1>\r\n\r\n      <p dir=\"auto\">\r\n        Should you choose <a href=\"\/dubai\/orthodontics\/invisalign\/\" class=\"lq-link\">Invisalign<\/a> or\r\n        <a href=\"\/dubai\/orthodontics\/braces\/\" class=\"lq-link\">braces<\/a>?\r\n        This is the #1 question patients ask when starting \r\n        <a href=\"\/dubai\/orthodontics\/\" class=\"lq-link\">orthodontic treatment in Dubai<\/a>.\r\n      <\/p>\r\n\r\n      <p dir=\"auto\">\r\n        Both options straighten teeth effectively, but they differ in <strong>aesthetics, comfort,\r\n        treatment time, and cost<\/strong>. The best choice depends on your lifestyle,\r\n        budget, and whether you\u2019re a teen, adult, or parent choosing for a child.\r\n      <\/p>\r\n\r\n      <p dir=\"auto\">\r\n        This guide gives you a <strong>side-by-side comparison<\/strong> \u2014\r\n        with clear tables and expert insights \u2014 so you can decide with confidence.\r\n      <\/p>\r\n    <\/div>\r\n\r\n    <!-- Image -->\r\n    <div class=\"lq-hero-image\">\r\n      <img decoding=\"async\" src=\"https:\/\/lumiquestdental.com\/wp-content\/uploads\/2025\/09\/invisalign-vs-braces4.png\" alt=\"3D render of two futuristic roads symbolizing Invisalign and braces, leading toward the Dubai skyline at sunset with glowing orange guide lights.\" loading=\"lazy\" title=\"| LumiQuest Dental Circle\">\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6e46f37 elementor-widget elementor-widget-html\" data-id=\"6e46f37\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- LumiQuest \u00b7 Invisalign vs Braces \u2014 Consolidated Interactive Matrix (RTL + Responsive ready) -->\r\n<section class=\"lq lq-compare2\" id=\"invisalign-vs-braces-matrix\" aria-labelledby=\"lq-cm-title\" dir=\"auto\">\r\n  <style>\r\n    .lq-compare2{\r\n      --brand:var(--lq-brand,#ff7a00);\r\n      --text:var(--lq-text,#1b1b1b);\r\n      --muted:var(--lq-muted,#667085);\r\n      --border:var(--lq-border,#e6e6e6);\r\n      --radius:18px;\r\n    }\r\n    .lq-compare2 *{ box-sizing:border-box }\r\n\r\n    .lq-compare2 h2{\r\n      font-size:clamp(26px,3.2vw,36px);\r\n      margin:0 0 10px; font-weight:700;\r\n      text-align:start; \/* logical for RTL\/LTR *\/\r\n    }\r\n    .lq-compare2 .lead{\r\n      color:var(--muted); margin:0 0 14px; text-align:start;\r\n    }\r\n\r\n    \/* chips *\/\r\n    .lq-compare2 .chips{\r\n      display:flex; flex-wrap:wrap; gap:10px; margin:0 0 12px;\r\n    }\r\n    .lq-compare2 .chip{\r\n      border:1px solid var(--border); background:#fff; border-radius:999px;\r\n      padding:8px 12px; font-size:14px; cursor:pointer;\r\n      transition:background .15s ease, color .15s ease, border-color .15s ease;\r\n    }\r\n    .lq-compare2 .chip[aria-pressed=\"true\"]{ background:var(--brand); color:#fff; border-color:var(--brand) }\r\n    .lq-compare2 .chip:not([aria-pressed=\"true\"]):hover{ background:#fffaf5; border-color:var(--brand); color:var(--text) }\r\n    .lq-compare2 .chip:focus-visible{ outline:2px solid var(--brand); outline-offset:2px }\r\n\r\n    \/* table wrapper (mobile scroll) *\/\r\n    .lq-compare2 .wrap{\r\n      overflow:auto; border:1px solid var(--border); border-radius:var(--radius);\r\n      background:#fff; background-clip:padding-box;\r\n      -webkit-overflow-scrolling:touch; \/* momentum on iOS *\/\r\n    }\r\n\r\n    \/* Let cell content follow document direction, not the table's forced LTR columns *\/\r\n    .lq-compare2 th, .lq-compare2 td{\r\n      padding:14px 14px; border-bottom:1px solid var(--border); vertical-align:top;\r\n      text-align:start; \/* logical alignment for cell text *\/\r\n      direction:inherit;\r\n    }\r\n\r\n    thead th{\r\n      position:sticky; top:0; background:#fff; z-index:1;\r\n    }\r\n    \/* logical corner rounding for sticky header row *\/\r\n    thead th:first-child{ border-top-left-radius:var(--radius) }\r\n    thead th:last-child { border-top-right-radius:var(--radius) }\r\n\r\n    tbody tr:nth-child(odd){ background:#fff }\r\n    tbody tr:nth-child(even){ background:#fcfcfc }\r\n    th[scope=row]{ font-weight:700 }\r\n    .good{ font-weight:700 }\r\n    .hit{ background:rgba(255,122,0,.06) }\r\n    .col-inv.hit,.col-br.hit{ box-shadow:inset 0 0 0 2px rgba(255,122,0,.18) }\r\n\r\n    .note{ margin-top:10px; color:var(--muted); font-size:13px; text-align:start }\r\n    .emoji{ font-size:16px; margin-inline-end:6px } \/* logical instead of margin-right *\/\r\n\r\n    \/* \u2500\u2500 Mobile tweaks: side padding + slightly tighter cells *\/\r\n    @media (max-width: 768px){\r\n      .lq-compare2{ padding-inline:12px; }\r\n      .lq-compare2 h2{ margin-bottom:12px }\r\n      .lq-compare2 .lead{ margin-bottom:12px }\r\n      .lq-compare2 th, .lq-compare2 td{ padding:12px }\r\n      \/* table already scrolls horizontally via min-width + overflow *\/\r\n    }\r\n\r\n    @media(prefers-reduced-motion:reduce){ .lq-compare2 *{ transition:none } }\r\n  <\/style>\r\n\r\n  <h2 id=\"lq-cm-title\" dir=\"auto\">\r\n    <span class=\"ltr\">Invisalign<\/span> vs <span class=\"ltr\">Braces<\/span> \u2014 What\u2019s Better for You?\r\n  <\/h2>\r\n  <p class=\"lead\" dir=\"auto\">Quick facts. Filter to see where <span class=\"ltr\">Invisalign<\/span> or <span class=\"ltr\">Braces<\/span> clearly win.<\/p>\r\n\r\n  <div class=\"chips\" role=\"toolbar\" aria-label=\"Filter advantages\">\r\n    <button class=\"chip\" data-mode=\"all\" aria-pressed=\"true\">All<\/button>\r\n    <button class=\"chip\" data-mode=\"inv\">Advantages of <span class=\"ltr\">Invisalign<\/span><\/button>\r\n    <button class=\"chip\" data-mode=\"br\">Advantages of <span class=\"ltr\">Braces<\/span><\/button>\r\n  <\/div>\r\n\r\n  <div class=\"wrap\" role=\"region\" aria-label=\"Invisalign vs Braces comparison\" tabindex=\"0\">\r\n    <table class=\"lq-cm\" id=\"cmTable\">\r\n      <colgroup>\r\n        <col style=\"width:32%\">\r\n        <col style=\"width:34%\">\r\n        <col style=\"width:34%\">\r\n      <\/colgroup>\r\n      <thead>\r\n        <tr>\r\n          <th scope=\"col\">Feature<\/th>\r\n          <th scope=\"col\" class=\"col-inv\"><span class=\"ltr\">Invisalign<\/span><\/th>\r\n          <th scope=\"col\" class=\"col-br\"><span class=\"ltr\">Braces<\/span><\/th>\r\n        <\/tr>\r\n      <\/thead>\r\n      <tbody>\r\n        <!-- data-win marks who has the advantage for filtering: inv | br | tie -->\r\n        <tr data-win=\"inv\">\r\n          <th scope=\"row\"><span class=\"emoji\">\ud83d\udc40<\/span>Visibility<\/th>\r\n          <td class=\"col-inv good\">Nearly invisible clear trays<\/td>\r\n          <td class=\"col-br\">Visible brackets\/wires (ceramic less visible)<\/td>\r\n        <\/tr>\r\n\r\n        <tr data-win=\"inv\">\r\n          <th scope=\"row\"><span class=\"emoji\">\ud83e\uddf2<\/span>Removability<\/th>\r\n          <td class=\"col-inv good\">Removable (wear 20\u201322 hrs\/day)<\/td>\r\n          <td class=\"col-br\">Fixed in place until removed<\/td>\r\n        <\/tr>\r\n\r\n        <tr data-win=\"inv\">\r\n          <th scope=\"row\"><span class=\"emoji\">\ud83c\udf7d\ufe0f<\/span>Eating &amp; Drinking<\/th>\r\n          <td class=\"col-inv good\">No food rules; remove to eat\/drink<\/td>\r\n          <td class=\"col-br\">Avoid sticky\/hard foods; breakage risk<\/td>\r\n        <\/tr>\r\n\r\n        <tr data-win=\"inv\">\r\n          <th scope=\"row\"><span class=\"emoji\">\ud83e\udea5<\/span>Oral Hygiene<\/th>\r\n          <td class=\"col-inv good\">Brush &amp; floss normally (remove trays)<\/td>\r\n          <td class=\"col-br\">Brush\/floss around brackets &amp; wires<\/td>\r\n        <\/tr>\r\n\r\n        <tr data-win=\"inv\">\r\n          <th scope=\"row\"><span class=\"emoji\">\ud83d\ude0c<\/span>Comfort<\/th>\r\n          <td class=\"col-inv good\">Smooth trays; less cheek irritation<\/td>\r\n          <td class=\"col-br\">Brackets\/wires can rub or poke<\/td>\r\n        <\/tr>\r\n\r\n        <tr data-win=\"inv\">\r\n          <th scope=\"row\"><span class=\"emoji\">\ud83d\uddd3\ufe0f<\/span>Clinic Visits<\/th>\r\n          <td class=\"col-inv good\">6\u20138 week reviews; fewer emergencies<\/td>\r\n          <td class=\"col-br\">More adjustments; emergencies for breaks<\/td>\r\n        <\/tr>\r\n\r\n        <tr data-win=\"inv\">\r\n          <th scope=\"row\"><span class=\"emoji\">\ud83e\udded<\/span>Digital Planning<\/th>\r\n          <td class=\"col-inv good\">3D <span class=\"ltr\">ClinCheck<\/span> preview; staged movements<\/td>\r\n          <td class=\"col-br\">Orthodontist-planned; no 3D preview<\/td>\r\n        <\/tr>\r\n\r\n        <tr data-win=\"br\">\r\n          <th scope=\"row\"><span class=\"emoji\">\ud83e\udde9<\/span>Complex Bite Corrections<\/th>\r\n          <td class=\"col-inv\">Often suitable with attachments\/elastics<\/td>\r\n          <td class=\"col-br good\">Very versatile biomechanics for complex cases<\/td>\r\n        <\/tr>\r\n\r\n        <tr data-win=\"br\">\r\n          <th scope=\"row\"><span class=\"emoji\">\u23f1\ufe0f<\/span>Compliance Needed<\/th>\r\n          <td class=\"col-inv\">Results depend on wear time (aligners + elastics)<\/td>\r\n          <td class=\"col-br good\">Always on; results depend on wear time of elastics<\/td>\r\n        <\/tr>\r\n\r\n        <tr data-win=\"tie\">\r\n          <th scope=\"row\"><span class=\"emoji\">\u23f3<\/span>Typical Duration<\/th>\r\n          <td class=\"col-inv\">Mild ~6\u201312 mo; complex 12\u201324+ mo<\/td>\r\n          <td class=\"col-br\">Mild ~6\u201312 mo; complex 12\u201324+ mo<\/td>\r\n        <\/tr>\r\n\r\n        <tr data-win=\"inv\">\r\n          <th scope=\"row\"><span class=\"emoji\">\ud83c\udfc8<\/span>Sports &amp; Instruments<\/th>\r\n          <td class=\"col-inv good\">Remove or use mouthguard; minimal bulk<\/td>\r\n          <td class=\"col-br\">Mouthguard\/wax helps; more bulk<\/td>\r\n        <\/tr>\r\n\r\n        <tr data-win=\"inv\">\r\n          <th scope=\"row\"><span class=\"emoji\">\ud83c\udd98<\/span>Emergencies<\/th>\r\n          <td class=\"col-inv good\">Fewer issues; lost tray replaced<\/td>\r\n          <td class=\"col-br\">Bracket\/wire breaks may need urgent visit<\/td>\r\n        <\/tr>\r\n\r\n        <tr data-win=\"tie\">\r\n          <th scope=\"row\"><span class=\"emoji\">\ud83e\uddfc<\/span>Stain Risk<\/th>\r\n          <td class=\"col-inv\">Trays can stain with colored drinks<\/td>\r\n          <td class=\"col-br\">Elastics\/ligatures can stain with foods\/drinks<\/td>\r\n        <\/tr>\r\n\r\n        <tr data-win=\"tie\">\r\n          <th scope=\"row\"><span class=\"emoji\">\ud83d\udee1\ufe0f<\/span>After Treatment<\/th>\r\n          <td class=\"col-inv\">Retainers required (Essix\/Vivera or fixed)<\/td>\r\n          <td class=\"col-br\">Retainers required (Essix\/Vivera or fixed)<\/td>\r\n        <\/tr>\r\n\r\n        <tr data-win=\"br\">\r\n          <th scope=\"row\"><span class=\"emoji\">\ud83d\udcb0<\/span>Price<\/th>\r\n          <td class=\"col-inv\">Varies by case\/provider; trays &amp; refinements can raise cost<\/td>\r\n          <td class=\"col-br good\">Often lower for the same case difficulty<\/td>\r\n        <\/tr>\r\n\r\n        <tr data-win=\"br\">\r\n          <th scope=\"row\"><span class=\"emoji\">\ud83d\udccd<\/span>Availability<\/th>\r\n          <td class=\"col-inv\">Available at many orthodontists, not every clinic<\/td>\r\n          <td class=\"col-br good\">Wider availability in most clinics<\/td>\r\n        <\/tr>\r\n      <\/tbody>\r\n    <\/table>\r\n  <\/div>\r\n\r\n  <p class=\"note\" dir=\"auto\">\r\n    Both options can work brilliantly. The best choice depends on your diagnosis, lifestyle, and goals \u2014 your orthodontist will guide you.\r\n  <\/p>\r\n\r\n  <script>\r\n    (function(){\r\n      const chips = document.querySelectorAll('.lq-compare2 .chip');\r\n      const rows  = document.querySelectorAll('#cmTable tbody tr');\r\n      const invCells = document.querySelectorAll('#cmTable .col-inv');\r\n      const brCells  = document.querySelectorAll('#cmTable .col-br');\r\n\r\n      function highlight(col){ \/\/ 'inv' | 'br' | 'none'\r\n        invCells.forEach(td=>td.classList.remove('hit'));\r\n        brCells.forEach(td=>td.classList.remove('hit'));\r\n        if(col==='inv'){ invCells.forEach(td=>td.classList.add('hit')); }\r\n        if(col==='br'){  brCells.forEach(td=>td.classList.add('hit')); }\r\n      }\r\n\r\n      function filter(mode){ \/\/ 'all' | 'inv' | 'br'\r\n        rows.forEach(tr=>{\r\n          const win = tr.getAttribute('data-win');\r\n          tr.style.display = (mode==='all' || win===mode) ? '' : 'none';\r\n        });\r\n        highlight(mode==='inv' ? 'inv' : mode==='br' ? 'br' : 'none');\r\n      }\r\n\r\n      chips.forEach(btn=>{\r\n        btn.addEventListener('click', ()=>{\r\n          chips.forEach(b=>b.setAttribute('aria-pressed','false'));\r\n          btn.setAttribute('aria-pressed','true');\r\n          filter(btn.dataset.mode);\r\n        });\r\n      });\r\n\r\n      \/\/ init\r\n      filter('all');\r\n    })();\r\n  <\/script>\r\n<\/section>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a491c99 elementor-widget elementor-widget-html\" data-id=\"a491c99\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- Section 3: Who Should Choose Invisalign vs Braces -->\r\n<section id=\"vs-guidance\" class=\"lq lq-section\">\r\n  <style>\r\n    #vs-guidance .lq-section-inner {\r\n      display: grid;\r\n      gap: 28px;\r\n      max-width: 1100px;\r\n      margin: 0 auto;\r\n    }\r\n\r\n    #vs-guidance h2 {\r\n      font-size: clamp(24px, 2.8vw, 32px);\r\n      font-weight: 700;\r\n      margin-bottom: 14px;\r\n      position: relative;\r\n      display: inline-block;\r\n    }\r\n    #vs-guidance h2::after {\r\n      content: \"\";\r\n      position: absolute;\r\n      bottom: -6px;\r\n      inset-inline-start: 0;\r\n      width: 60px;\r\n      height: 3px;\r\n      background: var(--lq-brand, #ff7a00);\r\n      border-radius: 2px;\r\n    }\r\n\r\n    #vs-guidance p {\r\n      font-size: 16px;\r\n      line-height: 1.7;\r\n      margin: 8px 0 16px;\r\n      color: var(--lq-text);\r\n    }\r\n\r\n    #vs-guidance .cards {\r\n      display: grid;\r\n      gap: 20px;\r\n    }\r\n    @media (min-width: 768px) {\r\n      #vs-guidance .cards {\r\n        grid-template-columns: repeat(2, 1fr);\r\n      }\r\n    }\r\n\r\n    #vs-guidance .card {\r\n      background: #fff;\r\n      border: 1px solid var(--lq-border);\r\n      border-radius: var(--lq-radius);\r\n      padding: 20px;\r\n      box-shadow: var(--lq-shadow);\r\n      display: flex;\r\n      flex-direction: column;\r\n      gap: 12px;\r\n    }\r\n    #vs-guidance .card img {\r\n  width: 100%;\r\n  max-width: 260px;   \/* scales nicely in card *\/\r\n  height: auto;\r\n  margin: 0 auto;\r\n  border-radius: 12px;\r\n  box-shadow: var(--lq-shadow);\r\n  display: block;\r\n}\r\n\r\n    #vs-guidance .card h3 {\r\n      margin: 0;\r\n      font-size: 18px;\r\n      font-weight: 600;\r\n      color: var(--lq-text);\r\n    }\r\n    #vs-guidance .card ul {\r\n      margin: 0;\r\n      padding-inline-start: 18px;\r\n      color: var(--lq-text);\r\n    }\r\n    #vs-guidance .card li {\r\n      margin: 6px 0;\r\n      font-size: 15px;\r\n      line-height: 1.5;\r\n    }\r\n  <\/style>\r\n\r\n  <div class=\"lq-section-inner\">\r\n    <h2 dir=\"auto\">Who Should Choose Invisalign vs Braces?<\/h2>\r\n    <p dir=\"auto\">\r\n      The right treatment depends on your goals, lifestyle, and case complexity.  \r\n      Here\u2019s a patient-first guide to help you decide:\r\n    <\/p>\r\n\r\n    <div class=\"cards\">\r\n      <!-- Invisalign Card -->\r\n      <article class=\"card\">\r\n        <img decoding=\"async\" src=\"https:\/\/lumiquestdental.com\/wp-content\/uploads\/2025\/08\/Clear-Aligners.png\" alt=\"Close-up of teeth wearing clear Invisalign aligners, nearly invisible orthodontic treatment option\" loading=\"lazy\" title=\"| LumiQuest Dental Circle\">\r\n        <h3 dir=\"auto\">Invisalign May Be Right For You If\u2026<\/h3>\r\n        <ul>\r\n          <li>You want <strong>discreet treatment<\/strong> (nearly invisible).<\/li>\r\n          <li>You value <strong>removability<\/strong> for eating, photos, or events.<\/li>\r\n          <li>You\u2019re a <strong>busy adult or teen<\/strong> who prefers fewer clinic visits.<\/li>\r\n          <li>Your case is mild to moderate (crowding, spacing, overbite).<\/li>\r\n        <\/ul>\r\n        <p>\r\n          Learn more in our <a href=\"\/dubai\/orthodontics\/invisalign\/\" class=\"lq-link\">Invisalign Guide<\/a>.\r\n        <\/p>\r\n      <\/article>\r\n\r\n      <!-- Braces Card -->\r\n      <article class=\"card\">\r\n        <img decoding=\"async\" src=\"https:\/\/lumiquestdental.com\/wp-content\/uploads\/2025\/08\/Metal-Braces.png\" alt=\"Close-up of teeth with traditional metal braces, showing brackets and archwire for orthodontic correction\" loading=\"lazy\" title=\"| LumiQuest Dental Circle\">\r\n        <h3 dir=\"auto\">Braces May Be Right For You If\u2026<\/h3>\r\n        <ul>\r\n          <li>You need to correct a <strong>complex bite<\/strong> or severe crowding.<\/li>\r\n          <li>You want a <strong>fixed solution<\/strong> that doesn\u2019t depend on discipline.<\/li>\r\n          <li>You\u2019re open to <strong>different braces types<\/strong> (metal, ceramic, lingual, Damon).<\/li>\r\n          <li>You\u2019re looking for <strong>lower entry cost<\/strong> in Dubai.<\/li>\r\n        <\/ul>\r\n        <p>\r\n          Explore options in our <a href=\"\/dubai\/orthodontics\/braces\/\" class=\"lq-link\">Braces Guide<\/a>.\r\n        <\/p>\r\n      <\/article>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4b4c3f0 elementor-widget elementor-widget-html\" data-id=\"4b4c3f0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- Section 4: Invisalign vs Braces Cost Overview (Fixed + Styled) -->\r\n<section id=\"vs-cost\" class=\"lq lq-section\">\r\n  <style>\r\n    #vs-cost .lq-section-inner {\r\n      display: flex;\r\n      flex-direction: column;\r\n      gap: 24px;\r\n      max-width: 1100px;\r\n      margin: 0 auto;\r\n    }\r\n\r\n    #vs-cost h2 {\r\n      font-size: clamp(24px, 2.8vw, 32px);\r\n      font-weight: 700;\r\n      margin-bottom: 14px;\r\n      position: relative;\r\n      display: inline-block;\r\n    }\r\n    #vs-cost h2::after {\r\n      content: \"\";\r\n      position: absolute;\r\n      bottom: -6px;\r\n      inset-inline-start: 0;\r\n      width: 60px;\r\n      height: 3px;\r\n      background: var(--lq-brand, #ff7a00);\r\n      border-radius: 2px;\r\n    }\r\n\r\n    #vs-cost p {\r\n      font-size: 16px;\r\n      line-height: 1.7;\r\n      margin: 8px 0 16px;\r\n      color: var(--lq-text);\r\n    }\r\n\r\n    \/* Card wrapper *\/\r\n    #vs-cost .price-card {\r\n      border: 1px solid var(--lq-border);\r\n      border-radius: var(--lq-radius);\r\n      box-shadow: var(--lq-shadow);\r\n      overflow: hidden;\r\n      background: #fff;\r\n    }\r\n\r\n    \/* Table *\/\r\n    #vs-cost table {\r\n      width: 100%;\r\n      border-collapse: collapse;\r\n    }\r\n    #vs-cost th,\r\n    #vs-cost td {\r\n      padding: 16px;\r\n      text-align: start;\r\n      vertical-align: top;\r\n      font-size: 15px;\r\n      line-height: 1.6;\r\n      border-bottom: 1px solid var(--lq-border);\r\n    }\r\n\r\n    #vs-cost th {\r\n      background: #fafafa;\r\n      font-weight: 700;\r\n    }\r\n\r\n    \/* Zebra stripes *\/\r\n    #vs-cost tbody tr:nth-child(odd) { background: #fff; }\r\n    #vs-cost tbody tr:nth-child(even) { background: #fdfdfd; }\r\n\r\n    \/* Emojis *\/\r\n    #vs-cost td .emoji {\r\n      margin-inline-end: 6px;\r\n      font-size: 16px;\r\n    }\r\n\r\n    \/* \u2705 Force visible bottom border under last row *\/\r\n    #vs-cost tbody tr:last-child td {\r\n      border-bottom: 1px solid var(--lq-border);\r\n    }\r\n    \/* \u2705 Darken just the final line slightly for clarity *\/\r\n    #vs-cost table {\r\n      border-bottom: 1px solid #ccc; \/* darker than var(--lq-border) *\/\r\n    }\r\n\r\n    #vs-cost .note {\r\n      margin-top: 12px;\r\n      font-size: 14px;\r\n      color: var(--lq-muted);\r\n    }\r\n\r\n    @media (max-width: 768px) {\r\n      #vs-cost th, #vs-cost td {\r\n        font-size: 14px;\r\n        padding: 12px;\r\n      }\r\n    }\r\n  <\/style>\r\n\r\n  <div class=\"lq-section-inner\">\r\n    <h2 dir=\"auto\">Invisalign vs Braces Cost in Dubai<\/h2>\r\n    <p dir=\"auto\">\r\n      Pricing is often the deciding factor. Here\u2019s a clear snapshot of what patients usually pay in Dubai.  \r\n      For full details, see our \r\n      <a href=\"\/dubai\/orthodontics\/invisalign\/cost\/\" class=\"lq-link\">Invisalign Cost Guide<\/a> \r\n      and \r\n      <a href=\"\/dubai\/orthodontics\/braces\/cost\/\" class=\"lq-link\">Braces Cost Guide<\/a>.\r\n    <\/p>\r\n\r\n    <div class=\"price-card\">\r\n      <table>\r\n        <thead>\r\n          <tr>\r\n            <th>Treatment<\/th>\r\n            <th>Typical Cost Range<\/th>\r\n            <th>Includes<\/th>\r\n          <\/tr>\r\n        <\/thead>\r\n        <tbody>\r\n          <tr>\r\n            <td><span class=\"emoji\">\ud83e\uddb7<\/span><span class=\"ltr\">Invisalign<\/span><\/td>\r\n            <td>AED 10,000 \u2013 25,000+<\/td>\r\n            <td>Packages (Lite, Moderate, Comprehensive). Clear trays, scans, refinements.<\/td>\r\n          <\/tr>\r\n          <tr>\r\n            <td><span class=\"emoji\">\ud83d\udccc<\/span><span class=\"ltr\">Braces<\/span><\/td>\r\n            <td>AED 8,000 \u2013 20,000+<\/td>\r\n            <td>Depends on type: metal (lowest), ceramic, lingual, Damon (higher).<\/td>\r\n          <\/tr>\r\n        <\/tbody>\r\n      <\/table>\r\n    <\/div>\r\n\r\n    <p class=\"note\" dir=\"auto\">\r\n      These are typical Dubai ranges. Final quotes vary by case complexity and clinic policies.  \r\n      Always confirm what\u2019s included: scans, retainers, refinements, and emergency visits.\r\n    <\/p>\r\n  <\/div>\r\n<\/section>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-dd143ea elementor-widget elementor-widget-global elementor-global-4669 elementor-widget-html\" data-id=\"dd143ea\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- CTA: Find My Dentist (Slim, with White Border) -->\r\n<section class=\"lq-cta\" dir=\"auto\" aria-label=\"Find a dentist\">\r\n  <style>\r\n    .lq-cta {\r\n      display: grid;\r\n      justify-items: center;\r\n      padding-block: 8px;\r\n      padding-inline: 12px; \/* breathing room on phones *\/\r\n    }\r\n\r\n    .lq-cta .cta-btn {\r\n      background: #BD552A;          \/* same brand orange-brown *\/\r\n      color: #fff;\r\n      font-weight: 700;\r\n      border-radius: 6px;\r\n      border: 2px solid #fff;       \/* white outline like header button *\/\r\n      padding: 8px 16px;            \/* smaller padding = slimmer button *\/\r\n      font-size: 15px;\r\n      display: inline-flex;\r\n      align-items: center;\r\n      justify-content: center;\r\n      text-decoration: none;\r\n      width: max-content;\r\n      min-width: 180px;             \/* slightly smaller min width *\/\r\n      transition: background-color .2s ease, transform .15s ease;\r\n    }\r\n\r\n    .lq-cta .cta-btn:hover,\r\n    .lq-cta .cta-btn:focus-visible {\r\n      background: #9e4622;\r\n      outline: none;\r\n    }\r\n    .lq-cta .cta-btn:active { transform: scale(0.98); }\r\n\r\n    \/* Reduced motion *\/\r\n    @media (prefers-reduced-motion: reduce) {\r\n      .lq-cta .cta-btn { transition: none; }\r\n    }\r\n  <\/style>\r\n\r\n  <a href=\"#patient-form\" class=\"cta-btn\">\r\n    <span class=\"elementor-button-content-wrapper\">\r\n      <span class=\"elementor-button-text\">Find My Dentist<\/span>\r\n    <\/span>\r\n  <\/a>\r\n<\/section>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-356a4d3 elementor-widget elementor-widget-html\" data-id=\"356a4d3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- Section 5: Daily Life with Invisalign vs Braces (Radar Premium Color Style) -->\r\n<section id=\"vs-daily\" class=\"lq lq-section\">\r\n  <style>\r\n    #vs-daily {\r\n      background: var(--lq-bg);\r\n    }\r\n    #vs-daily .lq-section-inner {\r\n      max-width: 1100px;\r\n      margin: 0 auto;\r\n      text-align: center;\r\n    }\r\n\r\n    #vs-daily h2 {\r\n      font-size: clamp(24px, 2.8vw, 32px);\r\n      font-weight: 700;\r\n      margin-bottom: 28px;\r\n      position: relative;\r\n      display: inline-block;\r\n    }\r\n    #vs-daily h2::after {\r\n      content: \"\";\r\n      position: absolute;\r\n      bottom: -6px;\r\n      inset-inline-start: 0;\r\n      width: 60px;\r\n      height: 3px;\r\n      background: var(--lq-brand, #ff7a00);\r\n      border-radius: 2px;\r\n    }\r\n\r\n    \/* Radar grid *\/\r\n    #vs-daily .radar {\r\n      display: grid;\r\n      grid-template-columns: repeat(3, 1fr);\r\n      grid-template-rows: repeat(3, 1fr);\r\n      gap: 20px;\r\n      max-width: 800px;\r\n      margin: 0 auto 32px;\r\n      position: relative;\r\n    }\r\n    #vs-daily .radar::before {\r\n      content:\"\";\r\n      position:absolute;\r\n      inset:0;\r\n      margin:auto;\r\n      width: 60%;\r\n      height: 60%;\r\n      border: 1px dashed #ddd;\r\n      border-radius: 50%;\r\n      z-index: 0;\r\n    }\r\n\r\n    \/* Factor item *\/\r\n    #vs-daily .factor {\r\n      display: flex;\r\n      flex-direction: column;\r\n      align-items: center;\r\n      justify-content: center;\r\n      padding: 10px;\r\n      z-index: 1;\r\n      background: #fff;\r\n      border-radius: 12px;\r\n      box-shadow: 0 2px 6px rgba(0,0,0,.05);\r\n    }\r\n    #vs-daily .factor .icon {\r\n      width: 40px; height: 40px;\r\n      border-radius: 12px;\r\n      background: #fff6ef;\r\n      border: 1px solid #ffd6b8;\r\n      display: flex; align-items: center; justify-content: center;\r\n      font-size: 18px;\r\n      margin-bottom: 6px;\r\n    }\r\n    #vs-daily .factor strong {\r\n      font-size: 15px;\r\n      color: var(--lq-text);\r\n      margin-bottom: 6px;\r\n    }\r\n    #vs-daily .factor .divider {\r\n      width: 100%;\r\n      height: 1px;\r\n      background: repeating-linear-gradient(\r\n        to right,\r\n        #ddd,\r\n        #ddd 4px,\r\n        transparent 4px,\r\n        transparent 8px\r\n      );\r\n      margin: 4px 0;\r\n    }\r\n    \/* Invisalign vs Braces colors *\/\r\n    #vs-daily .inv {\r\n      color: #2C3E50;\r\n      font-weight: 500;\r\n      font-size: 13px;\r\n    }\r\n    #vs-daily .bra {\r\n      color: #B87333;\r\n      font-weight: 600;\r\n      font-size: 13px;\r\n    }\r\n\r\n    \/* Positioning factors around circle *\/\r\n    #vs-daily .factor.eating    { grid-area: 1 \/ 2; }\r\n    #vs-daily .factor.hygiene   { grid-area: 2 \/ 3; }\r\n    #vs-daily .factor.comfort   { grid-area: 3 \/ 2; }\r\n    #vs-daily .factor.sports    { grid-area: 2 \/ 1; }\r\n    #vs-daily .factor.visits    { grid-area: 1 \/ 1; }\r\n    #vs-daily .factor.speech    { grid-area: 3 \/ 3; }\r\n\r\n    \/* Center legend *\/\r\n    #vs-daily .center {\r\n      grid-area: 2 \/ 2;\r\n      display: flex;\r\n      flex-direction: column;\r\n      align-items: center;\r\n      justify-content: center;\r\n      gap: 6px;\r\n      background: #fafafa;\r\n      border: 1px solid var(--lq-border);\r\n      border-radius: 50%;\r\n      width: 150px; height: 150px;\r\n      margin: auto;\r\n      box-shadow: var(--lq-shadow);\r\n      z-index: 2;\r\n      padding: 10px;\r\n    }\r\n    #vs-daily .center .inv {\r\n      color: #2C3E50;\r\n      font-weight: 700;\r\n      font-size: 16px;\r\n    }\r\n    #vs-daily .center .bra {\r\n      color: #B87333;\r\n      font-weight: 700;\r\n      font-size: 16px;\r\n    }\r\n    #vs-daily .center span {\r\n      font-size: 14px;\r\n      color: var(--lq-muted);\r\n    }\r\n\r\n    @media(max-width:768px){\r\n      #vs-daily .radar { gap:12px; max-width:100%; }\r\n      #vs-daily .factor strong { font-size:14px; }\r\n      #vs-daily .factor .inv, #vs-daily .factor .bra { font-size:12px; }\r\n      #vs-daily .center { width: 120px; height: 120px; }\r\n      #vs-daily .center .inv, #vs-daily .center .bra { font-size:14px; }\r\n      #vs-daily .center span { font-size:13px; }\r\n    }\r\n  <\/style>\r\n\r\n  <div class=\"lq-section-inner\">\r\n    <h2 dir=\"auto\">Daily Life: Invisalign vs Braces<\/h2>\r\n    <div class=\"radar\">\r\n      <div class=\"factor eating\">\r\n        <div class=\"icon\">\ud83c\udf7d\ufe0f<\/div>\r\n        <strong>Eating<\/strong>\r\n        <span class=\"inv\">No food restrictions<\/span>\r\n        <div class=\"divider\"><\/div>\r\n        <span class=\"bra\">Avoid sticky\/hard foods<\/span>\r\n      <\/div>\r\n      <div class=\"factor hygiene\">\r\n        <div class=\"icon\">\ud83e\udea5<\/div>\r\n        <strong>Hygiene<\/strong>\r\n        <span class=\"inv\">Brush & floss normally<\/span>\r\n        <div class=\"divider\"><\/div>\r\n        <span class=\"bra\">Extra care cleaning brackets<\/span>\r\n      <\/div>\r\n      <div class=\"factor comfort\">\r\n        <div class=\"icon\">\ud83d\ude0c<\/div>\r\n        <strong>Comfort<\/strong>\r\n        <span class=\"inv\">Smoother, less irritation<\/span>\r\n        <div class=\"divider\"><\/div>\r\n        <span class=\"bra\">Brackets\/wires can rub<\/span>\r\n      <\/div>\r\n      <div class=\"factor sports\">\r\n        <div class=\"icon\">\u26bd<\/div>\r\n        <strong>Sports<\/strong>\r\n        <span class=\"inv\">Remove aligners if needed<\/span>\r\n        <div class=\"divider\"><\/div>\r\n        <span class=\"bra\">Mouthguards or wax<\/span>\r\n      <\/div>\r\n      <div class=\"factor visits\">\r\n        <div class=\"icon\">\ud83d\udcc5<\/div>\r\n        <strong>Clinic Visits<\/strong>\r\n        <span class=\"inv\">6\u20138 week reviews<\/span>\r\n        <div class=\"divider\"><\/div>\r\n        <span class=\"bra\">Frequent adjustments<\/span>\r\n      <\/div>\r\n      <div class=\"factor speech\">\r\n        <div class=\"icon\">\ud83d\udde3\ufe0f<\/div>\r\n        <strong>Speech<\/strong>\r\n        <span class=\"inv\">Slight lisp, fades quickly<\/span>\r\n        <div class=\"divider\"><\/div>\r\n        <span class=\"bra\">Minimal changes<\/span>\r\n      <\/div>\r\n\r\n      <div class=\"center\">\r\n        <strong class=\"inv\">Invisalign<\/strong>\r\n        <span>vs<\/span>\r\n        <strong class=\"bra\">Braces<\/strong>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8f6df0c elementor-widget elementor-widget-html\" data-id=\"8f6df0c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- LumiQuest \u2013 FAQs on Invisalign vs Braces in Dubai (Premium \/ RTL-safe) -->\r\n<section class=\"lq\" id=\"vs-faqs\" aria-labelledby=\"vs-faqs-title\" dir=\"auto\">\r\n  <style>\r\n    #vs-faqs{\r\n      --lq-brand:#ff7a00;\r\n      --lq-ink:#1b1b1b;\r\n      --lq-muted:#667085;\r\n      --lq-bg:#ffffff;\r\n      --lq-soft:#fff6ef;\r\n      --lq-border:#ececef;\r\n      --lq-shadow:0 8px 28px rgba(0,0,0,.08);\r\n      padding:28px 12px;\r\n      background:var(--lq-bg);\r\n    }\r\n    @media (max-width:768px){\r\n      #vs-faqs{ padding-inline:8px!important; }\r\n    }\r\n    #vs-faqs .faq-list{ display:grid; gap:14px; margin-top:16px; }\r\n\r\n    \/* Each FAQ card *\/\r\n    #vs-faqs details{\r\n      border:1px solid var(--lq-border);\r\n      border-radius:16px;\r\n      background:#fff;\r\n      box-shadow:var(--lq-shadow);\r\n      overflow:hidden;\r\n      transition:border .25s ease, box-shadow .25s ease;\r\n    }\r\n    #vs-faqs details[open]{ border-color:var(--lq-brand); box-shadow:0 12px 34px rgba(255,122,0,.15); }\r\n\r\n    \/* Summary row *\/\r\n    #vs-faqs summary{\r\n      list-style:none; cursor:pointer; user-select:none; outline:none;\r\n      display:flex; align-items:center; gap:12px;\r\n      padding:16px 18px;\r\n      font-weight:700; font-size:1rem; text-align:start;\r\n      background:\r\n        radial-gradient(600px 140px at 0% 0%, var(--lq-soft) 0%, transparent 55%),\r\n        linear-gradient(180deg,#fff,#fff);\r\n    }\r\n    #vs-faqs summary::-webkit-details-marker{ display:none }\r\n\r\n    \/* Icon chip *\/\r\n    #vs-faqs .chip{\r\n      width:30px; height:30px; border-radius:10px;\r\n      display:grid; place-items:center; flex:0 0 30px;\r\n      background:#ffe9d8; border:1px solid #ffd6b8;\r\n      font-size:1rem;\r\n    }\r\n\r\n    \/* Chevron *\/\r\n    #vs-faqs summary::after{\r\n      content:\"\u25be\"; margin-inline-start:auto; transition:transform .28s ease; opacity:.6;\r\n    }\r\n    #vs-faqs details[open] summary::after{ transform:rotate(180deg); opacity:.9; }\r\n\r\n    \/* Answer *\/\r\n    #vs-faqs .faq-panel{ padding:0 18px 16px; border-top:1px dashed var(--lq-border); }\r\n    #vs-faqs .faq-panel p{ margin:12px 0 0; line-height:1.65; color:var(--lq-ink); font-size:15.5px; }\r\n\r\n    #vs-faqs a{ color:var(--lq-brand); font-weight:600; text-decoration:none; }\r\n    #vs-faqs a:hover{ text-decoration:underline; }\r\n  <\/style>\r\n\r\n  <div class=\"lq-subtitle\">\r\n    <h2 id=\"vs-faqs-title\">FAQs: Invisalign vs Braces in Dubai<\/h2>\r\n    <p class=\"lead\">Clear answers to the top questions patients ask when deciding between Invisalign and braces.<\/p>\r\n  <\/div>\r\n\r\n  <div class=\"faq-list\">\r\n    <details>\r\n      <summary><span class=\"chip\">\u23f1\ufe0f<\/span>Which is faster: Invisalign or braces?<\/summary>\r\n      <div class=\"faq-panel\"><p>Both treatments take a similar time for mild to moderate cases (~6\u201318 months). Braces may have an edge in very complex cases, while Invisalign works well for most adults and teens.<\/p><\/div>\r\n    <\/details>\r\n\r\n    <details>\r\n      <summary><span class=\"chip\">\ud83d\udcb5<\/span>Which is cheaper in Dubai?<\/summary>\r\n      <div class=\"faq-panel\"><p>Braces usually start lower (from AED 8,000). Invisalign often ranges AED 12,000\u201320,000+. Cost depends on case complexity and what\u2019s included (scans, retainers, refinements).<\/p><\/div>\r\n    <\/details>\r\n\r\n    <details>\r\n      <summary><span class=\"chip\">\ud83d\ude16<\/span>Which hurts more?<\/summary>\r\n      <div class=\"faq-panel\"><p>Both cause pressure when teeth move. Invisalign trays are smoother, while braces can rub cheeks and lips until you adapt.<\/p><\/div>\r\n    <\/details>\r\n\r\n    <details>\r\n      <summary><span class=\"chip\">\ud83d\udc69\u200d\ud83d\udcbc<\/span>Which is better for adults?<\/summary>\r\n      <div class=\"faq-panel\"><p>Adults often prefer Invisalign for aesthetics and flexibility. Braces are still an option if cost or complex bite correction is the priority.<\/p><\/div>\r\n    <\/details>\r\n\r\n    <details>\r\n      <summary><span class=\"chip\">\ud83e\uddd1\u200d\ud83c\udf93<\/span>Which is better for teens?<\/summary>\r\n      <div class=\"faq-panel\"><p>Both work. Braces don\u2019t depend on discipline, while Invisalign Teen adds wear-tracking indicators. Choice depends on lifestyle, responsibility, and parental guidance.<\/p><\/div>\r\n    <\/details>\r\n\r\n    <details>\r\n      <summary><span class=\"chip\">\ud83e\uddb7<\/span>Can Invisalign fix bite problems?<\/summary>\r\n      <div class=\"faq-panel\"><p>Yes \u2014 Invisalign can treat many <strong>mild to moderate bite issues<\/strong> (overbite, underbite, crossbite). Severe jaw problems may need braces or surgery.<\/p><\/div>\r\n    <\/details>\r\n\r\n    <details>\r\n      <summary><span class=\"chip\">\u2b50<\/span>Is Invisalign worth it in Dubai?<\/summary>\r\n      <div class=\"faq-panel\"><p>For patients who value <strong>discreet, removable treatment<\/strong>, Invisalign offers lifestyle freedom and comfort. Reviews show high satisfaction, especially for adults and expats balancing work\/social life.<\/p><\/div>\r\n    <\/details>\r\n  <\/div>\r\n<\/section>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a67894e elementor-widget elementor-widget-html\" data-id=\"a67894e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- Standalone: Why Patients Trust LumiQuest (self-contained, RTL-safe) -->\r\n<section id=\"lq-trust-standalone\" dir=\"auto\" aria-labelledby=\"lq-trust-title\">\r\n  <div class=\"inner\">\r\n    <div class=\"subtitle\">\r\n      <h2 id=\"lq-trust-title\">Why Patients Trust LumiQuest?<\/h2>\r\n      <p>\r\n        LumiQuest is your personal dental advisor \u2014 a private service that helps you\r\n        <strong>choose confidently between Invisalign and braces in Dubai.<\/strong>\r\n      <\/p>\r\n    <\/div>\r\n\r\n    <div class=\"grid\">\r\n      <!-- Card 1 -->\r\n      <article class=\"card\">\r\n        <img decoding=\"async\"\r\n          src=\"https:\/\/lumiquestdental.com\/wp-content\/uploads\/2025\/05\/icon-no-ads-lumiquest.svg.png\"\r\n          alt=\"No ads or listings \u2014 just tailored orthodontic matches\"\r\n          loading=\"lazy\"\r\n        \/>\r\n        <h3>Your Needs, Not Ads<\/h3>\r\n        <p class=\"lead\">\r\n          No public listings. No sponsored spots.\r\n          Just tailored orthodontic matches for you.\r\n        <\/p>\r\n      <\/article>\r\n\r\n      <!-- Card 2 -->\r\n      <article class=\"card\">\r\n        <img decoding=\"async\"\r\n          src=\"https:\/\/lumiquestdental.com\/wp-content\/uploads\/2025\/05\/icon-clinic-vetting.svg.png\"\r\n          alt=\"Carefully vetted orthodontic clinics\"\r\n          loading=\"lazy\"\r\n        \/>\r\n        <h3>Carefully Vetted Clinics<\/h3>\r\n        <p class=\"lead\">\r\n          We handpick orthodontists and clinics for skills, outcomes, and real patient satisfaction.\r\n        <\/p>\r\n      <\/article>\r\n\r\n      <!-- Card 3 -->\r\n      <article class=\"card\">\r\n        <img decoding=\"async\"\r\n          src=\"https:\/\/lumiquestdental.com\/wp-content\/uploads\/2025\/07\/icon-circle-of-trust-lumiquest.svg.png\"\r\n          alt=\"A circle of trust \u2014 ethical, patient-first orthodontists\"\r\n          loading=\"lazy\"\r\n        \/>\r\n        <h3>A Circle of Trust<\/h3>\r\n        <p class=\"lead\">\r\n          Only ethical, patient-first orthodontists \u2014 so you never feel misled again.\r\n        <\/p>\r\n      <\/article>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<style>\r\n\/* ===== Standalone, conflict-free styles (scoped to #lq-trust-standalone) ===== *\/\r\n#lq-trust-standalone { padding: 40px 16px; background: #fff; }\r\n#lq-trust-standalone .inner { max-width: 780px; margin: 0 auto; }\r\n#lq-trust-standalone .subtitle { text-align: center; }\r\n#lq-trust-standalone h2 {\r\n  margin: 0 0 12px; font-weight: 700; color: #1b1b1b;\r\n  font-size: clamp(26px, 3.2vw, 36px); line-height: 1.25;\r\n}\r\n#lq-trust-standalone .subtitle p {\r\n  margin: 0; color: #667085; font-size: clamp(14px, 1.6vw, 16px); line-height: 1.6;\r\n}\r\n\r\n\/* Grid *\/\r\n#lq-trust-standalone .grid {\r\n  display: grid; gap: 20px; margin-top: 22px;\r\n  grid-template-columns: repeat(3, minmax(0, 1fr));\r\n}\r\n#lq-trust-standalone .card {\r\n  background: #fff; border: 1px solid #e6e6e6; border-radius: 14px;\r\n  box-shadow: 0 6px 18px rgba(0,0,0,.05);\r\n  padding: 20px; text-align: center;\r\n}\r\n#lq-trust-standalone .card img {\r\n  width: 90px; height: auto; display: block; margin: 0 auto 14px;\r\n}\r\n#lq-trust-standalone .card h3 {\r\n  margin: 8px 0 6px; color: #1b1b1b; font-weight: 600;\r\n  font-size: clamp(18px, 1.8vw, 22px); line-height: 1.3;\r\n}\r\n#lq-trust-standalone .card .lead {\r\n  margin: 0 auto; max-width: 42ch; color: #667085;\r\n  font-size: 16px; line-height: 1.6;\r\n}\r\n\r\n\/* Responsiveness *\/\r\n@media (max-width: 1024px){\r\n  #lq-trust-standalone .grid { grid-template-columns: 1fr; gap: 18px; }\r\n  #lq-trust-standalone .inner { padding-inline: 4px; }\r\n}\r\n@media (max-width: 480px){\r\n  #lq-trust-standalone { padding: 28px 12px; }\r\n  #lq-trust-standalone .card { padding: 16px; }\r\n  #lq-trust-standalone .card img { width: 80px; margin-bottom: 12px; }\r\n}\r\n\r\n\/* RTL-aware: follow document direction automatically *\/\r\n#lq-trust-standalone [dir=\"auto\"] { unicode-bidi: plaintext; }\r\n<\/style>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9d8d6ad elementor-widget elementor-widget-global elementor-global-4673 elementor-widget-html\" data-id=\"9d8d6ad\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<section class=\"lq-form\">\r\n  <div class=\"lq-card\" id=\"patient-form\">\r\n\r\n    <!-- LQ:TEXT START -->\r\n    <header class=\"lq-header lq-form-header lq-hide-on-success\">\r\n      <h2>Get Clear Guidance to the Right Dentist<\/h2>\r\n      <p>Just a couple of minutes \u2014 no pressure, no cost, and fully private<br>\r\n      One of our advisors will review your request and guide you to a suitable dentist or clinic, usually within 12 hours.<\/p>\r\n    <\/header>\r\n    <!-- LQ:TEXT END -->\r\n\r\n    <form id=\"lumiquest_patient_form\"\r\n          action=\"\/api\/lq-form\"\r\n          method=\"POST\"\r\n          enctype=\"multipart\/form-data\"\r\n          autocomplete=\"off\"\r\n          target=\"lq_iframe\">\r\n\r\n      <!-- LQ:CHOICES (HTML) START -->    \r\n      <div class=\"lq-field\">\r\n        <label for=\"reason_for_visit\">What brings you in today? <span class=\"req\">*<\/span><\/label>\r\n        <select name=\"reason_for_visit\" id=\"reason_for_visit\" required>\r\n          <option value=\"\">- Select -<\/option>\r\n          <option value=\"Pain \u2013 swelling or urgent issue\">Pain \u2013 swelling or urgent issue<\/option>\r\n          <option value=\"Missing\/broken tooth \u2013 need repair or replacement\">Missing\/broken tooth \u2013 need repair or replacement<\/option>\r\n          <option value=\"Improve my smile \u2013 veneers or whitening or more\">Improve my smile \u2013 veneers or whitening or more<\/option>\r\n          <option value=\"Straighten teeth \u2013 braces or clear aligners (Invisalign etc.)\">Straighten teeth \u2013 braces or clear aligners (Invisalign etc.)<\/option>\r\n          <option value=\"Routine visit \u2013 cleaning or filling or check-up\">Routine visit \u2013 cleaning or filling or check-up<\/option>\r\n          <option value=\"Not sure \u2013 need help deciding\">Not sure \u2013 need help deciding<\/option>\r\n          <option value=\"Something else \u2013 I\u2019ll explain below\">Something else \u2013 I\u2019ll explain below<\/option>\r\n        <\/select>\r\n      <\/div>\r\n\r\n      <div class=\"lq-field\" id=\"sub_reason_wrap\">\r\n        <label for=\"sub_reason\">Could you tell us a bit more? <span class=\"req\">*<\/span><\/label>\r\n        <select name=\"sub_reason\" id=\"sub_reason\" required>\r\n          <option value=\"\">- Select -<\/option>\r\n        <\/select>\r\n      <\/div>\r\n      <!-- LQ:CHOICES (HTML) END -->\r\n\r\n      <!-- LQ:CONTACT START -->\r\n      <div class=\"lq-grid\">\r\n        <div class=\"lq-field\">\r\n          <label for=\"first_name\">First Name <span class=\"req\">*<\/span><\/label>\r\n          <input type=\"text\" name=\"first_name\" id=\"first_name\" required placeholder=\"Enter your first name\">\r\n        <\/div>\r\n        <div class=\"lq-field\">\r\n          <label for=\"last_name\">Last Name<\/label>\r\n          <input type=\"text\" name=\"last_name\" id=\"last_name\" placeholder=\"Enter your last name\">\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"lq-grid\">\r\n        <div class=\"lq-field\">\r\n          <label for=\"email\">Email Address <span class=\"req\">*<\/span><\/label>\r\n          <input type=\"email\" name=\"email\" id=\"email\" required placeholder=\"name@email.com\">\r\n        <\/div>\r\n\r\n        <div class=\"lq-field\">\r\n          <label for=\"phone_local\">Phone Number <span class=\"req\">*<\/span><\/label>\r\n          <div class=\"lq-phone\">\r\n            <div class=\"lq-dial\" id=\"lq-dial\">\r\n  <button type=\"button\" id=\"dial_btn\" aria-haspopup=\"listbox\" aria-expanded=\"false\" class=\"lq-dial-btn\">+971<\/button>\r\n  <input type=\"hidden\" id=\"dial_code_standardized\" name=\"dial_code_standardized\" value=\"+971\">\r\n\r\n  <div id=\"dial_panel\" class=\"lq-dial-panel lq-hidden\" role=\"dialog\" aria-label=\"Select country code\">\r\n    <input\r\n      type=\"search\"\r\n      id=\"dial_filter\"\r\n      class=\"lq-dial-filter\"\r\n      placeholder=\"Search country or +code\"\r\n      aria-controls=\"dial_listbox\"\r\n      autocomplete=\"off\"\r\n      autocorrect=\"off\"\r\n      autocapitalize=\"off\"\r\n      spellcheck=\"false\"\r\n      name=\"dial_filter_search\"\r\n      enterkeyhint=\"search\"\r\n      inputmode=\"search\"\r\n    >\r\n    <ul id=\"dial_listbox\" class=\"lq-dial-list\" role=\"listbox\" aria-labelledby=\"dial_btn\"><\/ul>\r\n  <\/div>\r\n<\/div>\r\n\r\n\r\n            <input type=\"tel\" id=\"phone_local\" name=\"phone_local\" required inputmode=\"tel\"\r\n                   placeholder=\"mobile number\" aria-describedby=\"phone_error\">\r\n          <\/div>\r\n\r\n          <small class=\"lq-hint\">Type your country (e.g., \u201cUnited Arab Emirates\u201d) or its code (e.g., \u201c+971\u201d), then your number without the area code. WhatsApp only.<\/small>\r\n          <div class=\"lq-global-error-message\" id=\"phone_error\" aria-live=\"polite\">Please enter a valid phone number.<\/div>\r\n        <\/div>\r\n      <\/div>\r\n      <!-- LQ:CONTACT END -->\r\n\r\n      <!-- LQ:PREFCONTACT START -->\r\n      <div class=\"lq-field\">\r\n        <label for=\"preferred_contact\">Preferred Contact Method <span class=\"req\">*<\/span><\/label>\r\n        <select name=\"preferred_contact\" id=\"preferred_contact\" required>\r\n          <option value=\"\">- Select -<\/option>\r\n          <option value=\"WhatsApp\">WhatsApp<\/option>\r\n          <option value=\"Email\">Email<\/option>\r\n        <\/select>\r\n      <\/div>\r\n      <!-- LQ:PREFCONTACT END -->\r\n\r\n      <!-- LQ:ADVANCED START -->\r\n      <details class=\"lq-advanced\">\r\n        <summary>Advanced Options (optional)<\/summary>\r\n\r\n        <div class=\"lq-field\">\r\n          <label for=\"case_description\">Anything else you'd like to share?<\/label>\r\n          <textarea name=\"case_description\" id=\"case_description\" rows=\"2\"\r\n            placeholder=\"Add any details you\u2019d like (goals, questions, doubts, etc.)\"><\/textarea>\r\n        <\/div>\r\n\r\n        <div class=\"lq-field\">\r\n          <label for=\"uploads_select\">Would you like to upload smile photos or dental X-rays?<\/label>\r\n          <select name=\"uploads_select\" id=\"uploads_select\">\r\n            <option value=\"No\" selected>No<\/option>\r\n            <option value=\"Yes\">Yes<\/option>\r\n          <\/select>\r\n        <\/div>\r\n\r\n        <div id=\"uploads_wrapper\" class=\"lq-hidden\">\r\n          <div class=\"lq-field\">\r\n            <label for=\"uploads\">Upload file(s)<\/label>\r\n            <input type=\"file\" name=\"uploads\" id=\"uploads\" accept=\".jpg,.jpeg,.png,.pdf,.heic,.webp\" multiple>\r\n            <small class=\"lq-hint\">JPG, JPEG, PNG, PDF, HEIC, WEBP (max 10MB each)<\/small>\r\n          <\/div>\r\n          <div class=\"lq-field\">\r\n            <label class=\"lq-check\">\r\n              <input type=\"checkbox\" name=\"consent\" id=\"consent\" value=\"yes\">\r\n              I allow LumiQuest to review my uploaded photo(s) or X-ray(s).\r\n            <\/label>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"lq-grid\">\r\n          <div class=\"lq-field\">\r\n            <label for=\"location\">Preferred Area or Landmark<\/label>\r\n            <input type=\"text\" name=\"location\" id=\"location\" placeholder=\"Nearest area or landmark\">\r\n          <\/div>\r\n          <div class=\"lq-field\">\r\n            <label for=\"age_group\">Patient Age Group<\/label>\r\n            <select name=\"age_group\" id=\"age_group\">\r\n              <option value=\"\">- Select -<\/option>\r\n              <option>Under 14<\/option>\r\n              <option>14 or older<\/option>\r\n            <\/select>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"lq-grid\">\r\n          <div class=\"lq-field\">\r\n            <label for=\"preferred_language\">Preferred Language<\/label>\r\n            <input type=\"text\" name=\"preferred_language\" id=\"preferred_language\" placeholder=\"English, Arabic, Russian\u2026\">\r\n          <\/div>\r\n          <div class=\"lq-field\">\r\n            <label for=\"preferred_gender\">Preferred Dentist Gender<\/label>\r\n            <input type=\"text\" name=\"preferred_gender\" id=\"preferred_gender\" placeholder=\"If you have a preference\">\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"lq-grid\">\r\n          <div class=\"lq-field\">\r\n            <label for=\"preferred_nationality\">Preferred Dentist Nationality<\/label>\r\n            <input type=\"text\" name=\"preferred_nationality\" id=\"preferred_nationality\" placeholder=\"Only if helpful for comfort\">\r\n          <\/div>\r\n          <div class=\"lq-field\">\r\n            <label for=\"insurance\">Insurance Provider &amp; Plan<\/label>\r\n            <input type=\"text\" name=\"insurance\" id=\"insurance\" placeholder=\"MetLife VIP, NAS Neuron, Aetna DubaiCare\">\r\n          <\/div>\r\n        <\/div>\r\n      <\/details>\r\n      <!-- LQ:ADVANCED END -->\r\n\r\n      <div class=\"cf-turnstile\" data-sitekey=\"0x4AAAAAABfA_rNlGsui0CeR\" data-callback=\"onTurnstile\" data-action=\"patient_form\"><\/div>\r\n      <input type=\"hidden\" name=\"turnstile_token\" id=\"turnstile_token\">\r\n\r\n      <input type=\"hidden\" name=\"phone_e164\" id=\"phone_e164\">\r\n      <input type=\"hidden\" name=\"phone_number\" id=\"phone_number\">\r\n      <input type=\"hidden\" name=\"date\" id=\"date\">\r\n      <input type=\"hidden\" name=\"time\" id=\"time\">\r\n      <input type=\"hidden\" name=\"page_url\" id=\"page_url\">\r\n      <input type=\"hidden\" name=\"user_agent\" id=\"user_agent\">\r\n      <input type=\"hidden\" name=\"unique_id\" id=\"unique_id\">\r\n      <input type=\"hidden\" name=\"page_language\" id=\"page_language\">\r\n\r\n      <div class=\"lq-actions\">\r\n        <button type=\"submit\" class=\"lq-btn\">\ud83d\udd0d Find My Dentist<\/button>\r\n        <div class=\"lq-msg lq-pending\" id=\"lq-pending\" role=\"status\" aria-live=\"polite\"><\/div>\r\n        <div class=\"lq-msg lq-success\" id=\"lq-success\" role=\"status\" aria-live=\"polite\"><\/div>\r\n        <div class=\"lq-msg lq-error\" id=\"lq-error\" aria-live=\"assertive\"><\/div>\r\n      <\/div>\r\n\r\n      <div style=\"position:absolute;left:-9999px;top:-9999px;\" aria-hidden=\"true\">\r\n        <label><\/label>\r\n        <input type=\"text\" name=\"middle_name\" id=\"middle_name\" tabindex=\"-1\" autocomplete=\"off\">\r\n      <\/div>\r\n      <input type=\"hidden\" name=\"form_started_at\" id=\"form_started_at\">\r\n\r\n\r\n    <\/form>\r\n\r\n    <iframe name=\"lq_iframe\" class=\"lq-hidden\" style=\"display:none\"><\/iframe>\r\n  <\/div>\r\n<\/section>\r\n\r\n\r\n<script defer src=\"https:\/\/challenges.cloudflare.com\/turnstile\/v0\/api.js\"><\/script>\r\n<script defer src=\"https:\/\/cdn.jsdelivr.net\/npm\/libphonenumber-js@1.10.53\/bundle\/libphonenumber-js.min.js\"><\/script>\r\n\r\n<!-- LQ:CSS START -->\r\n<style>\r\n\/* --- Layout & fields --- *\/\r\n.lq-form{display:flex;justify-content:center;padding:0}\r\n.lq-card{max-width:780px;width:100%;background:#fff;border-radius:20px;box-shadow:0 12px 36px rgba(0,0,0,.07);padding:28px 24px;margin:auto;}\r\n.lq-header{text-align:center;margin-bottom:10px}\r\n.lq-header h2{margin:0 0 6px 0;font-size:28px;line-height:1.2}\r\n.lq-header p{margin:0;color:#4b5563}\r\n.lq-field{display:flex;flex-direction:column;margin-bottom:14px}\r\n.lq-field label{font-weight:650;margin-bottom:6px}\r\n.lq-field input[type=\"text\"],\r\n.lq-field input[type=\"email\"],\r\n.lq-field input[type=\"tel\"],\r\n.lq-field select,\r\n.lq-field textarea{border:1px solid #e3e3e3;border-radius:14px;padding:12px 14px;font-size:16px;background:#fff;}\r\n.lq-field textarea{min-height:90px;resize:vertical}\r\n#case_description{min-height:0 !important;} \/* allow rows=2 to control height *\/\r\n.lq-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}\r\n@media(max-width:720px){.lq-grid{grid-template-columns:1fr}}\r\n.req{color:#d93025}\r\n.lq-hidden{display:none}\r\n#sub_reason_wrap{display:none}\r\n.lq-hint{color:#6b7280;font-size:12px}\r\n.lq-actions{text-align:center;margin-top:18px}\r\n.lq-msg{margin-top:10px;font-weight:600;display:none}\r\n.lq-pending{color:#6b7280}.lq-success{color:#28A745}.lq-error{color:#D93025}\r\n.lq-global-error-message{display:none;color:#D93025;margin-top:6px;font-weight:500;font-size:14px}\r\ninput[type=\"tel\"]:invalid ~ .lq-global-error-message{display:block}\r\n.cf-turnstile{margin:18px 0 22px}\r\n\r\n\/* Advanced box *\/\r\n.lq-advanced{margin-top:6px;border:1px solid #eee;border-radius:14px;padding:0;background:#fafafa;margin-bottom:18px}\r\n.lq-advanced>summary{cursor:pointer;list-style:none;padding:14px 16px;font-weight:700;display:flex;align-items:center;gap:10px;border-radius:12px}\r\n.lq-advanced>summary:hover{background:#f3f4f6}\r\n.lq-advanced[open]{box-shadow:inset 0 0 0 1px #eee}\r\n.lq-advanced>div{padding:0 16px 14px 16px}\r\n.lq-advanced>summary::after{content:\"\";margin-left:auto;width:12px;height:8px;background-image:url(\"data:image\/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath d='M1 1.5l5 5 5-5' stroke='%23999' stroke-width='2' fill='none' stroke-linecap='round'\/%3E%3C\/svg%3E\");background-size:12px 8px;background-repeat:no-repeat;transition:transform .18s ease}\r\n.lq-advanced[open]>summary::after{transform:rotate(180deg)}\r\n\r\n\/* Phone row (strict black & white) *\/\r\n.lq-phone{display:grid;grid-template-columns:92px 1fr;gap:8px;align-items:center}\r\n.lq-dial{position:relative}\r\n.lq-dial-btn{\r\n  width:100%; border:1px solid #e3e3e3; border-radius:14px;\r\n  padding:12px 34px 12px 14px;\r\n  font: 14px\/1.2 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\r\n  background:#fff; color:#111; text-align:left; cursor:pointer; position:relative;\r\n}\r\n.lq-dial-btn::after{\r\n  content:\"\"; position:absolute; right:12px; top:50%; width:12px; height:8px; transform:translateY(-50%);\r\n  background-image:url(\"data:image\/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cpath d='M1 1.5l5 5 5-5' stroke='%23999' stroke-width='2' fill='none' stroke-linecap='round'\/%3E%3C\/svg%3E\");\r\n  background-size:12px 8px; background-repeat:no-repeat;\r\n}\r\n.lq-dial-panel {\r\n    position: absolute;\r\n    top: calc(100% + 4px); \/* small gap below the button *\/\r\n    left: 0;\r\n    width: 100%;            \/* match button width *\/\r\n    z-index: 99999; \/* Increased z-index for safety *\/\r\n    background-color: #fff; \/* ENSURE SOLID BACKGROUND *\/\r\n    border: 1px solid #e6e6e6;\r\n    border-radius: 14px;\r\n    box-shadow: 0 12px 36px rgba(0,0,0,.10);\r\n    padding: 8px;\r\n    max-height: 300px;\r\n    overflow-y: auto;\r\n    transform: translateY(0); \/* fixes quirks in flex\/grid *\/\r\n}\r\n\r\n#patient-form .lq-phone .lq-dial-panel {\r\n  width: auto;          \/* don\u2019t lock to 92px column *\/\r\n  min-width: 260px;     \/* room for readable placeholder *\/\r\n}\r\n\r\n.lq-phone, .lq-card {\r\n  overflow: visible !important;\r\n}\r\n\r\n.lq-dial-filter {\r\n  width:100%;\r\n  padding:12px 14px;\r\n  margin-bottom:10px;\r\n  font-size:14px;\r\n  box-sizing:border-box;\r\n  border-radius:10px;\r\n  border:1px solid #e3e3e3;\r\n  background:#fff;\r\n  color:#111;\r\n}\r\n\r\n.lq-dial-list{\r\n  max-height:300px; overflow:auto; margin:0; padding:0; list-style:none;\r\n}\r\n.lq-dial-item{\r\n  font-size:13px; padding:16px 14px; border-radius:10px; cursor:pointer;\r\n  display:flex; justify-content:space-between; align-items:center; gap:14px; line-height:1.3; color:#111;\r\n  background: #fff; \/* Ensure item background is white *\/\r\n}\r\n.lq-dial-item span{flex:0 0 48px; font-weight:600;}\r\n.lq-dial-item small{flex:1; color:#666; font-size:12px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}\r\n.lq-dial-item:hover,.lq-dial-item[aria-selected=\"true\"]{background:#f5f5f5}\r\n\r\n\/* Button (no hover jump) *\/\r\n.lq-btn{background:#BD552A;color:#fff;border:1px solid #e3e3e3;border-radius:10px;padding:10px 18px;font-weight:800;cursor:pointer;box-shadow:none !important;transition:none !important}\r\n.lq-btn:hover,.lq-btn:active,.lq-btn:focus{box-shadow:none !important;border-color:#000;background:#BD552A}\r\n\r\n\/* Success card styles + premium fade-in *\/\r\n#lq-success-card{\r\n  max-width:720px;\r\n  margin:14px auto 0;\r\n  background:#fff;\r\n  border:1px solid #eee;\r\n  border-radius:20px;\r\n  box-shadow:0 10px 30px rgba(0,0,0,.06);\r\n  padding:28px 22px;\r\n  text-align:center;\r\n\r\n  \/* premium fade-in *\/\r\n  opacity:0;\r\n  transform:translateY(6px);\r\n  animation:lqFadeUp .45s ease-out .12s forwards;\r\n}\r\n\r\n#lq-success-card h2{\r\n  font-size:24px;\r\n  font-weight:700;\r\n  margin:12px 0 14px;\r\n  color:#222;\r\n}\r\n\r\n#lq-success-card p{\r\n  font-size:17px;\r\n  line-height:1.7;\r\n  color:#444;\r\n  max-width:720px;\r\n  margin:0 auto 20px;\r\n}\r\n\r\n#lq-success-card .lq-spam-note{\r\n  font-size: 13px;\r\n  line-height: 1.6;\r\n  color: #6b7280;\r\n  margin: -6px auto 16px;\r\n  max-width: 720px;\r\n}\r\n\r\n\/* Icon (class is reused inside the card) *\/\r\n.lq-success-icon{\r\n  width:44px;\r\n  height:44px;\r\n  border-radius:12px;\r\n  background:#f5fff8;\r\n  display:flex;\r\n  align-items:center;\r\n  justify-content:center;\r\n  margin-bottom:8px;\r\n}\r\n\r\n\/* Steps \u2014 premium cards with gradient number badge *\/\r\n#lq-success-card .lq-steps{\r\n  counter-reset: step;\r\n  display:grid;\r\n  gap:12px;\r\n  margin:20px auto 0;\r\n  max-width:640px;\r\n  text-align:start;\r\n  padding:0;\r\n}\r\n\r\n#lq-success-card .lq-steps li{\r\n  list-style:none;\r\n  display:flex;\r\n  align-items:flex-start;\r\n  gap:12px;\r\n  padding:14px 16px;\r\n  border:1px solid #eee;\r\n  border-radius:14px;\r\n  background:#fff;\r\n  box-shadow:0 6px 18px rgba(0,0,0,.04);\r\n}\r\n\r\n#lq-success-card .lq-steps .badge{\r\n  width:30px;\r\n  height:30px;\r\n  border-radius:999px;\r\n  display:flex;\r\n  align-items:center;\r\n  justify-content:center;\r\n  font-weight:800;\r\n  font-size:14px;\r\n  color:#fff;\r\n  background:linear-gradient(90deg,#ff7a00,#ff5fa2);\r\n  box-shadow:0 2px 8px rgba(0,0,0,.08);\r\n  flex-shrink:0;\r\n  margin-top:2px;\r\n}\r\n\r\n#lq-success-card .lq-steps .text{\r\n  font-size:17px;\r\n  line-height:1.6;\r\n  color:#333;\r\n}\r\n\r\n\/* subtle focus\/hover polish for accessibility *\/\r\n#lq-success-card .lq-steps li:hover{\r\n  box-shadow:0 10px 24px rgba(0,0,0,.06);\r\n  border-color:#e7e7e7;\r\n}\r\n\r\n@media (max-width:480px){\r\n  #lq-success-card .lq-steps li{ padding:12px 14px; }\r\n  #lq-success-card .lq-steps .text{ font-size:16px; }\r\n}\r\n\r\n\/* Animation + reduced motion *\/\r\n@keyframes lqFadeUp { to { opacity:1; transform:none; } }\r\n\r\n@media (prefers-reduced-motion: reduce){\r\n  #lq-success-card{ animation:none; opacity:1; transform:none; }\r\n}\r\n\r\n\/* LQ:PHONE_DROPDOWN FIX START *\/\r\n\/* --- Phone dropdown solid backgrounds --- *\/\r\n#patient-form .lq-phone .lq-dial-panel { background:#fff !important; }\r\n#patient-form .lq-phone .lq-dial-filter { background:#fff !important; }\r\n#patient-form .lq-phone .lq-dial-list   { background:#fff !important; }\r\n#patient-form .lq-phone .lq-dial-item   { background:#fff; }\r\n\r\n#patient-form .lq-phone .lq-dial-item:hover,\r\n#patient-form .lq-phone .lq-dial-item[aria-selected=\"true\"] {\r\n  background:#f5f5f5 !important;\r\n}\r\n\r\n#patient-form .lq-phone .lq-dial-panel::-webkit-scrollbar-track { background:#fff; }\r\n\r\n#patient-form .lq-phone .lq-dial-filter::placeholder { \r\n  color:#6b7280; \r\n  opacity:1;           \/* Firefox honors this *\/\r\n}\r\n#patient-form .lq-phone .lq-dial-filter::-webkit-input-placeholder { \r\n  color:#6b7280;       \/* Chrome\/Safari *\/\r\n  opacity:1;\r\n}\r\n#patient-form .lq-phone .lq-dial-filter::-moz-placeholder { \r\n  color:#6b7280;       \/* Old Firefox *\/\r\n  opacity:1;\r\n}\r\n#patient-form .lq-phone .lq-dial-filter:-ms-input-placeholder { \r\n  color:#6b7280;       \/* Legacy Edge\/IE *\/\r\n}\r\n\r\n\/* LQ:PHONE_DROPDOWN FIX END *\/\r\n\r\n\/* ==============================\r\n   LQ:FORM HEADER \u2014 Premium style to match other sections\r\n   ============================== *\/\r\n#patient-form .lq-form-header {\r\n  text-align: center;\r\n  margin-bottom: 24px; \/* more breathing room to echo the other sections header *\/\r\n}\r\n\r\n#patient-form .lq-form-header h2 {\r\n  font-size: 28px;         \/* mirrors .lq-expat-header h2 *\/\r\n  font-weight: 700;\r\n  line-height: 1.25;\r\n  margin: 0 0 20px 0;      \/* match rhythm of expat header *\/\r\n  color: #222;\r\n  position: relative;      \/* for the underline *\/\r\n}\r\n\r\n#patient-form .lq-form-header h2::after {\r\n  content: \"\";\r\n  position: absolute;\r\n  bottom: -8px;\r\n  left: 50%;\r\n  transform: translateX(-50%);\r\n  width: 80px;\r\n  height: 3px;\r\n  background: linear-gradient(90deg, #ff7a00, #ff5fa2);\r\n  border-radius: 4px;\r\n}\r\n\r\n#patient-form .lq-form-header p {\r\n  font-size: 17px;         \/* mirrors .lq-expat-intro *\/\r\n  line-height: 1.7;\r\n  color: #444;\r\n  max-width: 720px;        \/* same readable width *\/\r\n  margin: 0 auto 6px;      \/* centered + slightly tighter for form context *\/\r\n  text-align: center;\r\n}\r\n\r\n\/* Optional: slightly shorter underline on very small screens *\/\r\n@media (max-width: 480px) {\r\n  #patient-form .lq-form-header h2::after { width: 64px; }\r\n}\r\n\r\n\/* Premium pending state *\/\r\n#lq-pending {\r\n  display: none;\r\n  margin-top: 18px;\r\n  font-size: 18px;\r\n  font-weight: 600;\r\n  color: #333;\r\n  text-align: center;\r\n  line-height: 1.6;\r\n}\r\n\r\n\/* Anchor offset so sticky header doesn't cover the card *\/\r\n#patient-form { scroll-margin-top: 0px; }\r\n@media (max-width: 768px) { #patient-form { scroll-margin-top: 0px; } }\r\n\r\n<\/style>\r\n\r\n<!-- LQ:CSS END -->\r\n\r\n<script>\r\n\r\n\/\/ Start time for timing trap\r\n  document.getElementById('form_started_at').value = Date.now();\r\n\r\n  \/\/ Block bots that fill instantly or touch honeypot\r\n  document.getElementById('lumiquest_patient_form').addEventListener('submit', function (e) {\r\n    const hp = document.getElementById('middle_name');\r\n    const started = +document.getElementById('form_started_at').value || 0;\r\n    if (hp && hp.value) { e.preventDefault(); return; }\r\n    if (Date.now() - started < 3000) {  \/\/ < 3s\r\n      e.preventDefault();\r\n      const msgError = document.getElementById('lq-error');\r\n      msgError.textContent = LQ_I18N.t('confirmFail'); \r\n      msgError.style.display = 'block';\r\n    }\r\n  }, { capture: true });\r\n\r\n\/* Reset cached inputs on back\/refresh *\/\r\nwindow.addEventListener('pageshow', () => {\r\n  const f=document.getElementById('lumiquest_patient_form');\r\n  if(f){f.reset();}\r\n});\r\n\r\n\/\/ LQ:CHOICES_JS START\r\n\/* ---------- Sub-reasons ---------- *\/\r\nconst form = document.getElementById('lumiquest_patient_form');\r\nconst reasonSel = form?.querySelector('#reason_for_visit');\r\nconst subSel    = form?.querySelector('#sub_reason');\r\nconst subWrap   = form?.querySelector('#sub_reason_wrap');\r\n\r\nconst subReasonMap = {\r\n  pain: [\r\n    \"Cold Sensitivity \u2013 sharp pain when drinking cold or breathing cold air\",\r\n    \"Severe Toothache \u2013 constant or throbbing pain in one or more teeth\",\r\n    \"Swollen Gums or Abscess \u2013 painful bump or swelling on your gums\",\r\n    \"Broken or Cracked Tooth \u2013 painful when chewing or touching\",\r\n    \"Wisdom Tooth Pain \u2013 pain or swelling in the back of your mouth\",\r\n    \"Pain After a Recent Treatment \u2013 discomfort after dental work\",\r\n    \"Jaw Pain or Clicking \u2013 pain near ear or clicking in the jaw\",\r\n    \"Something Else \u2013 I\u2019ll explain below\"\r\n  ],\r\n  missing_broken: [\r\n    \"Missing Tooth \u2013 I lost a tooth and want to replace it\",\r\n    \"Broken Tooth (Not Painful) \u2013 part of my tooth is chipped or cracked\",\r\n    \"Full Mouth Tooth Loss \u2013 I\u2019ve lost most or all of my teeth\",\r\n    \"Dental Bridge Needed \u2013 I want to replace missing teeth with a fixed bridge\",\r\n    \"Dental Implant Needed \u2013 I want a permanent tooth replacement\",\r\n    \"Dentures Needed \u2013 I\u2019m looking for full or partial dentures\",\r\n    \"Tooth Extracted Recently \u2013 I need to replace a tooth that was removed\",\r\n    \"Something Else \u2013 I\u2019ll explain below\"\r\n  ],\r\n  improve_smile: [\r\n    \"Hollywood Smile \u2013 full smile makeover with veneers or crowns\",\r\n    \"Dental Veneers \u2013 I want to reshape or whiten my front teeth\",\r\n    \"Teeth Whitening \u2013 I want a brighter, whiter smile\",\r\n    \"Smile Makeover \u2013 not sure which treatment, but I want a better smile\",\r\n    \"Gum Reshaping \u2013 my gums are uneven or show too much when I smile\",\r\n    \"Tooth Bonding \u2013 small chips, gaps, or imperfections to fix\",\r\n    \"Something Else \u2013 I\u2019ll explain below\"\r\n  ],\r\n  straighten: [\r\n    \"Invisalign \u2013 I want invisible, removable aligners\",\r\n    \"Braces \u2013 I\u2019m open to fixed brackets (metallic or ceramic)\",\r\n    \"Damon Braces \u2013 self-ligating brackets\",\r\n    \"Myobrace \u2013 habit-correcting appliance for kids\/teens\",\r\n    \"Lingual Braces \u2013 hidden behind the teeth (invisible)\",\r\n    \"Clear Aligners \u2013 I\u2019m exploring alternatives to Invisalign\",\r\n    \"Crooked Teeth \u2013 not sure which option, just want straighter teeth\/better bite\",\r\n    \"Gaps Between My Teeth \u2013 I want to close the spacing\",\r\n    \"Something Else \u2013 I\u2019ll explain below\"\r\n  ],\r\n  routine: [\r\n    \"Teeth Cleaning \u2013 I want a professional cleaning (scaling & polishing)\",\r\n    \"Dental Check-Up \u2013 just a routine dental exam\",\r\n    \"Cavity Filling \u2013 I have a small cavity or hole in a tooth\",\r\n    \"Tooth Sensitivity \u2013 discomfort with cold, sweet, or touch\",\r\n    \"Stained Teeth \u2013 mild stains I want to clean or polish off\",\r\n    \"Bleeding Gums \u2013 gums bleed when I brush or floss\",\r\n    \"Bad Breath \u2013 I want to check the cause of bad breath\",\r\n    \"Something Else \u2013 I\u2019ll explain below\"\r\n  ],\r\n  not_sure: [\r\n    \"I need help figuring out the best treatment for me\",\r\n    \"I have multiple dental concerns and don\u2019t know where to start\",\r\n    \"I\u2019ve never had dental work and I feel nervous\",\r\n    \"I want to compare treatment options before I decide\",\r\n    \"I just want to talk to someone I trust before I book\",\r\n    \"Something else \u2013 I\u2019ll explain below\"\r\n  ],\r\n  something_else: [\"I\u2019ll type the details below\"]\r\n};\r\n\r\nfunction valueToKey(val = \"\") {\r\n  const v = String(val).toLowerCase();\r\n  if (v.includes(\"pain\")) return \"pain\";\r\n  if (v.includes(\"missing\") || v.includes(\"broken\")) return \"missing_broken\";\r\n  if (v.includes(\"improve my smile\")) return \"improve_smile\";\r\n  if (v.includes(\"straighten teeth\")) return \"straighten\";\r\n  if (v.includes(\"routine\")) return \"routine\";\r\n  if (v.includes(\"not sure\")) return \"not_sure\";\r\n  if (v.includes(\"something else\")) return \"something_else\";\r\n  return \"\";\r\n}\r\nfunction populateSubReasons(key) {\r\n  if (!subSel || !subWrap) return;\r\n  subSel.innerHTML = '<option value=\"\">- Select -<\/option>';\r\n  const rows = subReasonMap[key] || [];\r\n  rows.forEach(txt => {\r\n    const o = document.createElement('option');\r\n    o.value = txt; o.textContent = txt;\r\n    subSel.appendChild(o);\r\n  });\r\n  const hasRows = rows.length > 0;\r\n  subWrap.style.display = hasRows ? 'block' : 'none';\r\n  subSel.required = hasRows;\r\n}\r\nif (subWrap) subWrap.style.display = 'none';\r\nreasonSel?.addEventListener('change', (e) => populateSubReasons(valueToKey(e.target.value)));\r\nif (reasonSel?.value) populateSubReasons(valueToKey(reasonSel.value));\r\n\/\/ LQ:CHOICES_JS END\r\n\r\n\/\/ LQ:UPLOADS_JS START\r\n\/* ---------- Upload UI ---------- *\/\r\n\r\nconst uploadsSelect = document.getElementById('uploads_select');\r\nconst uploadsWrap   = document.getElementById('uploads_wrapper');\r\nconst uploadsInput  = document.getElementById('uploads');\r\nconst consentBox    = document.getElementById('consent');\r\nconst advancedBox   = document.querySelector('.lq-advanced');\r\nconst MAX_FILES = 6;\r\nconst MAX_SIZE = 10 * 1024 * 1024; \/\/ 10MB\r\nconst ALLOWED = ['image\/jpeg','image\/png','image\/webp','application\/pdf','image\/heic','image\/heif'];\r\n\r\nuploadsInput?.addEventListener('change', () => {\r\n  const files = Array.from(uploadsInput.files || []);\r\n  let ok = true, reason = '';\r\n  if (files.length > MAX_FILES) { ok = false; reason = 'Too many files.'; }\r\n  if (ok && files.some(f => f.size > MAX_SIZE)) { ok = false; reason = 'A file exceeds 10MB.'; }\r\n  if (ok && files.some(f => !ALLOWED.includes(f.type))) { ok = false; reason = 'Unsupported file type.'; }\r\n  if (!ok) { uploadsInput.value = ''; clearUploadsUI(); alert(reason); }\r\n});\r\n\r\nconst uploadsList = document.createElement('ul');\r\nuploadsList.id = 'uploads_list';\r\ndocument.getElementById('uploads')?.insertAdjacentElement('afterend', uploadsList);\r\n\r\nfunction formatBytes(b){\r\n  if(!b && b!==0) return '';\r\n  const u = ['B','KB','MB','GB'];\r\n  let i = 0, n = b;\r\n  while(n >= 1024 && i < u.length-1){ n\/=1024; i++; }\r\n  return `${n.toFixed(n < 10 && i>0 ? 1 : 0)} ${u[i]}`;\r\n}\r\nfunction renderUploadsList(){\r\n  uploadsList.innerHTML = '';\r\n  const input = document.getElementById('uploads');\r\n  if(!input || !input.files || !input.files.length) return;\r\n  Array.from(input.files).forEach(file=>{\r\n    const li = document.createElement('li');\r\n    li.innerHTML = `<span class=\"name\">${file.name}<\/span><span class=\"size\">${formatBytes(file.size)}<\/span>`;\r\n    uploadsList.appendChild(li);\r\n  });\r\n}\r\ndocument.getElementById('uploads')?.addEventListener('change', renderUploadsList);\r\nfunction clearUploadsUI(){ uploadsList.innerHTML = ''; }\r\ndocument.getElementById('uploads_select')?.addEventListener('change', (e)=>{\r\n  if(e.target.value !== 'Yes') clearUploadsUI();\r\n});\r\nfunction syncUploadsUI() {\r\n  const wantsUploads = uploadsSelect && uploadsSelect.value === 'Yes';\r\n  uploadsWrap?.classList.toggle('lq-hidden', !wantsUploads);\r\n  uploadsWrap?.setAttribute('aria-hidden', wantsUploads ? 'false' : 'true');\r\n  if (consentBox) consentBox.required = !!wantsUploads;\r\n  if (advancedBox && wantsUploads && !advancedBox.open) advancedBox.open = true;\r\n  if (!wantsUploads) {\r\n    if (uploadsInput) uploadsInput.value = '';\r\n    if (consentBox) consentBox.checked = false;\r\n  }\r\n}\r\nuploadsSelect?.addEventListener('change', syncUploadsUI);\r\nsyncUploadsUI();\r\n\/\/ LQ:UPLOADS_JS END\r\n\r\n\/\/ LQ:PHONE_JS START\r\n\/* ---------- Country calling codes ---------- *\/\r\nconst COUNTRY_CODES = [\r\n  {n:\"Afghanistan\",c:\"+93\"},{n:\"Albania\",c:\"+355\"},{n:\"Algeria\",c:\"+213\"},{n:\"Andorra\",c:\"+376\"},\r\n  {n:\"Angola\",c:\"+244\"},{n:\"Antigua and Barbuda\",c:\"+1\"},{n:\"Argentina\",c:\"+54\"},{n:\"Armenia\",c:\"+374\"},\r\n  {n:\"Australia\",c:\"+61\"},{n:\"Austria\",c:\"+43\"},{n:\"Azerbaijan\",c:\"+994\"},{n:\"Bahamas\",c:\"+1\"},\r\n  {n:\"Bahrain\",c:\"+973\"},{n:\"Bangladesh\",c:\"+880\"},{n:\"Barbados\",c:\"+1\"},{n:\"Belarus\",c:\"+375\"},\r\n  {n:\"Belgium\",c:\"+32\"},{n:\"Belize\",c:\"+501\"},{n:\"Benin\",c:\"+229\"},{n:\"Bhutan\",c:\"+975\"},\r\n  {n:\"Bolivia\",c:\"+591\"},{n:\"Bosnia and Herzegovina\",c:\"+387\"},{n:\"Botswana\",c:\"+267\"},\r\n  {n:\"Brazil\",c:\"+55\"},{n:\"Brunei\",c:\"+673\"},{n:\"Bulgaria\",c:\"+359\"},{n:\"Burkina Faso\",c:\"+226\"},\r\n  {n:\"Burundi\",c:\"+257\"},{n:\"Cabo Verde\",c:\"+238\"},{n:\"Cambodia\",c:\"+855\"},{n:\"Cameroon\",c:\"+237\"},\r\n  {n:\"Canada\",c:\"+1\"},{n:\"Central African Republic\",c:\"+236\"},{n:\"Chad\",c:\"+235\"},\r\n  {n:\"Chile\",c:\"+56\"},{n:\"China\",c:\"+86\"},{n:\"Colombia\",c:\"+57\"},{n:\"Comoros\",c:\"+269\"},\r\n  {n:\"Congo (Republic)\",c:\"+242\"},{n:\"Congo (DRC)\",c:\"+243\"},{n:\"Costa Rica\",c:\"+506\"},\r\n  {n:\"C\u00f4te d\u2019Ivoire\",c:\"+225\"},{n:\"Croatia\",c:\"+385\"},{n:\"Cuba\",c:\"+53\"},{n:\"Cyprus\",c:\"+357\"},\r\n  {n:\"Czechia (Czech Republic)\",c:\"+420\"},{n:\"Denmark\",c:\"+45\"},{n:\"Djibouti\",c:\"+253\"},\r\n  {n:\"Dominica\",c:\"+1\"},{n:\"Dominican Republic\",c:\"+1\"},{n:\"Ecuador\",c:\"+593\"},{n:\"Egypt\",c:\"+20\"},\r\n  {n:\"El Salvador\",c:\"+503\"},{n:\"Equatorial Guinea\",c:\"+240\"},{n:\"Eritrea\",c:\"+291\"},\r\n  {n:\"Estonia\",c:\"+372\"},{n:\"Eswatini\",c:\"+268\"},{n:\"Ethiopia\",c:\"+251\"},\r\n  {n:\"Fiji\",c:\"+679\"},{n:\"Finland\",c:\"+358\"},{n:\"France\",c:\"+33\"},\r\n  {n:\"Gabon\",c:\"+241\"},{n:\"Gambia\",c:\"+220\"},{n:\"Georgia\",c:\"+995\"},{n:\"Germany\",c:\"+49\"},\r\n  {n:\"Ghana\",c:\"+233\"},{n:\"Greece\",c:\"+30\"},{n:\"Grenada\",c:\"+1\"},{n:\"Guatemala\",c:\"+502\"},\r\n  {n:\"Guinea\",c:\"+224\"},{n:\"Guinea-Bissau\",c:\"+245\"},{n:\"Guyana\",c:\"+592\"},\r\n  {n:\"Haiti\",c:\"+509\"},{n:\"Honduras\",c:\"+504\"},{n:\"Hungary\",c:\"+36\"},\r\n  {n:\"Iceland\",c:\"+354\"},{n:\"India\",c:\"+91\"},{n:\"Indonesia\",c:\"+62\"},{n:\"Iran\",c:\"+98\"},\r\n  {n:\"Iraq\",c:\"+964\"},{n:\"Ireland\",c:\"+353\"},{n:\"Israel\",c:\"+972\"},{n:\"Italy\",c:\"+39\"},\r\n  {n:\"Jamaica\",c:\"+1\"},{n:\"Japan\",c:\"+81\"},{n:\"Jordan\",c:\"+962\"},\r\n  {n:\"Kazakhstan\",c:\"+7\"},{n:\"Kenya\",c:\"+254\"},{n:\"Kiribati\",c:\"+686\"},{n:\"Kuwait\",c:\"+965\"},\r\n  {n:\"Kyrgyzstan\",c:\"+996\"},{n:\"Laos\",c:\"+856\"},{n:\"Latvia\",c:\"+371\"},{n:\"Lebanon\",c:\"+961\"},\r\n  {n:\"Lesotho\",c:\"+266\"},{n:\"Liberia\",c:\"+231\"},{n:\"Libya\",c:\"+218\"},{n:\"Liechtenstein\",c:\"+423\"},\r\n  {n:\"Lithuania\",c:\"+370\"},{n:\"Luxembourg\",c:\"+352\"},\r\n  {n:\"Madagascar\",c:\"+261\"},{n:\"Malawi\",c:\"+265\"},{n:\"Malaysia\",c:\"+60\"},{n:\"Maldives\",c:\"+960\"},\r\n  {n:\"Mali\",c:\"+223\"},{n:\"Malta\",c:\"+356\"},{n:\"Marshall Islands\",c:\"+692\"},\r\n  {n:\"Mauritania\",c:\"+222\"},{n:\"Mauritius\",c:\"+230\"},{n:\"Mexico\",c:\"+52\"},\r\n  {n:\"Micronesia\",c:\"+691\"},{n:\"Moldova\",c:\"+373\"},{n:\"Monaco\",c:\"+377\"},{n:\"Mongolia\",c:\"+976\"},\r\n  {n:\"Montenegro\",c:\"+382\"},{n:\"Morocco\",c:\"+212\"},{n:\"Mozambique\",c:\"+258\"},\r\n  {n:\"Myanmar (Burma)\",c:\"+95\"},{n:\"Namibia\",c:\"+264\"},{n:\"Nauru\",c:\"+674\"},{n:\"Nepal\",c:\"+977\"},\r\n  {n:\"Netherlands\",c:\"+31\"},{n:\"New Zealand\",c:\"+64\"},{n:\"Nicaragua\",c:\"+505\"},{n:\"Niger\",c:\"+227\"},\r\n  {n:\"Nigeria\",c:\"+234\"},{n:\"North Macedonia\",c:\"+389\"},{n:\"Norway\",c:\"+47\"},{n:\"Oman\",c:\"+968\"},{n:\"Pakistan\",c:\"+92\"},{n:\"Palau\",c:\"+680\"},\r\n  {n:\"Panama\",c:\"+507\"},{n:\"Papua New Guinea\",c:\"+675\"},{n:\"Paraguay\",c:\"+595\"},{n:\"Peru\",c:\"+51\"},\r\n  {n:\"Philippines\",c:\"+63\"},{n:\"Poland\",c:\"+48\"},{n:\"Portugal\",c:\"+351\"},\r\n  {n:\"Qatar\",c:\"+974\"},{n:\"Romania\",c:\"+40\"},{n:\"Russia\",c:\"+7\"},{n:\"Rwanda\",c:\"+250\"},\r\n  {n:\"Saint Kitts and Nevis\",c:\"+1\"},{n:\"Saint Lucia\",c:\"+1\"},{n:\"Saint Vincent and the Grenadines\",c:\"+1\"},\r\n  {n:\"Samoa\",c:\"+685\"},{n:\"San Marino\",c:\"+378\"},{n:\"S\u00e3o Tom\u00e9 and Pr\u00edncipe\",c:\"+239\"},\r\n  {n:\"Saudi Arabia\",c:\"+966\"},{n:\"Senegal\",c:\"+221\"},{n:\"Serbia\",c:\"+381\"},{n:\"Seychelles\",c:\"+248\"},\r\n  {n:\"Sierra Leone\",c:\"+232\"},{n:\"Singapore\",c:\"+65\"},{n:\"Slovakia\",c:\"+421\"},{n:\"Slovenia\",c:\"+386\"},\r\n  {n:\"Solomon Islands\",c:\"+677\"},{n:\"Somalia\",c:\"+252\"},{n:\"South Africa\",c:\"+27\"},\r\n  {n:\"South Korea\",c:\"+82\"},{n:\"South Sudan\",c:\"+211\"},{n:\"Spain\",c:\"+34\"},{n:\"Sri Lanka\",c:\"+94\"},\r\n  {n:\"Sudan\",c:\"+249\"},{n:\"Suriname\",c:\"+597\"},{n:\"Sweden\",c:\"+46\"},{n:\"Switzerland\",c:\"+41\"},\r\n  {n:\"Syria\",c:\"+963\"},{n:\"Taiwan\",c:\"+886\"},{n:\"Tajikistan\",c:\"+992\"},{n:\"Tanzania\",c:\"+255\"},\r\n  {n:\"Thailand\",c:\"+66\"},{n:\"Timor-Leste\",c:\"+670\"},{n:\"Togo\",c:\"+228\"},{n:\"Tonga\",c:\"+676\"},\r\n  {n:\"Trinidad and Tobago\",c:\"+1\"},{n:\"Tunisia\",c:\"+216\"},{n:\"T\u00fcrkiye (Turkey)\",c:\"+90\"},\r\n  {n:\"Turkmenistan\",c:\"+993\"},{n:\"Tuvalu\",c:\"+688\"},{n:\"Uganda\",c:\"+256\"},{n:\"Ukraine\",c:\"+380\"},\r\n  {n:\"United Arab Emirates\",c:\"+971\"},{n:\"United Kingdom\",c:\"+44\"},\r\n  {n:\"United States\",c:\"+1\"},{n:\"Uruguay\",c:\"+598\"},{n:\"Uzbekistan\",c:\"+998\"},\r\n  {n:\"Vanuatu\",c:\"+678\"},{n:\"Vatican City\",c:\"+379\"},{n:\"Venezuela\",c:\"+58\"},{n:\"Vietnam\",c:\"+84\"},\r\n  {n:\"Yemen\",c:\"+967\"},{n:\"Zambia\",c:\"+260\"},{n:\"Zimbabwe\",c:\"+263\"},\r\n  {n:\"Hong Kong\",c:\"+852\"},{n:\"Macau\",c:\"+853\"},{n:\"Palestine\",c:\"+970\"},\r\n  {n:\"Puerto Rico\",c:\"+1\"},{n:\"Guam\",c:\"+1\"},{n:\"US Virgin Islands\",c:\"+1\"},\r\n  {n:\"Jersey\",c:\"+44\"},{n:\"Guernsey\",c:\"+44\"},{n:\"Isle of Man\",c:\"+44\"},\r\n  {n:\"Greenland\",c:\"+299\"},{n:\"Faroe Islands\",c:\"+298\"},\r\n  {n:\"Aruba\",c:\"+297\"},{n:\"Cura\u00e7ao\",c:\"+599\"},{n:\"Bermuda\",c:\"+1\"},\r\n  {n:\"Gibraltar\",c:\"+350\"},{n:\"Martinique\",c:\"+596\"},{n:\"Guadeloupe\",c:\"+590\"},\r\n  {n:\"R\u00e9union\",c:\"+262\"},{n:\"French Guiana\",c:\"+594\"},{n:\"Mayotte\",c:\"+262\"},\r\n  {n:\"New Caledonia\",c:\"+687\"},{n:\"French Polynesia\",c:\"+689\"},\r\n  {n:\"\u00c5land Islands\",c:\"+358\"},{n:\"Monaco (Mobile ranges)\",c:\"+377\"}\r\n];\r\n\r\n\/* --- Phone helpers --- *\/\r\nconst dialBtn   = document.getElementById('dial_btn');\r\nconst dialPanel = document.getElementById('dial_panel');\r\nconst dialList  = document.getElementById('dial_listbox');\r\nconst dialFilter= document.getElementById('dial_filter');\r\nconst dialHidden= document.getElementById('dial_code_standardized');\r\nconst phoneLocal= document.getElementById('phone_local');\r\nconst phoneError= document.getElementById('phone_error');\r\n\r\nfunction positionPanel() {\r\n  \/\/ With CSS top:100% + left:0, no JS positioning needed\r\n  \/\/ Keep this empty or remove calls to this function\r\n}\r\n\r\ndialBtn.addEventListener('click', (e) => {\r\n  e.stopPropagation();\r\n  const isOpen = !dialPanel.classList.contains('lq-hidden');\r\n  isOpen ? closePanel() : openPanel();\r\n});\r\n\r\n\r\n\r\nwindow.addEventListener(\"resize\", positionPanel);\r\n\r\n\r\nlet selectedCode = \"+971\";\r\ndialBtn.textContent = selectedCode;\r\ndialHidden.value    = selectedCode;\r\n\r\n\/* Render dial list *\/\r\nfunction renderList(q = \"\", force=false) {\r\n  const s = q.trim().toLowerCase();\r\n  dialList.innerHTML = \"\";\r\n\r\n  \/\/ If not typing anything and not forced, exit\r\n  if (!s && !force) return;\r\n\r\n  const rows = COUNTRY_CODES.filter(({ n, c }) => {\r\n    if (force) return true; \/\/ show all if forced\r\n    return c.replace(\"+\", \"\").startsWith(s.replace(\"+\", \"\")) || n.toLowerCase().includes(s);\r\n  });\r\n\r\n  rows.forEach(({ n, c }) => {\r\n    const li = document.createElement(\"li\");\r\n    li.className = \"lq-dial-item\";\r\n    li.setAttribute(\"role\", \"option\");\r\n    li.setAttribute(\"data-code\", c);\r\n    li.innerHTML = `<span>${c}<\/span><small>${n}<\/small>`;\r\n    if (c === selectedCode) li.setAttribute(\"aria-selected\", \"true\");\r\n    li.addEventListener(\"click\", () => {\r\n      selectedCode = c;\r\n      dialBtn.textContent = c;\r\n      dialHidden.value = c;\r\n      formatAsYouType();\r\n      validatePhone();\r\n      closePanel();\r\n    });\r\n    dialList.appendChild(li);\r\n  });\r\n}\r\n\r\n\r\n\r\n\r\nfunction openPanel() {\r\n  renderList(\"\", true);  \/\/ force full list\r\n  dialPanel.classList.remove('lq-hidden');\r\n  dialBtn.setAttribute('aria-expanded','true');\r\n  setTimeout(() => dialFilter.focus(), 0); \/\/ ensure input is focused\r\n}\r\n\r\nfunction closePanel(){ dialPanel.classList.add('lq-hidden'); dialBtn.setAttribute('aria-expanded','false'); dialBtn.focus(); }\r\ndialFilter.addEventListener('input', (e)=>renderList(e.target.value));\r\ndialFilter.addEventListener('keydown', (e)=>{\r\n  const items = [...dialList.querySelectorAll('.lq-dial-item')];\r\n  const idx = items.findIndex(x=>x.matches('[aria-selected=\"true\"]'));\r\n  if(e.key==='ArrowDown'){ e.preventDefault(); const next = items[Math.min((idx<0?0:idx+1), items.length-1)];\r\n    items.forEach(x=>x.removeAttribute('aria-selected')); next?.setAttribute('aria-selected','true'); next?.scrollIntoView({block:'nearest'});}\r\n  else if(e.key==='ArrowUp'){ e.preventDefault(); const prev = items[Math.max((idx<0?0:idx-1), 0)];\r\n    items.forEach(x=>x.removeAttribute('aria-selected')); prev?.setAttribute('aria-selected','true'); prev?.scrollIntoView({block:'nearest'});}\r\n  else if(e.key==='Enter'){ (dialList.querySelector('[aria-selected=\"true\"]')||items[0])?.click(); }\r\n  else if(e.key==='Escape'){ closePanel(); }\r\n});\r\ndocument.addEventListener('click', (e)=>{ if(!dialPanel.classList.contains('lq-hidden')){ const root = document.getElementById('lq-dial'); if(!root.contains(e.target)) closePanel(); }});\r\n\r\n\/* Compose E.164 (for hidden mirrors) *\/\r\nfunction composeE164(){\r\n  const dial = (dialHidden.value||'').replace(\/\\s\/g,'');                 \/\/ \"+971\"\r\n  const localDigits = (phoneLocal.value||'').replace(\/[^\\d]\/g,'');        \/\/ keep digits only\r\n  return (dial + localDigits).replace('++','+');\r\n}\r\n\r\n\/* As-you-type formatting (country-aware based on selected dial code) *\/\r\nfunction formatAsYouType(){\r\n  const lib = window.libphonenumber;\r\n  if(!lib || typeof lib.AsYouType !== 'function') return;\r\n\r\n  const codeDigits = (selectedCode||'').replace(\/\\D\/g,'');                \/\/ \"971\"\r\n  const localDigits = (phoneLocal.value||'').replace(\/[^\\d]\/g,'');        \/\/ raw digits typed\r\n  if(!localDigits){ phoneLocal.value = ''; return; }\r\n\r\n  \/\/ Step 1: format as international with +code to detect country\r\n  const aytIntl = new lib.AsYouType();                                    \/\/ no country -> intl\r\n  const intl = aytIntl.input('+' + codeDigits + localDigits);             \/\/ \"+971 58 558 3714\" (example)\r\n\r\n  \/\/ Step 2: strip the \"+<code>\" prefix so we display national-looking spacing only\r\n  const prefix = '+' + codeDigits;\r\n  let display = intl.startsWith(prefix) ? intl.slice(prefix.length).trim() : intl;\r\n\r\n  \/\/ Apply\r\n  phoneLocal.value = display;\r\n}\r\n\r\n\/* Country-aware validation using libphonenumber-js *\/\r\nfunction validatePhone(){\r\n  const full = composeE164(); \/\/ \"+971585583714\"\r\n  const lib = window.libphonenumber;\r\n  let ok = false, msg = '';\r\n\r\n  if(lib && typeof lib.parsePhoneNumberFromString === 'function'){\r\n    try{\r\n      const parsed = lib.parsePhoneNumberFromString(full);\r\n      if(parsed && parsed.isValid()){\r\n        ok = true;\r\n        \/\/ Canonical E.164 for Make (hidden mirrors)\r\n        document.getElementById('phone_e164').value = parsed.number;\r\n        document.getElementById('phone_number').value = parsed.number;\r\n      }else{\r\n  msg = LQ_I18N.t('fixFields'); \/\/ or LQ_I18N.t('invalidPhone') if you add that key\r\n}\r\n\r\n    }catch(err){\r\n      msg = LQ_I18N.t('fixFields');\r\n    }\r\n  }else{\r\n    \/\/ Minimal fallback: at least 8 digits total after the +\r\n    ok = \/^\\+\\d{8,}$\/.test(full);\r\n    if(!ok) msg = LQ_I18N.t('fixFields'); \/\/ or LQ_I18N.t('invalidPhone')\r\n    if(ok){\r\n      document.getElementById('phone_e164').value = full;\r\n      document.getElementById('phone_number').value = full;\r\n    }\r\n  }\r\n\r\n  phoneLocal.setCustomValidity(ok ? '' : msg);\r\n  phoneError.textContent = ok ? '' : msg;\r\n  phoneError.style.display = ok ? 'none' : 'block';\r\n  return ok;\r\n}\r\n\r\n\/\/ Wire up typing and paste\r\n['input','blur','paste'].forEach(evt=>{\r\n  phoneLocal.addEventListener(evt, ()=>{ formatAsYouType(); validatePhone(); });\r\n});\r\n\/\/ LQ:PHONE_JS END\r\n\r\n\/\/ LQ:TURNSTILE_JS START\r\n\/* Turnstile *\/\r\nfunction onTurnstile(token){document.getElementById('turnstile_token').value=token||'';}\r\nwindow.onTurnstile=onTurnstile;\r\n\/\/ LQ:TURNSTILE_JS END\r\n\r\n\/\/ --- LQ:I18N (EN\/AR auto) ---\r\nconst LQ_I18N = {\r\n  isArabic() {\r\n    const lang = (document.documentElement.getAttribute('lang') || '').toLowerCase();\r\n    return lang.startsWith('ar') || document.body.classList.contains('trp-language-ar');\r\n  },\r\n  t(key) {\r\n    const ar = {\r\n      pendingSubmitting: \"\u062c\u0627\u0631\u064d \u0627\u0644\u0625\u0631\u0633\u0627\u0644\u2026 \u064a\u064f\u0631\u062c\u0649 \u0639\u062f\u0645 \u0625\u063a\u0644\u0627\u0642 \u0647\u0630\u0647 \u0627\u0644\u0635\u0641\u062d\u0629.\",\r\n      pendingStill: \"\u0645\u0627 \u0632\u0644\u0646\u0627 \u0646\u0639\u0645\u0644\u2026 \u0642\u062f \u062a\u0633\u062a\u063a\u0631\u0642 \u0627\u0644\u0645\u0644\u0641\u0627\u062a \u0627\u0644\u0643\u0628\u064a\u0631\u0629 \u0628\u0639\u0636 \u0627\u0644\u0648\u0642\u062a. \u064a\u064f\u0631\u062c\u0649 \u0625\u0628\u0642\u0627\u0621 \u0647\u0630\u0647 \u0627\u0644\u0635\u0641\u062d\u0629 \u0645\u0641\u062a\u0648\u062d\u0629.\",\r\n      humanVerify: \"\u064a\u0631\u062c\u0649 \u062a\u0623\u0643\u064a\u062f \u0623\u0646\u0643 \u0644\u0633\u062a \u0631\u0648\u0628\u0648\u062a\u064b\u0627.\",\r\n      fixFields: \"\u064a\u0631\u062c\u0649 \u062a\u0635\u062d\u064a\u062d \u0627\u0644\u062d\u0642\u0648\u0644 \u0627\u0644\u0645\u064f\u0638\u0644\u0651\u0644\u0629 \u0642\u0628\u0644 \u0627\u0644\u0625\u0631\u0633\u0627\u0644.\",\r\n      confirmFail: \"\u062a\u0639\u0630\u0651\u0631 \u062a\u0623\u0643\u064a\u062f \u0627\u0644\u0625\u0631\u0633\u0627\u0644. \u062d\u0627\u0648\u0644 \u0645\u0631\u0629 \u0623\u062e\u0631\u0649.\",\r\n\r\n      successTitle: \"\u0634\u0643\u0631\u064b\u0627 \u2014 \u062a\u0645 \u0627\u0633\u062a\u0644\u0627\u0645 \u0637\u0644\u0628\u0643 \ud83e\uddb7\",\r\n      successPara: \"\u0648\u0635\u0644\u062a\u0646\u0627 \u062a\u0641\u0627\u0635\u064a\u0644\u0643. \u0633\u064a\u0637\u0651\u0644\u0639 \u0645\u0633\u062a\u0634\u0627\u0631\u0648\u0646\u0627 \u0639\u0644\u0649 \u0637\u0644\u0628\u0643 \u0648\u064a\u0631\u0634\u062f\u0648\u0646\u0643 \u0625\u0644\u0649 \u0637\u0628\u064a\u0628 \u0623\u0648 \u0639\u064a\u0627\u062f\u0629 \u0645\u0646\u0627\u0633\u0628\u0629 \u0644\u0643 \u062e\u0644\u0627\u0644 \u0623\u0642\u0644 \u0645\u0646 12 \u0633\u0627\u0639\u0629.\",\r\n      spamNote: \"\u0645\u0644\u0627\u062d\u0638\u0629 \u0635\u063a\u064a\u0631\u0629: \u0625\u0630\u0627 \u0644\u0645 \u062a\u062c\u062f \u0631\u0633\u0627\u0644\u062a\u0646\u0627\u060c \u064a\u064f\u0631\u062c\u0649 \u0627\u0644\u062a\u062d\u0642\u0642 \u0645\u0646 \u0627\u0644\u0628\u0631\u064a\u062f \u063a\u064a\u0631 \u0627\u0644\u0647\u0627\u0645 \/ \u0627\u0644\u0631\u0633\u0627\u0626\u0644 \u063a\u064a\u0631 \u0627\u0644\u0645\u0631\u063a\u0648\u0628 \u0641\u064a\u0647\u0627.\",\r\n      step1: \"\u0646\u0631\u0627\u062c\u0639 \u0623\u0647\u062f\u0627\u0641\u0643 \u0648\u062a\u0641\u0636\u064a\u0644\u0627\u062a\u0643.\",\r\n      step2: \"\u0646\u062d\u062f\u0651\u062f \u0648\u0646\u0648\u0635\u064a \u0628\u0627\u0644\u0637\u0628\u064a\u0628 \u0623\u0648 \u0627\u0644\u0639\u064a\u0627\u062f\u0629 \u0627\u0644\u0623\u0646\u0633\u0628 \u0644\u0643 \u0645\u0646 \u0634\u0628\u0643\u062a\u0646\u0627 \u0627\u0644\u062e\u0627\u0635\u0629.\",\r\n      step3: \"\u0646\u062a\u0648\u0627\u0635\u0644 \u0645\u0639\u0643 \u0628\u0627\u0644\u062a\u0648\u0635\u064a\u0629 \u0648\u0627\u0644\u062e\u0637\u0648\u0627\u062a \u0627\u0644\u062a\u0627\u0644\u064a\u0629.\"\r\n\r\n    };\r\n    const en = {\r\n      pendingSubmitting: \"Submitting\u2026 please don\u2019t close this tab.\",\r\n      pendingStill: \"Still working\u2026 large files can take a bit. Please keep this tab open.\",\r\n      humanVerify: \"Please verify you\u2019re human.\",\r\n      fixFields: \"Please fix the highlighted fields before submitting\",\r\n      confirmFail: \"We couldn\u2019t confirm your submission. Please try again.\",\r\n\r\n      successTitle: \"Thanks \u2014 your request is in \ud83e\uddb7\",\r\n      successPara: \"We\u2019ve received your details. Our advisors will review your needs and guide you to a suitable dentist or clinic within 12 hours.\",\r\n      spamNote: \"Small note: if you don\u2019t see our email, please check your spam\/junk folder.\",\r\n      step1: \"We check your goals and preferences.\",\r\n      step2: \"We identify and recommend the most suitable dentist or clinic from our private network.\",\r\n      step3: \"We contact you with our recommendation and the next steps.\"\r\n\r\n    };\r\n    return (LQ_I18N.isArabic() ? ar : en)[key] || key;\r\n  }\r\n};\r\n\r\n\/\/ --- LQ:LANG_INPUT (auto-fill hidden page_language) ---\r\n(function () {\r\n  const langEl = document.getElementById('page_language');\r\n  if (!langEl) return;\r\n\r\n  function detectPageLanguage() {\r\n    const htmlLang = (document.documentElement.getAttribute('lang') || '').toLowerCase();\r\n    const isTRPAr  = document.body.classList.contains('trp-language-ar') || (window.trp_language === 'ar');\r\n    const pathAr   = \/^\\\/ar\\\/\/i.test(location.pathname);                         \/\/ TranslatePress virtual path\r\n    const queryAr  = \/(?:^|[?&])trp_language=ar\\b\/i.test(location.search);       \/\/ TRP query param\r\n    return (htmlLang.startsWith('ar') || isTRPAr || pathAr || queryAr) ? 'ar' : 'en';\r\n  }\r\n\r\n  const setLang = () => { langEl.value = detectPageLanguage(); };\r\n\r\n  \/\/ Initial set\r\n  setLang();\r\n\r\n  \/\/ Keep in sync if TRP or the DOM flips language after load\r\n  new MutationObserver(setLang).observe(document.documentElement, { attributes: true, attributeFilter: ['lang'] });\r\n  new MutationObserver(setLang).observe(document.body,          { attributes: true, attributeFilter: ['class'] });\r\n\r\n  \/\/ Safety on BFCache\/page restores\r\n  window.addEventListener('pageshow', setLang);\r\n})();\r\n\r\n\/\/ LQ:METADATA_JS START\r\n\/* Metadata + bindings *\/\r\ndocument.getElementById('date').value = new Date().toISOString().slice(0, 10);\r\ndocument.getElementById('time').value=new Date().toLocaleTimeString();\r\ndocument.getElementById('page_url').value=window.location.href;\r\ndocument.getElementById('user_agent').value=navigator.userAgent;\r\ndocument.getElementById('unique_id').value=(crypto&&crypto.randomUUID)?crypto.randomUUID():(Date.now()+'-'+Math.random().toString(16).slice(2));\r\n\r\nconst btn = form.querySelector('.lq-btn');\r\nconst msgPending = document.getElementById('lq-pending');\r\nconst msgSuccess = document.getElementById('lq-success');\r\nconst msgError   = document.getElementById('lq-error');\r\nconst iframe = document.querySelector('iframe[name=\"lq_iframe\"]');\r\n\r\ndocument.querySelectorAll('#'+form.id+' input, #'+form.id+' select, #'+form.id+' textarea, #'+form.id+' button[type=\"submit\"]').forEach(el=>el.setAttribute('form', form.id));\r\n\r\nfunction setSubmitting(on){\r\n  if(on){\r\n    btn.disabled = true;\r\n    btn.dataset.label = btn.textContent; \r\n\/\/ or simply:\r\nbtn.textContent = LQ_I18N.isArabic() ? '\u062c\u0627\u0631\u064d \u0627\u0644\u0625\u0631\u0633\u0627\u0644\u2026' : 'Submitting\u2026';\r\n\r\n    msgPending.textContent = LQ_I18N.t('pendingSubmitting');\r\n    msgPending.style.display='block';\r\n  }else{\r\n    btn.disabled = false;\r\n    btn.textContent = btn.dataset.label || '\ud83d\udd0d Find My Dentist';\r\n    msgPending.style.display='none';\r\n  }\r\n}\r\n\/\/ LQ:METADATA_JS END\r\n\r\n\/\/ LQ:SUBMIT_JS START\r\nform.addEventListener('submit',function(e){\r\n  if(!document.getElementById('turnstile_token').value){\r\n    e.preventDefault();\r\n    msgError.textContent = LQ_I18N.t('humanVerify'); \r\n    msgError.style.display='block';\r\n    return;\r\n  }\r\n\r\n  \/\/ Validate HTML5 + phone by country\r\n  if(!form.checkValidity() || !validatePhone()){\r\n    e.preventDefault();\r\n    form.reportValidity();\r\n    (form.querySelector(':invalid')||phoneLocal)?.focus();\r\n    msgError.textContent = LQ_I18N.t('fixFields');\r\n    msgError.style.display='block';\r\n    return;\r\n  }\r\n\r\n  setSubmitting(true);\r\n  msgError.style.display='none';\r\n\r\n  let done = false;\r\n\r\n\/\/ If there are uploads, give more time. (Sum sizes safely.)\r\nconst files = (uploadsInput && uploadsInput.files) ? Array.from(uploadsInput.files) : [];\r\nconst hasUploads = files.length > 0;\r\nconst totalBytes = files.reduce((n,f)=> n + (f?.size || 0), 0);\r\n\r\n\/\/ Soft timeout: after a while, keep button disabled and show \u201cstill working\u2026\u201d\r\nconst SOFT_TIMEOUT_MS = hasUploads ? 60000 : 15000;  \/\/ 60s with files, 15s without\r\n\r\nconst softTimer = setTimeout(() => {\r\n  if (done) return;\r\n  msgPending.textContent = LQ_I18N.t('pendingStill');\r\n  msgPending.style.display = 'block';\r\n}, SOFT_TIMEOUT_MS);\r\n\r\n\r\niframe.addEventListener('load', () => {\r\n  if (done) return;\r\n  done = true;\r\n  clearTimeout(softTimer);\r\n\r\n  \/\/ Debounce a tick so iframe body is fully written\r\n  setTimeout(() => {\r\n    let isOK = false;\r\n    try {\r\n      const doc = iframe.contentDocument || iframe.contentWindow?.document;\r\n      const bodyText = (doc?.body?.textContent || '').trim();\r\n      isOK = bodyText === 'OK'; \/\/ exact literal OK\r\n    } catch (e) {\r\n      isOK = false;\r\n    }\r\n\r\n    if (!isOK) {\r\n      setSubmitting(false);\r\n      msgPending.style.display = 'none';\r\n      msgError.textContent = LQ_I18N.t('confirmFail');\r\n      msgError.style.display = 'block';\r\n      return;\r\n    }\r\n\r\n    \/\/ Success UI\r\n\/\/ Success UI\r\nsetSubmitting(false);\r\nmsgPending.style.display = 'none';\r\n\r\nconst actions = form.querySelector('.lq-actions');\r\nactions.innerHTML = `\r\n  <div class=\"lq-success-card\" id=\"lq-success-card\" role=\"status\" aria-live=\"polite\">\r\n    <div class=\"lq-success-icon\" aria-hidden=\"true\">\r\n      <svg width=\"28\" height=\"28\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n        <circle cx=\"12\" cy=\"12\" r=\"11\" stroke=\"rgba(0,0,0,.12)\" stroke-width=\"2\"><\/circle>\r\n        <path d=\"M7 12.5l3 3 7-7\" stroke=\"#28A745\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path>\r\n      <\/svg>\r\n    <\/div>\r\n    <h2>${LQ_I18N.t('successTitle')}<\/h2>\r\n    <p>${LQ_I18N.t('successPara')}<\/p>\r\n    <p class=\"lq-spam-note\">${LQ_I18N.t('spamNote')}<\/p>\r\n    <ol class=\"lq-steps\" aria-label=\"${LQ_I18N.isArabic() ? '\u0645\u0627\u0630\u0627 \u0633\u064a\u062d\u062f\u062b \u0644\u0627\u062d\u0642\u064b\u0627' : 'What happens next'}\">\r\n      <li>\r\n        <span class=\"badge\" aria-hidden=\"true\">1<\/span>\r\n        <div class=\"text\">${LQ_I18N.t('step1')}<\/div>\r\n      <\/li>\r\n      <li>\r\n        <span class=\"badge\" aria-hidden=\"true\">2<\/span>\r\n        <div class=\"text\">${LQ_I18N.t('step2')}<\/div>\r\n      <\/li>\r\n      <li>\r\n        <span class=\"badge\" aria-hidden=\"true\">3<\/span>\r\n        <div class=\"text\">${LQ_I18N.t('step3')}<\/div>\r\n      <\/li>\r\n    <\/ol>\r\n  <\/div>\r\n`;\r\n\r\n\/\/ Optional: make the card RTL on Arabic\r\nif (LQ_I18N.isArabic()) document.getElementById('lq-success-card').dir = 'rtl';\r\n\r\n\r\n    const successEl = document.getElementById('lq-success-card');\r\n    successEl.setAttribute('tabindex', '-1');\r\n    successEl.focus({ preventScroll: true });\r\n    setTimeout(() => successEl.scrollIntoView({ behavior: 'smooth', block: 'start' }), 30);\r\n  }, 100);\r\n}, { once: true });\r\n\r\n\r\n\r\n});\r\n\r\n\/\/ ---------- Auto-preselect + Arabic relabel ----------\r\n\r\n\/\/ LQ:LOCALE_JS START\r\n(function () {\r\n  \/\/ Robust path text (handles %D8\u2026 encodings)\r\n  const PATH = decodeURIComponent(location.pathname);\r\n\r\n  \/\/ ---------- PAGE \u2192 AUTOSELECTION RULES ----------\r\n  \/\/ 1st dropdown is matched by \/Straighten teeth\/i for all ortho pages below.\r\n  \/\/ 2nd dropdown uses specific text matches (en dash\/hyphen tolerant).\r\n  const rules = [\r\n    {\r\n     \/\/ \/dubai\/emergency-dentist\/ and \/dubai\/emergency-dentist\/best\/\r\n     test: \/\\\/dubai\\\/emergency-dentist(\\\/best)?\\\/?$\/i,\r\n      reasonMatch: \/Pain\\s*[\u2013-]\\s*swelling\\s*or\\s*urgent\\s*issue\/i\r\n    },\r\n    {\r\n      test: \/\\\/dubai\\\/dentures(\\\/cost)?(\\\/|$)\/i,\r\n      reasonMatch: \/Missing\\\/broken\\s*tooth\/i\r\n      \/\/ \u274c no subMatch\r\n    },\r\n    {\r\n      \/\/ Pediatric pages: \/dubai\/pediatric-dentistry\/, \/dubai\/pediatric-dentistry\/best\/,\r\n      \/\/ \/dubai\/orthodontics\/pediatric\/, \/dubai\/orthodontics\/pediatric\/myobrace\/\r\n      test: \/\\\/dubai\\\/(pediatric-dentistry(\\\/best)?|orthodontics\\\/pediatric(\\\/myobrace)?)\\\/?$\/i,\r\n      ageMatch: \/Under\\s*14\/i\r\n    },\r\n    {\r\n      \/\/ \/dubai\/root-canal\/, \/dubai\/root-canal\/cost\/, \/dubai\/endodontist\/, \/dubai\/endodontist\/best\/\r\n      test: \/\\\/dubai\\\/(root-canal(\\\/cost)?|endodontist(\\\/best)?)(\\\/|$)\/i,\r\n      reasonMatch: \/Pain\\s*[\u2013-]\\s*swelling\\s*or\\s*urgent\\s*issue\/i\r\n    },\r\n    {\r\n      \/\/ \/dubai\/teeth-whitening\/ and \/dubai\/zoom-whitening\/\r\n      test: \/\\\/dubai\\\/(teeth-whitening|zoom-whitening)(\\\/|$)\/i,\r\n      reasonMatch: \/Improve\\s*my\\s*smile\\s*[\u2013-]\\s*veneers\\s*or\\s*whitening\\s*or\\s*more\/i,\r\n      subMatch: \/Teeth\\s*Whitening\\s*[\u2013-]\\s*I\\s*want\\s*a\\s*brighter,\\s*whiter\\s*smile\/i\r\n    },\r\n    {\r\n      \/\/ \/dubai\/crowns-bridges\/\r\n      test: \/\\\/dubai\\\/crowns-bridges(\\\/|$)\/i,\r\n      reasonMatch: \/Missing\\\/broken\\s*tooth\/i,\r\n      \/\/ keep it simple + robust; unique enough\r\n      subMatch: \/Dental\\s*Bridge\\s*Needed\/i\r\n    },\r\n    {\r\n      \/\/ \/dubai\/cosmetic-dentistry\/ and \/dubai\/smile-makeover\/\r\n      test: \/\\\/dubai\\\/(cosmetic-dentistry|smile-makeover)(\\\/|$)\/i,\r\n      reasonMatch: \/Improve\\s*my\\s*smile\/i,\r\n      subMatch: \/Smile\\s*Makeover\\s*[\u2013-]\\s*not\\s*sure\\s*which\\s*treatment,\\s*but\\s*I\\s*want\\s*a\\s*better\\s*smile\/i\r\n    },\r\n    {\r\n      \/\/ \/dubai\/composite-bonding\/\r\n      test: \/\\\/dubai\\\/composite-bonding(\\\/|$)\/i,\r\n      reasonMatch: \/Improve\\s*my\\s*smile\/i,\r\n      subMatch: \/Tooth\\s*Bonding\\s*[\u2013-]\\s*small\\s*chips.*imperfections\\s*to\\s*fix\/i\r\n    },\r\n    {\r\n        \/\/ \/dubai\/hollywood-smile\/\r\n        test: \/\\\/dubai\\\/hollywood-smile(\\\/|$)\/i,\r\n        reasonMatch: \/Improve\\s*my\\s*smile\/i,\r\n        subMatch: \/Hollywood\\s*Smile\/i\r\n    },\r\n    {\r\n        \/\/ \/dubai\/veneers\/ and subpages\r\n        test: \/\\\/veneers(\\\/|$)\/i,\r\n        reasonMatch: \/Improve\\s*my\\s*smile\/i,\r\n        subMatch: \/Dental\\s*Veneers\\s*[\u2013-]\\s*I\\s*want\\s*to\\s*reshape\\s*or\\s*whiten\/i\r\n    },\r\n    {\r\n        \/\/ \/dubai\/dental-implants\/\r\n        test: \/\\\/dubai\\\/dental-implants(\\\/|$)\/i,\r\n        reasonMatch: \/Missing\\\/broken\\s*tooth\/i,\r\n        subMatch: \/Dental\\s*Implant\\s*Needed\\s*[\u2013-]\\s*I\\s*want\\s*a\\s*permanent\\s*tooth\\s*replacement\/i\r\n    },\r\n    {\r\n        \/\/ \/dubai\/orthodontics\/clear-aligners\/\r\n        test: \/\\\/dubai\\\/orthodontics\\\/clear-aligners\\\/?$\/i,\r\n        reasonMatch: \/Straighten\\s*teeth\/i,\r\n        \/\/ tolerant to hyphen\/en-dash + apostrophe variations\r\n        subMatch: \/Clear\\s*Aligners\\s*[\u2013-]\\s*I.?m\\s*exploring\\s*alternatives\\s*to\\s*Invisalign\/i\r\n    },\r\n    {\r\n      \/\/ \/dubai\/orthodontics\/braces\/ceramic\/\r\n      test: \/\\\/dubai\\\/orthodontics\\\/braces\\\/ceramic\\\/?$\/i,\r\n      reasonMatch: \/Straighten\\s*teeth\/i,\r\n      subMatch: \/Braces\\s*[\u2013-]\\s*I.?m\\s*open\\s*to\\s*fixed\\s*brackets\/i\r\n    },\r\n    {\r\n      \/\/ \/dubai\/orthodontics\/braces\/metal\/\r\n      test: \/\\\/dubai\\\/orthodontics\\\/braces\\\/metal\\\/?$\/i,\r\n      reasonMatch: \/Straighten\\s*teeth\/i,\r\n      subMatch: \/Braces\\s*[\u2013-]\\s*I.?m\\s*open\\s*to\\s*fixed\\s*brackets\/i\r\n    },\r\n    {\r\n      \/\/ \/dubai\/orthodontics\/braces\/damon\/\r\n      \/\/ Requires Damon option in subReasonMap.straighten (you already added it).\r\n      test: \/\\\/dubai\\\/orthodontics\\\/braces\\\/damon\\\/?$\/i,\r\n      reasonMatch: \/Straighten\\s*teeth\/i,\r\n      subMatch: \/Damon\\s*Braces\/i\r\n    },\r\n    {\r\n      \/\/ \/dubai\/orthodontics\/braces\/lingual\/\r\n      test: \/\\\/dubai\\\/orthodontics\\\/braces\\\/lingual\\\/?$\/i,\r\n      reasonMatch: \/Straighten\\s*teeth\/i,\r\n      subMatch: \/Lingual\\s*Braces\\s*[\u2013-]\\s*hidden\\s*behind\\s*the\\s*teeth\/i\r\n    }\r\n  ];\r\n\r\n  \/\/ ---------- HELPERS ----------\r\n  const $ = (sel) => document.querySelector(sel);\r\n  const optionMatches = (opt, rx) => rx.test((opt.value || opt.textContent || '').trim());\r\n  const pickByRegex = (selectEl, rx) => {\r\n    if (!selectEl) return false;\r\n    const hit = Array.from(selectEl.options).find(o => optionMatches(o, rx));\r\n    if (!hit) return false;\r\n    selectEl.value = hit.value;\r\n    selectEl.dispatchEvent(new Event('change', { bubbles: true }));\r\n    return true;\r\n  };\r\n\r\n  function applyRules() {\r\n    const formEl  = $('#lumiquest_patient_form');\r\n    const reason  = formEl?.querySelector('#reason_for_visit');\r\n    const subSel  = formEl?.querySelector('#sub_reason');\r\n    const subWrap = formEl?.querySelector('#sub_reason_wrap');\r\n    if (!formEl || !reason) return;\r\n\r\n    \/\/ 1) Page-specific rules first\r\nconst rule = rules.find(r => r.test.test(PATH));\r\nif (rule) {\r\n\r\n  \/\/ \u2705 Apply ageMatch if present (pediatric pages)\r\n  if (rule.ageMatch) {\r\n    const ageSel = formEl.querySelector('#age_group');\r\n    if (ageSel && !ageSel.value) {\r\n      pickByRegex(ageSel, rule.ageMatch);\r\n    }\r\n  }\r\n\r\n  \/\/ Existing reason \/ subreason logic (unchanged)\r\n  if (rule.reasonMatch) {\r\n    const pickedReason = pickByRegex(reason, rule.reasonMatch);\r\n    if (pickedReason && rule.subMatch) {\r\n      \/\/ allow sub-reasons to populate after change event\r\n      setTimeout(() => {\r\n        if (subSel && subWrap?.style.display !== 'none') {\r\n          pickByRegex(subSel, rule.subMatch);\r\n        }\r\n      }, 60);\r\n    }\r\n  }\r\n  return; \/\/ stop if matched\r\n}\r\n\r\n\/\/ 2) Generic fallbacks (keep your original UX)\r\nconst isOrthoPedsPage = \/\\\/dubai\\\/orthodontics\\\/pediatric(\\\/|$)\/i.test(PATH);\r\nconst isOrthoPage     = \/\\\/orthodontics(\\\/|$)\/i.test(PATH) || \/\u062a\u0642\u0648\u064a\u0645\/.test(PATH);\r\nconst isInvisPage     = \/\\\/invisalign(\\\/|$)\/i.test(PATH) || \/\u0627\u0646?\u0641?\u0632\u0644\u0627?\u064a\u0646\/i.test(PATH);\r\n\r\n\/\/ \u2705 Do NOT auto-pick \"Straighten teeth\" on ortho pediatric pages\r\nif (isOrthoPage && !isOrthoPedsPage && !reason.value) {\r\n  pickByRegex(reason, \/Straighten\\s*teeth\/i);\r\n}\r\n\r\nif (isInvisPage) {\r\n  setTimeout(() => {\r\n    if (!subSel || subWrap?.style.display === 'none') return;\r\n    const firstReal = Array.from(subSel.options).find(o => (o.value || '').trim() !== '');\r\n    if (firstReal && !subSel.value) {\r\n      subSel.value = firstReal.value;\r\n      subSel.dispatchEvent(new Event('change', { bubbles: true }));\r\n    }\r\n  }, 60);\r\n}\r\n  }\r\n\r\n  \/\/ Boot + bfcache safety\r\n  const boot = () => applyRules();\r\n  document.addEventListener('DOMContentLoaded', boot);\r\n  setTimeout(boot, 120);\r\n  window.addEventListener('pageshow', () => setTimeout(boot, 0));\r\n\r\n  \/\/ ---------- Arabic relabel (visible text only; option values stay English) ----------\r\n  const relabel = () => {\r\n    const isArabic =\r\n      \/^ar\\b\/i.test(document.documentElement.getAttribute('lang') || '') ||\r\n      document.body.classList.contains('trp-language-ar');\r\n    if (!isArabic) return;\r\n\r\n    const REASON_AR = {\r\n      \/\/ ----- Urgent \/ Pain -----\r\n      \"- Select -\": \"\u0627\u062e\u062a\u064e\u0631\",\r\n      \"Cold Sensitivity \u2013 sharp pain when drinking cold or breathing cold air\": \"\u062d\u0633\u0627\u0633\u064a\u0629 \u0644\u0644\u0628\u0631\u062f \u2014 \u0623\u0644\u0645 \u062d\u0627\u062f \u0645\u0639 \u0627\u0644\u0645\u0634\u0631\u0648\u0628\u0627\u062a \u0627\u0644\u0628\u0627\u0631\u062f\u0629 \u0623\u0648 \u0627\u0644\u0647\u0648\u0627\u0621 \u0627\u0644\u0628\u0627\u0631\u062f\",\r\n      \"Severe Toothache \u2013 constant or throbbing pain in one or more teeth\": \"\u0623\u0644\u0645 \u0634\u062f\u064a\u062f \u0628\u0627\u0644\u0623\u0633\u0646\u0627\u0646 \u2014 \u0623\u0644\u0645 \u0645\u0633\u062a\u0645\u0631 \u0623\u0648 \u0646\u0627\u0628\u0636 \u0641\u064a \u0633\u0646 \u0623\u0648 \u0623\u0643\u062b\u0631\",\r\n      \"Swollen Gums or Abscess \u2013 painful bump or swelling on your gums\": \"\u062a\u0648\u0631\u0645 \u0627\u0644\u0644\u062b\u0629 \u0623\u0648 \u062e\u0631\u0627\u062c \u2014 \u0627\u0646\u062a\u0641\u0627\u062e\/\u0646\u062a\u0648\u0621 \u0645\u0624\u0644\u0645 \u0641\u064a \u0627\u0644\u0644\u062b\u0629\",\r\n      \"Broken or Cracked Tooth \u2013 painful when chewing or touching\": \"\u0633\u0646 \u0645\u0643\u0633\u0648\u0631 \u0623\u0648 \u0645\u062a\u0634\u0642\u0642 \u2014 \u0623\u0644\u0645 \u0639\u0646\u062f \u0627\u0644\u0645\u0636\u063a \u0623\u0648 \u0627\u0644\u0644\u0645\u0633\",\r\n      \"Wisdom Tooth Pain \u2013 pain or swelling in the back of your mouth\": \"\u0623\u0644\u0645 \u0636\u0631\u0633 \u0627\u0644\u0639\u0642\u0644 \u2014 \u0623\u0644\u0645 \u0623\u0648 \u062a\u0648\u0631\u0651\u0645 \u0641\u064a \u0622\u062e\u0631 \u0627\u0644\u0641\u0645\",\r\n      \"Pain After a Recent Treatment \u2013 discomfort after dental work\": \"\u0623\u0644\u0645 \u0628\u0639\u062f \u0639\u0644\u0627\u062c \u062d\u062f\u064a\u062b \u2014 \u0627\u0646\u0632\u0639\u0627\u062c \u0628\u0639\u062f \u0625\u062c\u0631\u0627\u0621 \u0623\u0633\u0646\u0627\u0646\",\r\n      \"Jaw Pain or Clicking \u2013 pain near ear or clicking in the jaw\": \"\u0623\u0644\u0645 \u0623\u0648 \u0637\u0642\u0637\u0642\u0629 \u0641\u064a \u0627\u0644\u0641\u0643 \u2014 \u0623\u0644\u0645 \u0642\u0631\u0628 \u0627\u0644\u0623\u0630\u0646 \u0623\u0648 \u0637\u0642\u0637\u0642\u0629 \u0628\u0627\u0644\u0641\u0643\",\r\n      \"Something Else \u2013 I\u2019ll explain below\": \"\u0634\u064a\u0621 \u0622\u062e\u0631 \u2014 \u0633\u0623\u0648\u0636\u0651\u062d \u0630\u0644\u0643 \u0623\u062f\u0646\u0627\u0647\",\r\n\r\n      \/\/ ----- Missing \/ Broken Teeth -----\r\n      \"- Select - (Missing\/Repair)\": \"\u0627\u062e\u062a\u064e\u0631\",\r\n      \"Missing Tooth \u2013 I lost a tooth and want to replace it\": \"\u0633\u0646 \u0645\u0641\u0642\u0648\u062f \u2014 \u0623\u0631\u064a\u062f \u062a\u0639\u0648\u064a\u0636\u0647\",\r\n      \"Broken Tooth (Not Painful) \u2013 part of my tooth is chipped or cracked\": \"\u0633\u0646 \u0645\u0643\u0633\u0648\u0631 (\u0628\u062f\u0648\u0646 \u0623\u0644\u0645) \u2014 \u062c\u0632\u0621 \u0645\u0643\u0633\u0648\u0631 \u0623\u0648 \u0645\u062a\u0634\u0642\u0642\",\r\n      \"Full Mouth Tooth Loss \u2013 I\u2019ve lost most or all of my teeth\": \"\u0641\u0642\u062f\u0627\u0646 \u0623\u0633\u0646\u0627\u0646 \u0645\u062a\u0639\u062f\u062f \u2014 \u0641\u0642\u062f\u062a \u0645\u0639\u0638\u0645 \u0623\u0633\u0646\u0627\u0646\u064a \u0623\u0648 \u0643\u0644\u0647\u0627\",\r\n      \"Dental Bridge Needed \u2013 I want to replace missing teeth with a fixed bridge\": \"\u0623\u062d\u062a\u0627\u062c \u062c\u0633\u0631\u064b\u0627 \u062b\u0627\u0628\u062a\u064b\u0627 \u2014 \u0644\u062a\u0639\u0648\u064a\u0636 \u0623\u0633\u0646\u0627\u0646 \u0645\u0641\u0642\u0648\u062f\u0629\",\r\n      \"Dental Implant Needed \u2013 I want a permanent tooth replacement\": \"\u0623\u062d\u062a\u0627\u062c \u0632\u0631\u0627\u0639\u0629 \u0623\u0633\u0646\u0627\u0646 \u2014 \u062a\u0639\u0648\u064a\u0636 \u062f\u0627\u0626\u0645\",\r\n      \"Dentures Needed \u2013 I\u2019m looking for full or partial dentures\": \"\u0623\u062d\u062a\u0627\u062c \u0637\u0642\u0645 \u0623\u0633\u0646\u0627\u0646 \u2014 \u0643\u0627\u0645\u0644 \u0623\u0648 \u062c\u0632\u0626\u064a\",\r\n      \"Tooth Extracted Recently \u2013 I need to replace a tooth that was removed\": \"\u062e\u0644\u0639 \u062d\u062f\u064a\u062b \u2014 \u0623\u0631\u064a\u062f \u062a\u0639\u0648\u064a\u0636 \u0627\u0644\u0633\u0646 \u0627\u0644\u0645\u062e\u0644\u0648\u0639\",\r\n\r\n      \/\/ ----- Cosmetic -----\r\n      \"- Select - (Cosmetic)\": \"\u0627\u062e\u062a\u064e\u0631\",\r\n      \"Hollywood Smile \u2013 full smile makeover with veneers or crowns\": \"\u0647\u0648\u0644\u064a\u0648\u0648\u062f \u0633\u0645\u0627\u064a\u0644 \u2014 \u062a\u062c\u0645\u064a\u0644 \u0634\u0627\u0645\u0644 \u0628\u0627\u0644\u0642\u0634\u0648\u0631 \u0623\u0648 \u0627\u0644\u062a\u064a\u062c\u0627\u0646\",\r\n      \"Dental Veneers \u2013 I want to reshape or whiten my front teeth\": \"\u0642\u0634\u0648\u0631 \u062a\u062c\u0645\u064a\u0644\u064a\u0629 \u2014 \u0644\u062a\u062d\u0633\u064a\u0646 \u0634\u0643\u0644 \u0623\u0648 \u0644\u0648\u0646 \u0627\u0644\u0623\u0633\u0646\u0627\u0646 \u0627\u0644\u0623\u0645\u0627\u0645\u064a\u0629\",\r\n      \"Teeth Whitening \u2013 I want a brighter, whiter smile\": \"\u062a\u0628\u064a\u064a\u0636 \u0627\u0644\u0623\u0633\u0646\u0627\u0646 \u2014 \u0627\u0628\u062a\u0633\u0627\u0645\u0629 \u0623\u0643\u062b\u0631 \u0628\u064a\u0627\u0636\u064b\u0627\",\r\n      \"Smile Makeover \u2013 not sure which treatment, but I want a better smile\": \"\u062a\u062d\u0633\u064a\u0646 \u0627\u0644\u0627\u0628\u062a\u0633\u0627\u0645\u0629 \u2014 \u0644\u0633\u062a \u0645\u062a\u0623\u0643\u062f\u064b\u0627 \u0645\u0646 \u0627\u0644\u0625\u062c\u0631\u0627\u0621\",\r\n      \"Gum Reshaping \u2013 my gums are uneven or show too much when I smile\": \"\u062a\u062c\u0645\u064a\u0644 \u0627\u0644\u0644\u062b\u0629 \u2014 \u0639\u062f\u0645 \u0627\u0646\u062a\u0638\u0627\u0645 \u0623\u0648 \u0638\u0647\u0648\u0631 \u0632\u0627\u0626\u062f \u0639\u0646\u062f \u0627\u0644\u0627\u0628\u062a\u0633\u0627\u0645\",\r\n      \"Tooth Bonding \u2013 small chips, gaps, or imperfections to fix\": \"\u062d\u0634\u0648\u0627\u062a \u062a\u062c\u0645\u064a\u0644\u064a\u0629 \u2014 \u0644\u0639\u0644\u0627\u062c \u0641\u0631\u0627\u063a\u0627\u062a \u0623\u0648 \u0643\u0633\u0648\u0631 \u0628\u0633\u064a\u0637\u0629\",\r\n\r\n      \/\/ ----- Orthodontics -----\r\n      \"- Select - (Ortho)\": \"\u0627\u062e\u062a\u064e\u0631\",\r\n      \"Invisalign \u2013 I want invisible, removable aligners\": \"Invisalign \u2014 \u062a\u0642\u0648\u064a\u0645 \u0634\u0641\u0627\u0641 \u0642\u0627\u0628\u0644 \u0644\u0644\u0625\u0632\u0627\u0644\u0629\",\r\n      \"Braces \u2013 I\u2019m open to fixed brackets (metallic or ceramic)\": \"\u062a\u0642\u0648\u064a\u0645 \u062b\u0627\u0628\u062a \u2014 \u0645\u0639\u062f\u0646\u064a \u0623\u0648 \u062e\u0632\u0641\u064a\",\r\n      \"Damon Braces \u2013 self-ligating brackets\": \"\u062a\u0642\u0648\u064a\u0645 \u062f\u064a\u0645\u0648\u0646 \u2014 \u0623\u0642\u0648\u0627\u0633 \u0630\u0627\u062a\u064a\u0629 \u0627\u0644\u0625\u063a\u0644\u0627\u0642\",\r\n      \"Myobrace \u2013 habit-correcting appliance for kids\/teens\": \"Myobrace \u2014 \u062c\u0647\u0627\u0632 \u0644\u062a\u0635\u062d\u064a\u062d \u0627\u0644\u0639\u0627\u062f\u0627\u062a \u0644\u0644\u0623\u0637\u0641\u0627\u0644\/\u0627\u0644\u0646\u0627\u0634\u0626\u064a\u0646\",\r\n      \"Lingual Braces \u2013 hidden behind the teeth (invisible)\": \"\u062a\u0642\u0648\u064a\u0645 \u0644\u0633\u0627\u0646\u064a \u2014 \u0645\u062e\u0641\u064a \u062e\u0644\u0641 \u0627\u0644\u0623\u0633\u0646\u0627\u0646 (\u063a\u064a\u0631 \u0645\u0631\u0626\u064a)\",\r\n      \"Clear Aligners \u2013 I\u2019m exploring alternatives to Invisalign\": \"\u062a\u0642\u0648\u064a\u0645 \u0634\u0641\u0627\u0641 \u2014 \u0628\u062f\u0627\u0626\u0644 \u0644\u0640 Invisalign\",\r\n      \"Crooked Teeth \u2013 not sure which option, just want straighter teeth\/better bite\": \"\u0627\u0639\u0648\u062c\u0627\u062c \u0627\u0644\u0623\u0633\u0646\u0627\u0646 \u2014 \u0623\u0631\u064a\u062f \u0623\u0633\u0646\u0627\u0646\u064b\u0627 \u0623\u0639\u062f\u0644\/\u0625\u0637\u0628\u0627\u0642\u064b\u0627 \u0623\u0641\u0636\u0644\",\r\n      \"Gaps Between My Teeth \u2013 I want to close the spacing\": \"\u0641\u0631\u0627\u063a\u0627\u062a \u0628\u064a\u0646 \u0627\u0644\u0623\u0633\u0646\u0627\u0646 \u2014 \u0623\u0631\u064a\u062f \u0625\u063a\u0644\u0627\u0642\u0647\u0627\",\r\n\r\n      \/\/ ----- Routine -----\r\n      \"- Select - (Routine)\": \"\u0627\u062e\u062a\u064e\u0631\",\r\n      \"Teeth Cleaning \u2013 I want a professional cleaning (scaling & polishing)\": \"\u062a\u0646\u0638\u064a\u0641 \u0627\u0644\u0623\u0633\u0646\u0627\u0646 \u2014 \u0625\u0632\u0627\u0644\u0629 \u0627\u0644\u062c\u064a\u0631 \u0648\u0627\u0644\u062a\u0644\u0645\u064a\u0639\",\r\n      \"Dental Check-Up \u2013 just a routine dental exam\": \"\u0641\u062d\u0635 \u0623\u0633\u0646\u0627\u0646 \u0631\u0648\u062a\u064a\u0646\u064a\",\r\n      \"Cavity Filling \u2013 I have a small cavity or hole in a tooth\": \"\u062d\u0634\u0648 \u0633\u0646 \u2014 \u062a\u0633\u0648\u0651\u0633 \u0623\u0648 \u062b\u0642\u0628 \u0628\u0633\u064a\u0637\",\r\n      \"Tooth Sensitivity \u2013 discomfort with cold, sweet, or touch\": \"\u062d\u0633\u0627\u0633\u064a\u0629 \u0627\u0644\u0623\u0633\u0646\u0627\u0646 \u2014 \u0645\u0639 \u0627\u0644\u0628\u0627\u0631\u062f\/\u0627\u0644\u062d\u0644\u0648\/\u0627\u0644\u0644\u0645\u0633\",\r\n      \"Stained Teeth \u2013 mild stains I want to clean or polish off\": \"\u062a\u0635\u0628\u063a\u0627\u062a \u062e\u0641\u064a\u0641\u0629 \u2014 \u0623\u0631\u064a\u062f \u062a\u0646\u0638\u064a\u0641\u0647\u0627\/\u062a\u0644\u0645\u064a\u0639\u0647\u0627\",\r\n      \"Bleeding Gums \u2013 gums bleed when I brush or floss\": \"\u0646\u0632\u064a\u0641 \u0627\u0644\u0644\u062b\u0629 \u2014 \u064a\u062d\u062f\u062b \u0639\u0646\u062f \u0627\u0644\u062a\u0641\u0631\u064a\u0634 \u0623\u0648 \u0627\u0644\u062e\u064a\u0637\",\r\n      \"Bad Breath \u2013 I want to check the cause of bad breath\": \"\u0631\u0627\u0626\u062d\u0629 \u0641\u0645 \u2014 \u0623\u0631\u064a\u062f \u0645\u0639\u0631\u0641\u0629 \u0627\u0644\u0633\u0628\u0628\",\r\n\r\n      \/\/ ----- Not sure \/ Need help deciding -----\r\n      \"- Select - (Unsure)\": \"\u0627\u062e\u062a\u064e\u0631\",\r\n      \"I need help figuring out the best treatment for me\": \"\u0623\u062d\u062a\u0627\u062c \u0645\u0633\u0627\u0639\u062f\u0629 \u0644\u0627\u062e\u062a\u064a\u0627\u0631 \u0627\u0644\u0639\u0644\u0627\u062c \u0627\u0644\u0623\u0646\u0633\u0628 \u0644\u064a\",\r\n      \"I have multiple dental concerns and don\u2019t know where to start\": \"\u0644\u062f\u064a \u0639\u062f\u0629 \u0645\u0634\u0627\u0643\u0644 \u0641\u064a \u0627\u0644\u0623\u0633\u0646\u0627\u0646 \u0648\u0644\u0627 \u0623\u0639\u0631\u0641 \u0645\u0646 \u0623\u064a\u0646 \u0623\u0628\u062f\u0623\",\r\n      \"I've never had dental work and I feel nervous\": \"\u0644\u0645 \u0623\u062e\u0636\u0639 \u0644\u0639\u0644\u0627\u062c \u0623\u0633\u0646\u0627\u0646 \u0645\u0646 \u0642\u0628\u0644 \u0648\u0623\u0634\u0639\u0631 \u0628\u0627\u0644\u062a\u0648\u062a\u0631\",\r\n      \"I\u2019ve never had dental work and I feel nervous\": \"\u0644\u0645 \u0623\u062e\u0636\u0639 \u0644\u0639\u0644\u0627\u062c \u0623\u0633\u0646\u0627\u0646 \u0645\u0646 \u0642\u0628\u0644 \u0648\u0623\u0634\u0639\u0631 \u0628\u0627\u0644\u062a\u0648\u062a\u0631\",\r\n      \"I want to compare treatment options before I decide\": \"\u0623\u0631\u064a\u062f \u0645\u0642\u0627\u0631\u0646\u0629 \u0627\u0644\u062e\u064a\u0627\u0631\u0627\u062a \u0627\u0644\u0639\u0644\u0627\u062c\u064a\u0629 \u0642\u0628\u0644 \u0627\u062a\u062e\u0627\u0630 \u0627\u0644\u0642\u0631\u0627\u0631\",\r\n      \"I just want to talk to someone I trust before I book\": \"\u0623\u0631\u064a\u062f \u0627\u0644\u062a\u062d\u062f\u062b \u0645\u0639 \u0634\u062e\u0635 \u0645\u0648\u062b\u0648\u0642 \u0642\u0628\u0644 \u0627\u0644\u062d\u062c\u0632\",\r\n      \"Something else \u2013 I\u2019ll explain below\": \"\u0634\u064a\u0621 \u0622\u062e\u0631 \u2014 \u0633\u0623\u0648\u0636\u0651\u062d \u0630\u0644\u0643 \u0623\u062f\u0646\u0627\u0647\",\r\n\r\n      \/\/ ----- Something else (free text) -----\r\n      \"- Select - (Other)\": \"\u0627\u062e\u062a\u064e\u0631\",\r\n      \"I'll type the details below\": \"\u0633\u0623\u0643\u062a\u0628 \u0627\u0644\u062a\u0641\u0627\u0635\u064a\u0644 \u0623\u062f\u0646\u0627\u0647\"\r\n    };\r\n\r\n    const relabelSelect = (sel, map) => {\r\n      if (!sel) return;\r\n      for (const opt of sel.options) {\r\n        const en = (opt.textContent || '').trim();\r\n        if (map[en]) opt.textContent = map[en];\r\n      }\r\n    };\r\n\r\n    const reasonSel = document.getElementById('reason_for_visit');\r\n    const subSel   = document.getElementById('sub_reason');\r\n\r\n    \/\/ Relabel immediately\r\n    relabelSelect(reasonSel, REASON_AR);\r\n\r\n    \/\/ Relabel sub reasons after each population\r\n    document.addEventListener('change', (e) => {\r\n      if (e.target && e.target.id === 'reason_for_visit') {\r\n        setTimeout(() => relabelSelect(subSel, REASON_AR), 0);\r\n      }\r\n    });\r\n\r\n    \/\/ Safety pass (prefilled\/auto-populated cases)\r\n    setTimeout(() => relabelSelect(subSel, REASON_AR), 0);\r\n  };\r\n\r\n  \/\/ Wire both applyRules() and relabel() at the right times\r\ndocument.addEventListener('DOMContentLoaded', () => { applyRules(); relabel(); });\r\nsetTimeout(() => { applyRules(); relabel(); }, 120);\r\nwindow.addEventListener('pageshow', () => { setTimeout(() => { applyRules(); relabel(); }, 0); });\r\n\r\n})();\r\n\/\/ LQ:LOCALE_JS END\r\n<\/script>\r\n<!-- LQ:JS END -->\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-add68a9 elementor-widget elementor-widget-shortcode\" data-id=\"add68a9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">    <footer class=\"lq-signature\" dir=\"auto\" aria-label=\"Page maintenance\">\r\n      <p><strong>Maintained by:<\/strong> LumiQuest Dental Circle<\/p>\r\n    <\/footer>\r\n    <style>\r\n      .lq-signature {\r\n        margin-top: 28px;\r\n        padding-top: 14px;\r\n        border-top: 1px solid #e5e7eb;\r\n        font-size: 14px;\r\n        color: #4B5563;\r\n        text-align: center;\r\n      }\r\n    <\/style>\r\n    <\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Invisalign vs Braces in Dubai \u2014 Clear, Honest Comparison Should you choose Invisalign or braces? This is the #1 question patients ask when starting orthodontic treatment in Dubai. Both options straighten teeth effectively, but they differ in aesthetics, comfort, treatment time, and cost. The best choice depends on your lifestyle, budget, and whether you\u2019re a [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":3354,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-5529","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/lumiquestdental.com\/ar\/wp-json\/wp\/v2\/pages\/5529","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lumiquestdental.com\/ar\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/lumiquestdental.com\/ar\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/lumiquestdental.com\/ar\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/lumiquestdental.com\/ar\/wp-json\/wp\/v2\/comments?post=5529"}],"version-history":[{"count":131,"href":"https:\/\/lumiquestdental.com\/ar\/wp-json\/wp\/v2\/pages\/5529\/revisions"}],"predecessor-version":[{"id":11249,"href":"https:\/\/lumiquestdental.com\/ar\/wp-json\/wp\/v2\/pages\/5529\/revisions\/11249"}],"up":[{"embeddable":true,"href":"https:\/\/lumiquestdental.com\/ar\/wp-json\/wp\/v2\/pages\/3354"}],"wp:attachment":[{"href":"https:\/\/lumiquestdental.com\/ar\/wp-json\/wp\/v2\/media?parent=5529"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}