{"id":38541,"date":"2026-04-22T12:45:31","date_gmt":"2026-04-22T09:45:31","guid":{"rendered":"https:\/\/ukuni.org\/?page_id=38541"},"modified":"2026-04-22T12:45:33","modified_gmt":"2026-04-22T09:45:33","slug":"school-visit-jeddah","status":"publish","type":"page","link":"https:\/\/ukuni.org\/ar\/school-visit-jeddah\/","title":{"rendered":"School Visit | Jeddah"},"content":{"rendered":"<section \n  class=\"inner-banner ibnr-1 bg-[url(&#039;https:\/\/ukuni.org\/wp-content\/themes\/ukuni\/assets\/images\/inner-banner.png&#039;)] bg-cover bg-center w-[95%] md:w-[98%] m-auto rounded-3xl \" \n    >\n  <div class=\"container mx-auto px-5 md:px-10 h-[350px] flex flex-col justify-center items-center text-center\">\n    <h1 class=\"font-poppins font-semibold text-[36px] leading-[40px] sm:text-[40px] sm:leading-[48px] md:text-[48px] md:leading-[56px] lg:text-[54px] lg:leading-[64px] tracking-[0%] capitalize text-[#072440]\">\n      School Visit Jeddah    <\/h1>\n    <!-- Breadcrumb -->\n      <\/div>\n<\/section>\n\n\n\n<style>\n  \/* ========== SVJ Scoped Styles (prefix: svj-) ========== *\/\n  .svj-container {\n    max-width: 900px;\n    margin: 40px auto;\n    padding: 40px 30px;\n    font-family: 'Rubik', sans-serif;\n    background: #ffffff;\n    border-radius: 16px;\n    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);\n    overflow: visible !important;\n  }\n\n  .svj-custom-form {\n    display: flex;\n    flex-wrap: wrap;\n    gap: 20px;\n    justify-content: space-between;\n    overflow: visible !important;\n  }\n\n  .svj-custom-form .svj-form-row {\n    display: flex;\n    width: 100%;\n    justify-content: space-between;\n    gap: 20px;\n    flex-wrap: wrap;\n    margin-bottom: 0px;\n    overflow: visible !important;\n  }\n\n  .svj-custom-form .svj-form-input,\n  .svj-field-style,\n  .svj-form-group input[type=\"text\"],\n  .svj-form-group input[type=\"email\"],\n  .svj-form-group input[type=\"tel\"] {\n    height: 72px;\n    width: 100%;\n    margin-bottom: 0px;\n    box-sizing: border-box;\n    border-radius: 15px;\n    border: 1px solid rgba(0, 0, 0, 0.1);\n    background: #f8faff;\n    padding: 25px 32px;\n    font-family: 'Rubik', sans-serif;\n    font-size: 18px;\n    font-weight: 300;\n    line-height: 30px;\n    color: #121212;\n    transition: all 0.3s ease;\n  }\n\n  .svj-custom-form .svj-form-input::placeholder,\n  .svj-form-group input::placeholder {\n    color: #9c9ea6;\n  }\n\n  .svj-custom-form .svj-form-input:focus,\n  .svj-form-group input:focus {\n    outline: none;\n    border-color: #CD2122;\n    background: #fff;\n  }\n\n  .svj-form-group {\n    width: 100%;\n    margin-bottom: 0px;\n  }\n\n  .svj-form-group.svj-full-width {\n    width: 100%;\n  }\n\n  .svj-form-group.svj-full-width .svj-form-input,\n  .svj-form-group.svj-full-width .svj-phone-wrapper {\n    width: 100% !important;\n  }\n\n  .svj-form-group.svj-full-width .svj-phone-input {\n    flex: 1;\n    min-width: 0;\n    width: 100% !important;\n  }\n\n  .svj-form-group.svj-full-width .svj-country-selector + .select2-container {\n    width: 200px !important;\n    flex-shrink: 0;\n  }\n\n  .svj-form-group.svj-full-width .svj-phone-wrapper {\n    display: flex !important;\n    gap: 12px;\n    align-items: stretch;\n  }\n\n  .svj-form-group label {\n    display: block;\n    margin-bottom: 10px;\n    font-weight: 500;\n    color: #121212;\n    font-size: 16px;\n  }\n\n  \/* ========== SVJ Select2 \u2014 scoped inside .svj-container ========== *\/\n  .svj-container .select2-container {\n    width: 100% !important;\n    max-width: 100% !important;\n    display: block !important;\n    box-sizing: border-box !important;\n  }\n\n  .svj-container .select2-container--default .select2-selection--single {\n    background-color: #f8faff !important;\n    border: 1px solid rgba(0, 0, 0, 0.1) !important;\n    border-radius: 15px !important;\n    height: 72px !important;\n    display: flex !important;\n    align-items: center !important;\n    padding: 20px 15px !important;\n    transition: all 0.3s ease;\n    width: 100% !important;\n    box-sizing: border-box !important;\n  }\n\n  .svj-container .select2-container--default.select2-container--focus .select2-selection--single,\n  .svj-container .select2-container--default.select2-container--open .select2-selection--single {\n    border-color: #CD2122 !important;\n    background-color: #fff !important;\n  }\n\n  .svj-container .select2-container--default .select2-selection--single .select2-selection__rendered {\n    color: #9c9ea6 !important;\n    line-height: 30px !important;\n    font-size: 18px !important;\n    font-weight: 300 !important;\n    text-align: left !important;\n    font-family: 'Rubik', sans-serif !important;\n    padding: 0 !important;\n    padding-right: 40px !important;\n    width: 100% !important;\n    box-sizing: border-box !important;\n    display: block !important;\n    overflow: hidden !important;\n    text-overflow: ellipsis !important;\n    white-space: nowrap !important;\n  }\n\n  .svj-container .select2-container--default .select2-selection--single .select2-selection__arrow {\n    height: 72px !important;\n    right: 15px !important;\n    width: 20px !important;\n  }\n\n  .svj-container span.select2-selection.select2-selection--single {\n    width: 100% !important;\n    max-width: 100% !important;\n    padding-left: 15px !important;\n    padding-right: 45px !important;\n    display: flex !important;\n    align-items: center !important;\n    box-sizing: border-box !important;\n  }\n\n  \/* ========== SVJ Multi Select2 ========== *\/\n  .svj-container .select2-container--default .select2-selection--multiple {\n    background-color: #f8faff !important;\n    border: 1px solid rgba(0, 0, 0, 0.1) !important;\n    border-radius: 15px !important;\n    min-height: 72px !important;\n    padding: 10px 15px !important;\n    box-sizing: border-box !important;\n    transition: all 0.3s ease;\n  }\n\n  .svj-container .select2-container--default.select2-container--focus .select2-selection--multiple,\n  .svj-container .select2-container--default.select2-container--open .select2-selection--multiple {\n    border-color: #CD2122 !important;\n    background-color: #fff !important;\n  }\n\n  .svj-container .select2-container--default .select2-selection--multiple .select2-selection__rendered {\n    display: flex !important;\n    flex-wrap: wrap !important;\n    gap: 6px !important;\n    padding: 5px 0 !important;\n    align-items: center !important;\n  }\n\n  .svj-container .select2-container--default .select2-selection--multiple .select2-selection__choice {\n    background-color: #CD2122 !important;\n    border: none !important;\n    border-radius: 8px !important;\n    color: #fff !important;\n    padding: 5px 12px !important;\n    font-family: 'Rubik', sans-serif !important;\n    font-size: 14px !important;\n    font-weight: 400 !important;\n    display: flex !important;\n    align-items: center !important;\n    gap: 6px !important;\n  }\n\n  .svj-container .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {\n    color: rgba(255,255,255,0.8) !important;\n    font-size: 16px !important;\n    line-height: 1 !important;\n    cursor: pointer !important;\n    order: 2 !important;\n  }\n\n  .svj-container .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {\n    color: #fff !important;\n  }\n\n  .svj-container .select2-container--default .select2-selection--multiple .select2-selection__placeholder {\n    color: #9c9ea6 !important;\n    font-size: 18px !important;\n    font-weight: 300 !important;\n    font-family: 'Rubik', sans-serif !important;\n    line-height: 50px !important;\n  }\n\n  .svj-container .select2-container--default .select2-selection--multiple .select2-search__field {\n    font-family: 'Rubik', sans-serif !important;\n    font-size: 18px !important;\n    font-weight: 300 !important;\n    color: #121212 !important;\n  }\n\n  \/* ========== SVJ Phone Wrapper ========== *\/\n  .svj-phone-wrapper {\n    display: flex !important;\n    gap: 12px;\n    align-items: stretch;\n    width: 100%;\n  }\n\n  .svj-country-selector {\n    width: 200px !important;\n    min-width: 200px;\n    flex-shrink: 0;\n  }\n\n  .svj-phone-input {\n    flex: 1;\n    min-width: 0;\n  }\n\n  .svj-country-selector + .select2-container {\n    width: 200px !important;\n    max-width: 200px !important;\n  }\n\n  .svj-country-selector + .select2-container .select2-selection__rendered {\n    display: flex !important;\n    align-items: center !important;\n  }\n\n  \/* ========== SVJ Submit Button ========== *\/\n  .svj-button-form {\n    width: 100% !important;\n    padding: 20px 40px;\n    height: 60px;\n    display: flex;\n    justify-content: center;\n    align-items: center;\n    border-radius: 10px;\n    border: 2px solid #CD2122;\n    color: #CD2122;\n    font-family: 'Rubik', sans-serif;\n    font-size: 16px;\n    font-weight: 400;\n    cursor: pointer;\n    background-color: transparent;\n    transition: all 0.3s ease;\n    margin-top: 10px;\n  }\n\n  .svj-button-form:hover:not(:disabled) {\n    background-color: #CD2122 !important;\n    color: white;\n    border-color: #CD2122 !important;\n    transform: translateY(-2px);\n    box-shadow: 0 6px 20px rgba(205, 33, 34, 0.3);\n  }\n\n  .svj-button-form:disabled {\n    opacity: 0.6;\n    cursor: not-allowed;\n    transform: none;\n  }\n\n  \/* ========== SVJ Terms ========== *\/\n  .svj-terms-group {\n    margin-top: 0px;\n    margin-bottom: 0px;\n    padding: 20px !important;\n    background: #f8faff;\n    border-radius: 10px;\n    border: 1px solid rgba(0, 0, 0, 0.1);\n    width: 100%;\n    display: flex !important;\n    align-items: center !important;\n    min-height: 60px !important;\n  }\n\n  .svj-terms-group .svj-checkbox-label {\n    display: flex !important;\n    gap: 12px;\n    align-items: center !important;\n    line-height: 1.6;\n    font-size: 15px;\n    cursor: pointer;\n    color: #121212;\n    font-family: 'Rubik', sans-serif;\n    width: 100%;\n    margin: 0 !important;\n  }\n\n  .svj-terms-group input[type=\"checkbox\"] {\n    width: 20px !important;\n    height: 20px !important;\n    min-height: 20px !important;\n    margin: 0 !important;\n    cursor: pointer;\n    flex-shrink: 0;\n    accent-color: #CD2122;\n  }\n\n  .svj-terms-group .svj-checkbox-label span {\n    flex: 1;\n    line-height: 1.6;\n  }\n\n  .svj-terms-group a {\n    color: #CD2122;\n    text-decoration: none;\n    font-weight: 500;\n  }\n\n  .svj-terms-group a:hover {\n    text-decoration: underline;\n  }\n\n  \/* ========== SVJ Utilities ========== *\/\n  .svj-hidden {\n    display: none !important;\n  }\n\n  .svj-spinner {\n    display: inline-block;\n    width: 16px;\n    height: 16px;\n    border: 2px solid rgba(255,255,255,0.3);\n    border-radius: 50%;\n    border-top-color: #fff;\n    animation: svj-spin 0.8s linear infinite;\n    margin-right: 10px;\n    vertical-align: middle;\n  }\n\n  @keyframes svj-spin {\n    to { transform: rotate(360deg); }\n  }\n\n  .svj-country-flag {\n    width: 20px;\n    height: 15px;\n    margin-right: 8px;\n    vertical-align: middle;\n    border-radius: 2px;\n  }\n\n  \/* ========== SVJ Form Note ========== *\/\n  .svj-form-note {\n    width: 100%;\n    margin-top: 5px;\n    text-align: center;\n    font-family: 'Rubik', sans-serif;\n    font-size: 13px;\n    font-weight: 400;\n    color: #9c9ea6;\n    line-height: 1.6;\n  }\n\n  .svj-form-note::before {\n    content: '* ';\n    font-weight: 500;\n  }\n\n  \/* ========== SVJ Form Header ========== *\/\n  .svj-form-header {\n    text-align: center;\n    margin-bottom: 40px;\n    animation: svj-fadeInDown 0.6s ease-out;\n  }\n\n  @keyframes svj-fadeInDown {\n    from { opacity: 0; transform: translateY(-20px); }\n    to { opacity: 1; transform: translateY(0); }\n  }\n\n  \/* ========== SVJ Responsive ========== *\/\n  @media (max-width: 768px) {\n    .svj-container {\n      padding: 30px 20px;\n      margin: 20px auto;\n    }\n\n    .svj-custom-form .svj-form-input,\n    .svj-form-group,\n    .svj-form-group input,\n    .svj-container .select2-container,\n    .svj-container .select2-container--default .select2-selection--single {\n      width: 100% !important;\n      max-width: 100% !important;\n    }\n\n    .svj-form-group.svj-full-width .svj-phone-wrapper {\n      flex-direction: column;\n      gap: 15px;\n    }\n\n    .svj-form-group.svj-full-width .svj-country-selector + .select2-container {\n      width: 100% !important;\n      max-width: 100% !important;\n    }\n\n    .svj-phone-wrapper {\n      flex-direction: column;\n    }\n\n    .svj-country-selector,\n    .svj-country-selector + .select2-container {\n      width: 100% !important;\n      max-width: 100% !important;\n    }\n  }\n<\/style>\n\n<div class=\"svj-form-header\" id=\"svj-registration-1\"><\/div>\n\n<div class=\"svj-container\" data-form-id=\"svj-form-1\">\n  <form id=\"svj-registration-form-1\" class=\"svj-custom-form notranslate svj-reg-form\" method=\"POST\" novalidate>\n\n    <!-- First Name -->\n    <div class=\"svj-form-row\">\n      <div class=\"svj-form-group svj-full-width\">\n        <label for=\"svj-first-name-1\">First Name *<\/label>\n        <input type=\"text\" id=\"svj-first-name-1\" name=\"first_name\" class=\"svj-form-input svj-first-name\" required autocomplete=\"given-name\" placeholder=\"First Name\">\n      <\/div>\n    <\/div>\n\n    <!-- Last Name -->\n    <div class=\"svj-form-row\">\n      <div class=\"svj-form-group svj-full-width\">\n        <label for=\"svj-last-name-1\">Last Name *<\/label>\n        <input type=\"text\" id=\"svj-last-name-1\" name=\"last_name\" class=\"svj-form-input svj-last-name\" required autocomplete=\"family-name\" placeholder=\"Last Name\">\n      <\/div>\n    <\/div>\n\n    <!-- Email -->\n    <div class=\"svj-form-row\">\n      <div class=\"svj-form-group svj-full-width\">\n        <label for=\"svj-email-1\">Email *<\/label>\n        <input type=\"email\" id=\"svj-email-1\" name=\"email\" class=\"svj-form-input svj-email\" required autocomplete=\"email\" placeholder=\"Email Address\">\n      <\/div>\n    <\/div>\n\n    <!-- Phone -->\n    <div class=\"svj-form-row\">\n      <div class=\"svj-form-group svj-full-width\">\n        <label for=\"svj-phone-1\">Phone *<\/label>\n        <input type=\"tel\" id=\"svj-phone-1\" name=\"phone\" class=\"svj-form-input svj-phone\" required autocomplete=\"tel\" placeholder=\"Enter phone number\">\n      <\/div>\n    <\/div>\n\n    <!-- =====================================================\n         MODIFICATION 1: Country of Residence \u2014 hidden, locked to Saudi Arabia (197)\n         ===================================================== -->\n    <div class=\"svj-form-row svj-hidden\">\n      <div class=\"svj-form-group svj-full-width\">\n        <select id=\"svj-country-1\" name=\"country\" class=\"svj-field-style svj-country\">\n          <option value=\"197\" selected>Saudi Arabia<\/option>\n        <\/select>\n      <\/div>\n    <\/div>\n\n    <!-- State\/Province (Saudi only \u2014 always shown because country is locked to SA) -->\n    <div class=\"svj-form-row\">\n      <div class=\"svj-form-group svj-full-width svj-state-group\">\n        <label for=\"svj-state-select-1\">State\/Province *<\/label>\n        <select id=\"svj-state-select-1\" name=\"state_select\" class=\"svj-field-style svj-state-select\" required>\n          <option value=\"\">Select region<\/option>\n          <option value=\"Tabuk Region\" data-office=\"Jeddah\">Tabuk Region<\/option>\n          <option value=\"Madinah Region\" data-office=\"Jeddah\">Madinah Region<\/option>\n          <option value=\"Makkah Region\" data-office=\"Jeddah\">Makkah Region<\/option>\n          <option value=\"Al Bahah Region\" data-office=\"Jeddah\">Al Bahah Region<\/option>\n          <option value=\"Aseer Region\" data-office=\"Jeddah\">Aseer Region<\/option>\n          <option value=\"Jazan Region\" data-office=\"Jeddah\">Jazan Region<\/option>\n          <option value=\"Najran Region\" data-office=\"Jeddah\">Najran Region<\/option>\n        <\/select>\n      <\/div>\n    <\/div>\n\n    <!-- Nationality -->\n    <div class=\"svj-form-row\">\n      <div class=\"svj-form-group svj-full-width\">\n        <label for=\"svj-country-passport-1\">Nationality *<\/label>\n        <select id=\"svj-country-passport-1\" name=\"country_of_passport\" class=\"svj-field-style svj-country-passport\" required>\n          <option value=\"\">Select passport country<\/option>\n          <option value=\"1\">Afghanistan<\/option>\n          <option value=\"74\">\u00c5land Islands<\/option>\n          <option value=\"2\">Albania<\/option>\n          <option value=\"4\">Algeria<\/option>\n          <option value=\"5\">American Samoa<\/option>\n          <option value=\"6\">Andorra<\/option>\n          <option value=\"7\">Angola<\/option>\n          <option value=\"190\">Anguilla<\/option>\n          <option value=\"3\">Antarctica<\/option>\n          <option value=\"8\">Antigua and Barbuda<\/option>\n          <option value=\"10\">Argentina<\/option>\n          <option value=\"16\">Armenia<\/option>\n          <option value=\"153\">Aruba<\/option>\n          <option value=\"11\">Australia<\/option>\n          <option value=\"12\">Austria<\/option>\n          <option value=\"9\">Azerbaijan<\/option>\n          <option value=\"13\">Bahamas<\/option>\n          <option value=\"14\">Bahrain<\/option>\n          <option value=\"15\">Bangladesh<\/option>\n          <option value=\"17\">Barbados<\/option>\n          <option value=\"34\">Belarus<\/option>\n          <option value=\"18\">Belgium<\/option>\n          <option value=\"26\">Belize<\/option>\n          <option value=\"59\">Benin<\/option>\n          <option value=\"19\">Bermuda<\/option>\n          <option value=\"20\">Bhutan<\/option>\n          <option value=\"21\">Bolivia, Plurinational State of<\/option>\n          <option value=\"155\">Bonaire, Sint Eustatius and Saba<\/option>\n          <option value=\"22\">Bosnia and Herzegovina<\/option>\n          <option value=\"23\">Botswana<\/option>\n          <option value=\"24\">Bouvet Island<\/option>\n          <option value=\"25\">Brazil<\/option>\n          <option value=\"27\">British Indian Ocean Territory<\/option>\n          <option value=\"30\">Brunei Darussalam<\/option>\n          <option value=\"31\">Bulgaria<\/option>\n          <option value=\"242\">Burkina Faso<\/option>\n          <option value=\"33\">Burundi<\/option>\n          <option value=\"35\">Cambodia<\/option>\n          <option value=\"36\">Cameroon<\/option>\n          <option value=\"37\">Canada<\/option>\n          <option value=\"38\">Cape Verde<\/option>\n          <option value=\"39\">Cayman Islands<\/option>\n          <option value=\"40\">Central African Republic<\/option>\n          <option value=\"42\">Chad<\/option>\n          <option value=\"43\">Chile<\/option>\n          <option value=\"44\">China<\/option>\n          <option value=\"46\">Christmas Island<\/option>\n          <option value=\"47\">Cocos (Keeling) Islands<\/option>\n          <option value=\"48\">Colombia<\/option>\n          <option value=\"49\">Comoros<\/option>\n          <option value=\"51\">Congo<\/option>\n          <option value=\"52\">Congo, the Democratic Republic of the<\/option>\n          <option value=\"53\">Cook Islands<\/option>\n          <option value=\"54\">Costa Rica<\/option>\n          <option value=\"110\">C\u00f4te d&#039;Ivoire<\/option>\n          <option value=\"55\">Croatia<\/option>\n          <option value=\"56\">Cuba<\/option>\n          <option value=\"152\">Cura\u00e7ao<\/option>\n          <option value=\"57\">Cyprus<\/option>\n          <option value=\"58\">Czech Republic<\/option>\n          <option value=\"60\">Denmark<\/option>\n          <option value=\"79\">Djibouti<\/option>\n          <option value=\"61\">Dominica<\/option>\n          <option value=\"62\">Dominican Republic<\/option>\n          <option value=\"63\">Ecuador<\/option>\n          <option value=\"234\">Egypt<\/option>\n          <option value=\"64\">El Salvador<\/option>\n          <option value=\"65\">Equatorial Guinea<\/option>\n          <option value=\"67\">Eritrea<\/option>\n          <option value=\"68\">Estonia<\/option>\n          <option value=\"66\">Ethiopia<\/option>\n          <option value=\"70\">Falkland Islands (Malvinas)<\/option>\n          <option value=\"69\">Faroe Islands<\/option>\n          <option value=\"72\">Fiji<\/option>\n          <option value=\"73\">Finland<\/option>\n          <option value=\"75\">France<\/option>\n          <option value=\"76\">French Guiana<\/option>\n          <option value=\"77\">French Polynesia<\/option>\n          <option value=\"78\">French Southern Territories<\/option>\n          <option value=\"80\">Gabon<\/option>\n          <option value=\"82\">Gambia<\/option>\n          <option value=\"81\">Georgia<\/option>\n          <option value=\"84\">Germany<\/option>\n          <option value=\"85\">Ghana<\/option>\n          <option value=\"86\">Gibraltar<\/option>\n          <option value=\"88\">Greece<\/option>\n          <option value=\"89\">Greenland<\/option>\n          <option value=\"90\">Grenada<\/option>\n          <option value=\"91\">Guadeloupe<\/option>\n          <option value=\"92\">Guam<\/option>\n          <option value=\"93\">Guatemala<\/option>\n          <option value=\"236\">Guernsey<\/option>\n          <option value=\"94\">Guinea<\/option>\n          <option value=\"179\">Guinea-Bissau<\/option>\n          <option value=\"95\">Guyana<\/option>\n          <option value=\"96\">Haiti<\/option>\n          <option value=\"97\">Heard Island and McDonald Islands<\/option>\n          <option value=\"98\">Holy See (Vatican City State)<\/option>\n          <option value=\"99\">Honduras<\/option>\n          <option value=\"100\">Hong Kong<\/option>\n          <option value=\"101\">Hungary<\/option>\n          <option value=\"102\">Iceland<\/option>\n          <option value=\"103\">India<\/option>\n          <option value=\"104\">Indonesia<\/option>\n          <option value=\"105\">Iran, Islamic Republic of<\/option>\n          <option value=\"106\">Iraq<\/option>\n          <option value=\"107\">Ireland<\/option>\n          <option value=\"238\">Isle of Man<\/option>\n          <option value=\"109\">Italy<\/option>\n          <option value=\"111\">Jamaica<\/option>\n          <option value=\"112\">Japan<\/option>\n          <option value=\"237\">Jersey<\/option>\n          <option value=\"114\">Jordan<\/option>\n          <option value=\"113\">Kazakhstan<\/option>\n          <option value=\"115\">Kenya<\/option>\n          <option value=\"87\">Kiribati<\/option>\n          <option value=\"116\">Korea, Democratic People&#039;s Republic of<\/option>\n          <option value=\"117\">Korea, Republic of<\/option>\n          <option value=\"118\">Kuwait<\/option>\n          <option value=\"119\">Kyrgyzstan<\/option>\n          <option value=\"120\">Lao People&#039;s Democratic Republic<\/option>\n          <option value=\"123\">Latvia<\/option>\n          <option value=\"121\">Lebanon<\/option>\n          <option value=\"122\">Lesotho<\/option>\n          <option value=\"124\">Liberia<\/option>\n          <option value=\"125\">Libya<\/option>\n          <option value=\"126\">Liechtenstein<\/option>\n          <option value=\"127\">Lithuania<\/option>\n          <option value=\"128\">Luxembourg<\/option>\n          <option value=\"129\">Macao<\/option>\n          <option value=\"233\">Macedonia, the former Yugoslav Republic of<\/option>\n          <option value=\"130\">Madagascar<\/option>\n          <option value=\"131\">Malawi<\/option>\n          <option value=\"132\">Malaysia<\/option>\n          <option value=\"133\">Maldives<\/option>\n          <option value=\"134\">Mali<\/option>\n          <option value=\"135\">Malta<\/option>\n          <option value=\"168\">Marshall Islands<\/option>\n          <option value=\"136\">Martinique<\/option>\n          <option value=\"137\">Mauritania<\/option>\n          <option value=\"138\">Mauritius<\/option>\n          <option value=\"50\">Mayotte<\/option>\n          <option value=\"139\">Mexico<\/option>\n          <option value=\"167\">Micronesia, Federated States of<\/option>\n          <option value=\"142\">Moldova, Republic of<\/option>\n          <option value=\"140\">Monaco<\/option>\n          <option value=\"141\">Mongolia<\/option>\n          <option value=\"143\">Montenegro<\/option>\n          <option value=\"144\">Montserrat<\/option>\n          <option value=\"145\">Morocco<\/option>\n          <option value=\"146\">Mozambique<\/option>\n          <option value=\"32\">Myanmar<\/option>\n          <option value=\"148\">Namibia<\/option>\n          <option value=\"149\">Nauru<\/option>\n          <option value=\"150\">Nepal<\/option>\n          <option value=\"151\">Netherlands<\/option>\n          <option value=\"156\">New Caledonia<\/option>\n          <option value=\"158\">New Zealand<\/option>\n          <option value=\"159\">Nicaragua<\/option>\n          <option value=\"160\">Niger<\/option>\n          <option value=\"161\">Nigeria<\/option>\n          <option value=\"162\">Niue<\/option>\n          <option value=\"163\">Norfolk Island<\/option>\n          <option value=\"165\">Northern Mariana Islands<\/option>\n          <option value=\"164\">Norway<\/option>\n          <option value=\"147\">Oman<\/option>\n          <option value=\"170\">Pakistan<\/option>\n          <option value=\"169\">Palau<\/option>\n          <option value=\"108\">Palestine<\/option>\n          <option value=\"83\">Palestinian Territory, Occupied<\/option>\n          <option value=\"171\">Panama<\/option>\n          <option value=\"172\">Papua New Guinea<\/option>\n          <option value=\"173\">Paraguay<\/option>\n          <option value=\"174\">Peru<\/option>\n          <option value=\"175\">Philippines<\/option>\n          <option value=\"176\">Pitcairn<\/option>\n          <option value=\"177\">Poland<\/option>\n          <option value=\"178\">Portugal<\/option>\n          <option value=\"181\">Puerto Rico<\/option>\n          <option value=\"182\">Qatar<\/option>\n          <option value=\"183\">R\u00e9union<\/option>\n          <option value=\"184\">Romania<\/option>\n          <option value=\"185\">Russian Federation<\/option>\n          <option value=\"186\">Rwanda<\/option>\n          <option value=\"187\">Saint Barth\u00e9lemy<\/option>\n          <option value=\"188\">Saint Helena, Ascension and Tristan da Cunha<\/option>\n          <option value=\"189\">Saint Kitts and Nevis<\/option>\n          <option value=\"191\">Saint Lucia<\/option>\n          <option value=\"192\">Saint Martin (French part)<\/option>\n          <option value=\"193\">Saint Pierre and Miquelon<\/option>\n          <option value=\"194\">Saint Vincent and the Grenadines<\/option>\n          <option value=\"247\">Samoa<\/option>\n          <option value=\"195\">San Marino<\/option>\n          <option value=\"196\">Sao Tome and Principe<\/option>\n          <option value=\"197\">Saudi Arabia<\/option>\n          <option value=\"198\">Senegal<\/option>\n          <option value=\"199\">Serbia<\/option>\n          <option value=\"200\">Seychelles<\/option>\n          <option value=\"201\">Sierra Leone<\/option>\n          <option value=\"202\">Singapore<\/option>\n          <option value=\"154\">Sint Maarten (Dutch part)<\/option>\n          <option value=\"203\">Slovakia<\/option>\n          <option value=\"205\">Slovenia<\/option>\n          <option value=\"28\">Solomon Islands<\/option>\n          <option value=\"206\">Somalia<\/option>\n          <option value=\"207\">South Africa<\/option>\n          <option value=\"71\">South Georgia and the South Sandwich Islands<\/option>\n          <option value=\"210\">South Sudan<\/option>\n          <option value=\"209\">Spain<\/option>\n          <option value=\"41\">Sri Lanka<\/option>\n          <option value=\"211\">Sudan<\/option>\n          <option value=\"213\">Suriname<\/option>\n          <option value=\"214\">Svalbard and Jan Mayen<\/option>\n          <option value=\"215\">Swaziland<\/option>\n          <option value=\"216\">Sweden<\/option>\n          <option value=\"217\">Switzerland<\/option>\n          <option value=\"218\">Syrian Arab Republic<\/option>\n          <option value=\"45\">Taiwan, Province of China<\/option>\n          <option value=\"219\">Tajikistan<\/option>\n          <option value=\"239\">Tanzania, United Republic of<\/option>\n          <option value=\"220\">Thailand<\/option>\n          <option value=\"180\">Timor-Leste<\/option>\n          <option value=\"221\">Togo<\/option>\n          <option value=\"222\">Tokelau<\/option>\n          <option value=\"223\">Tonga<\/option>\n          <option value=\"224\">Trinidad and Tobago<\/option>\n          <option value=\"226\">Tunisia<\/option>\n          <option value=\"227\">Turkey<\/option>\n          <option value=\"228\">Turkmenistan<\/option>\n          <option value=\"229\">Turks and Caicos Islands<\/option>\n          <option value=\"230\">Tuvalu<\/option>\n          <option value=\"231\">Uganda<\/option>\n          <option value=\"232\">Ukraine<\/option>\n          <option value=\"225\">United Arab Emirates<\/option>\n          <option value=\"235\">United Kingdom<\/option>\n          <option value=\"240\">United States<\/option>\n          <option value=\"166\">United States Minor Outlying Islands<\/option>\n          <option value=\"243\">Uruguay<\/option>\n          <option value=\"244\">Uzbekistan<\/option>\n          <option value=\"157\">Vanuatu<\/option>\n          <option value=\"245\">Venezuela, Bolivarian Republic of<\/option>\n          <option value=\"204\">Viet Nam<\/option>\n          <option value=\"29\">Virgin Islands, British<\/option>\n          <option value=\"241\">Virgin Islands, U.S.<\/option>\n          <option value=\"246\">Wallis and Futuna<\/option>\n          <option value=\"212\">Western Sahara<\/option>\n          <option value=\"248\">Yemen<\/option>\n          <option value=\"249\">Zambia<\/option>\n          <option value=\"208\">Zimbabwe<\/option>\n        <\/select>\n      <\/div>\n    <\/div>\n\n    <!-- Current Education Level -->\n    <div class=\"svj-form-row\">\n      <div class=\"svj-form-group svj-full-width\">\n        <label for=\"svj-education-level-1\">Current Education Level *<\/label>\n        <select id=\"svj-education-level-1\" name=\"education_level\" class=\"svj-field-style svj-education-level\" required>\n          <option value=\"\">Select education level<\/option>\n          <option value=\"24\">Grade 12<\/option>\n          <option value=\"23\">Grade 11<\/option>\n          <option value=\"22\">Grade 10 Or Below<\/option>\n          <option value=\"25\">Foundation<\/option>\n          <option value=\"26\">Diploma<\/option>\n          <option value=\"27\">Bachelor<\/option>\n          <option value=\"28\">Master<\/option>\n          <option value=\"29\">PhD<\/option>\n        <\/select>\n      <\/div>\n    <\/div>\n\n    <!-- Subject of Interest (Multi - up to 2) -->\n    <div class=\"svj-form-row\">\n      <div class=\"svj-form-group svj-full-width\">\n        <label for=\"svj-subject-interest-1\">Subject of Interest * <small style=\"font-weight:300;color:#5a6c7d;\">(Choose up to 2 options)<\/small><\/label>\n        <select id=\"svj-subject-interest-1\" name=\"subject_interest[]\" class=\"svj-field-style svj-subject-interest\" multiple required>\n          <option value=\"390\">Computer Science &amp; AI<\/option>\n          <option value=\"391\">Engineering<\/option>\n          <option value=\"392\">Business Studies<\/option>\n          <option value=\"393\">Medicine<\/option>\n          <option value=\"394\">Health Management &amp; Public Health<\/option>\n          <option value=\"395\">Social Sciences<\/option>\n          <option value=\"396\">Law<\/option>\n          <option value=\"397\">Arts &amp; Design<\/option>\n          <option value=\"398\">Education<\/option>\n        <\/select>\n      <\/div>\n    <\/div>\n\n    <!-- Funding Source -->\n    <div class=\"svj-form-row\">\n      <div class=\"svj-form-group svj-full-width\">\n        <label for=\"svj-funding-source-1\">Funding Source *<\/label>\n        <select id=\"svj-funding-source-1\" name=\"funding_source\" class=\"svj-field-style svj-funding-source\" required>\n          <option value=\"\" selected>Select funding source<\/option>\n          <option value=\"38\" >Self\/Family Funded<\/option>\n          <option value=\"39\">Government Sponsored<\/option>\n          <option value=\"41\">Employer Sponsored<\/option>\n          <option value=\"399\">Not Sure<\/option>\n        <\/select>\n      <\/div>\n    <\/div>\n\n    <!-- School (Jeddah Only) -->\n    <div class=\"svj-form-row\">\n      <div class=\"svj-form-group svj-full-width\">\n        <label for=\"svj-school-1\">School *<\/label>\n        <select id=\"svj-school-1\" name=\"school\" class=\"svj-field-style svj-school\" required>\n          <option value=\"\">Select school<\/option>\n\n<option value=\"191\">Thamer International School<\/option>\n<option value=\"192\">Global International School<\/option>\n<option value=\"193\">AISJ<\/option>\n<option value=\"194\">Jeddah Prep And Grammar School<\/option>\n<option value=\"195\">Jeddah Knowledge School<\/option>\n<option value=\"196\">Manarat International School<\/option>\n<option value=\"197\">AlAndolas International School<\/option>\n<option value=\"198\">Nobles International School<\/option>\n<option value=\"199\">Alanjal Private School<\/option>\n<option value=\"200\">House of Knowledge<\/option>\n<option value=\"201\">My Little House<\/option>\n<option value=\"202\">Al Waha International School<\/option>\n<option value=\"203\">Dar Jana International School<\/option>\n<option value=\"204\">Zahrat AlSahraa International School<\/option>\n<option value=\"205\">Coral International School<\/option>\n<option value=\"206\">Green Hills International School<\/option>\n<option value=\"207\">AlYusr\/AlAndalous International School<\/option>\n<option value=\"208\">Arab International Schools<\/option>\n<option value=\"209\">AlKon AlMotawara International School<\/option>\n<option value=\"210\">Imperial International School<\/option>\n<option value=\"211\">Jeddah Private School<\/option>\n<option value=\"212\">Waad Academy<\/option>\n<option value=\"213\">Edugate International School Jeddah<\/option>\n<option value=\"214\">Al Wadi International School<\/option>\n<option value=\"215\">Cedar International School<\/option>\n<option value=\"216\">Advanced Generations Schools<\/option>\n<option value=\"217\">Al Moktashef International School<\/option>\n<option value=\"218\">Jeddah International Academy<\/option>\n<option value=\"219\">Pakistani International School<\/option>\n<option value=\"220\">AL-Etehaad International School<\/option>\n<option value=\"221\">Al Ekhaa International School<\/option>\n<option value=\"222\">Rowad AlKhaleej International School<\/option>\n<option value=\"223\">Dawhat Auljazeera International School<\/option>\n<option value=\"224\">Forsan Al Maarifa - Knights of Knowledge<\/option>\n<option value=\"225\">Jazeerat AlUloom School<\/option>\n<option value=\"226\">Dar AlFikr International School<\/option>\n<option value=\"227\">My Little Kingdom School<\/option>\n<option value=\"228\">Indian International School<\/option>\n<option value=\"229\">Durrat Alsharq School<\/option>\n<option value=\"230\">Baraem Private School<\/option>\n<option value=\"231\">Al Hamra International School<\/option>\n<option value=\"232\">The Kaust School<\/option>\n<option value=\"233\">Dar AlHanan School<\/option>\n<option value=\"234\">The World Academy - King Abdullah Economic City<\/option>\n<option value=\"235\">Al-Kawthar International School<\/option>\n<option value=\"236\">Al Ibda'a School<\/option>\n<option value=\"237\">Jeddah International School<\/option>\n<option value=\"238\">Nun Academy<\/option>\n<option value=\"239\">Al Nasser Private School<\/option>\n<option value=\"240\">King Abdulaziz University<\/option>\n<option value=\"241\">UBT University<\/option>\n<option value=\"305\">Jeddah World Academy<\/option>\n<option value=\"306\">French International School of Jeddah<\/option>\n<option value=\"307\">Children's World International School<\/option>\n<option value=\"313\">Dar Althiker School<\/option>\n<option value=\"344\">Alaqsa International School<\/option>\n<option value=\"352\">AlMoktashef International Schools<\/option>\n<option value=\"319\">Tabuk International School<\/option>\n<option value=\"284\">Manarat Almadinah School<\/option>\n<option value=\"285\">Al Rayyan Private School<\/option>\n<option value=\"309\">Alaqeeq International Schools<\/option>\n<option value=\"311\">King Abdulaziz International School<\/option>\n<option value=\"317\">Taiba University<\/option>\n<option value=\"302\">Creative Generations School<\/option>\n<option value=\"303\">Al-Batool International School<\/option>\n<option value=\"304\">Abdulrahman Fakieh School<\/option>\n<option value=\"312\">AL-Batool Private High School American Division<\/option>\n<option value=\"314\">Almarifah Private School<\/option>\n<option value=\"315\">Bakkah Secondary School For Talented<\/option>\n<option value=\"382\">Other<\/option>\n        <\/select>\n      <\/div>\n    <\/div>\n\n    <!-- =====================================================\n         MODIFICATION 2: \"How did you hear about us?\" field REMOVED entirely\n         ===================================================== -->\n\n    <!-- Privacy Policy Checkbox -->\n    <div class=\"svj-form-row svj-full-width\">\n      <div class=\"svj-form-group svj-terms-group svj-full-width\">\n        <label class=\"svj-checkbox-label\" for=\"svj-agree-privacy-1\">\n          <input type=\"checkbox\" id=\"svj-agree-privacy-1\" class=\"svj-agree-privacy\" required>\n          <span>I agree to the <a href=\"\/privacy-policy\/\" target=\"_blank\" rel=\"noopener\">Privacy Policy<\/a><\/span>\n        <\/label>\n      <\/div>\n    <\/div>\n\n    <!-- Submit Button -->\n    <div class=\"svj-form-row svj-full-width\">\n      <button class=\"svj-button-form\" type=\"submit\">Submit<\/button>\n    <\/div>\n\n    <!-- Form Note -->\n    <div class=\"svj-form-row svj-full-width\">\n      <p class=\"svj-form-note\">Your details will only be used by UKuni to contact you regarding your consultation request.<\/p>\n    <\/div>\n\n  <\/form>\n<\/div>\n\n<script>\n(function() {\n  'use strict';\n\n  var svjFormInstance = 1;\n  var svjFormSelector = '#svj-registration-form-' + svjFormInstance;\n\n  function svjWaitForLibraries(callback) {\n    var attempts = 0;\n    var maxAttempts = 150;\n\n    var checkInterval = setInterval(function() {\n      attempts++;\n\n      if (typeof jQuery === 'undefined') {\n        if (attempts >= maxAttempts) {\n          clearInterval(checkInterval);\n          console.error('\u274c [SVJ] jQuery not loaded');\n        }\n        return;\n      }\n\n      var $ = jQuery;\n      var select2Ready = typeof $.fn.select2 !== 'undefined';\n      var swalReady    = typeof Swal !== 'undefined';\n      var phoneReady   = typeof libphonenumber !== 'undefined';\n\n      if (select2Ready && swalReady && phoneReady) {\n        clearInterval(checkInterval);\n        console.log('\u2705 [SVJ] All libraries loaded');\n        setTimeout(function() { callback($); }, 300);\n      } else if (attempts >= maxAttempts) {\n        clearInterval(checkInterval);\n        console.error('\u274c [SVJ] Failed to load libraries:', { select2: select2Ready, swal: swalReady, phone: phoneReady });\n      }\n    }, 100);\n  }\n\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', function() { svjWaitForLibraries(svjInitForm); });\n  } else {\n    svjWaitForLibraries(svjInitForm);\n  }\n\n  function svjInitForm($) {\n    var $form = $(svjFormSelector);\n\n    \/\/ ========== Auto-detect Source from URL ==========\n    \/\/ NOTE: \"How did you hear about us?\" field has been removed.\n    \/\/ URL ?source= parameter is captured silently and sent in formData below.\n    var svjUrlSource = (function() {\n      var urlParams = new URLSearchParams(window.location.search);\n      return urlParams.get('source') || '';\n    })();\n\n    if ($form.data('svj-initialized')) {\n      console.log('\u26a0\ufe0f [SVJ] Form already initialized');\n      return;\n    }\n    $form.data('svj-initialized', true);\n\n    console.log('\ud83d\ude80 [SVJ] Initializing School Visit Jeddah Form:', svjFormInstance);\n\n    \/\/ ========== Countries Data ==========\n    var svjCountries = [\n      { code: 'AF', name: 'Afghanistan', dialCode: '+93', example: '701234567' },\n      { code: 'AX', name: '\u00c5land Islands', dialCode: '+358', example: '412345678' },\n      { code: 'AL', name: 'Albania', dialCode: '+355', example: '672123456' },\n      { code: 'DZ', name: 'Algeria', dialCode: '+213', example: '551234567' },\n      { code: 'AS', name: 'American Samoa', dialCode: '+1684', example: '7331234' },\n      { code: 'AD', name: 'Andorra', dialCode: '+376', example: '312345' },\n      { code: 'AO', name: 'Angola', dialCode: '+244', example: '923123456' },\n      { code: 'AI', name: 'Anguilla', dialCode: '+1264', example: '2351234' },\n      { code: 'AQ', name: 'Antarctica', dialCode: '+672', example: '12345' },\n      { code: 'AG', name: 'Antigua and Barbuda', dialCode: '+1268', example: '4641234' },\n      { code: 'AR', name: 'Argentina', dialCode: '+54', example: '91123456789' },\n      { code: 'AM', name: 'Armenia', dialCode: '+374', example: '77123456' },\n      { code: 'AW', name: 'Aruba', dialCode: '+297', example: '5601234' },\n      { code: 'AU', name: 'Australia', dialCode: '+61', example: '412345678' },\n      { code: 'AT', name: 'Austria', dialCode: '+43', example: '664123456' },\n      { code: 'AZ', name: 'Azerbaijan', dialCode: '+994', example: '401234567' },\n      { code: 'BS', name: 'Bahamas', dialCode: '+1242', example: '3591234' },\n      { code: 'BH', name: 'Bahrain', dialCode: '+973', example: '36001234' },\n      { code: 'BD', name: 'Bangladesh', dialCode: '+880', example: '1812345678' },\n      { code: 'BB', name: 'Barbados', dialCode: '+1246', example: '2501234' },\n      { code: 'BY', name: 'Belarus', dialCode: '+375', example: '294911911' },\n      { code: 'BE', name: 'Belgium', dialCode: '+32', example: '470123456' },\n      { code: 'BZ', name: 'Belize', dialCode: '+501', example: '6221234' },\n      { code: 'BJ', name: 'Benin', dialCode: '+229', example: '90011234' },\n      { code: 'BM', name: 'Bermuda', dialCode: '+1441', example: '3701234' },\n      { code: 'BT', name: 'Bhutan', dialCode: '+975', example: '17123456' },\n      { code: 'BO', name: 'Bolivia', dialCode: '+591', example: '71234567' },\n      { code: 'BQ', name: 'Bonaire, Sint Eustatius and Saba', dialCode: '+599', example: '7151234' },\n      { code: 'BA', name: 'Bosnia and Herzegovina', dialCode: '+387', example: '61123456' },\n      { code: 'BW', name: 'Botswana', dialCode: '+267', example: '71123456' },\n      { code: 'BV', name: 'Bouvet Island', dialCode: '+47', example: '40612345' },\n      { code: 'BR', name: 'Brazil', dialCode: '+55', example: '11961234567' },\n      { code: 'IO', name: 'British Indian Ocean Territory', dialCode: '+246', example: '3801234' },\n      { code: 'BN', name: 'Brunei Darussalam', dialCode: '+673', example: '7123456' },\n      { code: 'BG', name: 'Bulgaria', dialCode: '+359', example: '48123456' },\n      { code: 'BF', name: 'Burkina Faso', dialCode: '+226', example: '70123456' },\n      { code: 'BI', name: 'Burundi', dialCode: '+257', example: '79561234' },\n      { code: 'KH', name: 'Cambodia', dialCode: '+855', example: '91234567' },\n      { code: 'CM', name: 'Cameroon', dialCode: '+237', example: '671234567' },\n      { code: 'CA', name: 'Canada', dialCode: '+1', example: '5062345678' },\n      { code: 'CV', name: 'Cape Verde', dialCode: '+238', example: '9911234' },\n      { code: 'KY', name: 'Cayman Islands', dialCode: '+1345', example: '3231234' },\n      { code: 'CF', name: 'Central African Republic', dialCode: '+236', example: '70012345' },\n      { code: 'TD', name: 'Chad', dialCode: '+235', example: '63012345' },\n      { code: 'CL', name: 'Chile', dialCode: '+56', example: '961234567' },\n      { code: 'CN', name: 'China', dialCode: '+86', example: '13123456789' },\n      { code: 'CX', name: 'Christmas Island', dialCode: '+61', example: '412345678' },\n      { code: 'CC', name: 'Cocos (Keeling) Islands', dialCode: '+61', example: '412345678' },\n      { code: 'CO', name: 'Colombia', dialCode: '+57', example: '3211234567' },\n      { code: 'KM', name: 'Comoros', dialCode: '+269', example: '3212345' },\n      { code: 'CG', name: 'Congo', dialCode: '+242', example: '061234567' },\n      { code: 'CD', name: 'Congo, Democratic Republic', dialCode: '+243', example: '991234567' },\n      { code: 'CK', name: 'Cook Islands', dialCode: '+682', example: '71234' },\n      { code: 'CR', name: 'Costa Rica', dialCode: '+506', example: '83123456' },\n      { code: 'CI', name: \"C\u00f4te d'Ivoire\", dialCode: '+225', example: '01234567' },\n      { code: 'HR', name: 'Croatia', dialCode: '+385', example: '921234567' },\n      { code: 'CU', name: 'Cuba', dialCode: '+53', example: '51234567' },\n      { code: 'CW', name: 'Cura\u00e7ao', dialCode: '+599', example: '95181234' },\n      { code: 'CY', name: 'Cyprus', dialCode: '+357', example: '96123456' },\n      { code: 'CZ', name: 'Czech Republic', dialCode: '+420', example: '601123456' },\n      { code: 'DK', name: 'Denmark', dialCode: '+45', example: '32123456' },\n      { code: 'DJ', name: 'Djibouti', dialCode: '+253', example: '77831001' },\n      { code: 'DM', name: 'Dominica', dialCode: '+1767', example: '2251234' },\n      { code: 'DO', name: 'Dominican Republic', dialCode: '+1', example: '8092341234' },\n      { code: 'EC', name: 'Ecuador', dialCode: '+593', example: '991234567' },\n      { code: 'EG', name: 'Egypt', dialCode: '+20', example: '1001234567' },\n      { code: 'SV', name: 'El Salvador', dialCode: '+503', example: '70123456' },\n      { code: 'GQ', name: 'Equatorial Guinea', dialCode: '+240', example: '222123456' },\n      { code: 'ER', name: 'Eritrea', dialCode: '+291', example: '7123456' },\n      { code: 'EE', name: 'Estonia', dialCode: '+372', example: '51234567' },\n      { code: 'ET', name: 'Ethiopia', dialCode: '+251', example: '911234567' },\n      { code: 'FK', name: 'Falkland Islands', dialCode: '+500', example: '51234' },\n      { code: 'FO', name: 'Faroe Islands', dialCode: '+298', example: '211234' },\n      { code: 'FJ', name: 'Fiji', dialCode: '+679', example: '7012345' },\n      { code: 'FI', name: 'Finland', dialCode: '+358', example: '412345678' },\n      { code: 'FR', name: 'France', dialCode: '+33', example: '612345678' },\n      { code: 'GF', name: 'French Guiana', dialCode: '+594', example: '694201234' },\n      { code: 'PF', name: 'French Polynesia', dialCode: '+689', example: '87123456' },\n      { code: 'TF', name: 'French Southern Territories', dialCode: '+262', example: '639012345' },\n      { code: 'GA', name: 'Gabon', dialCode: '+241', example: '06031234' },\n      { code: 'GM', name: 'Gambia', dialCode: '+220', example: '3012345' },\n      { code: 'GE', name: 'Georgia', dialCode: '+995', example: '555123456' },\n      { code: 'DE', name: 'Germany', dialCode: '+49', example: '15123456789' },\n      { code: 'GH', name: 'Ghana', dialCode: '+233', example: '231234567' },\n      { code: 'GI', name: 'Gibraltar', dialCode: '+350', example: '57123456' },\n      { code: 'GR', name: 'Greece', dialCode: '+30', example: '6912345678' },\n      { code: 'GL', name: 'Greenland', dialCode: '+299', example: '221234' },\n      { code: 'GD', name: 'Grenada', dialCode: '+1473', example: '4031234' },\n      { code: 'GP', name: 'Guadeloupe', dialCode: '+590', example: '690001234' },\n      { code: 'GU', name: 'Guam', dialCode: '+1671', example: '3001234' },\n      { code: 'GT', name: 'Guatemala', dialCode: '+502', example: '51234567' },\n      { code: 'GG', name: 'Guernsey', dialCode: '+44', example: '7781123456' },\n      { code: 'GN', name: 'Guinea', dialCode: '+224', example: '601123456' },\n      { code: 'GW', name: 'Guinea-Bissau', dialCode: '+245', example: '955012345' },\n      { code: 'GY', name: 'Guyana', dialCode: '+592', example: '6091234' },\n      { code: 'HT', name: 'Haiti', dialCode: '+509', example: '34101234' },\n      { code: 'HM', name: 'Heard Island and McDonald Islands', dialCode: '+672', example: '12345' },\n      { code: 'VA', name: 'Holy See (Vatican City)', dialCode: '+379', example: '6698' },\n      { code: 'HN', name: 'Honduras', dialCode: '+504', example: '91234567' },\n      { code: 'HK', name: 'Hong Kong', dialCode: '+852', example: '51234567' },\n      { code: 'HU', name: 'Hungary', dialCode: '+36', example: '201234567' },\n      { code: 'IS', name: 'Iceland', dialCode: '+354', example: '6111234' },\n      { code: 'IN', name: 'India', dialCode: '+91', example: '8123456789' },\n      { code: 'ID', name: 'Indonesia', dialCode: '+62', example: '812345678' },\n      { code: 'IR', name: 'Iran', dialCode: '+98', example: '9123456789' },\n      { code: 'IQ', name: 'Iraq', dialCode: '+964', example: '7912345678' },\n      { code: 'IE', name: 'Ireland', dialCode: '+353', example: '850123456' },\n      { code: 'IM', name: 'Isle of Man', dialCode: '+44', example: '7924123456' },\n      { code: 'IT', name: 'Italy', dialCode: '+39', example: '3123456789' },\n      { code: 'JM', name: 'Jamaica', dialCode: '+1876', example: '2101234' },\n      { code: 'JP', name: 'Japan', dialCode: '+81', example: '9012345678' },\n      { code: 'JE', name: 'Jersey', dialCode: '+44', example: '7797712345' },\n      { code: 'JO', name: 'Jordan', dialCode: '+962', example: '790123456' },\n      { code: 'KZ', name: 'Kazakhstan', dialCode: '+7', example: '7710009998' },\n      { code: 'KE', name: 'Kenya', dialCode: '+254', example: '712123456' },\n      { code: 'KI', name: 'Kiribati', dialCode: '+686', example: '72012345' },\n      { code: 'KP', name: 'Korea, North', dialCode: '+850', example: '1921234567' },\n      { code: 'KR', name: 'Korea, South', dialCode: '+82', example: '1012345678' },\n      { code: 'KW', name: 'Kuwait', dialCode: '+965', example: '50012345' },\n      { code: 'KG', name: 'Kyrgyzstan', dialCode: '+996', example: '700123456' },\n      { code: 'LA', name: 'Laos', dialCode: '+856', example: '2023123456' },\n      { code: 'LV', name: 'Latvia', dialCode: '+371', example: '21234567' },\n      { code: 'LB', name: 'Lebanon', dialCode: '+961', example: '71123456' },\n      { code: 'LS', name: 'Lesotho', dialCode: '+266', example: '50123456' },\n      { code: 'LR', name: 'Liberia', dialCode: '+231', example: '770123456' },\n      { code: 'LY', name: 'Libya', dialCode: '+218', example: '912345678' },\n      { code: 'LI', name: 'Liechtenstein', dialCode: '+423', example: '660234567' },\n      { code: 'LT', name: 'Lithuania', dialCode: '+370', example: '61234567' },\n      { code: 'LU', name: 'Luxembourg', dialCode: '+352', example: '628123456' },\n      { code: 'MO', name: 'Macao', dialCode: '+853', example: '66123456' },\n      { code: 'MK', name: 'Macedonia', dialCode: '+389', example: '72345678' },\n      { code: 'MG', name: 'Madagascar', dialCode: '+261', example: '321234567' },\n      { code: 'MW', name: 'Malawi', dialCode: '+265', example: '991234567' },\n      { code: 'MY', name: 'Malaysia', dialCode: '+60', example: '123456789' },\n      { code: 'MV', name: 'Maldives', dialCode: '+960', example: '7712345' },\n      { code: 'ML', name: 'Mali', dialCode: '+223', example: '65012345' },\n      { code: 'MT', name: 'Malta', dialCode: '+356', example: '96961234' },\n      { code: 'MH', name: 'Marshall Islands', dialCode: '+692', example: '2351234' },\n      { code: 'MQ', name: 'Martinique', dialCode: '+596', example: '696201234' },\n      { code: 'MR', name: 'Mauritania', dialCode: '+222', example: '22123456' },\n      { code: 'MU', name: 'Mauritius', dialCode: '+230', example: '52512345' },\n      { code: 'YT', name: 'Mayotte', dialCode: '+262', example: '639012345' },\n      { code: 'MX', name: 'Mexico', dialCode: '+52', example: '12221234567' },\n      { code: 'FM', name: 'Micronesia', dialCode: '+691', example: '3501234' },\n      { code: 'MD', name: 'Moldova', dialCode: '+373', example: '62112345' },\n      { code: 'MC', name: 'Monaco', dialCode: '+377', example: '612345678' },\n      { code: 'MN', name: 'Mongolia', dialCode: '+976', example: '88123456' },\n      { code: 'ME', name: 'Montenegro', dialCode: '+382', example: '67622901' },\n      { code: 'MS', name: 'Montserrat', dialCode: '+1664', example: '4921234' },\n      { code: 'MA', name: 'Morocco', dialCode: '+212', example: '650123456' },\n      { code: 'MZ', name: 'Mozambique', dialCode: '+258', example: '821234567' },\n      { code: 'MM', name: 'Myanmar', dialCode: '+95', example: '92123456' },\n      { code: 'NA', name: 'Namibia', dialCode: '+264', example: '811234567' },\n      { code: 'NR', name: 'Nauru', dialCode: '+674', example: '5551234' },\n      { code: 'NP', name: 'Nepal', dialCode: '+977', example: '9841234567' },\n      { code: 'NL', name: 'Netherlands', dialCode: '+31', example: '612345678' },\n      { code: 'NC', name: 'New Caledonia', dialCode: '+687', example: '751234' },\n      { code: 'NZ', name: 'New Zealand', dialCode: '+64', example: '211234567' },\n      { code: 'NI', name: 'Nicaragua', dialCode: '+505', example: '81234567' },\n      { code: 'NE', name: 'Niger', dialCode: '+227', example: '93123456' },\n      { code: 'NG', name: 'Nigeria', dialCode: '+234', example: '8021234567' },\n      { code: 'NU', name: 'Niue', dialCode: '+683', example: '1234' },\n      { code: 'NF', name: 'Norfolk Island', dialCode: '+672', example: '381234' },\n      { code: 'MP', name: 'Northern Mariana Islands', dialCode: '+1670', example: '2341234' },\n      { code: 'NO', name: 'Norway', dialCode: '+47', example: '40612345' },\n      { code: 'OM', name: 'Oman', dialCode: '+968', example: '92123456' },\n      { code: 'PK', name: 'Pakistan', dialCode: '+92', example: '3012345678' },\n      { code: 'PW', name: 'Palau', dialCode: '+680', example: '6201234' },\n      { code: 'PS', name: 'Palestine', dialCode: '+970', example: '599123456' },\n      { code: 'PA', name: 'Panama', dialCode: '+507', example: '61234567' },\n      { code: 'PG', name: 'Papua New Guinea', dialCode: '+675', example: '70123456' },\n      { code: 'PY', name: 'Paraguay', dialCode: '+595', example: '961456789' },\n      { code: 'PE', name: 'Peru', dialCode: '+51', example: '912345678' },\n      { code: 'PH', name: 'Philippines', dialCode: '+63', example: '9051234567' },\n      { code: 'PN', name: 'Pitcairn', dialCode: '+64', example: '211234567' },\n      { code: 'PL', name: 'Poland', dialCode: '+48', example: '512345678' },\n      { code: 'PT', name: 'Portugal', dialCode: '+351', example: '912345678' },\n      { code: 'PR', name: 'Puerto Rico', dialCode: '+1', example: '7872341234' },\n      { code: 'QA', name: 'Qatar', dialCode: '+974', example: '33123456' },\n      { code: 'RE', name: 'R\u00e9union', dialCode: '+262', example: '692123456' },\n      { code: 'RO', name: 'Romania', dialCode: '+40', example: '712034567' },\n      { code: 'RU', name: 'Russia', dialCode: '+7', example: '9123456789' },\n      { code: 'RW', name: 'Rwanda', dialCode: '+250', example: '720123456' },\n      { code: 'BL', name: 'Saint Barth\u00e9lemy', dialCode: '+590', example: '690301234' },\n      { code: 'SH', name: 'Saint Helena', dialCode: '+290', example: '51234' },\n      { code: 'KN', name: 'Saint Kitts and Nevis', dialCode: '+1869', example: '7652345' },\n      { code: 'LC', name: 'Saint Lucia', dialCode: '+1758', example: '2845678' },\n      { code: 'MF', name: 'Saint Martin', dialCode: '+590', example: '690301234' },\n      { code: 'PM', name: 'Saint Pierre and Miquelon', dialCode: '+508', example: '551234' },\n      { code: 'VC', name: 'Saint Vincent and the Grenadines', dialCode: '+1784', example: '4301234' },\n      { code: 'WS', name: 'Samoa', dialCode: '+685', example: '7212345' },\n      { code: 'SM', name: 'San Marino', dialCode: '+378', example: '66661212' },\n      { code: 'ST', name: 'Sao Tome and Principe', dialCode: '+239', example: '9812345' },\n      { code: 'SA', name: 'Saudi Arabia', dialCode: '+966', example: '501234567' },\n      { code: 'SN', name: 'Senegal', dialCode: '+221', example: '701234567' },\n      { code: 'RS', name: 'Serbia', dialCode: '+381', example: '601234567' },\n      { code: 'SC', name: 'Seychelles', dialCode: '+248', example: '2510123' },\n      { code: 'SL', name: 'Sierra Leone', dialCode: '+232', example: '25123456' },\n      { code: 'SG', name: 'Singapore', dialCode: '+65', example: '81234567' },\n      { code: 'SX', name: 'Sint Maarten', dialCode: '+1721', example: '5201234' },\n      { code: 'SK', name: 'Slovakia', dialCode: '+421', example: '912123456' },\n      { code: 'SI', name: 'Slovenia', dialCode: '+386', example: '31234567' },\n      { code: 'SB', name: 'Solomon Islands', dialCode: '+677', example: '7421234' },\n      { code: 'SO', name: 'Somalia', dialCode: '+252', example: '71234567' },\n      { code: 'ZA', name: 'South Africa', dialCode: '+27', example: '711234567' },\n      { code: 'GS', name: 'South Georgia', dialCode: '+500', example: '51234' },\n      { code: 'SS', name: 'South Sudan', dialCode: '+211', example: '977123456' },\n      { code: 'ES', name: 'Spain', dialCode: '+34', example: '612345678' },\n      { code: 'LK', name: 'Sri Lanka', dialCode: '+94', example: '712345678' },\n      { code: 'SD', name: 'Sudan', dialCode: '+249', example: '912345678' },\n      { code: 'SR', name: 'Suriname', dialCode: '+597', example: '7412345' },\n      { code: 'SJ', name: 'Svalbard and Jan Mayen', dialCode: '+47', example: '79123456' },\n      { code: 'SZ', name: 'Swaziland', dialCode: '+268', example: '76123456' },\n      { code: 'SE', name: 'Sweden', dialCode: '+46', example: '701234567' },\n      { code: 'CH', name: 'Switzerland', dialCode: '+41', example: '781234567' },\n      { code: 'SY', name: 'Syria', dialCode: '+963', example: '944567890' },\n      { code: 'TW', name: 'Taiwan', dialCode: '+886', example: '912345678' },\n      { code: 'TJ', name: 'Tajikistan', dialCode: '+992', example: '917123456' },\n      { code: 'TZ', name: 'Tanzania', dialCode: '+255', example: '621234567' },\n      { code: 'TH', name: 'Thailand', dialCode: '+66', example: '812345678' },\n      { code: 'TL', name: 'Timor-Leste', dialCode: '+670', example: '77212345' },\n      { code: 'TG', name: 'Togo', dialCode: '+228', example: '90112345' },\n      { code: 'TK', name: 'Tokelau', dialCode: '+690', example: '7290' },\n      { code: 'TO', name: 'Tonga', dialCode: '+676', example: '7715123' },\n      { code: 'TT', name: 'Trinidad and Tobago', dialCode: '+1868', example: '2911234' },\n      { code: 'TN', name: 'Tunisia', dialCode: '+216', example: '20123456' },\n      { code: 'TR', name: 'Turkey', dialCode: '+90', example: '5321234567' },\n      { code: 'TM', name: 'Turkmenistan', dialCode: '+993', example: '66123456' },\n      { code: 'TC', name: 'Turks and Caicos Islands', dialCode: '+1649', example: '2311234' },\n      { code: 'TV', name: 'Tuvalu', dialCode: '+688', example: '901234' },\n      { code: 'UG', name: 'Uganda', dialCode: '+256', example: '712345678' },\n      { code: 'UA', name: 'Ukraine', dialCode: '+380', example: '501234567' },\n      { code: 'AE', name: 'United Arab Emirates', dialCode: '+971', example: '501234567' },\n      { code: 'GB', name: 'United Kingdom', dialCode: '+44', example: '7400123456' },\n      { code: 'US', name: 'United States', dialCode: '+1', example: '2021234567' },\n      { code: 'UM', name: 'United States Minor Outlying Islands', dialCode: '+1', example: '2021234567' },\n      { code: 'UY', name: 'Uruguay', dialCode: '+598', example: '94231234' },\n      { code: 'UZ', name: 'Uzbekistan', dialCode: '+998', example: '912345678' },\n      { code: 'VU', name: 'Vanuatu', dialCode: '+678', example: '5912345' },\n      { code: 'VE', name: 'Venezuela', dialCode: '+58', example: '4121234567' },\n      { code: 'VN', name: 'Vietnam', dialCode: '+84', example: '912345678' },\n      { code: 'VG', name: 'Virgin Islands, British', dialCode: '+1284', example: '3001234' },\n      { code: 'VI', name: 'Virgin Islands, U.S.', dialCode: '+1340', example: '3001234' },\n      { code: 'WF', name: 'Wallis and Futuna', dialCode: '+681', example: '501234' },\n      { code: 'EH', name: 'Western Sahara', dialCode: '+212', example: '650123456' },\n      { code: 'YE', name: 'Yemen', dialCode: '+967', example: '712345678' },\n      { code: 'ZM', name: 'Zambia', dialCode: '+260', example: '955123456' },\n      { code: 'ZW', name: 'Zimbabwe', dialCode: '+263', example: '712345678' }\n    ];\n\n    \/\/ ========== IP Country Detection ==========\n    function svjDetectCountryFromIP(callback) {\n      fetch('https:\/\/ipapi.co\/json\/')\n        .then(function(response) { return response.json(); })\n        .then(function(data) {\n          var detectedCode = ((data.country_code || data.country) || 'SA').toUpperCase();\n          callback(detectedCode);\n        })\n        .catch(function() { callback('SA'); });\n    }\n\n    \/\/ ========== Phone Country Selector ==========\n    var $phoneField = $form.find('.svj-phone');\n    if ($phoneField.length && !$phoneField.parent().hasClass('svj-phone-wrapper')) {\n      var $phoneContainer = $phoneField.parent();\n      var $phoneWrapper   = $('<div class=\"svj-phone-wrapper\"><\/div>');\n      var $countrySelect  = $('<select class=\"svj-country-selector\"><\/select>');\n\n      $.each(svjCountries, function(i, country) {\n        var $option = $('<option><\/option>')\n          .val(country.code)\n          .text(country.dialCode + ' ' + country.name)\n          .data('dialCode', country.dialCode)\n          .data('example', country.example)\n          .data('countryName', country.name);\n        $countrySelect.append($option);\n      });\n\n      $phoneField.attr('placeholder', 'Enter phone number');\n      $phoneField.detach();\n      $phoneWrapper.append($countrySelect);\n      $phoneWrapper.append($phoneField);\n      $phoneContainer.append($phoneWrapper);\n\n      $countrySelect.on('change', function() {\n        var example = $(this).find(':selected').data('example') || '';\n        $phoneField.attr('placeholder', 'Example: ' + example);\n      });\n\n      function svjFormatCountry(country) {\n        if (!country.id) return country.text;\n        return $('<span style=\"display:flex;align-items:center;gap:8px;\"><img decoding=\"async\" src=\"https:\/\/flagcdn.com\/20x15\/' + country.element.value.toLowerCase() + '.png\" class=\"svj-country-flag\"\/><span>' + country.text + '<\/span><\/span>');\n      }\n\n      try {\n        $countrySelect.select2({\n          width: '200px',\n          templateResult: svjFormatCountry,\n          templateSelection: svjFormatCountry,\n          minimumResultsForSearch: 5,\n          dropdownParent: $form.closest('.svj-container')\n        });\n\n        svjDetectCountryFromIP(function(detectedCode) {\n          var exists = $countrySelect.find('option[value=\"' + detectedCode + '\"]').length > 0;\n          $countrySelect.val(exists ? detectedCode : 'SA').trigger('change');\n          setTimeout(function() {\n            var ex = $countrySelect.find(':selected').data('example');\n            if (ex) $phoneField.attr('placeholder', 'Example: ' + ex);\n          }, 200);\n        });\n      } catch(e) { console.error('\u274c [SVJ] Phone selector error:', e); }\n    }\n\n    \/\/ ========== Select2 Options ==========\n    var svjSelect2Opts = {\n      width: '100%',\n      minimumResultsForSearch: 5,\n      dropdownParent: $form.closest('.svj-container'),\n      language: {\n        noResults: function() { return \"No results found\"; },\n        searching: function() { return \"Searching...\"; }\n      }\n    };\n\n    var svjSelect2NoSearch = $.extend({}, svjSelect2Opts, { minimumResultsForSearch: -1 });\n\n    \/\/ ========== Office Mapping ==========\n    var svjOfficeMapping = {\n      countries: {\n        '225': 'Riyadh',\n        '14':  'Riyadh',\n        '106': 'Riyadh',\n        '147': 'Jeddah',\n        '248': 'Jeddah',\n        '234': 'Jeddah',\n        '114': 'Jeddah',\n        '118': 'Al Khobar',\n        '182': 'Al Khobar'\n      }\n    };\n\n    function svjGetEventLocation(countryId, stateValue) {\n      if (countryId === '197' && stateValue) {\n        var office = $form.find('.svj-state-select option[value=\"' + stateValue + '\"]').data('office');\n        return office || 'Riyadh';\n      }\n      return svjOfficeMapping.countries[countryId] || 'Riyadh';\n    }\n\n    try {\n      $form.find('.svj-country-passport').select2($.extend({}, svjSelect2Opts, { placeholder: 'Select passport country' }));\n      $form.find('.svj-education-level').select2($.extend({}, svjSelect2NoSearch, { placeholder: 'Select education level' }));\n      $form.find('.svj-funding-source').select2($.extend({}, svjSelect2NoSearch, { placeholder: 'Select funding source' }));\n      $form.find('.svj-school').select2($.extend({}, svjSelect2Opts, { placeholder: 'Select school' }));\n      $form.find('.svj-subject-interest').select2($.extend({}, svjSelect2NoSearch, {\n        placeholder: 'Select up to 2 options',\n        maximumSelectionLength: 2\n      }));\n\n      \/\/ State\/Province is always visible (country locked to SA), initialize it immediately\n      $form.find('.svj-state-select').select2($.extend({}, svjSelect2NoSearch, { placeholder: 'Select region' }));\n\n      console.log('\u2705 [SVJ] All select2 fields initialized');\n    } catch(e) { console.error('\u274c [SVJ] Select2 init error:', e); }\n\n\n    \/\/ ========== Validation ==========\n    function svjIsValidEmail(email) {\n      return \/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$\/.test(email);\n    }\n\n    \/\/ ========== Form Submit ==========\n    $form.on('submit', function(e) {\n      e.preventDefault();\n\n      var $submitButton = $form.find('.svj-button-form');\n      var originalText  = $submitButton.text();\n      $submitButton.prop('disabled', true).html('<span class=\"svj-spinner\"><\/span>Submitting...');\n\n      var firstName = $form.find('.svj-first-name').val().trim();\n      var lastName  = $form.find('.svj-last-name').val().trim();\n      var email     = $form.find('.svj-email').val().trim();\n\n      if (!firstName || !lastName) {\n        Swal.fire({ icon: 'warning', title: 'Required', text: 'Please enter your first and last name.' });\n        $submitButton.prop('disabled', false).text(originalText); return;\n      }\n      if (!email || !svjIsValidEmail(email)) {\n        Swal.fire({ icon: 'warning', title: 'Invalid Email', text: 'Please enter a valid email address.' });\n        $submitButton.prop('disabled', false).text(originalText); return;\n      }\n      if (!$form.find('.svj-agree-privacy').is(':checked')) {\n        Swal.fire({ icon: 'warning', title: 'Required', html: 'You must agree to the <a href=\"\/privacy-policy\/\" target=\"_blank\">Privacy Policy<\/a>.' });\n        $submitButton.prop('disabled', false).text(originalText); return;\n      }\n\n      \/\/ Country is always Saudi Arabia (197) \u2014 locked\n      var selectedCountryId  = '197';\n      var selectedPassportId = $form.find('.svj-country-passport').val();\n\n      if (!selectedPassportId) {\n        Swal.fire({ icon: 'warning', title: 'Required', text: 'Please select your nationality.' });\n        $submitButton.prop('disabled', false).text(originalText); return;\n      }\n      if (!$form.find('.svj-state-select').val()) {\n        Swal.fire({ icon: 'warning', title: 'Required', text: 'Please select your region.' });\n        $submitButton.prop('disabled', false).text(originalText); return;\n      }\n\n      var educationLevel = $form.find('.svj-education-level').val();\n      if (!educationLevel) {\n        Swal.fire({ icon: 'warning', title: 'Required', text: 'Please select your current education level.' });\n        $submitButton.prop('disabled', false).text(originalText); return;\n      }\n\n      var schoolValue = $form.find('.svj-school').val();\n      if (!schoolValue) {\n        Swal.fire({ icon: 'warning', title: 'Required', text: 'Please select your school.' });\n        $submitButton.prop('disabled', false).text(originalText); return;\n      }\n\n      var subjectInterests = $form.find('.svj-subject-interest').val() || [];\n      if (!subjectInterests.length) {\n        Swal.fire({ icon: 'warning', title: 'Required', text: 'Please select at least one subject of interest.' });\n        $submitButton.prop('disabled', false).text(originalText); return;\n      }\n\n      var fundingSource = $form.find('.svj-funding-source').val();\n      if (!fundingSource) {\n        Swal.fire({ icon: 'warning', title: 'Required', text: 'Please select your funding source.' });\n        $submitButton.prop('disabled', false).text(originalText); return;\n      }\n\n      \/\/ Source: read from URL param silently (field removed from UI)\n      var sourceValue = svjUrlSource || 'Direct';\n\n      var $countrySelector = $form.find('.svj-country-selector');\n      var $phoneInput      = $form.find('.svj-phone');\n      var countryCode      = $countrySelector.val();\n      var phoneNumber      = $phoneInput.val().trim();\n      var $selectedOption  = $countrySelector.find(':selected');\n      var dialCode         = $selectedOption.data('dialCode') || '';\n\n      if (!phoneNumber) {\n        Swal.fire({ icon: 'warning', title: 'Required', text: 'Please enter your phone number.' });\n        $submitButton.prop('disabled', false).text(originalText); return;\n      }\n\n      var validatedPhone  = null;\n      var phoneNumberOnly = null;\n      var isValid         = false;\n\n      try {\n        var phoneUtil = libphonenumber.parsePhoneNumber(phoneNumber, countryCode);\n        if (phoneUtil && phoneUtil.isValid && phoneUtil.isValid()) {\n          validatedPhone  = phoneUtil.format('E.164');\n          phoneNumberOnly = phoneUtil.nationalNumber;\n          isValid = true;\n        } else {\n          var cleanNumber  = phoneNumber.replace(\/^0+\/, '').replace(\/\\D\/g, '');\n          var phoneUtil2   = libphonenumber.parsePhoneNumber(dialCode + cleanNumber);\n          if (phoneUtil2 && phoneUtil2.isValid && phoneUtil2.isValid()) {\n            validatedPhone  = phoneUtil2.format('E.164');\n            phoneNumberOnly = phoneUtil2.nationalNumber;\n            isValid = true;\n          }\n        }\n      } catch(error) { isValid = false; }\n\n      if (!isValid) {\n        var example = $selectedOption.data('example') || '';\n        Swal.fire({\n          icon: 'error',\n          title: 'Invalid Phone',\n          html: '<p>Enter local number only without <b>' + dialCode + '<\/b><\/p><p>Format: <code>' + example + '<\/code><\/p>'\n        });\n        $submitButton.prop('disabled', false).text(originalText); return;\n      }\n\n      var dialCodeOnly = (dialCode || '').replace(\/^\\+\/, '');\n      var phonePayload = {\n        number: phoneNumberOnly || phoneNumber.replace(\/\\D\/g, ''),\n        country_code: countryCode || '',\n        country_calling_code: dialCodeOnly,\n        e164: validatedPhone || ''\n      };\n\n      var stateValue    = $form.find('.svj-state-select').val() || '';\n      var eventLocation = svjGetEventLocation(selectedCountryId, stateValue);\n\n      var formData = {\n        first_name:          firstName,\n        last_name:           lastName,\n        email:               email,\n        phone:               phonePayload,\n        city:                '',\n        state:               stateValue,\n        event_location:      eventLocation,\n        country:             selectedCountryId,\n        country_of_passport: selectedPassportId,\n        education_level:     educationLevel,\n        subject_interest:    JSON.stringify(subjectInterests),\n        funding_source:      fundingSource,\n        school:              schoolValue,\n        source:              sourceValue,\n        program_type:        'School Visit Jeddah'\n      };\n\n      console.log('\ud83d\udce4 [SVJ] Sending data:', formData);\n\n      fetch('https:\/\/hook.us2.make.com\/99apv8ihjfidknj4fs28jdnm6cokm2rj', {\n        method: 'POST',\n        headers: { 'Accept': 'application\/json', 'Content-Type': 'application\/json' },\n        body: JSON.stringify(formData)\n      })\n      .then(function(response) {\n        if (!response.ok) throw new Error('HTTP error');\n        return response.text();\n      })\n   .then(function(data) {\n        console.log('\u2705 [SVJ] Response:', data);\n        var statusMatch = data.match(\/{(\\d+)}\/);\n        var statusCode  = statusMatch ? parseInt(statusMatch[1], 10) : null;\n\n        if (statusCode === 201 || !statusCode) {\n\n          \/\/ ========== LinkedIn Conversion ==========\n          (function() {\n            try {\n              var liCountryCode = $form.find('.svj-country-selector').val() || 'SA';\n              jQuery.ajax({\n                url: linkedinConversionData.ajaxUrl,\n                type: 'POST',\n                data: {\n                  action:     'send_linkedin_conversion',\n                  nonce:      linkedinConversionData.nonce,\n                  email:      email,\n                  first_name: firstName,\n                  last_name:  lastName,\n                  country:    liCountryCode\n                },\n                success: function(response) { console.log('\u2705 [SVJ] LinkedIn conversion sent:', response); },\n                error:   function(xhr, status, error) { console.warn('\u26a0\ufe0f [SVJ] LinkedIn conversion failed:', error); }\n              });\n            } catch(liErr) { console.warn('\u26a0\ufe0f [SVJ] LinkedIn conversion error:', liErr); }\n          })();\n          \/\/ ========== End LinkedIn ==========\n\n          Swal.fire({\n            icon: 'success',\n            title: 'Success!',\n            text: 'Your registration has been submitted successfully. Thank you and we will contact you ASAP.',\n            confirmButtonText: 'OK',\n            confirmButtonColor: '#CD2122'\n          }).then(function() {\n            $form[0].reset();\n            $form.find('.svj-country-passport, .svj-state-select, .svj-education-level, .svj-funding-source, .svj-subject-interest, .svj-school').val(null).trigger('change');\n          });\n\n        } else if (statusCode === 200) {\n          Swal.fire({\n            icon: 'info',\n            title: 'Already Registered',\n            text: 'This email has been registered before.',\n            confirmButtonText: 'OK',\n            confirmButtonColor: '#CD2122'\n          });\n        } else if (statusCode === 422) {\n          Swal.fire({\n            icon: 'error',\n            title: 'Validation Error',\n            text: 'Please check your information and try again.',\n            confirmButtonText: 'OK',\n            confirmButtonColor: '#CD2122'\n          });\n        } else {\n          Swal.fire({\n            icon: 'error',\n            title: 'Validation Error',\n            text: 'Please check your information and try again.',\n            confirmButtonText: 'OK',\n            confirmButtonColor: '#CD2122'\n          });\n        }\n      })\n      .catch(function(error) {\n        console.error('\u274c [SVJ] Error:', error);\n        Swal.fire({\n          icon: 'error',\n          title: 'An Error Occurred',\n          text: 'Please try again later or contact support.',\n          confirmButtonText: 'OK',\n          confirmButtonColor: '#CD2122'\n        });\n      })\n      .finally(function() {\n        $submitButton.prop('disabled', false).text(originalText);\n      });\n    });\n\n    console.log('\u2705 [SVJ] School Visit Jeddah Form initialization complete');\n  }\n})();\n<\/script>\n\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"class_list":["post-38541","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/ukuni.org\/ar\/wp-json\/wp\/v2\/pages\/38541","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ukuni.org\/ar\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/ukuni.org\/ar\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/ukuni.org\/ar\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ukuni.org\/ar\/wp-json\/wp\/v2\/comments?post=38541"}],"version-history":[{"count":3,"href":"https:\/\/ukuni.org\/ar\/wp-json\/wp\/v2\/pages\/38541\/revisions"}],"predecessor-version":[{"id":38544,"href":"https:\/\/ukuni.org\/ar\/wp-json\/wp\/v2\/pages\/38541\/revisions\/38544"}],"wp:attachment":[{"href":"https:\/\/ukuni.org\/ar\/wp-json\/wp\/v2\/media?parent=38541"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}