{"id":148548,"date":"2026-10-20T16:09:07","date_gmt":"2026-10-20T13:09:07","guid":{"rendered":"https:\/\/hotelrunner.com\/?page_id=148548"},"modified":"2026-10-20T16:37:02","modified_gmt":"2026-10-20T13:37:02","slug":"expedia-group-autonomous-onboarding","status":"publish","type":"page","link":"https:\/\/hotelrunner.com\/en\/expedia-group-autonomous-onboarding\/","title":{"rendered":"Expedia Group Autonomous Onboarding"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"148548\" class=\"elementor elementor-148548\" data-elementor-post-type=\"page\">\n\t\t\t\t<section class=\"elementor-element elementor-element-4045cb6c e-con e-atomic-element e-flexbox-base e-default-section e-49f1a234-df78 \" data-id=\"4045cb6c\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"4045cb6c\" data-e-type=\"e-flexbox\" data-id=\"4045cb6c\">\n    <div class=\"elementor-element elementor-element-70f852d1 e-con e-atomic-element e-flexbox-base e-default-div container e-599797c7-c382 \" data-id=\"70f852d1\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"70f852d1\" data-e-type=\"e-flexbox\" data-id=\"70f852d1\">\n    <div class=\"elementor-element elementor-element-60ee76ac e-con e-atomic-element e-flexbox-base e-default-div e-62568fc2-77fd \" data-id=\"60ee76ac\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"60ee76ac\" data-e-type=\"e-flexbox\" data-id=\"60ee76ac\">\n    <div class=\"elementor-element elementor-element-310568b5 e-con e-atomic-element e-flexbox-base e-default-div e-609ce346-c9b4 \" data-id=\"310568b5\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"310568b5\" data-e-type=\"e-flexbox\" data-id=\"310568b5\">\n    \t\t\t<div class=\"e-7876b31d-398c e-7876b31d-398c e-svg-base e-default-div\" data-interaction-id=\"505f3d0f\" data-e-type=\"widget\" data-id=\"505f3d0f\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" preserveAspectRatio=\"none\" overflow=\"visible\" style=\"display: block; width: 100%; height: 100%; overflow: unset;\" width=\"130.998\" height=\"28.003\" viewBox=\"0 0 130.998 28.003\" fill=\"currentColor\"><g id=\"Group\"><path id=\"Cloud\" d=\"M16.9623 13.5689C16.9623 13.5689 18.7578 8.8644 25.1702 9.98375C25.1702 9.98375 24.0774 9.35107 22.9379 9.0469C22.9379 9.0469 23.984 5.21231 29.3605 4.91017C29.3605 4.91017 29.1269 7.20971 29.6408 7.88497C29.6408 7.88497 29.2 2.47071 34.2962 1.14655C34.2962 1.14655 37.6009 0.333403 40.9524 5.67668C40.9524 5.67668 40.7208 4.16596 40.3227 3.60832C40.3227 3.60832 44.6044 1.33109 46.9788 5.76793L45.6992 7.04545C45.6992 7.04545 53.0073 3.41973 54.4515 11.6466C54.4515 11.6466 54.8476 4.16394 47.9802 5.28126C47.9802 5.28126 46.3512 0.820077 39.6951 2.5863C39.6951 2.5863 37.0424 -0.155299 34.2962 0.00692547C31.5501 0.16915 29.4316 3.39945 29.2914 3.88613C29.2914 3.88613 24.1709 3.63062 21.8675 8.88265C21.8675 8.88265 18.2277 8.79342 16.9643 13.5669L16.9623 13.5689Z\" fill=\"white\"><\/path><g id=\"Hotel\"><path id=\"Vector\" d=\"M0 27.7413V11.8818C0 11.3667 0.180774 10.9287 0.542321 10.5698C0.903869 10.2088 1.3426 10.0284 1.85649 10.0284H3.66219V16.6187H10.9845V10.0284H14.6975V27.7393H10.9845V19.8612H3.66219V27.7393H0V27.7413Z\" fill=\"white\"><\/path><path id=\"Vector_2\" d=\"M17.6508 26.5043C16.9298 25.8858 16.4138 25.0544 16.1031 24.0081C15.7943 22.9617 15.6379 21.8708 15.6379 20.7393C15.6379 19.8125 15.7659 18.8858 16.0239 17.9591C16.2818 17.0324 16.686 16.2598 17.2365 15.6413C18.1302 14.6112 19.2818 14.0029 20.6915 13.8143C22.1011 13.6257 23.3726 13.7372 24.508 14.1489C25.8141 14.6639 26.7768 15.5562 27.3964 16.8256C27.9813 17.9591 28.2738 19.2792 28.2738 20.79C28.2738 21.889 28.1519 22.832 27.9123 23.6208C27.6706 24.4116 27.3618 25.0808 26.984 25.6283C26.1594 26.7619 25.1093 27.4655 23.8378 27.7393C22.7023 28.0475 21.5588 28.0738 20.4091 27.8163C19.2575 27.5588 18.3374 27.1208 17.6508 26.5043ZM20.1248 17.442C19.4037 18.2329 19.0747 19.407 19.1458 20.9684C19.2148 22.5318 19.5073 23.6208 20.0232 24.2372C20.2304 24.513 20.5899 24.7442 21.1058 24.9328C21.6218 25.1214 22.1458 25.1396 22.678 24.9835C23.2101 24.8293 23.6834 24.442 24.0957 23.8256C24.508 23.2071 24.7315 22.2114 24.766 20.8386C24.766 19.6037 24.5669 18.677 24.1729 18.0585C23.7768 17.44 23.3218 17.0466 22.8059 16.8742C22.29 16.7019 21.7741 16.6938 21.2582 16.8479C20.7423 17.002 20.3645 17.2007 20.1228 17.44L20.1248 17.442Z\" fill=\"white\"><\/path><path id=\"Vector_3\" d=\"M35.456 27.7413C34.3206 27.8102 33.0917 27.792 31.7695 27.6906C30.4451 27.5872 29.783 26.7477 29.783 25.168V10.0284H31.6395C32.0863 10.0284 32.4824 10.2007 32.8257 10.5434C33.1689 10.8861 33.3416 11.2978 33.3416 11.7784V14.0961H35.456V14.816C35.456 15.3311 35.2834 15.7508 34.9401 16.0773C34.5968 16.4038 34.1825 16.566 33.7031 16.566H33.3416V24.1865C33.3416 24.7705 33.6848 25.0625 34.3734 25.0625H35.456V27.7393V27.7413Z\" fill=\"white\"><\/path><path id=\"Vector_4\" d=\"M45.8332 23.5194H48.4128C48.035 24.9612 47.3119 26.0602 46.2476 26.8146C45.1812 27.6054 43.8407 27.9988 42.2259 27.9988C40.2658 27.9988 38.7363 27.3641 37.6355 26.0947C36.5346 24.8598 35.9861 23.0915 35.9861 20.792C35.9861 18.4924 36.5183 16.8783 37.5847 15.6434C38.6856 14.374 40.215 13.7393 42.1751 13.7393C44.2388 13.7393 45.8373 14.3577 46.9707 15.5927C48.0716 16.8621 48.62 18.6303 48.62 20.8954V21.4612C48.62 21.6335 48.6017 21.7532 48.5692 21.8221H39.6463C39.6808 22.8867 39.9388 23.6755 40.4202 24.1906C40.867 24.7401 41.5373 25.0139 42.431 25.0139C43.016 25.0139 43.5136 24.8942 43.926 24.6529C44.0296 24.6185 44.123 24.5596 44.2103 24.4725C44.2956 24.3873 44.3911 24.292 44.4947 24.1886C44.5292 24.0851 44.6572 23.9493 44.8806 23.7769C45.1041 23.6045 45.4229 23.5194 45.8353 23.5194H45.8332ZM39.6443 19.5023H44.905C44.8359 18.5756 44.5963 17.8882 44.1839 17.442C43.7371 16.9614 43.1013 16.7222 42.2767 16.7222C41.519 16.7222 40.9016 16.9635 40.4202 17.442C39.9388 17.9226 39.6808 18.6101 39.6463 19.5023H39.6443Z\" fill=\"white\"><\/path><path id=\"Vector_5\" d=\"M53.4786 17.2007V11.7277C53.4786 11.2471 53.3059 10.8435 52.9626 10.5171C52.6194 10.1906 52.205 10.0284 51.7257 10.0284H49.8692V27.7393H51.4839L53.4786 17.1987V17.2007Z\" fill=\"white\"><\/path><\/g><g id=\"Group_2\"><path id=\"Vector_6\" d=\"M52.1725 27.7453L55.1746 11.8879C55.2721 11.3728 55.5361 10.9348 55.9647 10.5759C56.3933 10.2149 56.8665 10.0365 57.3824 10.0365H64.1381C66.0636 10.0365 67.4123 10.4481 68.1842 11.2714C68.9845 12.1292 69.2282 13.3824 68.9174 15.031C68.7103 16.13 68.2959 17.0385 67.6784 17.7604C67.1361 18.4478 66.3886 18.9446 65.436 19.2529C66.1754 19.5287 66.6466 19.9403 66.8517 20.4878C67.063 21.0029 67.0874 21.8789 66.9228 23.1138L66.6263 25.2248C66.5877 25.4316 66.545 25.6547 66.5003 25.8939C66.4557 26.1353 66.4293 26.3583 66.4252 26.5631C66.411 27.1816 66.543 27.575 66.8192 27.7474H62.7955C62.6879 27.4047 62.6533 27.0437 62.6899 26.6665C62.7244 26.117 62.763 25.7398 62.8016 25.533L63.1103 23.6289C63.2363 22.5988 63.1692 21.8606 62.9113 21.4145C62.6046 21.0373 61.9688 20.8488 61.0081 20.8488H57.1407L55.8347 27.7474H52.1725V27.7453ZM57.7237 17.7563H62.0033C62.9316 17.7563 63.6547 17.5678 64.1726 17.1906C64.6906 16.8134 65.0257 16.2294 65.174 15.4406C65.3243 14.6518 65.2106 14.0678 64.8348 13.6906C64.4997 13.2789 63.9208 13.0721 63.0961 13.0721H58.6093L57.7216 17.7584L57.7237 17.7563Z\" fill=\"white\"><\/path><path id=\"Vector_7\" d=\"M82.6258 14.0495L81.1044 22.0817C80.6434 24.5191 79.705 26.115 78.2892 26.8693C76.8735 27.6257 75.409 28.0029 73.8979 28.0029C72.4314 27.9339 71.1598 27.5223 70.0833 26.7679C69.0048 26.0136 68.692 24.4501 69.1388 22.0817L70.6602 14.0495H74.2696L72.6121 22.8015C72.4557 23.6248 72.5817 24.2271 72.992 24.6043C73.4022 24.9814 73.9161 25.17 74.5356 25.17C75.1551 25.17 75.7482 24.9814 76.319 24.6043C76.8877 24.2271 77.2513 23.6269 77.4077 22.8015L78.7341 15.7995C78.8255 15.3189 79.0651 14.9073 79.4572 14.5646C79.8492 14.2219 80.3021 14.0495 80.818 14.0495H82.6237H82.6258Z\" fill=\"white\"><\/path><path id=\"Vector_8\" d=\"M93.0924 27.7453H91.2867C90.7707 27.7453 90.3808 27.5831 90.1167 27.2566C89.8506 26.9302 89.7673 26.5104 89.8648 25.9953L91.1912 18.9933C91.3476 18.17 91.2115 17.5698 90.785 17.1906C90.3584 16.8134 89.8344 16.6248 89.2169 16.6248C88.5994 16.6248 88.0124 16.8134 87.4599 17.1906C86.9075 17.5698 86.552 18.17 86.3976 18.9933L84.7402 27.7453H81.1308L82.6522 19.7132C83.095 17.3792 83.9988 15.8178 85.3699 15.0269C86.7389 14.2381 88.1708 13.8082 89.6617 13.7393C91.1749 13.7393 92.4911 14.1347 93.6144 14.9235C94.7356 15.7143 95.0707 17.3102 94.6157 19.7112L93.0944 27.7433L93.0924 27.7453Z\" fill=\"white\"><\/path><path id=\"Vector_9\" d=\"M106.153 27.7453H104.347C103.831 27.7453 103.441 27.5831 103.175 27.2566C102.909 26.9302 102.826 26.5104 102.923 25.9953L104.25 18.9933C104.406 18.17 104.27 17.5698 103.843 17.1906C103.417 16.8134 102.893 16.6248 102.275 16.6248C101.658 16.6248 101.071 16.8134 100.518 17.1906C99.9658 17.5698 99.6104 18.17 99.456 18.9933L97.7986 27.7453H94.1892L95.7105 19.7132C96.1533 17.3792 97.0572 15.8178 98.4282 15.0269C99.7972 14.2381 101.229 13.8082 102.72 13.7393C104.233 13.7393 105.549 14.1347 106.673 14.9235C107.794 15.7143 108.129 17.3102 107.674 19.7112L106.153 27.7433V27.7453Z\" fill=\"white\"><\/path><path id=\"Vector_10\" d=\"M117.59 23.5234H120.17C119.518 24.9652 118.588 26.0643 117.379 26.8186C116.164 27.6095 114.749 28.0029 113.132 28.0029C111.172 28.0029 109.762 27.3682 108.903 26.0988C108.036 24.8638 107.82 23.0956 108.257 20.796C108.673 18.5999 109.531 16.8824 110.831 15.6474C112.171 14.378 113.82 13.7433 115.78 13.7433C117.844 13.7433 119.325 14.3618 120.227 15.5967C121.086 16.8661 121.301 18.6344 120.873 20.8995C120.846 21.0373 120.824 21.157 120.804 21.2604C120.783 21.3638 120.771 21.4328 120.765 21.4652C120.732 21.6376 120.692 21.7572 120.645 21.8262H111.722C111.554 22.8908 111.663 23.6796 112.047 24.1946C112.39 24.7442 113.008 25.0179 113.902 25.0179C114.487 25.0179 115.007 24.8983 115.466 24.657C115.575 24.6225 115.681 24.5637 115.783 24.4765C115.884 24.3913 115.998 24.296 116.12 24.1926C116.172 24.0892 116.329 23.9533 116.585 23.781C116.841 23.6106 117.176 23.5234 117.588 23.5234H117.59ZM112.161 19.5084H117.422C117.527 18.5817 117.418 17.8963 117.089 17.4481C116.733 16.9675 116.142 16.7282 115.317 16.7282C114.56 16.7282 113.896 16.9696 113.325 17.4481C112.752 17.9287 112.364 18.6161 112.161 19.5084Z\" fill=\"white\"><\/path><path id=\"Vector_11\" d=\"M120.672 27.7453L121.929 21.1043C122.183 19.7659 122.593 18.6425 123.16 17.732C123.726 16.8236 124.407 16.0935 125.199 15.544C125.948 15.0289 126.785 14.6518 127.707 14.4125C128.63 14.1732 129.554 14.0515 130.482 14.0515H130.998L130.305 17.7077H129.119C128.122 17.7077 127.338 17.949 126.765 18.4296C126.192 18.9102 125.808 19.6645 125.613 20.6946L124.279 27.7494H120.669L120.672 27.7453Z\" fill=\"white\"><\/path><\/g><\/g><\/svg><\/div>\n\t\t\t\t\t<div class=\"e-733ab107-8cb8 e-svg-base e-default-div\" data-interaction-id=\"65baa491\" data-e-type=\"widget\" data-id=\"65baa491\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" preserveAspectRatio=\"none\" overflow=\"visible\" style=\"display: block; width: 100%; height: 100%; overflow: unset;\" width=\"20\" height=\"26\" viewBox=\"0 0 20 26\" fill=\"currentColor\"><g id=\"cross (1) 1\"><path id=\"Vector\" d=\"M10.8914 12.9923L14.8246 9.05919C14.9384 8.94132 15.0014 8.78344 15 8.61957C14.9986 8.4557 14.9328 8.29894 14.8169 8.18306C14.7011 8.06718 14.5443 8.00145 14.3804 8.00002C14.2166 7.9986 14.0587 8.0616 13.9408 8.17544L10.0077 12.1086L6.07455 8.17544C5.95668 8.0616 5.7988 7.9986 5.63493 8.00002C5.47106 8.00145 5.3143 8.06718 5.19842 8.18306C5.08254 8.29894 5.01681 8.4557 5.01538 8.61957C5.01396 8.78344 5.07696 8.94132 5.19081 9.05919L9.12393 12.9923L5.19081 16.9254C5.13111 16.9831 5.0835 17.0521 5.05074 17.1283C5.01799 17.2046 5.00074 17.2866 5.00002 17.3696C4.9993 17.4526 5.01512 17.5349 5.04654 17.6117C5.07797 17.6885 5.12438 17.7583 5.18306 17.8169C5.24174 17.8756 5.31152 17.922 5.38833 17.9535C5.46514 17.9849 5.54744 18.0007 5.63043 18C5.71342 17.9993 5.79543 17.982 5.87168 17.9493C5.94794 17.9165 6.0169 17.8689 6.07455 17.8092L10.0077 13.8761L13.9408 17.8092C14.0587 17.923 14.2166 17.986 14.3804 17.9846C14.5443 17.9832 14.7011 17.9175 14.8169 17.8016C14.9328 17.6857 14.9986 17.5289 15 17.3651C15.0014 17.2012 14.9384 17.0433 14.8246 16.9254L10.8914 12.9923Z\" fill=\"white\"><\/path><\/g><\/svg><\/div>\n\t\t\t\t\t<div class=\"e-3f0bc54e-c777 e-3f0bc54e-c777 e-svg-base e-default-div\" data-interaction-id=\"6e57ad98\" data-e-type=\"widget\" data-id=\"6e57ad98\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" preserveAspectRatio=\"none\" overflow=\"visible\" style=\"display: block; width: 100%; height: 100%; overflow: unset;\" width=\"167.267\" height=\"26\" viewBox=\"0 0 167.267 26\" fill=\"currentColor\"><g id=\"Frame 1592\"><g id=\"Vector\"><path d=\"M11.9082 0C18.6038 0 23.9999 5.3396 23.9999 11.9929C23.9999 13.349 23.7881 14.691 23.3925 15.7504H10.5944V14.4649C12.0494 14.4649 13.4478 14.4225 14.2953 14.3519C17.0923 14.1258 18.2224 13.2078 18.2224 11.1595C18.2224 7.93882 15.4678 5.3396 12.0494 5.3396C8.50378 5.3396 5.80573 8.10831 5.76334 11.767C5.72096 15.7362 8.84281 18.6604 12.8404 18.6604H21.9658C19.7339 21.9941 15.9763 24 11.9646 24C5.39609 23.9999 0 18.6039 0 12.0071C0 5.46676 5.4102 0 11.9082 0Z\" fill=\"white\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M116.55 6.44629C118.239 6.44629 119.522 7.36961 120.212 9.0427V6.64971H123.02V16.8214C123.02 19.7508 120.64 21.8259 117.263 21.8259C114.516 21.8259 112.462 20.5443 111.729 18.4285H115.066C115.37 19.0998 116.225 19.5271 117.323 19.5271C119.093 19.5271 120.212 18.4896 120.212 16.8214V14.907C119.518 16.5436 118.157 17.5131 116.489 17.5131C113.662 17.5131 111.505 15.1533 111.505 12.0814C111.505 8.92818 113.723 6.44629 116.55 6.44629ZM117.263 8.72475C115.574 8.72475 114.252 10.1488 114.252 11.9797C114.252 13.7903 115.574 15.194 117.263 15.194C118.951 15.194 120.273 13.7699 120.273 11.9797C120.273 10.1895 118.931 8.72475 117.263 8.72475ZM59.2229 6.44629C61.9897 6.44629 64.085 8.80616 64.085 11.939C64.085 15.0922 61.847 17.6352 59.1008 17.6352C57.4041 17.6352 56.0452 16.6829 55.3577 15.032V21.6223H52.5707V6.64971H55.3577V9.06546C56.0562 7.40346 57.4508 6.44629 59.2229 6.44629ZM58.3278 8.78581C56.619 8.78581 55.3168 10.2099 55.3168 12.0814C55.3168 13.9327 56.619 15.3567 58.3278 15.3567C60.0568 15.3567 61.3383 13.9733 61.3383 12.0814C61.3383 10.2098 60.0366 8.78581 58.3278 8.78581ZM162.405 6.44629C165.171 6.44629 167.267 8.80616 167.267 11.939C167.267 15.0922 165.029 17.6352 162.283 17.6352C160.586 17.6352 159.227 16.6829 158.539 15.0321V21.6223H155.752V6.64971H158.539V9.06546C159.238 7.40346 160.632 6.44629 162.405 6.44629ZM161.509 8.78581C159.8 8.78581 158.499 10.2099 158.499 12.0814C158.499 13.9327 159.8 15.3567 161.509 15.3567C163.239 15.3567 164.52 13.9733 164.52 12.0814C164.52 10.2098 163.218 8.78581 161.509 8.78581ZM35.5026 6.44629C38.915 6.44629 41.3257 9.2131 40.9138 12.8037H32.5266C32.8367 14.2857 34.0125 15.25 35.5888 15.25C36.5808 15.25 37.5013 14.838 37.7962 14.1718H40.7003C40.1357 16.201 37.9999 17.6353 35.523 17.6353C32.2884 17.6353 29.8066 15.2143 29.8066 12.0204C29.8066 8.94862 32.3494 6.44629 35.5026 6.44629ZM35.4209 8.75019C33.9566 8.75019 32.8689 9.6662 32.5454 11.0846H38.1645C37.9213 9.66481 36.8728 8.75019 35.4209 8.75019ZM70.9 6.44629C74.3124 6.44629 76.7231 9.21301 76.3111 12.8037H67.9243C68.2341 14.2857 69.4099 15.25 70.9865 15.25C71.9782 15.25 72.8987 14.838 73.1938 14.1718H76.0977C75.5331 16.201 73.3972 17.6353 70.9204 17.6353C67.6858 17.6353 65.2037 15.2143 65.2037 12.0204C65.204 8.94862 67.7467 6.44629 70.9 6.44629ZM70.8188 8.75019C69.3541 8.75019 68.2665 9.6662 67.943 11.0846H73.5621C73.3189 9.66481 72.2704 8.75019 70.8188 8.75019ZM88.9852 2.37762V17.4318H86.1983V15.0159C85.4994 16.6779 84.1049 17.6353 82.3331 17.6353C79.5663 17.6353 77.471 15.2754 77.471 12.1425C77.471 8.98932 79.7087 6.44638 82.4552 6.44638C84.152 6.44638 85.5108 7.39865 86.1983 9.04945V2.3778L88.9852 2.37762ZM83.2281 8.72475C81.4987 8.72475 80.2172 10.1082 80.2172 12.0001C80.2172 13.8717 81.5193 15.2957 83.2281 15.2957C84.9369 15.2957 86.2387 13.8716 86.2387 12.0001C86.2387 10.1488 84.9369 8.72475 83.2281 8.72475ZM100.561 6.44629C102.166 6.44629 103.45 7.39468 104.12 9.03918V6.6498H106.908V17.4318H104.12V15.035C103.441 16.6852 102.114 17.6353 100.398 17.6353C97.7533 17.6353 95.6984 15.2347 95.6984 12.1425C95.6984 9.03003 97.9158 6.44629 100.561 6.44629ZM101.293 8.7451C99.6453 8.7451 98.4446 10.1081 98.4446 12.0001C98.4449 13.892 99.6654 15.2753 101.313 15.2753C102.941 15.2753 104.161 13.8717 104.161 12.0001C104.161 10.1488 102.941 8.74519 101.293 8.7451ZM137.321 6.44629C140.474 6.44629 143.078 8.94853 143.078 12.0001C143.078 15.0922 140.495 17.6352 137.321 17.6352C134.168 17.6352 131.564 15.1329 131.564 12.0814C131.564 8.98923 134.148 6.44629 137.321 6.44629ZM137.321 8.96888C135.653 8.96888 134.31 10.3319 134.31 12.0408C134.31 13.7497 135.653 15.1127 137.321 15.1127C138.989 15.1127 140.332 13.7497 140.332 12.0408C140.332 10.3319 138.989 8.96888 137.321 8.96888ZM144.38 6.64971V13.3426C144.38 15.8856 146.333 17.6351 149.181 17.6351C151.948 17.6351 153.901 15.8651 153.901 13.3426V6.64971H151.134V13.1596C151.134 14.3395 150.341 15.1328 149.161 15.1328C147.981 15.1328 147.167 14.3191 147.167 13.1189V6.64962L144.38 6.64971ZM40.9138 6.64971L44.5393 11.9762L40.7916 17.4317H43.7213L46.2468 13.6957L48.6849 17.4317H51.7771L47.9899 11.8215L51.4719 6.64962H48.5223L46.3192 10.1709L44.0059 6.64962L40.9138 6.64971ZM91.2229 6.64971V17.4317H94.0103V6.64971H91.2229ZM125.257 6.64971V17.4317H128.044V11.4711C128.044 10.0064 128.716 9.43678 130.404 9.43678H131.36V6.64971H130.953C129.439 6.64971 128.415 7.82863 128.044 9.51079V6.64971H125.257ZM90.9787 3.80168C90.9787 4.71714 91.6909 5.42907 92.6063 5.42907C93.5219 5.42907 94.254 4.71704 94.254 3.80168C94.254 2.88632 93.5421 2.17419 92.6264 2.17419C91.7108 2.17419 90.9787 2.88623 90.9787 3.80168Z\" fill=\"white\"><\/path><\/g><\/g><\/svg><\/div>\n\t\t\n<\/div>\n\t\t\t<h1 data-interaction-id=\"55f883\" class=\"e-59a9ce8f-5c95 e-heading-base e-default-h1\" data-e-type=\"widget\" data-id=\"55f883\">From HotelRunner to Expedia Group, faster<\/h1>\n\t\t\t\t\t<p class=\"e-12631009-f864 e-paragraph-base e-default-p\" data-interaction-id=\"72c1bb67\" data-e-type=\"widget\" data-id=\"72c1bb67\">Autonomous Onboarding\u2122 makes Expedia Group faster and easier to join. Complete a few simple steps and your property can go live in less than 24 hours.<\/p>\n\t\t<div class=\"elementor-element elementor-element-255583d6 e-con e-atomic-element e-flexbox-base e-default-div e-5e24e9f1-15af \" data-id=\"255583d6\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"255583d6\" data-e-type=\"e-flexbox\" data-id=\"255583d6\">\n    <div class=\"elementor-element elementor-element-75aac6dc e-con e-atomic-element e-flexbox-base e-default-div e-1e44dfdc-19d3 \" data-id=\"75aac6dc\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"75aac6dc\" data-e-type=\"e-flexbox\" data-id=\"75aac6dc\">\n    \t\t\t<div class=\"e-7fc754ce-dc49 e-svg-base e-default-div\" data-interaction-id=\"69caa717\" data-e-type=\"widget\" data-id=\"69caa717\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" preserveAspectRatio=\"none\" overflow=\"visible\" style=\"display: block; width: 100%; height: 100%; overflow: unset;\" width=\"14\" height=\"14\" viewBox=\"0 0 14 14\" fill=\"currentColor\"><g id=\"Frame 1588\"><rect width=\"14\" height=\"14\" rx=\"7\" fill=\"white\" fill-opacity=\"0.3\"><\/rect><path id=\"Vector\" d=\"M4 7L6 9L10 5\" stroke=\"white\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path><\/g><\/svg><\/div>\n\t\t\t\t\t<span class=\"e-5666e930-6abf e-paragraph-base e-default-span\" data-interaction-id=\"eaa5f9f\" data-e-type=\"widget\" data-id=\"eaa5f9f\">A few simple steps<\/span>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-7d1529db e-con e-atomic-element e-flexbox-base e-default-div e-52058ed0-e456 \" data-id=\"7d1529db\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"7d1529db\" data-e-type=\"e-flexbox\" data-id=\"7d1529db\">\n    \t\t\t<div class=\"e-4627c9f6-8411 e-svg-base e-default-div\" data-interaction-id=\"63ff537b\" data-e-type=\"widget\" data-id=\"63ff537b\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" preserveAspectRatio=\"none\" overflow=\"visible\" style=\"display: block; width: 100%; height: 100%; overflow: unset;\" width=\"14\" height=\"14\" viewBox=\"0 0 14 14\" fill=\"currentColor\"><g id=\"Frame 1588\"><rect width=\"14\" height=\"14\" rx=\"7\" fill=\"white\" fill-opacity=\"0.3\"><\/rect><path id=\"Vector\" d=\"M4 7L6 9L10 5\" stroke=\"white\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path><\/g><\/svg><\/div>\n\t\t\t\t\t<span class=\"e-66846d03-9f0c e-paragraph-base e-default-span\" data-interaction-id=\"78ba119\" data-e-type=\"widget\" data-id=\"78ba119\">Live in less than 24 hours<\/span>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-7ab42f7d e-con e-atomic-element e-flexbox-base e-default-div e-7e9c19e1-7660 \" data-id=\"7ab42f7d\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"7ab42f7d\" data-e-type=\"e-flexbox\" data-id=\"7ab42f7d\">\n    \t\t\t<div class=\"e-fd48362-e466 e-svg-base e-default-div\" data-interaction-id=\"412f82b6\" data-e-type=\"widget\" data-id=\"412f82b6\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" preserveAspectRatio=\"none\" overflow=\"visible\" style=\"display: block; width: 100%; height: 100%; overflow: unset;\" width=\"14\" height=\"14\" viewBox=\"0 0 14 14\" fill=\"currentColor\"><g id=\"Frame 1588\"><rect width=\"14\" height=\"14\" rx=\"7\" fill=\"white\" fill-opacity=\"0.3\"><\/rect><path id=\"Vector\" d=\"M4 7L6 9L10 5\" stroke=\"white\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path><\/g><\/svg><\/div>\n\t\t\t\t\t<span class=\"e-a283088-a383 e-paragraph-base e-default-span\" data-interaction-id=\"4d4e7b8e\" data-e-type=\"widget\" data-id=\"4d4e7b8e\">High quality demand<\/span>\n\t\t\n<\/div>\n\n<\/div>\n<div class=\"elementor-element elementor-element-7d74999c e-con e-atomic-element e-flexbox-base e-default-div e-7d513506-a78d \" data-id=\"7d74999c\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"7d74999c\" data-e-type=\"e-flexbox\" data-id=\"7d74999c\">\n    \t\t<div class=\"elementor-element elementor-element-d3cb120 elementor-widget elementor-widget-hr_button\" data-id=\"d3cb120\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"hr_button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t        <div class=\"btn-wrapper\">\n            <a class=\"btn normal has-no-icon\" href=\"#ao-form\">\n                                <span class=\"btn-text\">Join Expedia Group<\/span>\n                            <\/a>\n        <\/div>\n        \t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n\n<\/div>\n<div class=\"elementor-element elementor-element-105afdcc e-con e-atomic-element e-div-block-base e-default-div e-7e66f8a9-c627 \" data-id=\"105afdcc\" data-element_type=\"e-div-block\" data-e-type=\"e-div-block\" data-interaction-id=\"105afdcc\" data-e-type=\"e-div-block\" data-id=\"105afdcc\">\n    \t\t\t\t  \t<video\n    data-id=\"26ad346\" data-interaction-id=\"26ad346\"\n    data-e-type=\"e-self-hosted-video\" data-interactions=\"null\"\n    \n    class=\"e-26ad346-be55ec4 e-self-hosted-video-base\"\n    data-e-type=\"widget\" data-id=\"26ad346\"\n\t\tclass=\"e-self-hosted-video-base\"\n\t\t\t\tautoplay\t\tmuted\t\tloop\t\t\t\tplaysinline\t\tcontrolslist=\"nodownload\"\t\tpreload=\"none\"\n\t>\n\t\t<source src=\"https:\/\/hotelrunner.com\/wp-content\/uploads\/2026\/10\/Autonomous_Onboarding.webm#t=0\">\n\t<\/video>\n\t\t\n<\/div>\n\n<\/div>\n\n<\/section>\n<section class=\"elementor-element elementor-element-773ba82d e-con e-atomic-element e-flexbox-base e-default-section e-35d7515a-bf7c \" data-id=\"773ba82d\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"773ba82d\" data-e-type=\"e-flexbox\" data-id=\"773ba82d\">\n    <div class=\"elementor-element elementor-element-51d31afb e-con e-atomic-element e-flexbox-base e-default-div container e-124c7380-e543 \" data-id=\"51d31afb\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"51d31afb\" data-e-type=\"e-flexbox\" data-id=\"51d31afb\">\n    <div class=\"elementor-element elementor-element-e0c787d e-con e-atomic-element e-flexbox-base e-default-div e-e0c787d-024b4f1 \" data-id=\"e0c787d\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"e0c787d\" data-e-type=\"e-flexbox\" data-id=\"e0c787d\">\n    \t\t\t<h2 data-interaction-id=\"6abf18f4\" class=\"e-594a96e0-cbf9 e-heading-base e-default-h2\" data-e-type=\"widget\" data-id=\"6abf18f4\">Valuable Expedia Group demand, now easier to reach<\/h2>\n\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" class=\"e-image-base e-default-img e-0205668-c77517c\" data-interaction-id=\"0205668\" data-e-type=\"widget\" data-id=\"0205668\" id=\"148518\" src=\"https:\/\/hotelrunner.com\/wp-content\/uploads\/2026\/10\/4700edef-73ae-4a0c-bb0f-b6b662877b5c.png\" width=\"1119\" height=\"609\" srcset=\"https:\/\/hotelrunner.com\/wp-content\/uploads\/2026\/10\/4700edef-73ae-4a0c-bb0f-b6b662877b5c.png 1119w, https:\/\/hotelrunner.com\/wp-content\/uploads\/2026\/10\/4700edef-73ae-4a0c-bb0f-b6b662877b5c-669x364.png 669w\" alt=\"\">\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-4fdd5b70 e-con e-atomic-element e-flexbox-base e-default-div e-bf5af9-c130 \" data-id=\"4fdd5b70\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"4fdd5b70\" data-e-type=\"e-flexbox\" data-id=\"4fdd5b70\">\n    \t\t\t<p class=\"e-6df72a9f-26aa e-paragraph-base e-default-p\" data-interaction-id=\"3f53b46f\" data-e-type=\"widget\" data-id=\"3f53b46f\">We\u2019ve made it easier to join Expedia Group directly through HotelRunner.<\/p>\n\t\t\t\t\t<p class=\"e-536f0273-a6d7 e-paragraph-base e-default-p\" data-interaction-id=\"7044c83b\" data-e-type=\"widget\" data-id=\"7044c83b\">With Autonomous Onboarding\u2122, you can complete a few simple steps in HotelRunner and get your property live on Expedia Group in less than 24 hours.<br><br>Once live, you can reach traveler demand across Expedia Group\u2019s global travel platform, including broad B2B distribution, with <u>1B+ average monthly searches<\/u> and <u>415M+ booked room nights.<\/u><br><br>A valuable new source of demand is now much easier to reach.<\/p>\n\t\t\n<\/div>\n\n<\/div>\n\n<\/section>\n<section class=\"elementor-element elementor-element-162356cd e-con e-atomic-element e-flexbox-base e-default-section e-41eb3703-83d4 \" data-id=\"162356cd\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"162356cd\" data-e-type=\"e-flexbox\" data-id=\"162356cd\">\n    <div class=\"elementor-element elementor-element-3246cd92 e-con e-atomic-element e-flexbox-base e-default-div e-645391b1-e4a8 \" data-id=\"3246cd92\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"3246cd92\" data-e-type=\"e-flexbox\" data-id=\"3246cd92\">\n    \t\t\t<h2 data-interaction-id=\"770dfc84\" class=\"e-291ee3d0-cc7f e-heading-base e-default-h2\" data-e-type=\"widget\" data-id=\"770dfc84\">Why join Expedia Group?<\/h2>\n\t\t\t\t\t<p class=\"e-7800e319-2dfb e-paragraph-base e-default-p\" data-interaction-id=\"61450985\" data-e-type=\"widget\" data-id=\"61450985\">Autonomous Onboarding\u2122 gives you faster access to valuable Expedia Group demand, including incremental B2B distribution and travelers who spend more and stay longer.<\/p>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-4bb4d1c9 e-con e-atomic-element e-flexbox-base e-default-div container e-70217e9b-df6e \" data-id=\"4bb4d1c9\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"4bb4d1c9\" data-e-type=\"e-flexbox\" data-id=\"4bb4d1c9\">\n    <div class=\"elementor-element elementor-element-5b27534f e-con e-atomic-element e-div-block-base e-default-div ao-card \" data-id=\"5b27534f\" data-element_type=\"e-div-block\" data-e-type=\"e-div-block\" data-interaction-id=\"5b27534f\" data-e-type=\"e-div-block\" data-id=\"5b27534f\">\n    <div class=\"elementor-element elementor-element-185726ff e-con e-atomic-element e-flexbox-base e-default-div e-47449e5c-c0ae \" data-id=\"185726ff\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"185726ff\" data-e-type=\"e-flexbox\" data-id=\"185726ff\">\n    <div class=\"elementor-element elementor-element-4cc7a99 e-con e-atomic-element e-div-block-base e-default-div ao-icon-tile \" data-id=\"4cc7a99\" data-element_type=\"e-div-block\" data-e-type=\"e-div-block\" data-interaction-id=\"4cc7a99\" data-e-type=\"e-div-block\" data-id=\"4cc7a99\">\n    \t\t\t<div class=\"e-4b7d2696-367a e-svg-base e-default-div\" data-interaction-id=\"23810a1f\" data-e-type=\"widget\" data-id=\"23810a1f\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" preserveAspectRatio=\"none\" overflow=\"visible\" style=\"display: block; width: 100%; height: 100%; overflow: unset;\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"currentColor\"><g id=\"check (2) 1\"><path id=\"Vector\" d=\"M19.6357 5.93497C19.15 5.46438 18.4214 5.46438 17.9357 5.93497L8.82857 14.7585L5.06429 11.1114C4.57857 10.6409 3.85 10.6409 3.36429 11.1114C2.87857 11.582 2.87857 12.2879 3.36429 12.7585L7.97857 17.2291C8.22143 17.4644 8.46429 17.582 8.82857 17.582C9.19286 17.582 9.43571 17.4644 9.67857 17.2291L19.6357 7.58203C20.1214 7.11144 20.1214 6.40556 19.6357 5.93497Z\" fill=\"#F15F22\"><\/path><\/g><\/svg><\/div>\n\t\t\n<\/div>\n\t\t\t<span class=\"e-5f2fc604-e6e6 e-paragraph-base e-default-span\" data-interaction-id=\"44e9601\" data-e-type=\"widget\" data-id=\"44e9601\">Easier to join<\/span>\n\t\t\n<\/div>\n\t\t\t<h3 data-interaction-id=\"4597e5fb\" class=\"e-6288667e-1927 e-heading-base e-default-h3\" data-e-type=\"widget\" data-id=\"4597e5fb\">Reach more demand with less work<\/h3>\n\t\t\t\t\t<p class=\"e-28eb1781-21e4 e-paragraph-base e-default-p\" data-interaction-id=\"591d1b5b\" data-e-type=\"widget\" data-id=\"591d1b5b\">Autonomous Onboarding\u2122 makes joining Expedia Group through HotelRunner fast and easy. Your existing HotelRunner property data is automatically validated and connected, so you can go live in less than 24 hours.<\/p>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-6c2e517e e-con e-atomic-element e-div-block-base e-default-div ao-card \" data-id=\"6c2e517e\" data-element_type=\"e-div-block\" data-e-type=\"e-div-block\" data-interaction-id=\"6c2e517e\" data-e-type=\"e-div-block\" data-id=\"6c2e517e\">\n    <div class=\"elementor-element elementor-element-3f15accd e-con e-atomic-element e-flexbox-base e-default-div e-6d2b4c12-5168 \" data-id=\"3f15accd\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"3f15accd\" data-e-type=\"e-flexbox\" data-id=\"3f15accd\">\n    <div class=\"elementor-element elementor-element-4b64a7ba e-con e-atomic-element e-div-block-base e-default-div ao-icon-tile \" data-id=\"4b64a7ba\" data-element_type=\"e-div-block\" data-e-type=\"e-div-block\" data-interaction-id=\"4b64a7ba\" data-e-type=\"e-div-block\" data-id=\"4b64a7ba\">\n    \t\t\t<div class=\"e-2ff4cbb0-3364 e-svg-base e-default-div\" data-interaction-id=\"209c32a6\" data-e-type=\"widget\" data-id=\"209c32a6\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" preserveAspectRatio=\"none\" overflow=\"visible\" style=\"display: block; width: 100%; height: 100%; overflow: unset;\" width=\"32\" height=\"32.0008\" viewBox=\"0 0 32 32.0008\" fill=\"currentColor\"><g id=\"Group\"><path id=\"Vector\" d=\"M16 6.85762e-08C24.8553 6.85762e-08 32 7.14468 32 16C32 24.8553 24.8553 32 16 32C15.3203 32 14.7692 31.4489 14.7692 30.7692C14.7692 30.0895 15.3203 29.5385 16 29.5385C23.4959 29.5385 29.5385 23.4959 29.5385 16C29.5385 8.50414 23.4959 2.46154 16 2.46154C15.3203 2.46154 14.7692 1.91051 14.7692 1.23077C14.7692 0.551034 15.3203 6.85762e-08 16 6.85762e-08Z\" fill=\"#F15F22\"><\/path><path id=\"Vector_2\" d=\"M16 6.85762e-08C16.6797 6.85762e-08 17.2308 0.551034 17.2308 1.23077C17.2308 1.91051 16.6797 2.46154 16 2.46154C8.50414 2.46154 2.46154 8.50414 2.46154 16C2.46154 23.4959 8.50414 29.5385 16 29.5385C16.6797 29.5385 17.2308 30.0895 17.2308 30.7692C17.2308 31.4489 16.6797 32 16 32C7.14468 32 0 24.8553 0 16C0 7.14468 7.14468 6.85762e-08 16 6.85762e-08Z\" fill=\"#F15F22\"><\/path><path id=\"Vector_3\" d=\"M11.9386 2.33738C6.96278 10.6447 6.96278 21.356 11.9386 29.6634C13.8046 32.78 18.1986 32.78 20.0648 29.6632C25.0404 21.356 25.0404 10.6447 20.0646 2.33738C18.2531 -0.684714 14.0684 -0.776299 12.1149 2.06281L11.9386 2.33738ZM17.9531 3.60258C22.4623 11.1308 22.4623 20.8699 17.9529 28.3985C17.0423 29.9194 14.9609 29.9194 14.0504 28.3986C9.54093 20.8699 9.54093 11.1308 14.0504 3.60204C14.9609 2.08122 17.0412 2.08122 17.9531 3.60258Z\" fill=\"#F15F22\"><\/path><path id=\"Vector_4\" d=\"M30.7692 14.7692C31.4489 14.7692 32 15.3203 32 16C32 16.6231 31.5369 17.138 30.9363 17.2195L30.7692 17.2308H1.23077C0.551033 17.2308 0 16.6797 0 16C0 15.3769 0.463022 14.862 1.06376 14.7805L1.23077 14.7692H30.7692Z\" fill=\"#F15F22\"><\/path><\/g><\/svg><\/div>\n\t\t\n<\/div>\n\t\t\t<span class=\"e-2a374616-4266 e-paragraph-base e-default-span\" data-interaction-id=\"24415ef5\" data-e-type=\"widget\" data-id=\"24415ef5\">Incremental demand<\/span>\n\t\t\n<\/div>\n\t\t\t<h3 data-interaction-id=\"2c45d28c\" class=\"e-5cd186a-bb32 e-heading-base e-default-h3\" data-e-type=\"widget\" data-id=\"2c45d28c\">Add a new source of global demand<\/h3>\n\t\t\t\t\t<p class=\"e-d7a913-1c59 e-paragraph-base e-default-p\" data-interaction-id=\"7777ec93\" data-e-type=\"widget\" data-id=\"7777ec93\">Expand your distribution across Expedia Group\u2019s consumer brands and through a B2B network of <u>75K+ B2B partners<\/u> and <u>200K+ travel agents\u00a0worldwide.<\/u><\/p>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-3bdba43a e-con e-atomic-element e-div-block-base e-default-div ao-card \" data-id=\"3bdba43a\" data-element_type=\"e-div-block\" data-e-type=\"e-div-block\" data-interaction-id=\"3bdba43a\" data-e-type=\"e-div-block\" data-id=\"3bdba43a\">\n    <div class=\"elementor-element elementor-element-33d520f9 e-con e-atomic-element e-flexbox-base e-default-div e-33639c7e-621a \" data-id=\"33d520f9\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"33d520f9\" data-e-type=\"e-flexbox\" data-id=\"33d520f9\">\n    <div class=\"elementor-element elementor-element-3bf902cf e-con e-atomic-element e-div-block-base e-default-div ao-icon-tile \" data-id=\"3bf902cf\" data-element_type=\"e-div-block\" data-e-type=\"e-div-block\" data-interaction-id=\"3bf902cf\" data-e-type=\"e-div-block\" data-id=\"3bf902cf\">\n    \t\t\t<div class=\"e-67427ed2-a453 e-svg-base e-default-div\" data-interaction-id=\"79195b82\" data-e-type=\"widget\" data-id=\"79195b82\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" preserveAspectRatio=\"none\" overflow=\"visible\" style=\"display: block; width: 100%; height: 100%; overflow: unset;\" width=\"32\" height=\"27.5\" viewBox=\"0 0 32 27.5\" fill=\"currentColor\"><g id=\"Group\"><path id=\"Vector\" d=\"M29.8125 4.375H21.9375V2.1875C21.9375 0.981313 20.9562 0 19.75 0H12.25C11.0438 0 10.0625 0.981313 10.0625 2.1875V4.375H2.1875C0.981313 4.375 0 5.35631 0 6.5625V25.3125C0 26.5187 0.981313 27.5 2.1875 27.5H29.8125C31.0187 27.5 32 26.5187 32 25.3125V6.5625C32 5.35631 31.0187 4.375 29.8125 4.375ZM30.125 6.5625V8.619C28.9822 8.2945 28.0806 7.39281 27.756 6.25H29.8125C29.9848 6.25 30.125 6.39019 30.125 6.5625ZM25.8345 25.625H6.1655C5.77569 23.4461 4.05394 21.7243 1.875 21.3345V10.5405C4.05394 10.1507 5.77569 8.42894 6.1655 6.25H25.8346C26.2244 8.42894 27.9461 10.1507 30.1251 10.5405V21.3346C27.9461 21.7243 26.2243 23.4461 25.8345 25.625ZM11.9375 2.1875C11.9375 2.01519 12.0777 1.875 12.25 1.875H19.75C19.9223 1.875 20.0625 2.01519 20.0625 2.1875V4.375H11.9375V2.1875ZM2.1875 6.25H4.244C3.91944 7.39281 3.01781 8.29444 1.875 8.619V6.5625C1.875 6.39019 2.01519 6.25 2.1875 6.25ZM1.875 25.3125V23.256C3.01781 23.5805 3.91944 24.4822 4.244 25.625H2.1875C2.01519 25.625 1.875 25.4848 1.875 25.3125ZM29.8125 25.625H27.756C28.0805 24.4822 28.9822 23.5806 30.125 23.256V25.3125C30.125 25.4848 29.9848 25.625 29.8125 25.625Z\" fill=\"#F15F22\"><\/path><path id=\"Vector_2\" d=\"M23.4933 15.6006C23.4083 15.3669 23.2339 15.1766 23.0086 15.0715C22.7831 14.9663 22.5253 14.9552 22.2917 15.0402L18.7679 16.3227C18.2813 16.4999 18.0305 17.0378 18.2076 17.5244L20.3452 23.3974C20.4837 23.7782 20.8432 24.0146 21.2262 24.0146C21.3326 24.0146 21.4409 23.9963 21.5467 23.9578L25.0706 22.6752C25.3042 22.5902 25.4945 22.4159 25.5996 22.1904C25.7046 21.9651 25.7159 21.7073 25.6308 21.4736L23.4933 15.6006ZM21.7865 21.8752L20.2901 17.7641L22.0521 17.1228L23.5484 21.234L21.7865 21.8752Z\" fill=\"#F15F22\"><\/path><path id=\"Vector_3\" d=\"M9.125 15C7.57419 15 6.3125 16.2617 6.3125 17.8125C6.3125 19.3633 7.57419 20.625 9.125 20.625C10.6758 20.625 11.9375 19.3633 11.9375 17.8125C11.9375 16.2617 10.6758 15 9.125 15ZM9.125 18.75C8.60806 18.75 8.1875 18.3294 8.1875 17.8125C8.1875 17.2956 8.60806 16.875 9.125 16.875C9.64194 16.875 10.0625 17.2956 10.0625 17.8125C10.0625 18.3294 9.64194 18.75 9.125 18.75Z\" fill=\"#F15F22\"><\/path><path id=\"Vector_4\" d=\"M19.5891 11.7142C19.5891 11.4655 19.4904 11.2271 19.3145 11.0513L16.6629 8.39962C16.4871 8.22375 16.2487 8.125 16 8.125C15.7513 8.125 15.5129 8.22375 15.3371 8.39962L12.6855 11.0513C12.5097 11.2271 12.4109 11.4656 12.4109 11.7142C12.4109 11.9628 12.5097 12.2013 12.6855 12.3771L15.3371 15.0287C15.5202 15.2118 15.7601 15.3033 16 15.3033C16.2399 15.3033 16.4799 15.2118 16.6629 15.0287L19.3145 12.3771C19.4904 12.2013 19.5891 11.9628 19.5891 11.7142ZM16 13.04L14.6742 11.7142L16 10.3883L17.3258 11.7142L16 13.04Z\" fill=\"#F15F22\"><\/path><\/g><\/svg><\/div>\n\t\t\n<\/div>\n\t\t\t<span class=\"e-61797597-b0e9 e-paragraph-base e-default-span\" data-interaction-id=\"26d203c9\" data-e-type=\"widget\" data-id=\"26d203c9\">Valuable travelers<\/span>\n\t\t\n<\/div>\n\t\t\t<h3 data-interaction-id=\"769316da\" class=\"e-5b4d198c-1ccf e-heading-base e-default-h3\" data-e-type=\"widget\" data-id=\"769316da\">Reach travelers who spend more and stay longer<\/h3>\n\t\t\t\t\t<p class=\"e-6e9d4c97-8edb e-paragraph-base e-default-p\" data-interaction-id=\"2720ee5a\" data-e-type=\"widget\" data-id=\"2720ee5a\">Expedia Group helps properties reach valuable traveler demand, with travelers who <u>spend 21% more and stay 11% longer than the industry\u00a0average.<\/u><\/p>\n\t\t\n<\/div>\n\n<\/div>\n\n<\/section>\n<section class=\"elementor-element elementor-element-78cb3efa e-con e-atomic-element e-flexbox-base e-default-section e-36042187-dbf5 \" data-id=\"78cb3efa\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"78cb3efa\" data-e-type=\"e-flexbox\" data-id=\"78cb3efa\">\n    <div class=\"elementor-element elementor-element-79d43e96 e-con e-atomic-element e-flexbox-base e-default-div container e-d5db212-357a \" data-id=\"79d43e96\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"79d43e96\" data-e-type=\"e-flexbox\" data-id=\"79d43e96\">\n    \t\t\t<img decoding=\"async\" class=\"e-image-base e-default-img e-60c7643-7756\" data-interaction-id=\"14d2062f\" data-e-type=\"widget\" data-id=\"14d2062f\" id=\"148534\" src=\"https:\/\/hotelrunner.com\/wp-content\/uploads\/2026\/10\/ao-listing-properties.jpg\" width=\"2160\" height=\"2160\" srcset=\"https:\/\/hotelrunner.com\/wp-content\/uploads\/2026\/10\/ao-listing-properties.jpg 2160w, https:\/\/hotelrunner.com\/wp-content\/uploads\/2026\/10\/ao-listing-properties-364x364.jpg 364w\" alt=\"HotelRunner property listing sync: rooms and rates, property photos and property info shared with Expedia Group\"\/>\t\t<div class=\"elementor-element elementor-element-663414a6 e-con e-atomic-element e-flexbox-base e-default-div e-452bd6eb-f807 \" data-id=\"663414a6\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"663414a6\" data-e-type=\"e-flexbox\" data-id=\"663414a6\">\n    \t\t\t<h2 data-interaction-id=\"64569cc2\" class=\"e-3ad7fa4e-2743 e-heading-base e-default-h2\" data-e-type=\"widget\" data-id=\"64569cc2\">Listing more properties on Expedia Group is easier than ever<\/h2>\n\t\t\t\t\t<p class=\"e-c9879a2-e7bc e-paragraph-base e-default-p\" data-interaction-id=\"337cd52e\" data-e-type=\"widget\" data-id=\"337cd52e\">With Autonomous Onboarding\u2122, you can list additional properties directly through HotelRunner. After just a few simple steps, your existing content, rates, and availability can be sent to Expedia Group for validation, helping you go live in less than 24 hours.<br><br>Don\u2019t miss out on more valuable, incremental demand across Expedia Group\u2019s global travel platform.<\/p>\n\t\t\t\t<div class=\"elementor-element elementor-element-cdd740f elementor-widget elementor-widget-hr_button\" data-id=\"cdd740f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"hr_button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t        <div class=\"btn-wrapper\">\n            <a class=\"btn normal has-no-icon\" href=\"#ao-form\">\n                                <span class=\"btn-text\">Get more properties live now<\/span>\n                            <\/a>\n        <\/div>\n        \t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n\n<\/div>\n\n<\/section>\n<section class=\"elementor-element elementor-element-4da980ce e-con e-atomic-element e-flexbox-base e-default-section e-4feec12f-6cfe \" data-id=\"4da980ce\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"4da980ce\" data-e-type=\"e-flexbox\" data-id=\"4da980ce\">\n    <div class=\"elementor-element elementor-element-2c18595c e-con e-atomic-element e-flexbox-base e-default-div container e-44a8a6c1-ef79 \" data-id=\"2c18595c\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"2c18595c\" data-e-type=\"e-flexbox\" data-id=\"2c18595c\">\n    <div class=\"elementor-element elementor-element-47f520d e-con e-atomic-element e-flexbox-base e-default-div e-4996c898-ee45 \" data-id=\"47f520d\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"47f520d\" data-e-type=\"e-flexbox\" data-id=\"47f520d\">\n    \t\t\t<h2 data-interaction-id=\"4fc4dd59\" class=\"e-21d081dd-7628 e-heading-base e-default-h2\" data-e-type=\"widget\" data-id=\"4fc4dd59\">Listing more properties on<br>Expedia Group is easier than ever<\/h2>\n\t\t\t\t\t<p class=\"e-3defcad4-fb6a e-paragraph-base e-default-p\" data-interaction-id=\"687302db\" data-e-type=\"widget\" data-id=\"687302db\">Get started directly through HotelRunner<\/p>\n\t\t\n<\/div>\n<div class=\"elementor-element elementor-element-33be73c3 e-con e-atomic-element e-div-block-base e-default-div e-10933a9a-6721 \" data-id=\"33be73c3\" data-element_type=\"e-div-block\" data-e-type=\"e-div-block\" data-interaction-id=\"33be73c3\" data-e-type=\"e-div-block\" data-id=\"33be73c3\">\n    \t\t<div class=\"elementor-element elementor-element-cc570bc hr-form-submit-auto elementor-widget elementor-widget-global elementor-global-148748 elementor-widget-hr_form\" data-id=\"cc570bc\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"ao-form\" data-widget_type=\"hr_form.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t        <div class=\"hr-form-container\">\n            <!-- Add JustValidate script directly -->\n            <form id=\"hr-form-6ad795f6edc09\" class=\"hr-form hr-select2-booting hr-form-direction-horizontal\" method=\"POST\" name=\"Autonomous Onboarding\"                action=\"https:\/\/hotelrunner.com\/wp-content\/plugins\/hotelrunner-utilities\/data\/hr-form-handler.php\">\n                                    <input type=\"hidden\" name=\"hubspot_portal_id\" value=\"147929236\">\n                    <input type=\"hidden\" name=\"hubspot_form_guid\" value=\"e02b720b-df5f-48ed-a5e0-18d824464802\">\n                                                    <input type=\"hidden\" name=\"form_redirect_url\" value=\"https:\/\/hotelrunner.com\/en\/autonomous-onboarding-thank-you\/\">\n                                                    <input type=\"hidden\" name=\"hr_utm_source__c\" value=\"\">\n                    <input type=\"hidden\" name=\"hr_utm_medium__c\" value=\"\">\n                    <input type=\"hidden\" name=\"hr_utm_campaign__c\" value=\"\">\n                    <input type=\"hidden\" name=\"hr_utm_term__c\" value=\"\">\n                    <input type=\"hidden\" name=\"hr_utm_content__c\" value=\"\">\n                                                    <input type=\"hidden\" name=\"hr_reoon_email_field\" value=\"email\">\n                    <input type=\"hidden\" name=\"is_validated_reoon\" value=\"false\">\n                \n                <!-- Add loading overlay -->\n                <div class=\"hr-form-overlay\" style=\"display: none;\">\n                    <div class=\"hr-form-overlay-content\">\n                        <span class=\"loader\"><\/span>\n                    <\/div>\n                <\/div>\n\n                <style>\n                    \/* #hr-form-6ad795f6edc09 {\n                        position: relative;\n                    } *\/\n\n                    #hr-form-6ad795f6edc09 .hr-form-overlay {\n                        position: absolute;\n                        top: 0;\n                        left: 0;\n                        right: 0;\n                        bottom: 0;\n                        background-color: rgba(255, 255, 255, 0.9);\n                        display: none;\n                        justify-content: center;\n                        align-items: center;\n                        z-index: 1000;\n                        backdrop-filter: blur(2px);\n                    }\n\n                    #hr-form-6ad795f6edc09 .hr-form-overlay-content {\n                        text-align: center;\n                    }\n\n                    #hr-form-6ad795f6edc09 .loader {\n                        width: 48px;\n                        height: 48px;\n                        border: 5px solid var(--e-global-color-primary);\n                        border-bottom-color: transparent;\n                        border-radius: 50%;\n                        display: inline-block;\n                        box-sizing: border-box;\n                        animation: rotation 1s linear infinite;\n                    }\n\n                    @keyframes rotation {\n                        0% {\n                            transform: rotate(0deg);\n                        }\n\n                        100% {\n                            transform: rotate(360deg);\n                        }\n                    }\n\n                    #hr-form-6ad795f6edc09.submitting {\n                        pointer-events: none;\n                    }\n\n                    #hr-form-6ad795f6edc09.submitting .hr-form-overlay {\n                        display: flex;\n                    }\n                    @media (max-width: 1024px) {\n                        #hr-form-6ad795f6edc09 .hr-form-button-wrapper { text-align: left !important; }\n                        #hr-form-6ad795f6edc09 .hr-form-step-buttons-wrapper { justify-content: flex-start !important; }\n                    }\n                    @media (max-width: 767px) {\n                        #hr-form-6ad795f6edc09 .hr-form-button-wrapper { text-align: left !important; }\n                        #hr-form-6ad795f6edc09 .hr-form-step-buttons-wrapper { justify-content: flex-start !important; }\n                    }\n                <\/style>\n\n                <script>\n                    (function () {\n                        if (window.__hrFormSafeSubmitPatched || !window.HTMLFormElement || !window.HTMLFormElement.prototype) {\n                            return;\n                        }\n                        const nativeSubmit = window.HTMLFormElement.prototype.submit;\n                        if (typeof nativeSubmit !== 'function') {\n                            return;\n                        }\n                        window.HTMLFormElement.prototype.submit = function () {\n                            if (!this || !this.isConnected) {\n                                return;\n                            }\n                            return nativeSubmit.call(this);\n                        };\n                        window.__hrFormSafeSubmitPatched = true;\n                    })();\n                <\/script>\n\n                <script>\n                    document.addEventListener('DOMContentLoaded', function () {\n                        const form = document.getElementById('hr-form-6ad795f6edc09');\n                        if (!form) {\n                            return;\n                        }\n\n                        \/\/ Legacy submit\/validation flow is intentionally disabled.\n                        \/\/ A newer, unified flow below handles validation and submit state.\n                        return;\n\n                        const submitButton = form.querySelector('.hr-form-submit');\n                        const overlay = form.querySelector('.hr-form-overlay');\n                        let isSubmitting = false;\n\n                        \/\/ Initialize JustValidate\n                        const validator = new JustValidate('#hr-form-6ad795f6edc09', {\n                            validateBeforeSubmitting: true,\n                            lockForm: true,\n                            focusInvalidField: true,\n                            errorFieldCssClass: 'is-invalid',\n                            successFieldCssClass: 'is-valid',\n                            errorLabelCssClass: 'is-label-invalid',\n                            errorLabelStyle: {\n                                color: '#e3342f',\n                                fontSize: '12px'\n                            },\n                            successFieldStyle: {\n                                borderColor: '#38c172'\n                            },\n                            errorFieldStyle: {\n                                borderColor: '#e3342f'\n                            },\n                            onValidate: ({ target }) => {\n                                \/\/ Handle Select2 validation classes\n                                if ($(target).hasClass('select2-hidden-accessible')) {\n                                    const select2Container = $(target).next('.select2-container');\n                                    if ($(target).hasClass('is-valid')) {\n                                        select2Container.find('.select2-selection').addClass('is-valid').removeClass('is-invalid');\n                                    } else if ($(target).hasClass('is-invalid')) {\n                                        select2Container.find('.select2-selection').addClass('is-invalid').removeClass('is-valid');\n                                    }\n                                }\n                            }\n                        });\n\n                        \/\/ Store validator instance on the form element\n                        form._justValidateInstance = validator;\n\n                        \/\/ HubSpot configuration check.\n                        const hubspotPortalInput = form.querySelector('input[name=\"hubspot_portal_id\"]');\n                        const hubspotFormGuidInput = form.querySelector('input[name=\"hubspot_form_guid\"]');\n                        const legacyEndpointInput = form.querySelector('input[name=\"form_endpoint_url\"]');\n                        const formsEndpointType = 'hubspot';\n\n                        \n                        \/\/ Add more fields and rules as needed\n\n                        \/\/ Handle form submission\n                        form.addEventListener('submit', function (e) {\n                            e.preventDefault();\n\n                            \/\/ Prevent multiple submissions\n                            if (isSubmitting) {\n                                return false;\n                            }\n\n                                                            const turnstileResponse = form.querySelector('[name=\"cf-turnstile-response\"]');\n                                if (!turnstileResponse || !turnstileResponse.value) {\n                                    alert('Please wait for the security check to complete.');\n                                    return false;\n                                }\n                            \n                            \/\/ Check honeypot field\n                            const honeypotField = form.querySelector('input[name=\"hr_website\"]');\n                            if (honeypotField && honeypotField.value !== '') {\n                                return false;\n                            }\n\n                            const hasHubspotConfig = Boolean(\n                                hubspotPortalInput?.value?.trim() &&\n                                hubspotFormGuidInput?.value?.trim()\n                            );\n                            const hasPardotConfig = Boolean(legacyEndpointInput?.value?.trim());\n                            if ((formsEndpointType === 'hubspot' && !hasHubspotConfig) || (formsEndpointType === 'pardot' && !hasPardotConfig)) {\n                                alert(formsEndpointType === 'hubspot'\n                                    ? 'Please configure HubSpot Portal ID and Form GUID.'\n                                    : 'Please configure Pardot form endpoint URL.');\n                                return false;\n                            }\n\n                            \/\/ Validate the form\n                            validator.onSuccess((event) => {\n                                \/\/ Show loading state\n                                isSubmitting = true;\n                                form.classList.add('submitting');\n                                overlay.style.display = 'flex';\n\n                                if (submitButton) {\n                                    submitButton.disabled = true;\n                                }\n\n                                \/\/ Submit only when form is still mounted in DOM.\n                                if (form && form.isConnected) {\n                                    form.submit();\n                                }\n                            });\n\n                            validator.onFail((fields) => {\n                                \/\/ Validation failed\n                            });\n\n                            validator.validate();\n                        });\n                    });\n                <\/script>\n\n                \n                <!-- Add honeypot field -->\n                <div style=\"display:none;\">\n                    <input type=\"text\" name=\"hr_website\" value=\"\" autocomplete=\"off\" tabindex=\"-1\">\n                <\/div>\n\n                                                        <div class=\"hr-turnstile-container\" data-sitekey=\"0x4AAAAAABeTMK2qaRc9Oy_P\"\n                        data-callback=\"onTurnstileCallback_hr-form-6ad795f6edc09\"><\/div>\n                \n                                        <input type=\"hidden\" name=\"browser_ip_address__c\" value=\"10.0.12.172\"\n                            data-field-type=\"ip_address\"\n                            >\n                                                <input type=\"hidden\" name=\"browser_primary_language__c\" value=\"\"\n                            data-field-type=\"primary_language\"\n                            >\n                                                <input type=\"hidden\" name=\"browser_all_languages__c\" value=\"\"\n                            data-field-type=\"all_languages\"\n                            >\n                                                <input type=\"hidden\" name=\"browser_window_size__c\" value=\"\"\n                            data-field-type=\"window_size\"\n                            >\n                                                <input type=\"hidden\" name=\"browser_time_zone__c\" value=\"\"\n                            data-field-type=\"timezone_name\"\n                            >\n                                                <input type=\"hidden\" name=\"current_url__c\" value=\"\"\n                            data-field-type=\"current_url\"\n                            data-truncate-url=\"no\">\n                                                <input type=\"hidden\" name=\"referral_link__c\" value=\"\"\n                            data-field-type=\"referrer_url\"\n                            data-truncate-url=\"no\">\n                                                                    <input type=\"hidden\" name=\"hubspot_portal_id\" value=\"147929236\">\n                        <input type=\"hidden\" name=\"hubspot_form_guid\" value=\"e02b720b-df5f-48ed-a5e0-18d824464802\">\n                                                    <input type=\"hidden\" name=\"form_redirect_url\" value=\"https:\/\/hotelrunner.com\/en\/autonomous-onboarding-thank-you\/\">\n                                                                            <input type=\"hidden\" name=\"form_name\" value=\"Autonomous Onboarding_en\">\n                                                <input type=\"hidden\" name=\"mail_language__c\"\n                            value=\"EN\">\n                                        \n                <script>\n                    function populateUtmFields() {\n                        const forms = document.querySelectorAll('form');\n                        forms.forEach(form => {\n                                                        const utmFieldNames = {\n                                utm_source: 'hr_utm_source__c',\n                                utm_medium: 'hr_utm_medium__c',\n                                utm_campaign: 'hr_utm_campaign__c',\n                                utm_term: 'hr_utm_term__c',\n                                utm_content: 'hr_utm_content__c'\n                            };\n                            \n                            if (!form.querySelector(`input[name=\"${utmFieldNames.utm_source}\"]`)) return;\n\n                            let utmSource = sessionStorage.getItem('utm_source');\n                            let utmMedium = sessionStorage.getItem('utm_medium');\n                            let utmCampaign = sessionStorage.getItem('utm_campaign');\n                            let utmTerm = sessionStorage.getItem('utm_term');\n                            let utmContent = sessionStorage.getItem('utm_content');\n\n                            if (!utmSource && !utmMedium && !utmCampaign && !utmTerm && !utmContent) {\n                                const params = new URLSearchParams(window.location.search);\n                                const utmKeys = ['utm_source','utm_medium','utm_campaign','utm_term','utm_content'];\n                                utmKeys.forEach(key => {\n                                    if (params.has(key)) {\n                                        const value = params.get(key);\n                                        sessionStorage.setItem(key, value);\n                                        switch(key) {\n                                            case 'utm_source': utmSource = value; break;\n                                            case 'utm_medium': utmMedium = value; break;\n                                            case 'utm_campaign': utmCampaign = value; break;\n                                            case 'utm_term': utmTerm = value; break;\n                                            case 'utm_content': utmContent = value; break;\n                                        }\n                                    }\n                                });\n                            }\n\n                            const utmValues = {\n                                utm_source: utmSource || '',\n                                utm_medium: utmMedium || '',\n                                utm_campaign: utmCampaign || '',\n                                utm_term: utmTerm || '',\n                                utm_content: utmContent || ''\n                            };\n\n                            Object.keys(utmFieldNames).forEach(key => {\n                                form.querySelectorAll(`input[name=\"${utmFieldNames[key]}\"]`).forEach(input => {\n                                    input.value = utmValues[key];\n                                });\n                            });\n                        });\n                    }\n\n                    document.addEventListener('DOMContentLoaded', populateUtmFields);\n                    setTimeout(populateUtmFields, 100);\n                    setTimeout(populateUtmFields, 500);\n                    setTimeout(populateUtmFields, 1000);\n                    window.addEventListener('load', populateUtmFields);\n                <\/script>\n\n                <div class=\"hr-form-fields-wrapper\">\n                    \n                                                    <div class=\"hr-form-field-column hr-form-field-width-100 firstname hr-form-field-column-elementor-repeater-item-a4e6ae5\"\n                                    >\n                                    <div class=\"hr-form-field\">\n                                                                                    <label for=\"firstname\" class=\"hr-form-label\">Name<\/label>                                        \n                                                                                        <input id=\"firstname\" class=\"hr-form-input\" autocomplete=\"name\" type=\"text\" name=\"firstname\" ><div id=\"firstname-error-container\" class=\"just-validate-error-label hr-field-error-container\" aria-live=\"polite\"><\/div>                                                                                    <\/div>\n                                <\/div>\n                                                                <div class=\"hr-form-field-column hr-form-field-width-100 email hr-form-field-column-elementor-repeater-item-0b54004\"\n                                    >\n                                    <div class=\"hr-form-field\">\n                                                                                    <label for=\"email\" class=\"hr-form-label\">E-mail<\/label>                                        \n                                                                                        <input id=\"email\" class=\"hr-form-input\" autocomplete=\"email\" type=\"email\" name=\"email\" ><div id=\"email-error-container\" class=\"just-validate-error-label hr-field-error-container\" aria-live=\"polite\"><\/div>                                                                                    <\/div>\n                                <\/div>\n                                                                <div class=\"hr-form-field-column hr-form-field-width-100 mobilephone hr-form-field-column-elementor-repeater-item-954b221\"\n                                    >\n                                    <div class=\"hr-form-field\">\n                                                                                    <label for=\"mobilephone\" class=\"hr-form-label\">Mobile phone<\/label>                                        \n                                                                                                                                        <div class=\"hr-phone-input-wrapper\">\n                                                    <input id=\"mobilephone\" class=\"hr-form-input hr-phone-input\" autocomplete=\"tel\" type=\"tel\" name=\"mobilephone\"                                                                                                                 data-enable-geoip-lookup=\"yes\"\n                                                        data-initial-country=\"\">\n                                                <\/div>\n                                                <input type=\"hidden\" name=\"mobilephone_full\" value=\"\" class=\"hr-phone-full-value\" data-phone-field=\"mobilephone\">\n                                                                                                                                    <\/div>\n                                <\/div>\n                                                                <div class=\"hr-form-field-column hr-form-field-width-100 country hr-form-field-column-elementor-repeater-item-8fb073c\"\n                                    >\n                                    <div class=\"hr-form-field\">\n                                                                                    <label for=\"country\" class=\"hr-form-label\">Country<\/label>                                        \n                                                                                                                                        <div class=\"hr-country-field-wrapper\">\n                                                    <select id=\"country\" class=\"hr-form-input hr-country-select\" autocomplete=\"country-name\" name=\"country\"  data-placeholder=\"Select a country\"\n                                                        name=\"country\">\n                                                        <option value=\"\" class=\"hr-select-placeholder\" disabled selected>\n                                                            Select a country                                                        <\/option>\n                                                        <option value=\"AF\">Afghanistan<\/option><option value=\"AL\">Albania<\/option><option value=\"DZ\">Algeria<\/option><option value=\"AD\">Andorra<\/option><option value=\"AO\">Angola<\/option><option value=\"AI\">Anguilla<\/option><option value=\"AQ\">Antarctica<\/option><option value=\"AG\">Antigua and Barbuda<\/option><option value=\"AR\">Argentina<\/option><option value=\"AM\">Armenia<\/option><option value=\"AW\">Aruba<\/option><option value=\"AU\">Australia<\/option><option value=\"AT\">Austria<\/option><option value=\"AZ\">Azerbaijan<\/option><option value=\"BS\">Bahamas<\/option><option value=\"BH\">Bahrain<\/option><option value=\"BD\">Bangladesh<\/option><option value=\"BB\">Barbados<\/option><option value=\"BY\">Belarus<\/option><option value=\"BE\">Belgium<\/option><option value=\"BZ\">Belize<\/option><option value=\"BJ\">Benin<\/option><option value=\"BM\">Bermuda<\/option><option value=\"BT\">Bhutan<\/option><option value=\"BO\">Bolivia<\/option><option value=\"BQ\">Bonaire, Sint Eustatius and Saba<\/option><option value=\"BA\">Bosnia and Herzegovina<\/option><option value=\"BW\">Botswana<\/option><option value=\"BV\">Bouvet Island<\/option><option value=\"BR\">Brazil<\/option><option value=\"IO\">British Indian Ocean Territory<\/option><option value=\"BN\">Brune\u0130<\/option><option value=\"BG\">Bulgaria<\/option><option value=\"BF\">Burkina Faso<\/option><option value=\"BI\">Burundi<\/option><option value=\"KH\">Cambodia<\/option><option value=\"CM\">Cameroon<\/option><option value=\"CA\">Canada<\/option><option value=\"CV\">Cape Verde<\/option><option value=\"KY\">Cayman Islands<\/option><option value=\"CF\">Central African Republic<\/option><option value=\"TD\">Chad<\/option><option value=\"CL\">Chile<\/option><option value=\"CN\">China<\/option><option value=\"CX\">Christmas Island<\/option><option value=\"CC\">Cocos (Keeling) Islands<\/option><option value=\"CO\">Colombia<\/option><option value=\"KM\">Comoros<\/option><option value=\"CG\">Congo<\/option><option value=\"CK\">Cook Islands<\/option><option value=\"CR\">Costa Rica<\/option><option value=\"CI\">C\u00f4te d&#039;Ivoire<\/option><option value=\"HR\">Croatia<\/option><option value=\"CU\">Cuba<\/option><option value=\"CW\">Cura\u00e7ao<\/option><option value=\"CY\">Cyprus<\/option><option value=\"CZ\">Czechia<\/option><option value=\"CD\">Democratic Republic of the Congo<\/option><option value=\"DK\">Denmark<\/option><option value=\"DJ\">Djibouti<\/option><option value=\"DM\">Dominica<\/option><option value=\"DO\">Dominican Republic<\/option><option value=\"EC\">Ecuador<\/option><option value=\"EG\">Egypt<\/option><option value=\"SV\">El Salvador<\/option><option value=\"GQ\">Equatorial Guinea<\/option><option value=\"ER\">Eritrea<\/option><option value=\"EE\">Estonia<\/option><option value=\"SZ\">Eswatini<\/option><option value=\"ET\">Ethiopia<\/option><option value=\"FK\">Falkland Islands<\/option><option value=\"FO\">Faroe Islands<\/option><option value=\"FJ\">Fiji<\/option><option value=\"FI\">Finland<\/option><option value=\"FR\">France<\/option><option value=\"GF\">French Guiana<\/option><option value=\"PF\">French Polynesia<\/option><option value=\"TF\">French Southern Territories<\/option><option value=\"GA\">Gabon<\/option><option value=\"GM\">Gambia<\/option><option value=\"GE\">Georgia<\/option><option value=\"DE\">Germany<\/option><option value=\"GH\">Ghana<\/option><option value=\"GI\">Gibraltar<\/option><option value=\"GR\">Greece<\/option><option value=\"GL\">Greenland<\/option><option value=\"GD\">Grenada<\/option><option value=\"GP\">Guadeloupe<\/option><option value=\"GU\">Guam<\/option><option value=\"GT\">Guatemala<\/option><option value=\"GG\">Guernsey<\/option><option value=\"GN\">Guinea<\/option><option value=\"GW\">Guinea-Bissau<\/option><option value=\"GY\">Guyana<\/option><option value=\"HT\">Haiti<\/option><option value=\"HM\">Heard Island and McDonald Islands<\/option><option value=\"VA\">Holy See<\/option><option value=\"HN\">Honduras<\/option><option value=\"HK\">Hong Kong<\/option><option value=\"HU\">Hungary<\/option><option value=\"IS\">Iceland<\/option><option value=\"IN\">India<\/option><option value=\"ID\">Indonesia<\/option><option value=\"IR\">Iran<\/option><option value=\"IQ\">Iraq<\/option><option value=\"IE\">Ireland<\/option><option value=\"IM\">Isle of Man<\/option><option value=\"IL\">Israel<\/option><option value=\"IT\">Italy<\/option><option value=\"JM\">Jamaica<\/option><option value=\"JP\">Japan<\/option><option value=\"JE\">Jersey<\/option><option value=\"JO\">Jordan<\/option><option value=\"KZ\">Kazakhstan<\/option><option value=\"KE\">Kenya<\/option><option value=\"KI\">Kiribati<\/option><option value=\"KW\">Kuwait<\/option><option value=\"KG\">Kyrgyzstan<\/option><option value=\"LA\">Laos<\/option><option value=\"LV\">Latvia<\/option><option value=\"LB\">Lebanon<\/option><option value=\"LS\">Lesotho<\/option><option value=\"LR\">Liberia<\/option><option value=\"LY\">Libya<\/option><option value=\"LI\">Liechtenstein<\/option><option value=\"LT\">Lithuania<\/option><option value=\"LU\">Luxembourg<\/option><option value=\"MO\">Macao<\/option><option value=\"MG\">Madagascar<\/option><option value=\"MW\">Malawi<\/option><option value=\"MY\">Malaysia<\/option><option value=\"MV\">Maldives<\/option><option value=\"ML\">Mali<\/option><option value=\"MT\">Malta<\/option><option value=\"MH\">Marshall Islands<\/option><option value=\"MQ\">Martinique<\/option><option value=\"MR\">Mauritania<\/option><option value=\"MU\">Mauritius<\/option><option value=\"YT\">Mayotte<\/option><option value=\"MX\">Mexico<\/option><option value=\"FM\">Micronesia<\/option><option value=\"MD\">Moldova<\/option><option value=\"MC\">Monaco<\/option><option value=\"MN\">Mongolia<\/option><option value=\"ME\">Montenegro<\/option><option value=\"MS\">Montserrat<\/option><option value=\"MA\">Morocco<\/option><option value=\"MZ\">Mozambique<\/option><option value=\"MM\">Myanmar<\/option><option value=\"NA\">Namibia<\/option><option value=\"NR\">Nauru<\/option><option value=\"NP\">Nepal<\/option><option value=\"NL\">Netherlands<\/option><option value=\"NC\">New Caledonia<\/option><option value=\"NZ\">New Zealand<\/option><option value=\"NI\">Nicaragua<\/option><option value=\"NE\">Niger<\/option><option value=\"NG\">Nigeria<\/option><option value=\"NU\">Niue<\/option><option value=\"NF\">Norfolk Island<\/option><option value=\"KP\">North Korea<\/option><option value=\"MK\">North Macedonia<\/option><option value=\"NCY\">Northern Cyprus<\/option><option value=\"MP\">Northern Mariana Islands<\/option><option value=\"NO\">Norway<\/option><option value=\"OM\">Oman<\/option><option value=\"PK\">Pakistan<\/option><option value=\"PW\">Palau<\/option><option value=\"PS\">Palestine<\/option><option value=\"PA\">Panama<\/option><option value=\"PG\">Papua New Guinea<\/option><option value=\"PY\">Paraguay<\/option><option value=\"PE\">Peru<\/option><option value=\"PH\">Philippines<\/option><option value=\"PN\">Pitcairn<\/option><option value=\"PL\">Poland<\/option><option value=\"PT\">Portugal<\/option><option value=\"PR\">Puerto Rico<\/option><option value=\"QA\">Qatar<\/option><option value=\"RE\">R\u00e9union<\/option><option value=\"RO\">Romania<\/option><option value=\"RU\">Russia<\/option><option value=\"RW\">Rwanda<\/option><option value=\"BL\">Saint Barth\u00e9lemy<\/option><option value=\"SH\">Saint Helena, Ascension and Tristan da Cunha<\/option><option value=\"KN\">Saint Kitts And Nevis<\/option><option value=\"LC\">Saint Lucia<\/option><option value=\"MF\">Saint Martin (French part)<\/option><option value=\"PM\">Saint Pierre and Miquelon<\/option><option value=\"VC\">Saint Vincent and the Grenadines<\/option><option value=\"AS\">Samoa<\/option><option value=\"WS\">Samoa<\/option><option value=\"SM\">San Marino<\/option><option value=\"ST\">Sao Tome and Principe<\/option><option value=\"SA\">Saudi Arabia<\/option><option value=\"SN\">Senegal<\/option><option value=\"RS\">Serbia<\/option><option value=\"SC\">Seychelles<\/option><option value=\"SL\">Sierra Leone<\/option><option value=\"SG\">Singapore<\/option><option value=\"SX\">Sint Maarten (Dutch part)<\/option><option value=\"SK\">Slovakia<\/option><option value=\"SI\">Slovenia<\/option><option value=\"SB\">Solomon Islands<\/option><option value=\"SO\">Somalia<\/option><option value=\"ZA\">South Africa<\/option><option value=\"GS\">South Georgia and the South Sandwich Islands<\/option><option value=\"KR\">South Korea<\/option><option value=\"SS\">South Sudan<\/option><option value=\"ES\">Spain<\/option><option value=\"LK\">Sri Lanka<\/option><option value=\"SD\">Sudan<\/option><option value=\"SR\">Suriname<\/option><option value=\"SJ\">Svalbard and Jan Mayen<\/option><option value=\"SE\">Sweden<\/option><option value=\"CH\">Switzerland<\/option><option value=\"SY\">Syria<\/option><option value=\"TW\">Taiwan<\/option><option value=\"TJ\">Tajikistan<\/option><option value=\"TZ\">Tanzania<\/option><option value=\"TH\">Thailand<\/option><option value=\"TL\">Timor-Leste<\/option><option value=\"TG\">Togo<\/option><option value=\"TK\">Tokelau<\/option><option value=\"TO\">Tonga<\/option><option value=\"TT\">Trinidad And Tobago<\/option><option value=\"TN\">Tunisia<\/option><option value=\"TR\">T\u00fcrkiye<\/option><option value=\"TM\">Turkmenistan<\/option><option value=\"TC\">Turks and Caicos Islands<\/option><option value=\"TV\">Tuvalu<\/option><option value=\"UG\">Uganda<\/option><option value=\"UA\">Ukraine<\/option><option value=\"AE\">United Arab Emirates<\/option><option value=\"GB\">United Kingdom<\/option><option value=\"UM\">United States Minor Outlying Islands<\/option><option value=\"US\">United States of America<\/option><option value=\"UY\">Uruguay<\/option><option value=\"UZ\">Uzbekistan<\/option><option value=\"VU\">Vanuatu<\/option><option value=\"VE\">Venezuela<\/option><option value=\"VN\">Viet nam<\/option><option value=\"VG\">Virgin Islands (British)<\/option><option value=\"VI\">Virgin Islands (U.S.)<\/option><option value=\"WF\">Wallis and Futuna<\/option><option value=\"EH\">Western Sahara<\/option><option value=\"YE\">Yemen<\/option><option value=\"ZM\">Zambia<\/option><option value=\"ZW\">Zimbabwe<\/option>                                                    <\/select>\n                                                <\/div>\n                                                <div id=\"country-error-container\" class=\"just-validate-error-label hr-field-error-container\" aria-live=\"polite\"><\/div>                                                                                    <\/div>\n                                <\/div>\n                                                                <div class=\"hr-form-field-column hr-form-field-width-100 hotelrunner_customer hr-form-field-column-elementor-repeater-item-c82f975\"\n                                    >\n                                    <div class=\"hr-form-field\">\n                                                                                    <label for=\"hotelrunner_customer\" class=\"hr-form-label\">Are you a HotelRunner customer?<\/label>                                        \n                                                                                                                                        <div class=\"hr-form-field-input\">\n                                                    <select id=\"hotelrunner_customer\" class=\"hr-form-input\" autocomplete=\"off\" name=\"hotelrunner_customer\" required=\"required\" >\n                                                                                                                    <option value=\"\" class=\"hr-select-placeholder\" disabled selected>\n                                                                Please select                                                            <\/option>\n                                                                                                                <option value=\"Yes\">Yes<\/option><option value=\"No\">No<\/option>                                                    <\/select>\n                                                                                                    <\/div>\n                                                <div id=\"hotelrunner_customer-error-container\" class=\"just-validate-error-label hr-field-error-container\" aria-live=\"polite\"><\/div>                                                                                    <\/div>\n                                <\/div>\n                                                                <div class=\"hr-form-field-column hr-form-field-width-100 privacy_statement hr-form-field-column-elementor-repeater-item-cb38c01\"\n                                    >\n                                    <div class=\"hr-form-field\">\n                                        \n                                                                                        <div class=\"hr-form-checkbox-wrapper\">\n                                                    <input type=\"hidden\" name=\"privacy_statement\" value=\"false\">\n                                                    <label class=\"hr-checkbox-label\">\n                                                        <input id=\"privacy_statement\" class=\"hr-form-checkbox\" value=\"true\" autocomplete=\"address-level1\" type=\"checkbox\" name=\"privacy_statement\" required=\"required\"  data-salesforce-field=\"no\">\n                                                        <span class=\"hr-checkbox-text\">I have read and understood the <a target=\"_blank\" href=\"https:\/\/hotelrunner.com\/en\/privacy\/\">Privacy Statement for Request \/ Complaint \/ Suggestion Processes.<\/a><\/span>\n                                                    <\/label>\n                                                                                                    <\/div>\n                                                                                    <\/div>\n                                <\/div>\n                                                                <div class=\"hr-form-field-column hr-form-field-width-100 commercial_electronic_message_consent hr-form-field-column-elementor-repeater-item-9a9055b\"\n                                    >\n                                    <div class=\"hr-form-field\">\n                                        \n                                                                                        <div class=\"hr-form-checkbox-wrapper\">\n                                                    <input type=\"hidden\" name=\"commercial_electronic_message_consent\" value=\"false\">\n                                                    <label class=\"hr-checkbox-label\">\n                                                        <input id=\"commercial_electronic_message_consent\" class=\"hr-form-checkbox\" value=\"true\" autocomplete=\"off\" type=\"checkbox\" name=\"commercial_electronic_message_consent\"  data-salesforce-field=\"yes\">\n                                                        <span class=\"hr-checkbox-text\">I have read and accept the <a href=\"https:\/\/hotelrunner.com\/en\/commercial-electronic-message-consent-text\/\" target=\"_blank\">Commercial Electronic Message Consent<\/a><\/span>\n                                                    <\/label>\n                                                                                                                                                                    <input type=\"hidden\" name=\"commercial_electronic_message_consent-value\" value=\"false\" data-salesforce-reverse=\"yes\">\n                                                                                                    <\/div>\n                                                                                    <\/div>\n                                <\/div>\n                                                <\/div>\n\n                                    <div class=\"hr-form-button-wrapper\" style=\"text-align: right;\">\n                        <button type=\"submit\" class=\"button hr-form-submit\">\n                            Submit                        <\/button>\n                    <\/div>\n                            <\/form>\n\n        <\/div>\n\n        \n        <!-- Hidden Fields Handler -->\n        <script>\n            (function ($) {\n                \"use strict\";\n\n                function initializePhoneInput(input) {\n                    \/\/ Check if intlTelInput is loaded and input is not already initialized\n                    if (typeof window.intlTelInput === \"function\" && !$(input).data(\"iti\")) {\n                        const initialCountry = (input.dataset.initialCountry || \"\").trim();\n\n                        \/\/ WPML fallback country mapping (based on current WPML language).\n                        \/\/ This is used when the geoIpLookup API times out or errors.\n                        const wpmlLang = \"en\";\n                        let fallbackCountry = \"us\";\n                        if (wpmlLang.startsWith(\"tr\")) {\n                            fallbackCountry = \"tr\";\n                        } else if (wpmlLang.startsWith(\"es\")) {\n                            fallbackCountry = \"es\";\n                        } else if (wpmlLang.startsWith(\"fr\")) {\n                            fallbackCountry = \"fr\";\n                        } else {\n                            fallbackCountry = \"us\";\n                        }\n\n                        const enableGeoIpLookup = (input.dataset.enableGeoipLookup || \"yes\") === \"yes\";\n                        const shouldUseGeoIpLookup = enableGeoIpLookup && !initialCountry;\n                        const preferredAttr = input.getAttribute('data-preferred-countries');\n                        const preferredCountries = (preferredAttr === null)\n                            ? []\n                            : preferredAttr.split(',').map(s => s.trim()).filter(Boolean);\n\n                        const geoIpLookup = (success, failure) => {\n                            const timeoutMs = 2500; \/\/ Fail fast so it doesn't block UX.\n                            let settled = false;\n\n                            \/\/ Make sure we always resolve, even on network stalls.\n                            const timeoutId = setTimeout(() => {\n                                if (settled) return;\n                                settled = true;\n                                if (controller) controller.abort();\n                                success(fallbackCountry);\n                            }, timeoutMs);\n\n                            const controller = typeof AbortController !== \"undefined\" ? new AbortController() : null;\n\n                            fetch(\"https:\/\/ipapi.co\/json\", {\n                                signal: controller ? controller.signal : undefined\n                            })\n                                .then(res => res.json())\n                                .then(data => {\n                                    if (settled) return;\n                                    settled = true;\n                                    const code = (data && data.country_code) ? String(data.country_code).toLowerCase() : fallbackCountry;\n                                    success(code);\n                                })\n                                .catch(() => {\n                                    if (settled) return;\n                                    settled = true;\n                                    success(fallbackCountry);\n                                })\n                                .finally(() => {\n                                    clearTimeout(timeoutId);\n                                });\n                        };\n\n                        const itiOptions = {\n                            initialCountry: shouldUseGeoIpLookup ? \"auto\" : (initialCountry ? initialCountry : fallbackCountry),\n                            separateDialCode: true,\n                            nationalMode: false,\n                            formatOnDisplay: true,\n                            autoPlaceholder: \"polite\",\n                            preferredCountries: preferredCountries,\n                            allowDropdown: true,\n                            dropdownContainer: document.body,\n                            utilsScript: \"https:\/\/hotelrunner.com\/wp-content\/plugins\/hotelrunner-utilities\/assets\/js\/\/vendor\/utils.js\" \/\/ Changed to non-minified version\n                        };\n\n                        if (shouldUseGeoIpLookup) {\n                            itiOptions.geoIpLookup = geoIpLookup;\n                        }\n\n                        const iti = window.intlTelInput(input, itiOptions);\n\n                        \/\/ Store the instance on the input element\n                        $(input).data(\"iti\", iti);\n\n                        const fullHidden = input.form\n                            ? input.form.querySelector('input.hr-phone-full-value[data-phone-field=\"' + CSS.escape(input.name) + '\"]')\n                            : null;\n\n                        function formatPhoneFullValue(itiInstance) {\n                            const fullNumber = itiInstance.getNumber() || '';\n                            return fullNumber.replace(\/\\D\/g, '');\n                        }\n\n                        function syncPhoneFullValue() {\n                            if (!fullHidden) {\n                                return;\n                            }\n                            fullHidden.value = formatPhoneFullValue(iti);\n                        }\n\n                        \/\/ Handle input changes\n                        input.addEventListener('input', function (e) {\n                            const value = e.target.value;\n                            \/\/ Remove any non-numeric characters\n                            const numericValue = value.replace(\/\\D\/g, '');\n\n                            \/\/ Only remove the country code if it's at the start of the input\n                            if (value.startsWith('+')) {\n                                const countryCode = iti.getSelectedCountryData().dialCode;\n                                if (value.startsWith('+' + countryCode)) {\n                                    e.target.value = numericValue.substring(countryCode.length);\n                                }\n                            } else {\n                                e.target.value = numericValue;\n                            }\n                            syncPhoneFullValue();\n                        });\n\n                        \/\/ Prevent non-numeric input\n                        input.addEventListener('keypress', function (e) {\n                            const charCode = (e.which) ? e.which : e.keyCode;\n                            if (charCode > 31 && (charCode < 48 || charCode > 57)) {\n                                e.preventDefault();\n                            }\n                        });\n\n                        input.addEventListener('countrychange', syncPhoneFullValue);\n\n                        \/\/ Handle form submission \u2014 dial code + number (no + or spaces) goes to mobile_phone_full hidden field\n                        $(input.form).on(\"submit\", function () {\n                            syncPhoneFullValue();\n                        });\n\n                        \/\/ Add validation class on blur\n                        input.addEventListener(\"blur\", function () {\n                            syncPhoneFullValue();\n                            if (input.value.trim()) {\n                                if (iti.isValidNumber()) {\n                                    $(input).removeClass(\"error\").addClass(\"valid\");\n                                } else {\n                                    $(input).removeClass(\"valid\").addClass(\"error\");\n                                }\n                            }\n                        });\n\n                        syncPhoneFullValue();\n                    }\n                }\n\n                function initializeFormPhoneInputs(formId) {\n                    const form = document.getElementById(formId);\n                    if (!form) return;\n                    \n                    const phoneInputs = $(form).find(\".hr-phone-input\");\n                    if (phoneInputs.length > 0 && typeof window.intlTelInput === \"function\") {\n                        phoneInputs.each(function () {\n                            if (!$(this).data(\"iti\")) {\n                                initializePhoneInput(this);\n                            }\n                        });\n                    }\n                }\n\n                \/\/ Initialize phone inputs for this specific form\n                initializeFormPhoneInputs('hr-form-6ad795f6edc09');\n\n                \/\/ Also initialize on document ready to ensure DOM is fully loaded\n                $(document).ready(function () {\n                    initializeFormPhoneInputs('hr-form-6ad795f6edc09');\n                });\n            })(jQuery);\n\n\n            document.addEventListener('DOMContentLoaded', function () {\n                const form = document.getElementById('hr-form-6ad795f6edc09');\n\n                \/\/ Function to get all hidden fields\n                const hiddenFields = form.querySelectorAll('input[type=\"hidden\"][data-field-type]');\n                const truncateHiddenUrl = (value, maxLength = 255) => {\n                    const str = String(value || '');\n                    return str.length > maxLength ? str.slice(0, maxLength) : str;\n                };\n\n                hiddenFields.forEach(field => {\n                    const fieldType = field.getAttribute('data-field-type');\n\n                    switch (fieldType) {\n                        case 'browser_info':\n                            field.value = navigator.userAgent;\n                            break;\n\n                        case 'primary_language':\n                            field.value = navigator.language || 'unknown';\n                            break;\n\n                        case 'all_languages':\n                            field.value = navigator.languages ? navigator.languages.join(', ') : 'unknown';\n                            break;\n\n                        case 'cookies_enabled':\n                            field.value = navigator.cookieEnabled ? 'yes' : 'no';\n                            break;\n\n                        case 'screen_resolution':\n                            field.value = `${screen.width}x${screen.height}`;\n                            break;\n\n                        case 'available_screen':\n                            field.value = `${screen.availWidth}x${screen.availHeight}`;\n                            break;\n\n                        case 'window_size':\n                            field.value = `${window.outerWidth}x${window.outerHeight}`;\n                            \/\/ Update on resize\n                            window.addEventListener('resize', () => {\n                                field.value = `${window.outerWidth}x${window.outerHeight}`;\n                            });\n                            break;\n\n                        case 'timezone_name':\n                            try {\n                                field.value = Intl.DateTimeFormat().resolvedOptions().timeZone;\n                            } catch (e) {\n                                field.value = 'unknown';\n                            }\n                            break;\n\n                        case 'timezone_offset':\n                            field.value = new Date().getTimezoneOffset();\n                            break;\n\n                        case 'current_url': {\n                            const currentUrl = window.location.href;\n                            field.value = field.getAttribute('data-truncate-url') === 'yes'\n                                ? truncateHiddenUrl(currentUrl)\n                                : currentUrl;\n                            break;\n                        }\n\n                        case 'referrer_url': {\n                            const referrerUrl = document.referrer || 'direct';\n                            field.value = field.getAttribute('data-truncate-url') === 'yes'\n                                ? truncateHiddenUrl(referrerUrl)\n                                : referrerUrl;\n                            break;\n                        }\n\n                        case 'page_load_time':\n                            field.value = Math.round(performance.now());\n                            break;\n\n                        case 'navigation_type':\n                            try {\n                                const navigation = performance.getEntriesByType('navigation')[0];\n                                field.value = navigation ? navigation.type : 'unknown';\n                            } catch (e) {\n                                field.value = 'unknown';\n                            }\n                            break;\n                    }\n                });\n            });\n        <\/script>\n\n        <!-- Checkbox Salesforce Field Handler -->\n        <script>\n            document.addEventListener('DOMContentLoaded', function () {\n                const form = document.getElementById('hr-form-6ad795f6edc09');\n                \n                \/\/ Handle Salesforce checkbox fields\n                form.querySelectorAll('input[type=\"checkbox\"][data-salesforce-field=\"yes\"]').forEach(checkbox => {\n                    const hiddenFieldName = checkbox.id + '-value';\n                    const hiddenField = form.querySelector(`input[type=\"hidden\"][name=\"${hiddenFieldName}\"]`);\n                    \n                    if (hiddenField) {\n                        const isReversed = hiddenField.getAttribute('data-salesforce-reverse') === 'yes';\n                        \n                        \/\/ Update hidden field on checkbox change\n                        checkbox.addEventListener('change', function () {\n                            let value;\n                            if (isReversed) {\n                                \/\/ Reverse logic: checked = false, unchecked = true\n                                value = this.checked ? 'false' : 'true';\n                            } else {\n                                \/\/ Normal logic: checked = true, unchecked = false\n                                value = this.checked ? 'true' : 'false';\n                            }\n                            hiddenField.value = value;\n                        });\n                        \n                        \/\/ Set initial value\n                        let initialValue;\n                        if (isReversed) {\n                            initialValue = checkbox.checked ? 'false' : 'true';\n                        } else {\n                            initialValue = checkbox.checked ? 'true' : 'false';\n                        }\n                        hiddenField.value = initialValue;\n                    }\n                });\n            });\n        <\/script>\n\n        <!-- Conditional Fields Logic -->\n        <script>\n            document.addEventListener('DOMContentLoaded', function () {\n                const form = document.getElementById('hr-form-6ad795f6edc09');\n                const conditions = {};\n\n                \n                function evaluateCondition(condition, value) {\n                    \/\/ Handle array values (for multiple select)\n                    if (Array.isArray(value)) {\n                        switch (condition.operator) {\n                            case 'equals':\n                                return value.includes(condition.value);\n                            case 'not_equals':\n                                return !value.includes(condition.value);\n                            case 'contains':\n                                return value.some(v => v.includes(condition.value));\n                            case 'not_contains':\n                                return !value.some(v => v.includes(condition.value));\n                            case 'greater_than':\n                                return value.some(v => parseFloat(v) > parseFloat(condition.value));\n                            case 'less_than':\n                                return value.some(v => parseFloat(v) < parseFloat(condition.value));\n                            default:\n                                return false;\n                        }\n                    }\n\n                    \/\/ Handle single values\n                    switch (condition.operator) {\n                        case 'equals':\n                            return value === condition.value;\n                        case 'not_equals':\n                            return value !== condition.value;\n                        case 'contains':\n                            return value.includes(condition.value);\n                        case 'not_contains':\n                            return !value.includes(condition.value);\n                        case 'greater_than':\n                            return parseFloat(value) > parseFloat(condition.value);\n                        case 'less_than':\n                            return parseFloat(value) < parseFloat(condition.value);\n                        default:\n                            return false;\n                    }\n                }\n\n                function updateConditionalFields() {\n                    for (const fieldId in conditions) {\n                        const condition = conditions[fieldId];\n                        \/\/ Ensure we only search for fields within the current form\n                        const targetInput = form.querySelector(`[name=\"${condition.targetField}\"]`);\n\n                        let fieldToToggle = form.querySelector(`#${fieldId}`) || form.querySelector(`[name=\"${fieldId}\"]`);\n                        fieldToToggle = fieldToToggle ? fieldToToggle.closest('.hr-form-field-column') : null;\n\n                        if (targetInput && fieldToToggle) {\n                            const targetValue = $(targetInput).hasClass('hr-select2-field') ? $(targetInput).val() : targetInput.value;\n                            const shouldShow = evaluateCondition(condition, targetValue);\n\n                            \/\/ Select all form elements within the current field to toggle\n                            const formElements = fieldToToggle.querySelectorAll('input, select, textarea');\n\n                            if (shouldShow) {\n                                fieldToToggle.classList.remove('hr-conditional-field');\n                                fieldToToggle.style.display = '';\n\n                                formElements.forEach(el => el.classList.remove('condition-false'));\n\n                            } else {\n                                fieldToToggle.classList.add('hr-conditional-field');\n                                fieldToToggle.style.display = 'none';\n                                formElements.forEach(el => el.classList.add('condition-false'));\n\n                                \/\/ Hidden conditional fields must not keep invalid state (breaks submit button \/ revalidate).\n                                formElements.forEach(function (el) {\n                                    if (!el.id) return;\n                                    el.classList.remove('is-invalid', 'is-valid');\n                                    const errEl = form.querySelector('#' + CSS.escape(el.id) + '-error-container');\n                                    if (errEl) {\n                                        errEl.innerHTML = '';\n                                    }\n                                    const s2 = el.nextElementSibling;\n                                    if (s2 && s2.classList && s2.classList.contains('select2-container')) {\n                                        s2.querySelectorAll('.select2-selection').forEach(function (node) {\n                                            node.classList.remove('is-invalid', 'is-valid');\n                                        });\n                                    }\n                                });\n                            }\n\n                            \/\/ Handle required fields\n                            formElements.forEach(input => {\n                                if (!shouldShow) {\n                                    input.dataset.wasRequired = input.required;\n                                    input.required = false;\n                                } else if (input.dataset.wasRequired) {\n                                    input.required = true;\n                                }\n                            });\n\n                            if (shouldShow) {\n                                formElements.forEach(function (el) {\n                                    if (!el.id) return;\n                                    el.classList.remove('is-invalid', 'is-valid');\n                                    const errEl = form.querySelector('#' + CSS.escape(el.id) + '-error-container');\n                                    if (errEl) {\n                                        errEl.innerHTML = '';\n                                    }\n                                    const s2 = el.nextElementSibling;\n                                    if (s2 && s2.classList && s2.classList.contains('select2-container')) {\n                                        s2.querySelectorAll('.select2-selection').forEach(function (node) {\n                                            node.classList.remove('is-invalid', 'is-valid');\n                                        });\n                                    }\n                                });\n                            }\n                        }\n                    }\n                }\n\n                \/\/ Update condition field options dynamically\n                form.querySelectorAll('input, select, textarea').forEach(input => {\n                    \/\/ Handle regular input events\n                    input.addEventListener('input', updateConditionalFields);\n                    input.addEventListener('change', updateConditionalFields);\n\n                    \/\/ Handle Select2 events if the field is a Select2\n                    if ($(input).hasClass('hr-select2-field')) {\n                        $(input).on('select2:select select2:unselect select2:clear', function () {\n                            updateConditionalFields();\n                        });\n                    }\n                });\n\n                \/\/ Initial check\n                updateConditionalFields();\n            });\n        <\/script>\n\n        <script>\n            document.addEventListener('DOMContentLoaded', function () {\n                const form = document.getElementById('hr-form-6ad795f6edc09');\n                let isSubmitting = false;\n                const debugEnabled = new URLSearchParams(window.location.search).get('hr_form_debug') === '1';\n                const debugLog = function (label, data) {\n                    if (!debugEnabled) return;\n                    console.log('[HR Form Debug][' + form.id + '] ' + label, data || {});\n                };\n                if (debugEnabled) {\n                    form.addEventListener('submit', function (event) {\n                        debugLog('native submit event', {\n                            defaultPrevented: event.defaultPrevented,\n                            submitter: event.submitter ? (event.submitter.id || event.submitter.name || event.submitter.className || event.submitter.tagName) : null\n                        });\n                    }, true);\n                }\n                \/\/ Strict Latin-only allowlist:\n                \/\/ - Latin letters (including accented Latin letters)\n                \/\/ - Latin combining diacritics block (U+0300-U+036F)\n                \/\/ - Numbers, whitespace\n                \/\/ - ASCII punctuation only\n                const allowedLatinPattern = \/[^\\p{Script=Latin}\\u0300-\\u036F\\p{N}\\p{Zs}\\r\\n\\t!\"#$%&'()*+,\\-.\/:;<=>?@[\\\\\\]^_`{|}~]\/gu;\n                const blockedCharsDetector = \/[^\\p{Script=Latin}\\u0300-\\u036F\\p{N}\\p{Zs}\\r\\n\\t!\"#$%&'()*+,\\-.\/:;<=>?@[\\\\\\]^_`{|}~]\/u;\n                const hasBlockedChars = (value) => blockedCharsDetector.test(value || '');\n                const blockedCharsMessage = 'Please use Latin characters only (A-Z).';\n\n                function getArabicRestrictedFields() {\n                    return form.querySelectorAll('input:not([type=\"hidden\"]):not([type=\"checkbox\"]):not([type=\"radio\"]):not([type=\"submit\"]):not([type=\"button\"]):not([type=\"file\"]), textarea');\n                }\n\n                function getErrorContainer(input) {\n                    if (!input || !input.id) return null;\n                    return form.querySelector('#' + input.id + '-error-container');\n                }\n\n                function showNativeBlockedCharsMessage(input) {\n                    if (!input || typeof input.setCustomValidity !== 'function' || typeof input.reportValidity !== 'function') {\n                        return;\n                    }\n                    input.setCustomValidity(blockedCharsMessage);\n                    input.reportValidity();\n                    setTimeout(function () {\n                        input.setCustomValidity('');\n                    }, 1500);\n                }\n\n                function showBlockedCharsMessage(input) {\n                    showNativeBlockedCharsMessage(input);\n                }\n\n                function clearBlockedCharsMessage(input) {\n                    if (input && typeof input.setCustomValidity === 'function') {\n                        input.setCustomValidity('');\n                    }\n                }\n\n                \/\/ Initialize JustValidate with custom styling\n                const validator = new JustValidate('#hr-form-6ad795f6edc09', {\n                    validateBeforeSubmitting: false,\n                    lockForm: true,\n                    focusInvalidField: true,\n                    errorFieldCssClass: 'is-invalid',\n                    successFieldCssClass: 'is-valid',\n                    errorLabelCssClass: 'is-label-invalid',\n                    errorLabelStyle: {\n                        color: '#e3342f',\n                        fontSize: '12px'\n                    },\n                    successFieldStyle: {\n                        borderColor: '#38c172'\n                    },\n                    errorFieldStyle: {\n                        borderColor: '#e3342f'\n                    },\n                    onValidate: ({ target }) => {\n                        \/\/ Handle Select2 validation classes\n                        if ($(target).hasClass('select2-hidden-accessible')) {\n                            const select2Container = $(target).next('.select2-container');\n                            if ($(target).hasClass('is-valid')) {\n                                select2Container.find('.select2-selection').addClass('is-valid').removeClass('is-invalid');\n                            } else if ($(target).hasClass('is-invalid')) {\n                                select2Container.find('.select2-selection').addClass('is-invalid').removeClass('is-valid');\n                            }\n                        }\n                    }\n                });\n                \/\/ Attach validator to form for stepper access\n                form._justValidateInstance = validator;\n                const isRegisteredValidatorField = (selector) => {\n                    if (!selector || !validator || !validator.fields) {\n                        return false;\n                    }\n                    return Object.values(validator.fields).some((field) => {\n                        return field && field.elem && ('#' + field.elem.id) === selector;\n                    });\n                };\n\n                \/\/ Add honeypot validation rule\n                validator.addField('input[name=\"hr_website\"]', [\n                    {\n                        rule: 'maxLength',\n                        value: 0,\n                        errorMessage: 'Invalid submission detected'\n                    }\n                ]);\n\n                \/\/ Add validation rules for each field\n                                                            const fieldRules_0 = [];\n                                                                                fieldRules_0.push({\"rule\":\"required\",\"errorMessage\":\"Please enter your first name.\"});\n                        \n                        \/\/ Add field to validator \u2013 errorsContainer routes errors outside inner so label stays centered\n                                                validator.addField('#firstname', fieldRules_0, { errorsContainer: '#firstname-error-container' });\n                                                                                                                                                const fieldRules_1 = [];\n                                                                                fieldRules_1.push({\"rule\":\"required\",\"errorMessage\":\"Please enter your email address.\"});\n                                                                                fieldRules_1.push({\"rule\":\"email\",\"errorMessage\":\"Please enter a valid email address.\"});\n                        \n                        \/\/ Add field to validator \u2013 errorsContainer routes errors outside inner so label stays centered\n                                                validator.addField('#email', fieldRules_1, { errorsContainer: '#email-error-container' });\n                                                                                                                                                const fieldRules_2 = [];\n                                                                                fieldRules_2.push({\"rule\":\"required\",\"errorMessage\":\"Please enter your mobile phone number.\"});\n                        \n                        \/\/ Add field to validator \u2013 errorsContainer routes errors outside inner so label stays centered\n                                                validator.addField('#mobilephone', fieldRules_2, { errorsContainer: '#mobilephone-error-container' });\n                                                                                                                                                const fieldRules_3 = [];\n                                                                                fieldRules_3.push({\"rule\":\"required\",\"errorMessage\":\"Please select your country.\"});\n                        \n                        \/\/ Add field to validator \u2013 errorsContainer routes errors outside inner so label stays centered\n                                                validator.addField('#country', fieldRules_3, { errorsContainer: '#country-error-container' });\n                                                                                                                                                const fieldRules_4 = [];\n                                                                                fieldRules_4.push({\"rule\":\"required\",\"errorMessage\":\"Please select an option.\"});\n                        \n                        \/\/ Add field to validator \u2013 errorsContainer routes errors outside inner so label stays centered\n                                                validator.addField('#hotelrunner_customer', fieldRules_4, { errorsContainer: '#hotelrunner_customer-error-container' });\n                                                                                                                                                                                                                const fieldRules_5 = [{\"rule\":\"required\",\"errorMessage\":\"This field is required\"}];\n                        if (fieldRules_5.length > 0) {\n                            validator.addField('#privacy_statement', fieldRules_5);\n                        }\n                                                                                                                                                const fieldRules_6 = [];\n                        if (fieldRules_6.length > 0) {\n                            validator.addField('#commercial_electronic_message_consent', fieldRules_6);\n                        }\n                                    \n                function hrSkipLiveValidationTarget(target) {\n                    if (!target || !target.id || !form.contains(target)) {\n                        return true;\n                    }\n                    if (target.name === 'hr_website') {\n                        return true;\n                    }\n                    if (target.classList.contains('condition-false')) {\n                        return true;\n                    }\n                    const col = target.closest('.hr-form-field-column');\n                    if (col && col.classList.contains('hr-conditional-field')) {\n                        return true;\n                    }\n                    if (col && col.style.display === 'none') {\n                        return true;\n                    }\n                    const step = target.closest('.hr-form-step-fields');\n                    if (step && step.style.display === 'none') {\n                        return true;\n                    }\n                    return false;\n                }\n\n                function hrGetActiveStepFields(formEl) {\n                    if (!formEl.classList.contains('hr-form-step-mode')) {\n                        return null;\n                    }\n                    const steps = formEl.querySelectorAll('.hr-form-step-fields');\n                    for (let i = 0; i < steps.length; i++) {\n                        if (window.getComputedStyle(steps[i]).display !== 'none') {\n                            return steps[i];\n                        }\n                    }\n                    return null;\n                }\n\n                function hrIsStepFormLastStep(formEl) {\n                    if (!formEl.classList.contains('hr-form-step-mode')) {\n                        return true;\n                    }\n                    const steps = formEl.querySelectorAll('.hr-form-step-fields');\n                    const active = hrGetActiveStepFields(formEl);\n                    if (!active || !steps.length) {\n                        return false;\n                    }\n                    return active === steps[steps.length - 1];\n                }\n\n                function hrTriggerStepNext(formEl) {\n                    const activeStep = hrGetActiveStepFields(formEl);\n                    if (!activeStep || typeof jQuery === 'undefined') {\n                        return;\n                    }\n                    const $nextBtn = jQuery(activeStep).find('.hr-form-step-next').not('button[type=\"submit\"], .hr-form-submit');\n                    if ($nextBtn.length) {\n                        $nextBtn.trigger('click');\n                    }\n                }\n\n                function hrFieldSkippedForSubmitValidation(elem) {\n                    if (!elem || !form.contains(elem)) {\n                        return true;\n                    }\n                    if (elem.classList.contains('condition-false')) {\n                        return true;\n                    }\n                    const step = elem.closest('.hr-form-step-fields');\n                    if (step && window.getComputedStyle(step).display === 'none') {\n                        return true;\n                    }\n                    const col = elem.closest('.hr-form-field-column');\n                    if (col && window.getComputedStyle(col).display === 'none') {\n                        return true;\n                    }\n                    return false;\n                }\n\n                function hrClearValidationUiForField(el) {\n                    if (!el || !el.id) return;\n                    const errEl = form.querySelector('#' + CSS.escape(el.id) + '-error-container');\n                    if (errEl) {\n                        errEl.innerHTML = '';\n                    }\n                    const s2 = el.nextElementSibling;\n                    if (s2 && s2.classList && s2.classList.contains('select2-container')) {\n                        s2.querySelectorAll('.select2-selection').forEach(function (node) {\n                            node.classList.remove('is-invalid', 'is-valid');\n                        });\n                    }\n                }\n\n                function hrSyncValidatorSkippedFields() {\n                    $.each(validator.fields, function (index, field) {\n                        const elem = field.elem;\n                        if (!elem) return;\n                        if (hrFieldSkippedForSubmitValidation(elem)) {\n                            field.isValid = true;\n                            elem.classList.remove('is-invalid', 'is-valid');\n                            hrClearValidationUiForField(elem);\n                        }\n                    });\n                }\n\n                \/**\n                 * JustValidate's aggregate isValid can stay false when only hidden steps \/\n                 * conditional fields fail. After syncing skipped fields, treat the form as\n                 * valid only if every non-skipped registered field is valid.\n                 *\/\n                function hrBlockingInvalidFieldKeys(v) {\n                    hrSyncValidatorSkippedFields();\n                    const keys = [];\n                    Object.values(v.fields || {}).forEach(function (field) {\n                        if (!field || !field.elem) return;\n                        if (hrFieldSkippedForSubmitValidation(field.elem)) {\n                            return;\n                        }\n                        if (field.isValid === false) {\n                            keys.push(field.elem.id || field.elem.name || '(field)');\n                        }\n                        if (field.isValid === undefined) {\n                            keys.push((field.elem.id || field.elem.name || '(field)') + ':pending');\n                        }\n                    });\n                    if (v.groupFields && Object.keys(v.groupFields).length) {\n                        Object.values(v.groupFields).forEach(function (g) {\n                            if (g && (g.isValid === false || g.isValid === undefined)) {\n                                keys.push('(group)');\n                            }\n                        });\n                    }\n                    return keys;\n                }\n\n                \/\/ focusout bubbles; revalidates after leaving any field (including conditional fields when visible)\n                form.addEventListener('focusout', function (e) {\n                    const input = e.target;\n                    if (!input.matches || !input.matches('input, select, textarea')) {\n                        return;\n                    }\n                    if (hrSkipLiveValidationTarget(input)) {\n                        return;\n                    }\n                    const selector = '#' + CSS.escape(input.id);\n                    if (!isRegisteredValidatorField(selector)) {\n                        return;\n                    }\n                    validator.revalidateField(selector);\n                });\n\n                if (typeof jQuery !== 'undefined') {\n                    jQuery(form).on('select2:close', 'select.hr-select2-field, select.hr-country-select', function () {\n                        if (hrSkipLiveValidationTarget(this)) {\n                            return;\n                        }\n                        const selector = '#' + CSS.escape(this.id);\n                        if (!isRegisteredValidatorField(selector)) {\n                            return;\n                        }\n                        validator.revalidateField(selector);\n                    });\n                }\n\n                \/\/ Block Arabic characters on typing and pasting.\n                getArabicRestrictedFields().forEach((input) => {\n                    input.addEventListener('beforeinput', function (event) {\n                        if (typeof event.data === 'string' && hasBlockedChars(event.data)) {\n                            event.preventDefault();\n                            showBlockedCharsMessage(this);\n                        }\n                    });\n\n                    input.addEventListener('paste', function (event) {\n                        const cd = event.clipboardData || window.clipboardData;\n                        const text = cd ? (cd.getData('text\/plain') || cd.getData('text') || '') : '';\n                        if (hasBlockedChars(text)) {\n                            event.preventDefault();\n                            showBlockedCharsMessage(this);\n                        }\n                    });\n\n                    input.addEventListener('drop', function (event) {\n                        const text = event.dataTransfer ? event.dataTransfer.getData('text\/plain') : '';\n                        if (hasBlockedChars(text)) {\n                            event.preventDefault();\n                            showBlockedCharsMessage(this);\n                        }\n                    });\n\n                    \/\/ Fallback for drag-drop\/autofill\/IME edge cases.\n                    input.addEventListener('input', function () {\n                        if (hasBlockedChars(this.value)) {\n                            this.value = this.value.replace(allowedLatinPattern, '');\n                            showBlockedCharsMessage(this);\n                        } else {\n                            clearBlockedCharsMessage(this);\n                        }\n                    });\n                });\n\n                function splitFullNameField(input) {\n                    const fullName = (input.value || '').trim();\n                    const firstTarget = input.getAttribute('data-fullname-first-target');\n                    const lastTarget = input.getAttribute('data-fullname-last-target');\n                    const firstHidden = firstTarget ? form.querySelector('input[type=\"hidden\"][name=\"' + CSS.escape(firstTarget) + '\"]') : null;\n                    const lastHidden = lastTarget ? form.querySelector('input[type=\"hidden\"][name=\"' + CSS.escape(lastTarget) + '\"]') : null;\n\n                    if (!firstHidden || !lastHidden) {\n                        return;\n                    }\n\n                    if (!fullName) {\n                        firstHidden.value = '';\n                        lastHidden.value = '';\n                        return;\n                    }\n\n                    const nameParts = fullName.split(\/\\s+\/).filter(Boolean);\n                    if (nameParts.length === 1) {\n                        firstHidden.value = nameParts[0];\n                        lastHidden.value = '';\n                        return;\n                    }\n\n                    firstHidden.value = nameParts.shift();\n                    lastHidden.value = nameParts.join(' ');\n                }\n\n                function splitAllFullNameFields() {\n                    form.querySelectorAll('input[data-fullname-splitter=\"yes\"]').forEach(function (input) {\n                        splitFullNameField(input);\n                    });\n                }\n\n                function formatPhoneFullValue(itiInstance) {\n                    const fullNumber = itiInstance.getNumber() || '';\n                    return fullNumber.replace(\/\\D\/g, '');\n                }\n\n                function syncAllPhoneFullFields() {\n                    form.querySelectorAll('.hr-phone-input').forEach(function (input) {\n                        const iti = $(input).data('iti');\n                        const fullHidden = form.querySelector(\n                            'input.hr-phone-full-value[data-phone-field=\"' + CSS.escape(input.name) + '\"]'\n                        );\n                        if (!fullHidden || !iti || typeof iti.getNumber !== 'function') {\n                            return;\n                        }\n                        fullHidden.value = formatPhoneFullValue(iti);\n                    });\n                }\n\n                \/\/ Split when user blurs the field (including tab navigation)\n                form.querySelectorAll('input[data-fullname-splitter=\"yes\"]').forEach(function (input) {\n                    input.addEventListener('blur', function () {\n                        splitFullNameField(this);\n                    });\n\n                    input.addEventListener('keydown', function (event) {\n                        if (event.key === 'Tab') {\n                            splitFullNameField(this);\n                        }\n                    });\n                });\n\n                \/\/ Handle form submission\n                form.addEventListener('submit', function (e) {\n                    debugLog('custom submit handler start', { isSubmitting: isSubmitting });\n                    e.preventDefault();\n\n                    if (isSubmitting) {\n                        debugLog('blocked: already submitting');\n                        return;\n                    }\n\n                    if (form.classList.contains('hr-form-step-mode') && !hrIsStepFormLastStep(form)) {\n                        debugLog('blocked: step form submit on non-final step');\n                        hrTriggerStepNext(form);\n                        return;\n                    }\n\n                    \/\/ Check honeypot field\n                    const honeypotField = form.querySelector('input[name=\"hr_website\"]');\n                    if (honeypotField && honeypotField.value !== '') {\n                        debugLog('blocked: honeypot filled', { value: honeypotField.value });\n                        \/\/ If honeypot is filled, show error and prevent submission\n                        const submitButton = form.querySelector('.hr-form-submit');\n                        const originalButtonText = submitButton.innerHTML;\n\n                        \/\/ Add error class to form\n                        form.classList.add('hr-form-error');\n\n                        \/\/ Show error message\n                        const errorMessage = document.createElement('div');\n                        errorMessage.className = 'hr-form-error-message';\n                        errorMessage.textContent = 'Invalid submission detected. Please try again.';\n\n                        \/\/ Remove any existing error message\n                        const existingError = form.querySelector('.hr-form-error-message');\n                        if (existingError) {\n                            existingError.remove();\n                        }\n\n                        \/\/ Insert error message after the form\n                        form.parentNode.insertBefore(errorMessage, form.nextSibling);\n\n                        \/\/ Reset form after 3 seconds\n                        setTimeout(() => {\n                            form.classList.remove('hr-form-error');\n                            errorMessage.remove();\n                            form.reset();\n                            submitButton.innerHTML = originalButtonText;\n                            submitButton.disabled = false;\n                            isSubmitting = false;\n                        }, 3000);\n\n                        return;\n                    }\n\n                    \/\/ Ensure hidden first\/last values are synced before submit.\n                    if (typeof populateUtmFields === 'function') {\n                        populateUtmFields();\n                    }\n                    splitAllFullNameFields();\n                    syncAllPhoneFullFields();\n\n                    hrSyncValidatorSkippedFields();\n\n                    \/\/ Run full validation before trusting isValid (avoids stale false on first click).\n                    if (typeof validator.revalidate !== 'function') {\n                        debugLog('blocked: validator.revalidate missing');\n                        return;\n                    }\n\n                                        const turnstileResponse = form.querySelector('[name=\"cf-turnstile-response\"]');\n                    if (!turnstileResponse || !turnstileResponse.value) {\n                        debugLog('blocked: turnstile not ready', {\n                            hasInput: Boolean(turnstileResponse),\n                            hasValue: Boolean(turnstileResponse && turnstileResponse.value)\n                        });\n                        alert('Please wait for the security check to complete.');\n                        return;\n                    }\n                    \n                    validator.revalidate().then(function (jvIsValid) {\n                        const blocking = hrBlockingInvalidFieldKeys(validator);\n                        if (blocking.length > 0) {\n                            debugLog('blocked: validator invalid after revalidate', {\n                                jvIsValid: jvIsValid,\n                                blockingFields: blocking,\n                                domInvalid: Array.from(form.querySelectorAll('.is-invalid'))\n                                    .filter(function (field) {\n                                        return !hrFieldSkippedForSubmitValidation(field);\n                                    })\n                                    .map(function (field) {\n                                        return field.id || field.name || field.className || field.tagName;\n                                    })\n                            });\n                            return;\n                        }\n\n                        isSubmitting = true;\n                        const submitButton = form.querySelector('.hr-form-submit');\n                        const overlay = form.querySelector('.hr-form-overlay');\n                        if (submitButton) {\n                            submitButton.disabled = true;\n                        }\n                        form.classList.add('submitting');\n                        if (overlay) {\n                            overlay.style.display = 'flex';\n                        }\n                        const proceedNativeSubmit = function () {\n                            debugLog('submitting: form.submit() called');\n                            if (form && form.isConnected) {\n                                form.submit();\n                            } else {\n                                debugLog('blocked: form not connected');\n                                isSubmitting = false;\n                                form.classList.remove('submitting');\n                                if (overlay) {\n                                    overlay.style.display = 'none';\n                                }\n                                if (submitButton) {\n                                    submitButton.disabled = false;\n                                }\n                            }\n                        };\n                        const abortNativeSubmit = function () {\n                            debugLog('blocked: reoon invalid email');\n                            isSubmitting = false;\n                            form.classList.remove('submitting');\n                            if (overlay) {\n                                overlay.style.display = 'none';\n                            }\n                            if (submitButton) {\n                                submitButton.disabled = false;\n                            }\n                        };\n                        if (typeof form._hrReoonEnsureValidated === 'function') {\n                            form._hrReoonEnsureValidated().then(function (result) {\n                                if (result && result.blockSubmit) {\n                                    abortNativeSubmit();\n                                    return;\n                                }\n                                proceedNativeSubmit();\n                            }).catch(proceedNativeSubmit);\n                        } else {\n                            proceedNativeSubmit();\n                        }\n                    }).catch(function (err) {\n                        form.classList.remove('submitting');\n                        const overlay = form.querySelector('.hr-form-overlay');\n                        if (overlay) {\n                            overlay.style.display = 'none';\n                        }\n                        debugLog('validator revalidate failed', { error: err && err.message ? err.message : String(err) });\n                    });\n                });\n\n                \/\/ Add new code to handle submit button state based on validation\n                const submitButton = form.querySelector('.hr-form-submit');\n                const formsEndpointType = 'hubspot';\n                function getInvalidFieldNames() {\n                    return Array.from(form.querySelectorAll('.is-invalid'))\n                        .filter(function (field) {\n                            return !hrFieldSkippedForSubmitValidation(field);\n                        })\n                        .map((field) => {\n                            const id = field.id ? `#${field.id}` : '';\n                            const name = field.name ? `name=\"${field.name}\"` : '';\n                            const label = field.id ? (form.querySelector(`label[for=\"${field.id}\"]`)?.textContent || '').trim() : '';\n                            return [id, name, label].filter(Boolean).join(' ');\n                        });\n                }\n                function getDisabledReasons() {\n                    const reasons = [];\n                    if (isSubmitting) {\n                        reasons.push('isSubmitting=true');\n                    }\n                    const blockingInvalid = Array.from(form.querySelectorAll('.is-invalid')).filter(function (el) {\n                        return !hrFieldSkippedForSubmitValidation(el);\n                    });\n                    if (blockingInvalid.length > 0) {\n                        const invalidNames = getInvalidFieldNames();\n                        reasons.push(`${blockingInvalid.length} invalid field(s): ${invalidNames.join(', ')}`);\n                    }\n                                        const turnstileResponse = form.querySelector('[name=\"cf-turnstile-response\"]');\n                    if (!turnstileResponse || !turnstileResponse.value) {\n                        reasons.push('turnstile not completed');\n                    }\n                                        const hubspotPortalInput = form.querySelector('input[name=\"hubspot_portal_id\"]');\n                    const hubspotFormGuidInput = form.querySelector('input[name=\"hubspot_form_guid\"]');\n                    const legacyEndpointInput = form.querySelector('input[name=\"form_endpoint_url\"]');\n                    const hasHubspotConfig = Boolean(hubspotPortalInput?.value?.trim() && hubspotFormGuidInput?.value?.trim());\n                    const hasPardotConfig = Boolean(legacyEndpointInput?.value?.trim());\n                    if (formsEndpointType === 'hubspot' && !hasHubspotConfig) {\n                        reasons.push('hubspot config missing (portal\/form guid)');\n                    } else if (formsEndpointType === 'pardot' && !hasPardotConfig) {\n                        reasons.push('pardot endpoint missing');\n                    }\n                    return reasons.length ? reasons : ['unknown reason'];\n                }\n                function logDisabledReason(source) {\n                    if (!submitButton || !submitButton.disabled) return;\n                    const reasons = getDisabledReasons();\n                    console.warn(`submit button disabled: [${reasons.join(' | ')}]`, { source, formId: form.id });\n                }\n\n                \/\/ Function to check validation state and update submit button\n                function updateSubmitButtonState() {\n                    if (!submitButton) return;\n                    const wasDisabled = submitButton.disabled;\n                    const blockingInvalid = Array.from(form.querySelectorAll('.is-invalid')).filter(function (el) {\n                        return !hrFieldSkippedForSubmitValidation(el);\n                    });\n                    if (blockingInvalid.length > 0) {\n                        submitButton.disabled = true;\n                    } else {\n                                                    \/\/ If Turnstile is enabled, only enable button if Turnstile is completed\n                            const turnstileResponse = form.querySelector('[name=\"cf-turnstile-response\"]');\n                            submitButton.disabled = !turnstileResponse || !turnstileResponse.value;\n                                            }\n                    if (submitButton.disabled && !wasDisabled) {\n                        logDisabledReason('state-change');\n                    }\n                }\n\n                \/\/ Add validation state check on input\/change for all form fields\n                form.querySelectorAll('input, select, textarea').forEach(input => {\n                    ['input', 'change', 'blur'].forEach(eventType => {\n                        input.addEventListener(eventType, () => {\n                            \/\/ Let validation complete before checking state\n                            setTimeout(updateSubmitButtonState, 100);\n                        });\n                    });\n                });\n\n                \/\/ Add validation state check for Select2 fields\n                jQuery('.hr-select2-field').on('select2:select select2:unselect select2:clear', function () {\n                    setTimeout(updateSubmitButtonState, 100);\n                });\n\n                \/\/ Update button state when JustValidate performs validation\n                validator.onValidate(async (validationResult) => {\n                    setTimeout(updateSubmitButtonState, 100);\n                });\n\n                \/\/ Initial button state check\n                updateSubmitButtonState();\n\n                \/\/ Debug attempts to click while disabled.\n                form.addEventListener('click', function (event) {\n                    if (!submitButton) return;\n                    const submitTrigger = event.target && event.target.closest ? event.target.closest('.hr-form-submit') : null;\n                    if (!submitTrigger) return;\n                    logDisabledReason('click-submit');\n                }, true);\n            });\n        <\/script>\n        \n                <script>\n            document.addEventListener('DOMContentLoaded', function () {\n                const form = document.getElementById('hr-form-6ad795f6edc09');\n                if (!form) {\n                    return;\n                }\n                const emailInput = form.querySelector('#email');\n                const statusInput = form.querySelector('input[name=\"is_validated_reoon\"]');\n                if (!emailInput || !statusInput) {\n                    return;\n                }\n\n                const ajaxUrl = 'https:\/\/hotelrunner.com\/wp-admin\/admin-ajax.php';\n                const nonce = '29fcae6030';\n                const excludedDomains = [\"hotelrunner.com\",\"mailinator.com\"];\n                const allowSubmitOnInvalid = true;\n                const warningText = 'This mail is not valid';\n                const warningContainer = document.getElementById('email-error-container')\n                    || (emailInput.closest && emailInput.closest('.hr-form-field'))\n                    || emailInput.parentElement;\n                let warningEl = null;\n                let lastEmail = '';\n                let lastResult = { valid: false, blockSubmit: false, skipped: '' };\n                let pending = null;\n                let requestId = 0;\n                let quotaExceeded = false;\n\n                const fieldWrap = emailInput.closest('.hr-form-field');\n                let holdSuccess = false;\n\n                function isSuccessBorderColor(value) {\n                    const c = (value || '').replace(\/\\s\/g, '').toLowerCase();\n                    return c === '#38c172' || c === 'rgb(56,193,114)';\n                }\n\n                function clearLocalSuccess() {\n                    const hasSuccessClass = emailInput.classList.contains('is-valid')\n                        || (fieldWrap && fieldWrap.classList.contains('is-valid'));\n                    const hasSuccessBorder = isSuccessBorderColor(emailInput.style.borderColor);\n                    if (!hasSuccessClass && !hasSuccessBorder) {\n                        return;\n                    }\n                    if (emailInput.classList.contains('is-valid')) {\n                        emailInput.classList.remove('is-valid');\n                    }\n                    if (hasSuccessBorder) {\n                        emailInput.style.removeProperty('border-color');\n                    }\n                    if (fieldWrap && fieldWrap.classList.contains('is-valid')) {\n                        fieldWrap.classList.remove('is-valid');\n                    }\n                }\n\n                function applyLocalSuccess() {\n                    emailInput.classList.add('was-validated', 'is-valid');\n                    emailInput.style.borderColor = '#38c172';\n                    if (fieldWrap) {\n                        fieldWrap.classList.add('is-valid');\n                    }\n                }\n\n                const successObserver = new MutationObserver(function () {\n                    if (holdSuccess) {\n                        clearLocalSuccess();\n                    }\n                });\n                successObserver.observe(emailInput, { attributes: true, attributeFilter: ['class', 'style'] });\n                if (fieldWrap) {\n                    successObserver.observe(fieldWrap, { attributes: true, attributeFilter: ['class'] });\n                }\n\n                function holdLocalSuccess() {\n                    holdSuccess = true;\n                    clearLocalSuccess();\n                }\n\n                function showWarning(show) {\n                    if (show) {\n                        if (!warningEl) {\n                            warningEl = document.createElement('div');\n                            warningEl.className = 'just-validate-error-label is-label-invalid';\n                            warningEl.setAttribute('aria-live', 'polite');\n                            warningEl.style.color = '#e67e22';\n                            warningEl.style.fontSize = '12px';\n                            warningEl.textContent = warningText;\n                            if (warningContainer) warningContainer.appendChild(warningEl);\n                        }\n                        warningEl.style.display = '';\n                    } else if (warningEl) {\n                        warningEl.style.display = 'none';\n                    }\n                }\n\n                function setFieldState(valid, showInvalidWarning) {\n                    statusInput.value = valid ? 'true' : 'false';\n                    emailInput.classList.remove('hr-email-zb-valid', 'hr-email-zb-invalid');\n                    if (showInvalidWarning) {\n                        holdSuccess = false;\n                        clearLocalSuccess();\n                        emailInput.classList.add('hr-email-zb-invalid');\n                    } else if (valid) {\n                        holdSuccess = false;\n                        applyLocalSuccess();\n                        emailInput.classList.add('hr-email-zb-valid');\n                    } else {\n                        holdSuccess = false;\n                        clearLocalSuccess();\n                    }\n                    showWarning(!!showInvalidWarning);\n                }\n\n                function isExcludedDomain(email) {\n                    const at = email.lastIndexOf('@');\n                    if (at === -1) return false;\n                    const domain = email.slice(at + 1).toLowerCase();\n                    return excludedDomains.indexOf(domain) !== -1;\n                }\n\n                function applyResult(valid, skipped) {\n                    const skippedKind = skipped || '';\n                    const didValidate = skippedKind === '';\n                    const showInvalidWarning = didValidate && !valid && (emailInput.value || '').trim() !== '';\n                    setFieldState(!!valid, showInvalidWarning);\n                    lastResult = {\n                        valid: !!valid,\n                        skipped: skippedKind,\n                        blockSubmit: showInvalidWarning && !allowSubmitOnInvalid\n                    };\n                    return lastResult;\n                }\n\n                function looksLikeEmail(email) {\n                    return \/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$\/.test(email);\n                }\n\n                function verifyEmail(email) {\n                    email = (email || '').trim();\n                    if (!email) {\n                        requestId += 1;\n                        lastEmail = '';\n                        pending = null;\n                        holdSuccess = false;\n                        setFieldState(false, false);\n                        lastResult = { valid: false, blockSubmit: false, skipped: '' };\n                        return Promise.resolve(lastResult);\n                    }\n                    if (pending && lastEmail === email) {\n                        return pending;\n                    }\n                    if (!pending && lastEmail === email) {\n                        return Promise.resolve(lastResult);\n                    }\n\n                    lastEmail = email;\n\n                    if (!looksLikeEmail(email)) {\n                        pending = null;\n                        holdSuccess = false;\n                        clearLocalSuccess();\n                        lastResult = { valid: false, blockSubmit: false, skipped: '' };\n                        return Promise.resolve(lastResult);\n                    }\n\n                    holdLocalSuccess();\n\n                    if (isExcludedDomain(email)) {\n                        pending = null;\n                        return Promise.resolve(applyResult(true, 'excluded'));\n                    }\n\n                    if (quotaExceeded) {\n                        pending = null;\n                        return Promise.resolve(applyResult(false, 'quota'));\n                    }\n\n                    const id = ++requestId;\n                    pending = fetch(ajaxUrl + '?action=hr_validate_email_reoon&nonce=' + encodeURIComponent(nonce) + '&email=' + encodeURIComponent(email))\n                        .then(function (r) { return r.json(); })\n                        .then(function (data) {\n                            if (id !== requestId) {\n                                return lastResult;\n                            }\n                            const result = (data && data.data) ? data.data : {};\n                            if (result.skipped === 'quota') {\n                                quotaExceeded = true;\n                            }\n                            pending = null;\n                            return applyResult(!!result.valid, result.skipped || '');\n                        })\n                        .catch(function () {\n                            if (id !== requestId) {\n                                return lastResult;\n                            }\n                            pending = null;\n                            return applyResult(false, 'error');\n                        });\n\n                    return pending;\n                }\n\n                \/\/ Verify while typing (debounced) so the result is usually ready before\n                \/\/ blur\/submit. Requires a 2+ letter TLD to avoid spending credits on partial input.\n                const typingDebounceMs = 300;\n                let typingTimer = null;\n                function looksCompleteEmail(email) {\n                    return \/^[^\\s@]+@[^\\s@]+\\.[a-z]{2,}$\/i.test(email);\n                }\n\n                emailInput.addEventListener('input', function () {\n                    const value = (emailInput.value || '').trim();\n                    if (value !== lastEmail) {\n                        holdLocalSuccess();\n                        showWarning(false);\n                        emailInput.classList.remove('hr-email-zb-valid', 'hr-email-zb-invalid');\n                        statusInput.value = 'false';\n                    }\n                    clearTimeout(typingTimer);\n                    if (looksCompleteEmail(value)) {\n                        typingTimer = setTimeout(function () {\n                            verifyEmail(emailInput.value);\n                        }, typingDebounceMs);\n                    }\n                });\n                emailInput.addEventListener('blur', function () {\n                    clearTimeout(typingTimer);\n                    verifyEmail(emailInput.value);\n                });\n\n                form._hrReoonEnsureValidated = function () {\n                    clearTimeout(typingTimer);\n                    const check = verifyEmail(emailInput.value);\n                    \/\/ Warn-only mode: never hold submit\/next for the network. The check keeps\n                    \/\/ running in the background and the server re-verifies on submit.\n                    if (allowSubmitOnInvalid) {\n                        return Promise.resolve({ valid: lastResult.valid, skipped: lastResult.skipped, blockSubmit: false });\n                    }\n                    return check;\n                };\n            });\n        <\/script>\n        \n        <script>\n            document.addEventListener('DOMContentLoaded', function () {\n                const form = document.getElementById('hr-form-6ad795f6edc09');\n                const textareas = form.querySelectorAll('textarea');\n\n                textareas.forEach(textarea => {\n                    const maxChars = parseInt(textarea.dataset.maxChars) || 600;\n                    const counter = document.createElement('div');\n                    counter.className = 'hr-char-counter';\n                    counter.textContent = `0\/${maxChars} characters`;\n                    textarea.parentNode.appendChild(counter);\n\n                    \/\/ Update counter on input\n                    textarea.addEventListener('input', function () {\n                        const currentLength = this.value.length;\n                        counter.textContent = `${currentLength}\/${maxChars} characters`;\n\n                        if (currentLength > maxChars) {\n                            counter.classList.add('warning');\n                            textarea.classList.add('limit-reached');\n                            \/\/ Trim the text to max length\n                            this.value = this.value.substring(0, maxChars);\n                            \/\/ Update counter with trimmed length\n                            counter.textContent = `${maxChars}\/${maxChars} + characters`;\n                        } else {\n                            counter.classList.remove('warning');\n                            textarea.classList.remove('limit-reached');\n                        }\n                    });\n\n                    \/\/ Prevent paste of text that would exceed limit\n                    textarea.addEventListener('paste', function (e) {\n                        const pastedText = (e.clipboardData || window.clipboardData).getData('text');\n                        const currentLength = this.value.length;\n                        const remainingChars = maxChars - currentLength;\n\n                        if (pastedText.length > remainingChars) {\n                            e.preventDefault();\n                            const trimmedText = pastedText.substring(0, remainingChars);\n                            document.execCommand('insertText', false, trimmedText);\n                        }\n                    });\n\n                    \/\/ Initial count\n                    textarea.dispatchEvent(new Event('input'));\n                });\n            });\n        <\/script>\n\n        <script>\n            jQuery(document).ready(function ($) {\n                const $form = $('#hr-form-6ad795f6edc09');\n\n                \/\/ Prevent Select2 pre-init visual glitch on first paint.\n                setTimeout(function () {\n                    $form.removeClass('hr-select2-booting');\n                }, 1000);\n\n                \/\/ Initialize Select2 for country selects in this specific form\n                $('#hr-form-6ad795f6edc09 .hr-country-select').each(function () {\n                    const $select = $(this);\n                    const formHasFloatingLabels = $select.closest('form').hasClass('hr-form-floating-labels');\n                    \/\/ Disable Select2 placeholder when floating labels are active (label acts as hint)\n                    const placeholder = formHasFloatingLabels ? null : $select.data('placeholder');\n\n                    \/\/ Skip if already initialized\n                    if ($select.hasClass('select2-hidden-accessible')) {\n                        return;\n                    }\n\n                    const countryConfig = {\n                        width: '100%',\n                        placeholder: placeholder,\n                        allowClear: !formHasFloatingLabels,\n                        language: {\n                            noResults: function () {\n                                return 'No countries found';\n                            }\n                        }\n                    };\n                    if (formHasFloatingLabels) {\n                        countryConfig.templateSelection = function (data) {\n                            if (!data.id || data.id === '' || (data.element && $(data.element).hasClass('hr-select-placeholder'))) {\n                                return '';\n                            }\n                            return data.text;\n                        };\n                    }\n                    $select.select2(countryConfig);\n                });\n            });\n        <\/script>\n\n        <script>\n            jQuery(document).ready(function ($) {\n                \/\/ Initialize Select2 for regular select fields in this specific form\n                $('#hr-form-6ad795f6edc09 .hr-select2-field').each(function () {\n                    const $select = $(this);\n\n                    \/\/ Skip if already initialized\n                    if ($select.hasClass('select2-hidden-accessible')) {\n                        return;\n                    }\n\n                    const formHasFloatingLabels = $select.closest('form').hasClass('hr-form-floating-labels');\n                    const isMultiple = $select.prop('multiple');\n                    const placeholder = formHasFloatingLabels ? '' : ($select.data('placeholder') || 'Select an option');\n                    const allowClear = formHasFloatingLabels ? false : ($select.data('allow-clear') !== 'no');\n                    const enableSearch = $select.data('enable-search') !== 'no';\n                    const minSelection = parseInt($select.data('min-selection')) || 0;\n                    const searchPlaceholder = $select.data('search-placeholder') || 'Search';\n                    const maxSelection = parseInt($select.data('max-selection')) || 0;\n\n                    const select2Config = {\n                        placeholder: placeholder,\n                        allowClear: allowClear,\n                        width: 'resolve',\n                        searchPlaceholder: 'Search',\n                        multiple: isMultiple,\n                        searchEnabled: enableSearch,\n                        minimumResultsForSearch: enableSearch ? 0 : -1,\n                        language: {\n                            noResults: function () {\n                                return 'No results found';\n                            },\n                            maximumSelected: function (e) {\n                                const message = 'You can only select %s items';\n                                return message.replace('%s', e.maximum);\n                            }\n                        },\n                        templateResult: function (data) {\n                            if (data.loading) return data.text;\n                            if (data.element && $(data.element).hasClass('hr-select-placeholder')) return null;\n                            return data.text;\n                        }\n                    };\n\n                    if (formHasFloatingLabels) {\n                        select2Config.templateSelection = function (data) {\n                            if (!data.id || data.id === '' || (Array.isArray(data.id) && data.id.length === 0) || (data.element && $(data.element).hasClass('hr-select-placeholder'))) {\n                                return '';\n                            }\n                            return data.text;\n                        };\n                    }\n\n                    \/\/ Add maximum selection limit if set\n                    if (isMultiple && maxSelection > 0) {\n                        select2Config.maximumSelectionLength = maxSelection;\n                    }\n\n                    const hasRealSelection = function ($el) {\n                        const value = $el.val();\n                        if (Array.isArray(value)) {\n                            return value.some(function (item) {\n                                return item !== null && item !== undefined && String(item).trim() !== '';\n                            });\n                        }\n                        return value !== null && value !== undefined && String(value).trim() !== '';\n                    };\n\n                    $select.select2(select2Config)\n                        .on('select2:open', function () {\n                            if (enableSearch) {\n                                setTimeout(function () {\n                                    $('.select2-search__field').focus();\n                                }, 0);\n                            }\n                        })\n                        .on('change', function (e) {\n                            const hasSelection = hasRealSelection($(this));\n                            $(this).next('.select2-container').find('.select2-selection--multiple')\n                                .toggleClass('select2-selection--multiple--has-selection', hasSelection);\n\n                            \/\/ Update hidden input for multiple select\n                            if (isMultiple) {\n                                const selectedValues = $(this).val() || [];\n                                const hiddenInput = $(this).siblings('.hr-form-select2-multiple-values');\n                                hiddenInput.val(selectedValues.join(','));\n                            }\n                        });\n\n                    \/\/ Trigger initial state\n                    const hasInitialSelection = hasRealSelection($select);\n                    $select.next('.select2-container').find('.select2-selection--multiple')\n                        .toggleClass('select2-selection--multiple--has-selection', hasInitialSelection);\n\n                    \/\/ Set initial value for hidden input if there are pre-selected values\n                    if (isMultiple && hasInitialSelection) {\n                        const initialValues = $select.val();\n                        const hiddenInput = $select.siblings('.hr-form-select2-multiple-values');\n                        hiddenInput.val(initialValues.join(','));\n                    }\n                });\n            });\n        <\/script>\n\n        <script>\n            \/\/ Create unique callback function for this form instance\n            window['onTurnstileCallback_hr-form-6ad795f6edc09'] = function () {\n                const debugEnabled = new URLSearchParams(window.location.search).get('hr_form_debug') === '1';\n                \/\/ Enable submit button when Turnstile is ready\n                const form = document.getElementById('hr-form-6ad795f6edc09');\n                const submitButton = form.querySelector('.hr-form-submit');\n                const tokenInput = form.querySelector('[name=\"cf-turnstile-response\"]');\n                if (debugEnabled) {\n                    console.log('[HR Turnstile Debug][' + form.id + '] callback fired', {\n                        hasToken: Boolean(tokenInput && tokenInput.value),\n                        tokenLength: tokenInput && tokenInput.value ? tokenInput.value.length : 0\n                    });\n                }\n                if (submitButton) {\n                    submitButton.disabled = false;\n                }\n            };\n\n            document.addEventListener('DOMContentLoaded', function () {\n                const form = document.getElementById('hr-form-6ad795f6edc09');\n                const submitButton = form.querySelector('.hr-form-submit');\n\n                \/\/ Disable submit button initially if Turnstile is enabled\n                                    if (submitButton) {\n                        submitButton.disabled = true;\n                    }\n                    const debugEnabled = new URLSearchParams(window.location.search).get('hr_form_debug') === '1';\n                    const logTurnstile = function (label, payload) {\n                        if (!debugEnabled) return;\n                        console.log('[HR Turnstile Debug][' + form.id + '] ' + label, payload || {});\n                    };\n\n                    \/\/ Render and start Turnstile verification on form load.\n                    function initTurnstile() {\n                        logTurnstile('init start');\n                        if (typeof turnstile === 'undefined') {\n                            logTurnstile('turnstile not ready, retrying');\n                            setTimeout(initTurnstile, 120);\n                            return;\n                        }\n\n                        const turnstileContainer = form.querySelector('.hr-turnstile-container');\n                        if (!turnstileContainer) {\n                            logTurnstile('container not found');\n                            return;\n                        }\n\n                        if (!turnstileContainer.hasAttribute('data-widget-id')) {\n                            const widgetId = turnstile.render(turnstileContainer, {\n                                sitekey: turnstileContainer.getAttribute('data-sitekey'),\n                                callback: window['onTurnstileCallback_hr-form-6ad795f6edc09']\n                            });\n                            logTurnstile('widget rendered', { widgetId: widgetId || null });\n                            if (widgetId !== undefined && widgetId !== null) {\n                                turnstileContainer.setAttribute('data-widget-id', String(widgetId));\n                            }\n                        }\n\n                        const renderedWidgetId = turnstileContainer.getAttribute('data-widget-id');\n                        if (renderedWidgetId && typeof turnstile.execute === 'function') {\n                            try {\n                                logTurnstile('execute called', { widgetId: renderedWidgetId });\n                                turnstile.execute(renderedWidgetId);\n                            } catch (e) {\n                                logTurnstile('execute failed', { error: e && e.message ? e.message : String(e) });\n                                \/\/ Some widget modes do not need\/allow execute; callback still unlocks submit when ready.\n                            }\n                        } else {\n                            logTurnstile('execute skipped', { widgetId: renderedWidgetId || null, hasExecute: typeof turnstile.execute === 'function' });\n                        }\n                    }\n\n                    initTurnstile();\n                \n                form.addEventListener('submit', function (e) {\n                    const debugEnabled = new URLSearchParams(window.location.search).get('hr_form_debug') === '1';\n                                            const turnstileResponse = form.querySelector('[name=\"cf-turnstile-response\"]');\n                        if (!turnstileResponse || !turnstileResponse.value) {\n                            if (debugEnabled) {\n                                console.warn('[HR Form Debug][' + form.id + '] blocked: turnstile response missing');\n                            }\n                            e.preventDefault();\n                            alert('Please wait for the security check to complete.');\n                            return false;\n                        }\n                    \n                    const formData = new FormData(form);\n                    const thankYouData = {};\n                    const fieldsToCapture = [\"is_validated_reoon\",\"firstname\",\"email\",\"mobilephone\",\"mobilephone_full\",\"country\",\"hotelrunner_customer\",\"privacy_statement\",\"commercial_electronic_message_consent\",\"browser_ip_address__c\",\"browser_primary_language__c\",\"browser_all_languages__c\",\"browser_window_size__c\",\"browser_time_zone__c\",\"current_url__c\",\"referral_link__c\"];\n                    if (fieldsToCapture && fieldsToCapture.length) {\n                        fieldsToCapture.forEach(function(fieldName) {\n                            if (formData.has(fieldName)) {\n                                thankYouData[fieldName] = formData.get(fieldName);\n                            }\n                        });\n                    }\n                    sessionStorage.setItem('formSessionData', JSON.stringify(thankYouData));\n                });\n            });\n\n            \/\/ Turnstile is rendered explicitly per form instance above.\n        <\/script>\n\n        <script>\n            jQuery(document).ready(function () {\n                const $currentForm = jQuery('#hr-form-6ad795f6edc09');\n                const isRegisteredValidatorField = (validator, selector) => {\n                    if (!validator || !selector) {\n                        return false;\n                    }\n                    if (typeof validator._hrHasField === 'function') {\n                        return validator._hrHasField(selector);\n                    }\n                    if (!validator.fields) {\n                        return false;\n                    }\n                    return Object.values(validator.fields).some((field) => {\n                        return field && field.elem && ('#' + field.elem.id) === selector;\n                    });\n                };\n                \n                \/\/ Function to validate step fields\n                function validateStepFields($stepFields, shouldShowError = true) {\n                    var validator = $currentForm.length > 0 && $currentForm[0]._justValidateInstance;\n\n                    \/\/ If validator is not ready, wait a bit and try again\n                    if (!validator) {\n                        return new Promise((resolve) => {\n                            setTimeout(() => {\n                                resolve(validateStepFields($stepFields, shouldShowError));\n                            }, 100);\n                        });\n                    }\n\n                    var allFieldsValid = true;\n                    var validationPromises = [];\n\n                    \/\/ Force validation of all fields in the step\n                    $stepFields.find('input, select, textarea').each(function () {\n                        if (this.id) {\n                            \/\/ Mark the field as touched to ensure validation runs\n                            jQuery(this).addClass('was-validated');\n                            try {\n                                \/\/ For Select2 fields, ensure the value is properly set before validation\n                                if (jQuery(this).hasClass('hr-select2-field')) {\n                                    const value = jQuery(this).val();\n                                    \/\/ For required fields, empty array or null\/undefined is invalid\n                                    if (jQuery(this).prop('required') && (!value || (Array.isArray(value) && value.length === 0))) {\n                                        jQuery(this).addClass('is-invalid').removeClass('is-valid');\n                                        const select2Container = jQuery(this).next('.select2-container');\n                                        select2Container.find('.select2-selection').addClass('is-invalid').removeClass('is-valid');\n                                        allFieldsValid = false;\n                                    } else {\n                                        jQuery(this).addClass('is-valid').removeClass('is-invalid');\n                                        const select2Container = jQuery(this).next('.select2-container');\n                                        select2Container.find('.select2-selection').addClass('is-valid').removeClass('is-invalid');\n                                    }\n                                }\n\n                                \/\/ Store the validation promise\n                                const selector = '#' + CSS.escape(this.id);\n                                if (!isRegisteredValidatorField(validator, selector)) {\n                                    return;\n                                }\n                                validationPromises.push(\n                                    validator.revalidateField(selector)\n                                        .then(isValid => {\n                                            if (!isValid) {\n                                                allFieldsValid = false;\n                                            }\n                                        })\n                                        .catch(error => {\n                                            allFieldsValid = false;\n                                        })\n                                );\n                            } catch (error) {\n                                allFieldsValid = false;\n                            }\n                        }\n                    });\n\n                    \/\/ Return a promise that resolves when all validations are complete\n                    return Promise.all(validationPromises).then(function () {\n                        const formEl = $currentForm[0];\n                        if (formEl && typeof formEl._hrReoonEnsureValidated === 'function') {\n                            const reoonEmail = formEl.querySelector('input[type=\"email\"]');\n                            if (reoonEmail && $stepFields[0] && $stepFields[0].contains(reoonEmail)) {\n                                return formEl._hrReoonEnsureValidated().then(function () {\n                                    return allFieldsValid;\n                                });\n                            }\n                        }\n                        return allFieldsValid;\n                    });\n                }\n\n                const revalidateSelect2Field = function (field) {\n                    if (!field || !field.id) {\n                        return;\n                    }\n\n                    const $field = jQuery(field);\n                    const value = $field.val();\n                    const isRequired = $field.prop('required');\n                    const isEmpty = !value || (Array.isArray(value) && value.length === 0);\n                    const select2Container = $field.next('.select2-container');\n                    const select2Selection = select2Container.find('.select2-selection');\n\n                    if (isRequired && isEmpty) {\n                        $field.addClass('is-invalid').removeClass('is-valid');\n                        select2Selection.addClass('is-invalid').removeClass('is-valid');\n                    } else {\n                        $field.addClass('is-valid').removeClass('is-invalid');\n                        select2Selection.addClass('is-valid').removeClass('is-invalid');\n                    }\n\n                    var validator = $currentForm[0] && $currentForm[0]._justValidateInstance;\n                    if (!validator) {\n                        return;\n                    }\n                    const selector = '#' + CSS.escape(field.id);\n                    if (!isRegisteredValidatorField(validator, selector)) {\n                        return;\n                    }\n                    validator.revalidateField(selector);\n                };\n\n                \/\/ Always revalidate Select2-backed fields when value changes.\n                $currentForm.on(\n                    'select2:select select2:unselect select2:clear change',\n                    '.hr-select2-field, .hr-country-select',\n                    function () {\n                        revalidateSelect2Field(this);\n                    }\n                );\n\n                \/\/ Handle field blur events for validation in this form only\n                $currentForm.on('blur', 'input, select, textarea', function () {\n                    if (this.id) {\n                        jQuery(this).addClass('was-validated');\n                        var validator = $currentForm[0] && $currentForm[0]._justValidateInstance;\n                        if (validator) {\n                            const selector = '#' + CSS.escape(this.id);\n                            if (!isRegisteredValidatorField(validator, selector)) {\n                                return;\n                            }\n                            validator.revalidateField(selector);\n                        }\n                    }\n                });\n\n                $currentForm.find('.hr-form-step-next').on('click', async function () {\n                    \/\/ Submit buttons on the last step also carry .hr-form-step-next.\n                    \/\/ Do not run step-navigation hide\/show logic for actual submit triggers.\n                    if (jQuery(this).is('button[type=\"submit\"], .hr-form-submit')) {\n                        return;\n                    }\n\n                    var $currentStepFields = jQuery(this).closest('.hr-form-step-fields');\n                    var currentStepIndex = $currentStepFields.data('step-index');\n                    var $stepNavigation = $currentForm.find('.hr-form-step-nav');\n\n                    \/\/ Disable the button while validating\n                    jQuery(this).prop('disabled', true);\n\n                    try {\n                        \/\/ Force validation of all fields in current step\n                        const allFieldsValid = await validateStepFields($currentStepFields, true);\n\n                        if (allFieldsValid) {\n                            \/\/ Update step navigation\n                            $stepNavigation.removeClass('active');\n                            $stepNavigation.filter('[data-step-index=\"' + (currentStepIndex + 1) + '\"]').addClass('active');\n\n                            \/\/ Hide current step and show next step\n                            $currentStepFields.hide();\n                            $currentForm.find('.hr-form-step-fields[data-step-index=\"' + (currentStepIndex + 1) + '\"]').show();\n                        }\n                    } catch (error) {\n                        \/\/ Error during validation\n                    } finally {\n                        \/\/ Re-enable the button\n                        jQuery(this).prop('disabled', false);\n                    }\n                });\n\n                $currentForm.find('.hr-form-step-prev').on('click', function () {\n                    var $currentStepFields = jQuery(this).closest('.hr-form-step-fields');\n                    var currentStepIndex = $currentStepFields.data('step-index');\n                    var $stepNavigation = $currentForm.find('.hr-form-step-nav');\n\n                    \/\/ Clear any existing validation errors before moving back\n                    $currentStepFields.find('.hr-form-step-error').remove();\n\n                    \/\/ Update step navigation\n                    $stepNavigation.removeClass('active');\n                    $stepNavigation.filter('[data-step-index=\"' + (currentStepIndex - 1) + '\"]').addClass('active');\n\n                    \/\/ Hide current step and show previous step\n                    $currentStepFields.hide();\n                    $currentForm.find('.hr-form-step-fields[data-step-index=\"' + (currentStepIndex - 1) + '\"]').show();\n                });\n\n                if ($currentForm.hasClass('hr-form-step-mode')) {\n                    $currentForm.on('keydown', 'input:not([type=\"hidden\"]):not([type=\"checkbox\"]):not([type=\"radio\"]):not([type=\"submit\"]):not([type=\"button\"]):not([type=\"file\"])', function (e) {\n                        if (e.key !== 'Enter' || e.isComposing) {\n                            return;\n                        }\n\n                        const $currentStepFields = jQuery(this).closest('.hr-form-step-fields');\n                        if (!$currentStepFields.length) {\n                            return;\n                        }\n\n                        const totalSteps = $currentForm.find('.hr-form-step-fields').length;\n                        const currentStepIndex = $currentStepFields.data('step-index');\n                        if (currentStepIndex === totalSteps - 1) {\n                            return;\n                        }\n\n                        e.preventDefault();\n                        const $nextBtn = $currentStepFields.find('.hr-form-step-next').not('button[type=\"submit\"], .hr-form-submit');\n                        if ($nextBtn.length) {\n                            $nextBtn.trigger('click');\n                        }\n                    });\n                }\n\n                \/\/ Initialize active state for the first step on load\n                $currentForm.find('.hr-form-step-nav[data-step-index=\"0\"]').addClass('active');\n            });\n        <\/script>\n        \t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n\n<\/div>\n\n<\/section>\n<section class=\"elementor-element elementor-element-32295a1c e-con e-atomic-element e-flexbox-base e-default-section e-36b34ba4-ff31 \" data-id=\"32295a1c\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"32295a1c\" data-e-type=\"e-flexbox\" data-id=\"32295a1c\">\n    <div class=\"elementor-element elementor-element-36af7932 e-con e-atomic-element e-flexbox-base e-default-div container e-56da3424-d6d9 \" data-id=\"36af7932\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"36af7932\" data-e-type=\"e-flexbox\" data-id=\"36af7932\">\n    \t\t<div class=\"elementor-element elementor-element-ab5569a elementor-widget elementor-widget-hr_faq_section\" data-id=\"ab5569a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"hr_faq_section.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t            <script\n                type=\"application\/ld+json\">{\"@context\":\"https:\/\/schema.org\",\"@type\":\"FAQPage\",\"mainEntity\":[{\"@type\":\"Question\",\"name\":\"What you need before you start?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"You need access to your HotelRunner account, with your property content, rates, and availability up to date in HotelRunner. You also need the authority to review and accept the Expedia Group agreement.\"}},{\"@type\":\"Question\",\"name\":\"What happens next?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Once live, your property can reach demand across Expedia Group\u2019s global consumer brands and broad B2B distribution network, including 1B+ average monthly searches and 415M+ booked room nights.\"}},{\"@type\":\"Question\",\"name\":\"How long does it take?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Your property can go live on Expedia Group in less than 24 hours after completing the required steps.\"}},{\"@type\":\"Question\",\"name\":\"Do I need to complete a separate manual onboarding process?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"No. You can start directly in HotelRunner, review and accept your Expedia Group agreement, and connect your property through the software you already use.\"}},{\"@type\":\"Question\",\"name\":\"What happens to my existing property content, rates, and availability?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"They can be sent from HotelRunner to Expedia Group for validation.\"}},{\"@type\":\"Question\",\"name\":\"Can I bring more properties live later?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. Use the same process to add more properties through HotelRunner.\"}}]}<\/script>\n                    <div class=\"hr-faq-section\">\n            <div class=\"container\">\n                <div class=\"hr-faq-section__grid\">\n                    <div class=\"hr-faq-section__intro\">\n                                                    <div class=\"hr-faq-section__intro-text\">\n                                                                    <h2 class=\"hr-faq-section__title\">Frequently asked questions<\/h2>\n                                                                                                    <p class=\"hr-faq-section__lede\">Everything you might be wondering about, in one place.<\/p>\n                                                            <\/div>\n                                                                            <a class=\"hr-faq-section__cta btn\" href=\"#ao-form\">\n                                Get in touch                            <\/a>\n                                                <\/div>\n                    <div class=\"hr-faq-section__accordion\">\n                                                                                <div class=\"hr-faq-item\">\n                                                                <div class=\"hr-faq-item-content\">\n                                    <div class=\"hr-faq-item-row\">\n                                        <div class=\"hr-faq-item-text\">\n                                            <div id=\"hr-faq-section-ab5569a-header-0\" class=\"hr-faq-header\" role=\"button\"\n                                                tabindex=\"0\" aria-expanded=\"false\"\n                                                aria-controls=\"hr-faq-section-ab5569a-content-0\">\n                                                <h3 class=\"hr-faq-title\">\n                                                    What you need before you start?<\/h3>\n                                            <\/div>\n                                            <div id=\"hr-faq-section-ab5569a-content-0\" class=\"hr-faq-content\"\n                                                aria-labelledby=\"hr-faq-section-ab5569a-header-0\">\n                                                <p>You need access to your HotelRunner account, with your property content, rates, and availability up to date in HotelRunner. You also need the authority to review and accept the Expedia Group agreement.<\/p>                                            <\/div>\n                                        <\/div>\n                                        <div class=\"hr-faq-arrow\" role=\"button\" tabindex=\"0\"\n                                            aria-expanded=\"false\"\n                                            aria-controls=\"hr-faq-section-ab5569a-content-0\">\n                                            <svg class=\"hr-faq-arrow__svg\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"13\" height=\"7\" viewBox=\"0 0 13 7\" fill=\"none\" preserveAspectRatio=\"none\" aria-hidden=\"true\">\n                                                <path d=\"M12.5 0.5L6.5 6.5L0.5 0.5\" stroke=\"#999999\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n                                            <\/svg>\n                                        <\/div>\n                                    <\/div>\n                                <\/div>\n                            <\/div>\n                                                                                <div class=\"hr-faq-item\">\n                                                                <div class=\"hr-faq-item-content\">\n                                    <div class=\"hr-faq-item-row\">\n                                        <div class=\"hr-faq-item-text\">\n                                            <div id=\"hr-faq-section-ab5569a-header-1\" class=\"hr-faq-header\" role=\"button\"\n                                                tabindex=\"0\" aria-expanded=\"false\"\n                                                aria-controls=\"hr-faq-section-ab5569a-content-1\">\n                                                <h3 class=\"hr-faq-title\">\n                                                    What happens next?<\/h3>\n                                            <\/div>\n                                            <div id=\"hr-faq-section-ab5569a-content-1\" class=\"hr-faq-content\"\n                                                aria-labelledby=\"hr-faq-section-ab5569a-header-1\">\n                                                <p>Once live, your property can reach demand across Expedia Group\u2019s global consumer brands and broad B2B distribution network, including <u>1B+ average monthly searches<\/u> and <u>415M+ booked room nights.<\/u><\/p>                                            <\/div>\n                                        <\/div>\n                                        <div class=\"hr-faq-arrow\" role=\"button\" tabindex=\"0\"\n                                            aria-expanded=\"false\"\n                                            aria-controls=\"hr-faq-section-ab5569a-content-1\">\n                                            <svg class=\"hr-faq-arrow__svg\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"13\" height=\"7\" viewBox=\"0 0 13 7\" fill=\"none\" preserveAspectRatio=\"none\" aria-hidden=\"true\">\n                                                <path d=\"M12.5 0.5L6.5 6.5L0.5 0.5\" stroke=\"#999999\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n                                            <\/svg>\n                                        <\/div>\n                                    <\/div>\n                                <\/div>\n                            <\/div>\n                                                                                <div class=\"hr-faq-item\">\n                                                                <div class=\"hr-faq-item-content\">\n                                    <div class=\"hr-faq-item-row\">\n                                        <div class=\"hr-faq-item-text\">\n                                            <div id=\"hr-faq-section-ab5569a-header-2\" class=\"hr-faq-header\" role=\"button\"\n                                                tabindex=\"0\" aria-expanded=\"false\"\n                                                aria-controls=\"hr-faq-section-ab5569a-content-2\">\n                                                <h3 class=\"hr-faq-title\">\n                                                    How long does it take?<\/h3>\n                                            <\/div>\n                                            <div id=\"hr-faq-section-ab5569a-content-2\" class=\"hr-faq-content\"\n                                                aria-labelledby=\"hr-faq-section-ab5569a-header-2\">\n                                                <p>Your property can go live on Expedia Group in less than 24 hours after completing the required steps.<\/p>                                            <\/div>\n                                        <\/div>\n                                        <div class=\"hr-faq-arrow\" role=\"button\" tabindex=\"0\"\n                                            aria-expanded=\"false\"\n                                            aria-controls=\"hr-faq-section-ab5569a-content-2\">\n                                            <svg class=\"hr-faq-arrow__svg\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"13\" height=\"7\" viewBox=\"0 0 13 7\" fill=\"none\" preserveAspectRatio=\"none\" aria-hidden=\"true\">\n                                                <path d=\"M12.5 0.5L6.5 6.5L0.5 0.5\" stroke=\"#999999\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n                                            <\/svg>\n                                        <\/div>\n                                    <\/div>\n                                <\/div>\n                            <\/div>\n                                                                                <div class=\"hr-faq-item\">\n                                                                <div class=\"hr-faq-item-content\">\n                                    <div class=\"hr-faq-item-row\">\n                                        <div class=\"hr-faq-item-text\">\n                                            <div id=\"hr-faq-section-ab5569a-header-3\" class=\"hr-faq-header\" role=\"button\"\n                                                tabindex=\"0\" aria-expanded=\"false\"\n                                                aria-controls=\"hr-faq-section-ab5569a-content-3\">\n                                                <h3 class=\"hr-faq-title\">\n                                                    Do I need to complete a separate manual onboarding process?<\/h3>\n                                            <\/div>\n                                            <div id=\"hr-faq-section-ab5569a-content-3\" class=\"hr-faq-content\"\n                                                aria-labelledby=\"hr-faq-section-ab5569a-header-3\">\n                                                <p>No. You can start directly in HotelRunner, review and accept your Expedia Group agreement, and connect your property through the software you already use.<\/p>                                            <\/div>\n                                        <\/div>\n                                        <div class=\"hr-faq-arrow\" role=\"button\" tabindex=\"0\"\n                                            aria-expanded=\"false\"\n                                            aria-controls=\"hr-faq-section-ab5569a-content-3\">\n                                            <svg class=\"hr-faq-arrow__svg\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"13\" height=\"7\" viewBox=\"0 0 13 7\" fill=\"none\" preserveAspectRatio=\"none\" aria-hidden=\"true\">\n                                                <path d=\"M12.5 0.5L6.5 6.5L0.5 0.5\" stroke=\"#999999\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n                                            <\/svg>\n                                        <\/div>\n                                    <\/div>\n                                <\/div>\n                            <\/div>\n                                                                                <div class=\"hr-faq-item\">\n                                                                <div class=\"hr-faq-item-content\">\n                                    <div class=\"hr-faq-item-row\">\n                                        <div class=\"hr-faq-item-text\">\n                                            <div id=\"hr-faq-section-ab5569a-header-4\" class=\"hr-faq-header\" role=\"button\"\n                                                tabindex=\"0\" aria-expanded=\"false\"\n                                                aria-controls=\"hr-faq-section-ab5569a-content-4\">\n                                                <h3 class=\"hr-faq-title\">\n                                                    What happens to my existing property content, rates, and availability?<\/h3>\n                                            <\/div>\n                                            <div id=\"hr-faq-section-ab5569a-content-4\" class=\"hr-faq-content\"\n                                                aria-labelledby=\"hr-faq-section-ab5569a-header-4\">\n                                                <p>They can be sent from HotelRunner to Expedia Group for validation.<\/p>                                            <\/div>\n                                        <\/div>\n                                        <div class=\"hr-faq-arrow\" role=\"button\" tabindex=\"0\"\n                                            aria-expanded=\"false\"\n                                            aria-controls=\"hr-faq-section-ab5569a-content-4\">\n                                            <svg class=\"hr-faq-arrow__svg\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"13\" height=\"7\" viewBox=\"0 0 13 7\" fill=\"none\" preserveAspectRatio=\"none\" aria-hidden=\"true\">\n                                                <path d=\"M12.5 0.5L6.5 6.5L0.5 0.5\" stroke=\"#999999\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n                                            <\/svg>\n                                        <\/div>\n                                    <\/div>\n                                <\/div>\n                            <\/div>\n                                                                                <div class=\"hr-faq-item\">\n                                                                <div class=\"hr-faq-item-content\">\n                                    <div class=\"hr-faq-item-row\">\n                                        <div class=\"hr-faq-item-text\">\n                                            <div id=\"hr-faq-section-ab5569a-header-5\" class=\"hr-faq-header\" role=\"button\"\n                                                tabindex=\"0\" aria-expanded=\"false\"\n                                                aria-controls=\"hr-faq-section-ab5569a-content-5\">\n                                                <h3 class=\"hr-faq-title\">\n                                                    Can I bring more properties live later?<\/h3>\n                                            <\/div>\n                                            <div id=\"hr-faq-section-ab5569a-content-5\" class=\"hr-faq-content\"\n                                                aria-labelledby=\"hr-faq-section-ab5569a-header-5\">\n                                                <p>Yes. Use the same process to add more properties through HotelRunner.<\/p>                                            <\/div>\n                                        <\/div>\n                                        <div class=\"hr-faq-arrow\" role=\"button\" tabindex=\"0\"\n                                            aria-expanded=\"false\"\n                                            aria-controls=\"hr-faq-section-ab5569a-content-5\">\n                                            <svg class=\"hr-faq-arrow__svg\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"13\" height=\"7\" viewBox=\"0 0 13 7\" fill=\"none\" preserveAspectRatio=\"none\" aria-hidden=\"true\">\n                                                <path d=\"M12.5 0.5L6.5 6.5L0.5 0.5\" stroke=\"#999999\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n                                            <\/svg>\n                                        <\/div>\n                                    <\/div>\n                                <\/div>\n                            <\/div>\n                                            <\/div>\n                <\/div>\n            <\/div>\n        <\/div>\n        \t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-bcf4ed5 ao-faq-mobile-fix elementor-hidden-desktop elementor-hidden-laptop elementor-hidden-tablet elementor-hidden-mobile_extra elementor-hidden-mobile elementor-hidden-widescreen elementor-widget elementor-widget-html\" data-id=\"bcf4ed5\" 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<style>\n\/* Mobile \/ touch tooltips for the dotted stats (same look as Pricing tooltips) *\/\n.ao-tt-mobile {\n  position: absolute; z-index: 10000; box-sizing: border-box;\n  max-width: min(250px, calc(100vw - 32px)); width: max-content;\n  background: #595959; color: #fff; border-radius: 5px; padding: 5px 14px;\n  font-family: Poppins, sans-serif; font-size: 14px; font-weight: 400; line-height: 1.4; text-align: left;\n  animation: aoTtIn .2s ease;\n}\n.ao-tt-mobile .ao-tt-arrow {\n  position: absolute; bottom: -12px; width: 0; height: 0;\n  border: 6px solid transparent; border-top-color: #595959;\n}\n.ao-tt-mobile.below .ao-tt-arrow { bottom: auto; top: -12px; border-top-color: transparent; border-bottom-color: #595959; }\n@keyframes aoTtIn { from { opacity: 0; } to { opacity: 1; } }\n@media (max-width: 1024px), (hover: none) {\n  [data-interaction-id=\"7044c83b\"] u, [data-interaction-id=\"7777ec93\"] u,\n  [data-interaction-id=\"2720ee5a\"] u, .hr-faq-section u { cursor: pointer; -webkit-tap-highlight-color: transparent; }\n}\n<\/style>\n<script>\n\/* Mobile \/ touch: tap a dotted stat to show its tooltip (text comes from the page Custom CSS ::before content) *\/\n(function () {\n  var MQ = '(max-width: 1024px), (hover: none)';\n  var SEL = '[data-interaction-id=\"7044c83b\"] u, [data-interaction-id=\"7777ec93\"] u, [data-interaction-id=\"2720ee5a\"] u, .hr-faq-section u';\n  var tip = null, cur = null;\n  function close() { if (tip) { tip.remove(); tip = null; } cur = null; }\n  function textFor(u) {\n    var c = getComputedStyle(u, '::before').content;\n    if (!c || c === 'none' || c === 'normal') return '';\n    return c.replace(\/^[\"']|[\"']$\/g, '').replace(\/\\\\\"\/g, '\"').replace(\/\\\\'\/g, \"'\");\n  }\n  function open(u) {\n    close();\n    var txt = textFor(u); if (!txt) return;\n    tip = document.createElement('div'); tip.className = 'ao-tt-mobile'; tip.setAttribute('role', 'tooltip'); tip.textContent = txt;\n    var arrow = document.createElement('span'); arrow.className = 'ao-tt-arrow'; tip.appendChild(arrow);\n    document.body.appendChild(tip);\n    var r = u.getClientRects()[0], vw = document.documentElement.clientWidth, w = tip.offsetWidth, h = tip.offsetHeight, m = 16;\n    var cx = r.left + Math.min(r.width, 200) \/ 2;\n    var left = Math.max(m, Math.min(cx - w \/ 2, vw - m - w));\n    var top = r.top - h - 10, below = false;\n    if (top < 90) { top = r.bottom + 10; below = true; }\n    tip.style.left = left + 'px'; tip.style.top = (top + window.scrollY) + 'px';\n    arrow.style.left = Math.max(10, Math.min(cx - left - 6, w - 22)) + 'px';\n    if (below) tip.classList.add('below');\n    cur = u;\n  }\n  var downU = null, downT = 0;\n  document.addEventListener('pointerdown', function (e) { downU = e.target.closest(SEL); downT = Date.now(); }, true);\n  document.addEventListener('click', function (e) {\n    if (!window.matchMedia(MQ).matches) return;\n    var u = e.target.closest(SEL) || (Date.now() - downT < 800 ? downU : null);\n    if (u) { e.preventDefault(); if (cur === u) close(); else open(u); return; }\n    if (!e.target.closest('.ao-tt-mobile')) close();\n  }, true);\n  window.addEventListener('resize', close);\n})();\n\n\/* TEMP page hotfix (remove after hotelrunner-utilities faq-section.js fix is deployed):\n   on mobile, taps inside an open FAQ answer must not collapse it *\/\n(function () {\n  var ANSWER = '.hr-faq-section .hr-faq-item.active .hr-faq-content', downIn = false, downT = 0;\n  document.addEventListener('pointerdown', function (e) { downIn = !!e.target.closest(ANSWER); downT = Date.now(); }, true);\n  document.addEventListener('click', function (e) {\n    if (!window.matchMedia('(max-width: 767px)').matches) return;\n    if (e.target.closest('a')) return;\n    if (e.target.closest(ANSWER) || (downIn && Date.now() - downT < 800)) e.stopPropagation();\n  }, true);\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\n<\/div>\n\n<\/section>\n\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Join Expedia Group directly through HotelRunner with Autonomous Onboarding\u2122 and go live in less than 24 hours.<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"page_category":[],"page_type":[],"class_list":["post-148548","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/hotelrunner.com\/en\/wp-json\/wp\/v2\/pages\/148548","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hotelrunner.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/hotelrunner.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/hotelrunner.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hotelrunner.com\/en\/wp-json\/wp\/v2\/comments?post=148548"}],"version-history":[{"count":13,"href":"https:\/\/hotelrunner.com\/en\/wp-json\/wp\/v2\/pages\/148548\/revisions"}],"predecessor-version":[{"id":148812,"href":"https:\/\/hotelrunner.com\/en\/wp-json\/wp\/v2\/pages\/148548\/revisions\/148812"}],"wp:attachment":[{"href":"https:\/\/hotelrunner.com\/en\/wp-json\/wp\/v2\/media?parent=148548"}],"wp:term":[{"taxonomy":"page_category","embeddable":true,"href":"https:\/\/hotelrunner.com\/en\/wp-json\/wp\/v2\/page_category?post=148548"},{"taxonomy":"page_type","embeddable":true,"href":"https:\/\/hotelrunner.com\/en\/wp-json\/wp\/v2\/page_type?post=148548"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}