{"id":5874,"date":"2025-09-15T14:56:22","date_gmt":"2025-09-15T11:56:22","guid":{"rendered":"https:\/\/lumiquestdental.com\/?page_id=5874"},"modified":"2026-03-02T22:26:40","modified_gmt":"2026-03-02T20:26:40","slug":"cost","status":"publish","type":"page","link":"https:\/\/lumiquestdental.com\/ar\/dubai\/orthodontics\/invisalign\/cost\/","title":{"rendered":"\u062a\u0643\u0644\u0641\u0629 Invisalign \u0641\u064a \u062f\u0628\u064a | LumiQuest Dental Circle"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"5874\" class=\"elementor elementor-5874\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9fa1e03 e-flex e-con-boxed e-con e-parent\" data-id=\"9fa1e03\" 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-9e55f3d elementor-widget elementor-widget-html\" data-id=\"9e55f3d\" 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 1: Invisalign Cost Intro (with icon highlights) -->\r\n<section id=\"inv-cost-intro\" class=\"lq lq-section\" dir=\"auto\" aria-labelledby=\"inv-cost-title\">\r\n  <div class=\"lq-section-inner\">\r\n    <div class=\"lq-split\">\r\n      <!-- Left Content -->\r\n      <div class=\"lq-content\">\r\n        <header>\r\n          <h1 id=\"inv-cost-title\">Invisalign Cost in Dubai<\/h1>\r\n<p class=\"intro\">\r\n  How much does Invisalign really cost in Dubai? Prices vary depending on the package you need \u2014 \r\n  from short, simple cases to full treatments for adults, teens, or children. \r\n  LumiQuest breaks down <strong>Dubai-specific Invisalign pricing ranges<\/strong>, \r\n  what\u2019s usually included, and the key factors that affect your total investment. \r\n  For a structured explanation of how dental pricing works across treatments in Dubai, \r\n  see our <a href=\"\/cost-transparency\/\" class=\"lq-link\">Dental Cost Transparency guide<\/a>.\r\n<\/p>\r\n        <\/header>\r\n\r\n        <div class=\"lq-highlight-strip\">\r\n          <article class=\"highlight\">\r\n            <img decoding=\"async\" src=\"https:\/\/lumiquestdental.com\/wp-content\/uploads\/2025\/09\/packages-icon.png\" alt=\"Clear packages icon \u2014 transparent Invisalign pricing options in Dubai\" loading=\"lazy\" title=\"| LumiQuest Dental Circle\">\r\n            <h3>Clear Packages<\/h3>\r\n            <p>From <strong>Express<\/strong> to <strong>Comprehensive<\/strong>, each package has transparent pricing.<\/p>\r\n          <\/article>\r\n\r\n          <article class=\"highlight\">\r\n            <img decoding=\"async\" src=\"https:\/\/lumiquestdental.com\/wp-content\/uploads\/2025\/09\/inlcusions-icon.png\" alt=\"Inclusions icon \u2014 Invisalign packages in Dubai with scans, aligners, refinements, and retainers included\" loading=\"lazy\" title=\"| LumiQuest Dental Circle\">\r\n            <h3>Inclusions<\/h3>\r\n            <p>Scans, aligners, refinements, and retainers are usually part of the package \u2014 confirm with your clinic.<\/p>\r\n          <\/article>\r\n\r\n          <article class=\"highlight\">\r\n            <img decoding=\"async\" src=\"https:\/\/lumiquestdental.com\/wp-content\/uploads\/2025\/09\/key-factors-icon.png\" alt=\"Key factors icon \u2014 orthodontist expertise, clinic reputation, and case complexity affecting Invisalign cost in Dubai\" loading=\"lazy\" title=\"| LumiQuest Dental Circle\">\r\n            <h3>Key Factors<\/h3>\r\n            <p>Case complexity, orthodontist expertise, and clinic reputation all influence the final cost in Dubai.<\/p>\r\n          <\/article>\r\n        <\/div>\r\n\r\n        <p class=\"note\">\r\n          Compare Invisalign costs with other options: \r\n          <a href=\"\/dubai\/orthodontics\/cost\/\" class=\"lq-link\">full orthodontic cost overview<\/a> \r\n          or see <a href=\"\/dubai\/orthodontics\/braces\/cost\/\" class=\"lq-link\">braces pricing in Dubai<\/a>. \r\n          For context and treatment basics, visit the \r\n          <a href=\"\/dubai\/orthodontics\/invisalign\/\" class=\"lq-link\">main Invisalign guide<\/a>.\r\n        <\/p>\r\n      <\/div>\r\n\r\n      <!-- Right Image -->\r\n      <div class=\"lq-image\">\r\n        <img decoding=\"async\" src=\"https:\/\/lumiquestdental.com\/wp-content\/uploads\/2025\/09\/invisalign-packages-cost.png\" alt=\"Illustration of Invisalign cost breakdown in Dubai with clear aligner case and package tiers from Express to First\" title=\"| LumiQuest Dental Circle\">\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<style>\r\n  #inv-cost-intro {\r\n    background: #fff;\r\n    padding: 72px 16px;\r\n  }\r\n\r\n  #inv-cost-intro .lq-split {\r\n    display: flex;\r\n    align-items: center;\r\n    gap: 48px;\r\n    max-width: 1150px;\r\n    margin: 0 auto;\r\n  }\r\n\r\n  \/* Left column *\/\r\n  #inv-cost-intro .lq-content {\r\n    flex: 1;\r\n  }\r\n\r\n  #inv-cost-intro h1 {\r\n    margin: 0 0 20px;\r\n    font-size: 32px;\r\n    font-weight: 700;\r\n    color: #222;\r\n    position: relative;\r\n    display: inline-block;\r\n  }\r\n\r\n  #inv-cost-intro h1::after {\r\n    content: \"\";\r\n    position: absolute;\r\n    bottom: -10px;\r\n    inset-inline-start: 0;\r\n    width: 80px;\r\n    height: 3px;\r\n    background: linear-gradient(90deg, #ff7a00, #ff5fa2);\r\n    border-radius: 4px;\r\n    animation: subtlePulse 3s ease-in-out infinite;\r\n    box-shadow: 0 2px 10px rgba(255, 122, 0, 0.3);\r\n  }\r\n\r\n  #inv-cost-intro .intro {\r\n    max-width: 720px;\r\n    font-size: 18px;\r\n    line-height: 1.7;\r\n    color: #444;\r\n    margin: 0 0 32px;\r\n  }\r\n\r\n  \/* Highlight strip *\/\r\n  #inv-cost-intro .lq-highlight-strip {\r\n    display: grid;\r\n    grid-template-columns: repeat(3, 1fr);\r\n    gap: 24px;\r\n    margin-bottom: 28px;\r\n    text-align: center;\r\n  }\r\n\r\n  #inv-cost-intro .highlight {\r\n    background: #fafafa;\r\n    border-radius: 14px;\r\n    padding: 24px 20px;\r\n    box-shadow: 0 2px 8px rgba(0,0,0,0.05);\r\n    transition: transform 0.25s ease, box-shadow 0.25s ease;\r\n  }\r\n\r\n  #inv-cost-intro .highlight:hover {\r\n    transform: translateY(-4px);\r\n    box-shadow: 0 6px 14px rgba(0,0,0,0.08);\r\n  }\r\n\r\n  #inv-cost-intro .highlight img {\r\n    width: 42px;\r\n    height: 42px;\r\n    margin-bottom: 12px;\r\n  }\r\n\r\n  #inv-cost-intro .highlight h3 {\r\n    font-size: 18px;\r\n    margin-bottom: 8px;\r\n    color: #222;\r\n  }\r\n\r\n  #inv-cost-intro .highlight p {\r\n    font-size: 15px;\r\n    line-height: 1.6;\r\n    color: #555;\r\n    margin: 0;\r\n  }\r\n\r\n  \/* Note text *\/\r\n  #inv-cost-intro .note {\r\n    font-size: 16px;\r\n    color: #333;\r\n    line-height: 1.6;\r\n  }\r\n\r\n  \/* Right column *\/\r\n  #inv-cost-intro .lq-image {\r\n    flex: 0 0 360px;\r\n  }\r\n\r\n  #inv-cost-intro .lq-image img {\r\n    width: 100%;\r\n    border-radius: 16px;\r\n    box-shadow: 0 4px 14px rgba(0,0,0,0.08);\r\n  }\r\n\r\n  \/* Mobile stacking *\/\r\n  @media (max-width: 768px) {\r\n    #inv-cost-intro .lq-split {\r\n      flex-direction: column;\r\n      gap: 32px;\r\n    }\r\n\r\n    #inv-cost-intro .lq-highlight-strip {\r\n      grid-template-columns: 1fr;\r\n    }\r\n\r\n    #inv-cost-intro .lq-image {\r\n      order: 2;\r\n      max-width: 100%;\r\n    }\r\n  }\r\n\r\n  @keyframes subtlePulse {\r\n    0%, 100% { opacity: 1; }\r\n    50% { opacity: 0.6; }\r\n  }\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-e818b6c elementor-widget elementor-widget-html\" data-id=\"e818b6c\" 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 2: Invisalign Cost Packages -->\r\n<section id=\"inv-cost-packages\" class=\"lq lq-section\" dir=\"auto\" aria-labelledby=\"cost-packages-title\">\r\n  <div class=\"lq-section-inner\">\r\n    <header class=\"lq-centered\">\r\n      <h2 id=\"cost-packages-title\">Invisalign Cost Packages in Dubai<\/h2>\r\n      <p class=\"intro\">\r\n        Invisalign treatment in Dubai is offered in clear package tiers. Each option suits a different\r\n        level of complexity \u2014 from small corrections to full orthodontic care for adults, teens, or children.\r\n      <\/p>\r\n    <\/header>\r\n\r\n    <div class=\"lq-pricing-grid\">\r\n      <!-- i7 \/ Express -->\r\n      <article class=\"pricing-card\">\r\n        <h3>Invisalign i7 \/ Express<\/h3>\r\n        <table class=\"pricing-table\">\r\n          <tr>\r\n            <td><span class=\"tier-icon\">\u2b50<\/span> Standard<\/td>\r\n            <td>\r\n              <span class=\"aed\">AED 7,700\u201312,100<\/span>\r\n            <\/td>\r\n          <\/tr>\r\n          <tr>\r\n            <td><span class=\"tier-icon\">\u2728<\/span> Enhanced<\/td>\r\n            <td>\r\n              <span class=\"aed\">AED 12,100\u201314,000<\/span>\r\n            <\/td>\r\n          <\/tr>\r\n          <tr>\r\n            <td><span class=\"tier-icon\">\ud83d\udc51<\/span> Elite<\/td>\r\n            <td>N\/A<\/td>\r\n          <\/tr>\r\n        <\/table>\r\n        <p class=\"desc\">For minor tooth movements and quick cases.<\/p>\r\n      <\/article>\r\n\r\n      <!-- Lite -->\r\n      <article class=\"pricing-card\">\r\n        <h3>Invisalign Lite<\/h3>\r\n        <table class=\"pricing-table\">\r\n          <tr>\r\n            <td><span class=\"tier-icon\">\u2b50<\/span> Standard<\/td>\r\n            <td>\r\n              <span class=\"aed\">AED 9,900\u201314,000<\/span>\r\n            <\/td>\r\n          <\/tr>\r\n          <tr>\r\n            <td><span class=\"tier-icon\">\u2728<\/span> Enhanced<\/td>\r\n            <td>\r\n              <span class=\"aed\">AED 14,000\u201318,000<\/span>\r\n            <\/td>\r\n          <\/tr>\r\n          <tr>\r\n            <td><span class=\"tier-icon\">\ud83d\udc51<\/span> Elite<\/td>\r\n            <td>\r\n              <span class=\"aed\">AED 22,800+<\/span>\r\n          <\/tr>\r\n        <\/table>\r\n        <p class=\"desc\">Moderate cases with shorter treatment time.<\/p>\r\n      <\/article>\r\n\r\n      <!-- Comprehensive -->\r\n      <article class=\"pricing-card\">\r\n        <h3>Invisalign Comprehensive (Full)<\/h3>\r\n        <table class=\"pricing-table\">\r\n          <tr>\r\n            <td><span class=\"tier-icon\">\u2b50<\/span> Standard<\/td>\r\n            <td>\r\n              <span class=\"aed\">AED 12,100\u201318,400<\/span>\r\n            <\/td>\r\n          <\/tr>\r\n          <tr>\r\n            <td><span class=\"tier-icon\">\u2728<\/span> Enhanced<\/td>\r\n            <td>\r\n              <span class=\"aed\">AED 18,400\u201327,500<\/span>\r\n            <\/td>\r\n          <\/tr>\r\n          <tr>\r\n            <td><span class=\"tier-icon\">\ud83d\udc51<\/span> Elite<\/td>\r\n            <td>\r\n              <span class=\"aed\">AED 27,500+<\/span>\r\n          <\/tr>\r\n        <\/table>\r\n        <p class=\"desc\">Complete treatment for adults and teens.<\/p>\r\n      <\/article>\r\n\r\n      <!-- Teen -->\r\n      <article class=\"pricing-card\">\r\n        <h3>Invisalign Teen<\/h3>\r\n        <table class=\"pricing-table\">\r\n          <tr>\r\n            <td><span class=\"tier-icon\">\u2b50<\/span> Standard<\/td>\r\n            <td>Similar to Comprehensive<\/td>\r\n          <\/tr>\r\n          <tr>\r\n            <td><span class=\"tier-icon\">\u2728<\/span> Enhanced<\/td>\r\n            <td>\r\n              <span class=\"aed\">AED 18,400\u201327,500<\/span>\r\n            <\/td>\r\n          <\/tr>\r\n          <tr>\r\n            <td><span class=\"tier-icon\">\ud83d\udc51<\/span> Elite<\/td>\r\n            <td>\r\n              <span class=\"aed\">AED 27,500+<\/span>\r\n          <\/tr>\r\n        <\/table>\r\n        <p class=\"desc\">Designed for growing teens with erupting teeth.<\/p>\r\n      <\/article>\r\n\r\n      <!-- First -->\r\n      <article class=\"pricing-card\">\r\n        <h3>Invisalign First<\/h3>\r\n        <table class=\"pricing-table\">\r\n          <tr>\r\n            <td><span class=\"tier-icon\">\u2b50<\/span> Standard<\/td>\r\n            <td>\r\n              <span class=\"aed\">AED 12,100\u201318,400<\/span>\r\n            <\/td>\r\n          <\/tr>\r\n          <tr>\r\n            <td><span class=\"tier-icon\">\u2728<\/span> Enhanced<\/td>\r\n            <td>\r\n              <span class=\"aed\">AED 18,400\u201327,500<\/span>\r\n            <\/td>\r\n          <\/tr>\r\n          <tr>\r\n            <td><span class=\"tier-icon\">\ud83d\udc51<\/span> Elite<\/td>\r\n            <td>\r\n              <span class=\"aed\">AED 27,500+<\/span>\r\n          <\/tr>\r\n        <\/table>\r\n        <p class=\"desc\">Early intervention aligners for children aged 6\u201310.<\/p>\r\n      <\/article>\r\n    <\/div>\r\n\r\n    <!-- Insight -->\r\n    <div class=\"lq-interpretation\">\r\n      <p>\r\n        <strong>LumiQuest Insight:<\/strong> Prices vary by <em>case complexity<\/em>, \r\n        <em>clinic reputation<\/em>, and <em>orthodontist expertise<\/em>. \r\n        Always ask what\u2019s included \u2014 scans, refinements, and retainers can make a big difference.  \r\n        For wider context, see our <a href=\"\/dubai\/orthodontics\/cost\/\" class=\"lq-link\">full orthodontic cost guide<\/a> \r\n        or compare with <a href=\"\/dubai\/orthodontics\/braces\/cost\/\" class=\"lq-link\">braces pricing in Dubai<\/a>.  \r\n      <\/p>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<style>\r\n  #inv-cost-packages {\r\n    background: #fafafa;\r\n    padding: 72px 16px;\r\n    text-align: center;\r\n  }\r\n\r\n  #inv-cost-packages h2 {\r\n    font-size: 30px;\r\n    margin: 0 0 16px;\r\n    position: relative;\r\n    display: inline-block;\r\n  }\r\n\r\n  #inv-cost-packages h2::after {\r\n    content: \"\";\r\n    position: absolute;\r\n    bottom: -8px;\r\n    inset-inline-start: 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    animation: subtlePulse 3s ease-in-out infinite;\r\n  }\r\n\r\n  #inv-cost-packages .intro {\r\n    max-width: 720px;\r\n    margin: 0 auto 40px;\r\n    font-size: 17px;\r\n    line-height: 1.7;\r\n    color: #444;\r\n  }\r\n\r\n  \/* Pricing grid *\/\r\n  #inv-cost-packages .lq-pricing-grid {\r\n    display: grid;\r\n    grid-template-columns: repeat(3, 1fr);\r\n    gap: 28px;\r\n    max-width: 1150px;\r\n    margin: 0 auto 48px;\r\n  }\r\n\r\n  #inv-cost-packages .pricing-card {\r\n    background: #fff;\r\n    border-radius: 16px;\r\n    padding: 26px;\r\n    box-shadow: 0 2px 10px rgba(0,0,0,0.06);\r\n    transition: transform 0.25s ease, box-shadow 0.25s ease;\r\n    text-align: start;\r\n  }\r\n\r\n  #inv-cost-packages .pricing-card:hover {\r\n    transform: translateY(-4px);\r\n    box-shadow: 0 6px 14px rgba(0,0,0,0.1);\r\n  }\r\n\r\n  #inv-cost-packages .pricing-card h3 {\r\n    font-size: 20px;\r\n    margin-bottom: 16px;\r\n    color: #222;\r\n    text-align: center;\r\n  }\r\n\r\n  \/* Mini tables *\/\r\n  #inv-cost-packages .pricing-table {\r\n    width: 100%;\r\n    border-collapse: separate;\r\n    border-spacing: 0;\r\n    margin-bottom: 14px;\r\n    border-radius: 12px;\r\n    overflow: hidden;\r\n  }\r\n\r\n  #inv-cost-packages .pricing-table tr:nth-child(even) {\r\n    background: #fdfaf8;\r\n  }\r\n\r\n  #inv-cost-packages .pricing-table td {\r\n    padding: 10px 12px;\r\n    font-size: 15px;\r\n    color: #444;\r\n    vertical-align: top;\r\n  }\r\n\r\n  #inv-cost-packages .pricing-table td:first-child {\r\n    font-weight: 600;\r\n    color: #222;\r\n    width: 42%;\r\n  }\r\n\r\n  #inv-cost-packages .pricing-card .aed {\r\n    font-weight: 600;\r\n    color: #111;\r\n  }\r\n\r\n  #inv-cost-packages .pricing-card .usd {\r\n    font-size: 13px;\r\n    color: #777;\r\n    margin-top: 2px;\r\n  }\r\n\r\n  #inv-cost-packages .tier-icon {\r\n    margin-right: 6px;\r\n    font-size: 14px;\r\n  }\r\n\r\n  #inv-cost-packages .pricing-card .desc {\r\n    font-size: 14px;\r\n    color: #555;\r\n    line-height: 1.6;\r\n    text-align: center;\r\n    margin-top: 10px;\r\n  }\r\n\r\n  \/* Interpretation box *\/\r\n  #inv-cost-packages .lq-interpretation {\r\n    background: #fff;\r\n    border-radius: 12px;\r\n    padding: 28px 32px;\r\n    max-width: 880px;\r\n    margin: 0 auto;\r\n    font-size: 16px;\r\n    line-height: 1.7;\r\n    color: #333;\r\n    box-shadow: 0 2px 10px rgba(0,0,0,0.05);\r\n    text-align: start;\r\n  }\r\n\r\n  @media (max-width: 1024px) {\r\n    #inv-cost-packages .lq-pricing-grid {\r\n      grid-template-columns: repeat(2, 1fr);\r\n    }\r\n  }\r\n\r\n  @media (max-width: 768px) {\r\n    #inv-cost-packages {\r\n      padding: 56px 12px;\r\n    }\r\n    #inv-cost-packages .lq-pricing-grid {\r\n      grid-template-columns: 1fr;\r\n    }\r\n  }\r\n\r\n  @keyframes subtlePulse {\r\n    0%, 100% { opacity: 1; }\r\n    50% { opacity: 0.6; }\r\n  }\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-9a648e2 elementor-widget elementor-widget-html\" data-id=\"9a648e2\" 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: Factors Affecting Invisalign Cost -->\r\n<section id=\"inv-cost-factors\" class=\"lq lq-section\" dir=\"auto\" aria-labelledby=\"cost-factors-title\">\r\n  <div class=\"lq-section-inner\">\r\n    <header class=\"lq-header\">\r\n      <h2 id=\"cost-factors-title\">What Affects Invisalign Cost in Dubai?<\/h2>\r\n      <p class=\"subtitle\">\r\n        Invisalign pricing isn\u2019t one-size-fits-all. Several factors can raise or lower your total investment \u2014 \r\n        from the complexity of your case to what\u2019s included in your package.\r\n      <\/p>\r\n    <\/header>\r\n\r\n    <div class=\"lq-split\">\r\n      <!-- Left Visual -->\r\n      <div class=\"lq-visual\">\r\n        <img decoding=\"async\" src=\"https:\/\/lumiquestdental.com\/wp-content\/uploads\/2025\/09\/invisalign-cost-drivers.png\" alt=\"Illustration of Invisalign cost factors in Dubai \u2014 complexity, clinic reputation, orthodontist expertise, inclusions\" loading=\"lazy\" title=\"| LumiQuest Dental Circle\">\r\n      <\/div>\r\n\r\n      <!-- Right Content (Cards) -->\r\n      <div class=\"lq-card-grid\">\r\n        <article class=\"card\">\r\n          <div class=\"icon\">\ud83e\uddb7<\/div>\r\n          <h3>Case Complexity<\/h3>\r\n          <p>Straightforward spacing is less costly, while advanced bite corrections or long treatments increase price.<\/p>\r\n        <\/article>\r\n\r\n        <article class=\"card\">\r\n          <div class=\"icon\">\ud83d\udc69\u200d\u2695\ufe0f<\/div>\r\n          <h3>Orthodontist Expertise<\/h3>\r\n          <p>Highly experienced Invisalign providers may charge more, but they bring precision and predictability.<\/p>\r\n        <\/article>\r\n\r\n        <article class=\"card\">\r\n          <div class=\"icon\">\ud83c\udfe5<\/div>\r\n          <h3>Clinic Reputation<\/h3>\r\n          <p>Premium clinics with advanced technology (iTero scans, AI planning) often sit at the higher end of pricing.<\/p>\r\n        <\/article>\r\n\r\n        <article class=\"card\">\r\n          <div class=\"icon\">\ud83d\udce6<\/div>\r\n          <h3>What\u2019s Included<\/h3>\r\n          <p>Aligners, refinements, and retainers are usually bundled. Check for extras like X-rays or \r\n             <a href=\"\/dubai\/orthodontics\/retainers\/\" class=\"lq-link\">retainer upgrades<\/a>.<\/p>\r\n        <\/article>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <!-- Interpretation \/ Takeaway -->\r\n    <div class=\"lq-interpretation\">\r\n      <p>\r\n        <strong>LumiQuest Insight:<\/strong> Comparing prices alone can be misleading. \r\n        Look closely at the orthodontist\u2019s expertise, the technology used, and whether refinements and retainers are included.  \r\n        For full payment and insurance context, see our \r\n        <a href=\"\/dubai\/orthodontics\/cost\/\" class=\"lq-link\">orthodontic cost guide<\/a>.\r\n      <\/p>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<style>\r\n  #inv-cost-factors {\r\n    background: #fff;\r\n    padding: 72px 16px;\r\n  }\r\n\r\n  #inv-cost-factors .lq-header {\r\n    text-align: center;\r\n    max-width: 780px;\r\n    margin: 0 auto 48px;\r\n  }\r\n\r\n  #inv-cost-factors h2 {\r\n    font-size: 30px;\r\n    margin: 0 0 12px;\r\n    position: relative;\r\n    display: inline-block;\r\n  }\r\n\r\n  #inv-cost-factors h2::after {\r\n    content: \"\";\r\n    position: absolute;\r\n    bottom: -8px;\r\n    inset-inline-start: 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    animation: subtlePulse 3s ease-in-out infinite;\r\n  }\r\n\r\n  #inv-cost-factors .subtitle {\r\n    font-size: 17px;\r\n    color: #555;\r\n    line-height: 1.6;\r\n    margin: 0;\r\n  }\r\n\r\n  .lq-split {\r\n    display: flex;\r\n    gap: 48px;\r\n    max-width: 1150px;\r\n    margin: 0 auto;\r\n    align-items: center;\r\n  }\r\n\r\n  \/* Left visual *\/\r\n  #inv-cost-factors .lq-visual {\r\n    flex: 0 0 420px;\r\n  }\r\n\r\n  #inv-cost-factors .lq-visual img {\r\n    width: 100%;\r\n    border-radius: 16px;\r\n    box-shadow: 0 4px 12px rgba(0,0,0,0.08);\r\n  }\r\n\r\n  \/* Right cards *\/\r\n  #inv-cost-factors .lq-card-grid {\r\n    flex: 1;\r\n    display: grid;\r\n    gap: 24px;\r\n  }\r\n\r\n  #inv-cost-factors .card {\r\n    background: #fafafa;\r\n    border-radius: 14px;\r\n    padding: 24px;\r\n    box-shadow: 0 2px 6px rgba(0,0,0,0.05);\r\n    transition: transform 0.2s ease, box-shadow 0.2s ease;\r\n  }\r\n\r\n  #inv-cost-factors .card:hover {\r\n    transform: translateY(-3px);\r\n    box-shadow: 0 6px 14px rgba(0,0,0,0.08);\r\n  }\r\n\r\n  #inv-cost-factors .card .icon {\r\n    font-size: 26px;\r\n    margin-bottom: 12px;\r\n  }\r\n\r\n  #inv-cost-factors .card h3 {\r\n    font-size: 18px;\r\n    margin: 0 0 8px;\r\n  }\r\n\r\n  #inv-cost-factors .card p {\r\n    font-size: 15px;\r\n    color: #555;\r\n    line-height: 1.6;\r\n    margin: 0;\r\n  }\r\n\r\n  \/* Interpretation box *\/\r\n  #inv-cost-factors .lq-interpretation {\r\n    background: #f0f9ff;\r\n    border: 1px solid #cce7ff;\r\n    border-radius: 12px;\r\n    padding: 20px 28px;\r\n    max-width: 880px;\r\n    margin: 48px auto 0;\r\n    font-size: 16px;\r\n    line-height: 1.6;\r\n    color: #333;\r\n  }\r\n\r\n  \/* Mobile *\/\r\n  @media (max-width: 768px) {\r\n    .lq-split {\r\n      flex-direction: column;\r\n    }\r\n    #inv-cost-factors .lq-visual {\r\n      flex: unset;\r\n      max-width: 100%;\r\n      order: 1;\r\n    }\r\n    #inv-cost-factors .lq-card-grid {\r\n      order: 2;\r\n    }\r\n  }\r\n\r\n  @keyframes subtlePulse {\r\n    0%, 100% { opacity: 1; }\r\n    50% { opacity: 0.6; }\r\n  }\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-47bac38 elementor-widget elementor-widget-html\" data-id=\"47bac38\" 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 Cost FAQs -->\r\n<section id=\"inv-cost-faqs\" class=\"lq lq-section\" dir=\"auto\" aria-labelledby=\"faq-title\">\r\n  <div class=\"lq-section-inner\">\r\n    <header class=\"lq-centered\">\r\n      <h2 id=\"faq-title\">Invisalign Cost FAQs<\/h2>\r\n      <p class=\"intro\">\r\n        Common questions patients in Dubai ask about Invisalign pricing, insurance, and affordability.\r\n      <\/p>\r\n    <\/header>\r\n\r\n    <div class=\"faq-timeline\">\r\n      <article class=\"faq-card\">\r\n        <span class=\"faq-dot\"><\/span>\r\n        <div class=\"faq-content\">\r\n          <h3 class=\"faq-question\">Is Invisalign more expensive than braces in Dubai?<\/h3>\r\n          <div class=\"faq-answer\">\r\n            <p>\r\n              Invisalign typically costs <strong>slightly more than metal or ceramic braces<\/strong>, \r\n              but is comparable to lingual braces. The difference reflects the advanced technology and \r\n              discreet appearance. For comparison, see \r\n              <a href=\"\/dubai\/orthodontics\/braces\/cost\/\" class=\"lq-link\">braces cost in Dubai<\/a>.\r\n            <\/p>\r\n          <\/div>\r\n        <\/div>\r\n      <\/article>\r\n\r\n      <article class=\"faq-card\">\r\n        <span class=\"faq-dot\"><\/span>\r\n        <div class=\"faq-content\">\r\n          <h3 class=\"faq-question\">Does insurance cover Invisalign in Dubai?<\/h3>\r\n          <div class=\"faq-answer\">\r\n            <p>\r\n              Most insurance plans in Dubai <strong>do not cover adult orthodontics<\/strong>, including Invisalign. \r\n              Some child or teen policies may cover part of the cost. \r\n              More details are in our <a href=\"\/dubai\/orthodontics\/cost\/\" class=\"lq-link\">orthodontic cost guide<\/a>.\r\n            <\/p>\r\n          <\/div>\r\n        <\/div>\r\n      <\/article>\r\n\r\n      <article class=\"faq-card\">\r\n        <span class=\"faq-dot\"><\/span>\r\n        <div class=\"faq-content\">\r\n          <h3 class=\"faq-question\">How much do refinements cost?<\/h3>\r\n          <div class=\"faq-answer\">\r\n            <p>\r\n              Many Invisalign packages include at least one round of refinements. \r\n              Extra refinements, if needed, may increase the overall cost. \r\n              Clinics vary, so ask whether refinements are bundled in your plan.\r\n            <\/p>\r\n          <\/div>\r\n        <\/div>\r\n      <\/article>\r\n\r\n      <article class=\"faq-card\">\r\n        <span class=\"faq-dot\"><\/span>\r\n        <div class=\"faq-content\">\r\n          <h3 class=\"faq-question\">Are retainers included in Invisalign cost?<\/h3>\r\n          <div class=\"faq-answer\">\r\n            <p>\r\n              Some packages include one set of retainers. Others charge separately, especially for \r\n              <a href=\"\/dubai\/orthodontics\/retainers\/\" class=\"lq-link\">Vivera retainers<\/a>. \r\n              Always confirm what\u2019s included before starting treatment.\r\n            <\/p>\r\n          <\/div>\r\n        <\/div>\r\n      <\/article>\r\n\r\n      <article class=\"faq-card\">\r\n        <span class=\"faq-dot\"><\/span>\r\n        <div class=\"faq-content\">\r\n          <h3 class=\"faq-question\">What is the cheapest Invisalign package in Dubai?<\/h3>\r\n          <div class=\"faq-answer\">\r\n            <p>\r\n              The most affordable option is <strong>Invisalign i7 \/ Express<\/strong>,\r\ntypically AED 7,700\u201312,100 for simple corrections.\r\nCosts rise with Lite, Comprehensive, Teen, and First packages.\r\n            <\/p>\r\n          <\/div>\r\n        <\/div>\r\n      <\/article>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<style>\r\n  #inv-cost-faqs {\r\n    background: linear-gradient(180deg, #fff 0%, #fafafa 100%);\r\n    padding: 80px 20px;\r\n    position: relative;\r\n  }\r\n\r\n  \/* Force title centered *\/\r\n  #inv-cost-faqs header {\r\n    display: flex !important;\r\n    flex-direction: column;\r\n    align-items: center !important;\r\n    text-align: center !important;\r\n  }\r\n\r\n  #inv-cost-faqs h2 {\r\n    margin: 0 0 16px;\r\n    font-size: 30px;\r\n    font-weight: 700;\r\n    position: relative;\r\n    display: inline-block;\r\n  }\r\n\r\n  #inv-cost-faqs h2::after {\r\n    content: \"\";\r\n    position: absolute;\r\n    bottom: -10px;\r\n    inset-inline-start: 50%;\r\n    transform: translateX(-50%);\r\n    width: 80px;\r\n    height: 4px;\r\n    background: linear-gradient(90deg, #ff7a00, #ff5fa2);\r\n    border-radius: 6px;\r\n  }\r\n\r\n  #inv-cost-faqs .intro {\r\n    max-width: 700px;\r\n    margin: 0 auto 60px;\r\n    font-size: 17px;\r\n    line-height: 1.7;\r\n    color: #444;\r\n    text-align: center;\r\n  }\r\n\r\n  \/* Timeline *\/\r\n  .faq-timeline {\r\n    position: relative;\r\n    max-width: 900px;\r\n    margin: 0 auto;\r\n    padding-inline-start: 30px;\r\n    border-inline-start: 2px solid rgba(255, 122, 0, 0.15);\r\n  }\r\n\r\n  .faq-card {\r\n    position: relative;\r\n    margin-bottom: 36px;\r\n    padding-inline-start: 25px;\r\n  }\r\n\r\n  .faq-dot {\r\n    position: absolute;\r\n    inset-inline-start: -10px;\r\n    top: 10px;\r\n    width: 16px;\r\n    height: 16px;\r\n    background: linear-gradient(135deg, #ff7a00, #ff5fa2);\r\n    border-radius: 50%;\r\n    box-shadow: 0 0 6px rgba(255, 95, 162, 0.4);\r\n  }\r\n\r\n  .faq-content {\r\n    background: #fff;\r\n    border-radius: 14px;\r\n    padding: 22px 26px;\r\n    box-shadow: 0 3px 12px rgba(0,0,0,0.05);\r\n    transition: transform 0.25s ease, box-shadow 0.25s ease;\r\n  }\r\n\r\n  .faq-content:hover {\r\n    transform: translateY(-4px);\r\n    box-shadow: 0 8px 18px rgba(0,0,0,0.08);\r\n  }\r\n\r\n  \/* Questions *\/\r\n  .faq-question {\r\n    font-size: 18px;\r\n    margin: 0;\r\n    color: #222;\r\n    position: relative;\r\n    display: inline-block;\r\n    cursor: pointer;\r\n    padding-bottom: 6px;\r\n  }\r\n\r\n  \/* Gradient underline hover *\/\r\n  .faq-question::after {\r\n    content: \"\";\r\n    position: absolute;\r\n    bottom: 0;\r\n    inset-inline-start: 0;\r\n    width: 0;\r\n    height: 3px;\r\n    background: linear-gradient(90deg, #ff7a00, #ff5fa2);\r\n    border-radius: 2px;\r\n    transition: width 0.3s ease;\r\n  }\r\n  .faq-question:hover::after {\r\n    width: 100%;\r\n  }\r\n\r\n  \/* Answers hidden by default *\/\r\n  .faq-answer {\r\n    max-height: 0;\r\n    overflow: hidden;\r\n    opacity: 0;\r\n    transition: all 0.35s ease;\r\n  }\r\n  .faq-answer.open {\r\n    max-height: 500px; \/* big enough for content *\/\r\n    opacity: 1;\r\n    margin-top: 10px;\r\n  }\r\n\r\n  .faq-answer p {\r\n    font-size: 15px;\r\n    line-height: 1.65;\r\n    color: #555;\r\n    margin: 0;\r\n  }\r\n\r\n  @media (max-width: 768px) {\r\n    #inv-cost-faqs {\r\n      padding: 60px 16px;\r\n    }\r\n    .faq-timeline {\r\n      padding-inline-start: 20px;\r\n    }\r\n  }\r\n<\/style>\r\n\r\n<script>\r\n  document.addEventListener(\"DOMContentLoaded\", () => {\r\n    const questions = document.querySelectorAll(\"#inv-cost-faqs .faq-question\");\r\n    questions.forEach(q => {\r\n      q.addEventListener(\"click\", () => {\r\n        const answer = q.nextElementSibling;\r\n        answer.classList.toggle(\"open\");\r\n      });\r\n    });\r\n  });\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-bdb4740 elementor-widget elementor-widget-global elementor-global-4669 elementor-widget-html\" data-id=\"bdb4740\" 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-8d22742 elementor-widget elementor-widget-global elementor-global-5704 elementor-widget-html\" data-id=\"8d22742\" 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<!-- What is LumiQuest (Premium Trust Section) -->\r\n<section class=\"lq lq-section\" id=\"what-is-lumiquest\" dir=\"auto\" aria-labelledby=\"what-lq-title\">\r\n  <style>\r\n    #what-is-lumiquest .lq-section-inner{\r\n      max-width:1100px;\r\n      margin:0 auto;\r\n      text-align:center;\r\n    }\r\n\r\n    #what-is-lumiquest .trust-grid{\r\n      display:grid;\r\n      gap:24px;\r\n      grid-template-columns:repeat(auto-fit,minmax(280px,1fr));\r\n      align-items:stretch;\r\n    }\r\n\r\n    #what-is-lumiquest .trust-card{\r\n      background:#fff;\r\n      border-radius:16px;\r\n      padding:28px 22px;\r\n      box-shadow:0 6px 18px rgba(0,0,0,.05);\r\n    }\r\n\r\n    \/* \ud83d\udd39 Mobile gutter fix: tighter card padding *\/\r\n    @media (max-width:768px){\r\n      #what-is-lumiquest .trust-card{\r\n        padding:22px 14px;\r\n      }\r\n    }\r\n\r\n    #what-is-lumiquest h3{\r\n      font-size:18px;\r\n      margin:0 0 10px;\r\n      color:#1b1b1b;\r\n    }\r\n    #what-is-lumiquest p{\r\n      margin:0;\r\n      color:#555;\r\n      line-height:1.5;\r\n      font-size:15px;\r\n    }\r\n    #what-is-lumiquest img{\r\n      width:52px;\r\n      height:52px;\r\n      margin-bottom:16px;\r\n    }\r\n  <\/style>\r\n\r\n  <div class=\"lq-section-inner\">\r\n    <div class=\"lq-subtitle\" style=\"margin-bottom:28px;\">\r\n      <h2 id=\"what-lq-title\">What is LumiQuest?<\/h2>\r\n      <p>\r\n        LumiQuest is a <strong>private dental guidance service<\/strong> that helps you\r\n        find an orthodontist in Dubai with clarity and care.\r\n      <\/p>\r\n    <\/div>\r\n\r\n    <div class=\"trust-grid\">\r\n      <!-- Card 1 -->\r\n      <article class=\"trust-card\">\r\n        <img decoding=\"async\" src=\"https:\/\/lumiquestdental.com\/wp-content\/uploads\/2025\/05\/icon-no-ads-lumiquest.svg.png.webp\" alt=\"Orthodontic guidance without ads or sponsored listings\" title=\"| LumiQuest Dental Circle\">\r\n        <h3>Your Needs, Not Ads<\/h3>\r\n        <p>No public listings. No sponsored spots. Just tailored guidance for your case.<\/p>\r\n      <\/article>\r\n\r\n      <!-- Card 2 -->\r\n      <article class=\"trust-card\">\r\n        <img decoding=\"async\" src=\"https:\/\/lumiquestdental.com\/wp-content\/uploads\/2025\/05\/icon-clinic-vetting.svg.png.webp\" alt=\"Carefully considered orthodontic clinics in Dubai\" title=\"| LumiQuest Dental Circle\">\r\n        <h3>Carefully Considered Clinics<\/h3>\r\n        <p>We look beyond marketing and make sense of real-world signals before guiding you.<\/p>\r\n      <\/article>\r\n\r\n      <!-- Card 3 -->\r\n      <article class=\"trust-card\">\r\n        <img decoding=\"async\" src=\"https:\/\/lumiquestdental.com\/wp-content\/uploads\/2025\/07\/icon-circle-of-trust-lumiquest.svg.png.webp\" alt=\"Ethical orthodontists in Dubai within LumiQuest\u2019s circle of trust\" title=\"| LumiQuest Dental Circle\">\r\n        <h3>A Circle of Trust<\/h3>\r\n        <p>Ethical, patient-first orthodontists \u2014 so you can move forward without pressure or surprises.<\/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-e0064c5 elementor-widget elementor-widget-global elementor-global-5718 elementor-widget-html\" data-id=\"e0064c5\" 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 \u2022 Closing Trust Section (Premium, RTL-safe) -->\r\n<section id=\"lq-closing-trust\" class=\"lq lq-section\" aria-labelledby=\"trust-title\" dir=\"auto\">\r\n  <style>\r\n    #lq-closing-trust{\r\n      --lq-brand:#ff7a00;\r\n      --lq-text:#101828;\r\n      --lq-muted:#475467;\r\n      --lq-bg:#f9fafb;\r\n      --lq-card:#ffffff;\r\n      --lq-border:rgba(16,24,40,.08);\r\n      --lq-shadow:0 6px 20px rgba(16,24,40,.06);\r\n      --radius:20px;\r\n\r\n      background:var(--lq-bg);\r\n      padding:clamp(36px,4vw,64px) clamp(18px,3vw,28px);\r\n    }\r\n\r\n    \/* \ud83d\udd39 Mobile gutter override: 8px each side *\/\r\n    @media (max-width:768px){\r\n      #lq-closing-trust{\r\n        padding-left:8px !important;\r\n        padding-right:8px !important;\r\n      }\r\n    }\r\n\r\n    #lq-closing-trust .trust-inner{\r\n      max-width:820px;\r\n      margin:0 auto;\r\n      text-align:center;\r\n    }\r\n\r\n    #lq-closing-trust .trust-card{\r\n      background:var(--lq-card);\r\n      border:1px solid var(--lq-border);\r\n      border-radius:var(--radius);\r\n      box-shadow:var(--lq-shadow);\r\n      padding:clamp(28px,3vw,42px);\r\n    }\r\n\r\n    #lq-closing-trust h2{\r\n      margin:0 0 14px;\r\n      font-size:clamp(24px,3.4vw,36px);\r\n      font-weight:700;\r\n      color:var(--lq-text);\r\n    }\r\n\r\n    #lq-closing-trust p{\r\n      margin:0;\r\n      color:var(--lq-muted);\r\n      font-size:clamp(16px,1.7vw,18px);\r\n      line-height:1.6;\r\n    }\r\n\r\n    \/* Decorative accent *\/\r\n    #lq-closing-trust .accent{\r\n      width:46px; height:5px; border-radius:999px;\r\n      margin:0 auto 18px;\r\n      background:linear-gradient(90deg, var(--lq-brand), #ffb37a);\r\n      box-shadow:0 4px 14px rgba(255,122,0,.25);\r\n    }\r\n\r\n    \/* Arabic alignment respect *\/\r\n    html[dir=\"rtl\"] #lq-closing-trust .trust-inner{\r\n      text-align:center; \/* keep symmetry *\/\r\n    }\r\n  <\/style>\r\n\r\n  <div class=\"trust-inner\">\r\n    <div class=\"trust-card\">\r\n      <div class=\"accent\" aria-hidden=\"true\"><\/div>\r\n      <h2 id=\"trust-title\">Find a Trusted Orthodontist in Dubai<\/h2>\r\n<p>\r\n  Your orthodontic journey should start with trust.\r\n  <span class=\"ltr\">LumiQuest<\/span> guides you to a suitable orthodontist based on your case,\r\n  priorities, and preferences \u2014 without ads, rankings, or public listings.\r\n<\/p>\r\n\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-fef7928 elementor-widget elementor-widget-global elementor-global-4669 elementor-widget-html\" data-id=\"fef7928\" 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-2b76248 elementor-widget elementor-widget-global elementor-global-5722 elementor-widget-html\" data-id=\"2b76248\" 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: Reassurance Text Only (Final Closing Push) -->\r\n<section class=\"lq-cta\" dir=\"auto\" aria-label=\"Find a dentist reassurance\">\r\n<p class=\"cta-sub\">\r\n  <span aria-hidden=\"true\">\u2714<\/span>\r\n  Guidance grounded in safety, ethics, and real-world signals \u2014 in Dubai\r\n<\/p>\r\n\r\n\r\n  <p class=\"cta-extra\">\r\n    Your smile deserves <strong>clarity, trust, care \u2014 and privacy<\/strong><br>\r\n    <span class=\"cta-note\">No ads \u00b7 No sponsored spots \u00b7 100% patient-first \u00b7 Fully confidential<\/span>\r\n  <\/p>\r\n<\/section>\r\n\r\n<style>\r\n  .lq-cta {\r\n    margin: 40px auto;\r\n    max-width: 760px;\r\n    text-align: center;\r\n  }\r\n\r\n  .lq-cta .cta-sub {\r\n    font-size: 18px;\r\n    font-weight: 600;\r\n    color: #333;\r\n    margin-bottom: 8px;\r\n  }\r\n\r\n  .lq-cta .cta-sub span {\r\n    color: var(--lq-brand, #ff7a00);\r\n    margin-right: 6px;\r\n  }\r\n\r\n  .lq-cta .cta-extra {\r\n    font-size: 16px;\r\n    line-height: 1.6;\r\n    color: #444;\r\n    margin: 0;\r\n  }\r\n\r\n  .lq-cta .cta-extra strong {\r\n    color: #000;\r\n  }\r\n\r\n  .lq-cta .cta-note {\r\n    display: inline-block;\r\n    margin-top: 4px;\r\n    font-size: 14px;\r\n    color: #777;\r\n  }\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-aed1d72 elementor-widget elementor-widget-global elementor-global-4673 elementor-widget-html\" data-id=\"aed1d72\" 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-74ecfee elementor-widget elementor-widget-shortcode\" data-id=\"74ecfee\" 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 Cost in Dubai How much does Invisalign really cost in Dubai? Prices vary depending on the package you need \u2014 from short, simple cases to full treatments for adults, teens, or children. LumiQuest breaks down Dubai-specific Invisalign pricing ranges, what\u2019s usually included, and the key factors that affect your total investment. For a structured [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":3544,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-5874","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/lumiquestdental.com\/ar\/wp-json\/wp\/v2\/pages\/5874","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=5874"}],"version-history":[{"count":64,"href":"https:\/\/lumiquestdental.com\/ar\/wp-json\/wp\/v2\/pages\/5874\/revisions"}],"predecessor-version":[{"id":12530,"href":"https:\/\/lumiquestdental.com\/ar\/wp-json\/wp\/v2\/pages\/5874\/revisions\/12530"}],"up":[{"embeddable":true,"href":"https:\/\/lumiquestdental.com\/ar\/wp-json\/wp\/v2\/pages\/3544"}],"wp:attachment":[{"href":"https:\/\/lumiquestdental.com\/ar\/wp-json\/wp\/v2\/media?parent=5874"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}